summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorsotech117 <michael_foiani@brown.edu>2024-05-09 15:29:13 -0400
committersotech117 <michael_foiani@brown.edu>2024-05-09 15:29:13 -0400
commit0d6b3ded83f583a858368b1bbceda60ba65453a2 (patch)
tree9cb4f3aefc3c65492f61fac03498c220f2ef816c
parent3d9a55316dbcfb2ca1f32f5554d1948fcabb5d74 (diff)
fix spacing on wave, fix normals and displacement, add retiling
-rw-r--r--cmake-build-debug/.ninja_depsbin528124 -> 739504 bytes
-rw-r--r--cmake-build-debug/.ninja_log125
-rwxr-xr-xcmake-build-debug/.rcc/Resources.qrc2
-rw-r--r--cmake-build-debug/.rcc/qrc_Resources.cpp1062
-rw-r--r--cmake-build-debug/CMakeFiles/ocean_autogen.dir/ParseCache.txt6
-rw-r--r--cmake-build-debug/Testing/Temporary/LastTest.log4
-rw-r--r--cmake-build-debug/build.ninja4
-rwxr-xr-xcmake-build-debug/oceanbin8772280 -> 8748664 bytes
-rw-r--r--src/arap.cpp16
-rw-r--r--src/ocean/ocean_alt.cpp213
-rw-r--r--src/ocean/ocean_alt.h26
11 files changed, 921 insertions, 537 deletions
diff --git a/cmake-build-debug/.ninja_deps b/cmake-build-debug/.ninja_deps
index 81bd2d5..b1b950d 100644
--- a/cmake-build-debug/.ninja_deps
+++ b/cmake-build-debug/.ninja_deps
Binary files differ
diff --git a/cmake-build-debug/.ninja_log b/cmake-build-debug/.ninja_log
index 051ba0e..371a403 100644
--- a/cmake-build-debug/.ninja_log
+++ b/cmake-build-debug/.ninja_log
@@ -1,88 +1,41 @@
# ninja log v5
-12 41 1714798632131430431 /Users/sotech117/Documents/final/adv/ocean-simulation/cmake-build-debug/StaticGLEW_autogen/timestamp dc143b4497306125
-1645 4059 1714849325058746610 CMakeFiles/ocean.dir/src/mainwindow.cpp.o b8eab0029b0c2d42
-78 110 1712645727876186134 CMakeFiles/StaticGLEW.dir/StaticGLEW_autogen/mocs_compilation.cpp.o cf14dd1335b34a8d
-5173 6594 1714798638674541274 CMakeFiles/ocean.dir/src/graphics/shape.cpp.o fad1395b11fceaa7
-1647 4944 1714849325940198995 CMakeFiles/ocean.dir/cmake-build-debug/.rcc/qrc_Resources.cpp.o 5414beaf8d128308
-4944 5062 1714849326069646592 ocean 90ea6245b9d0c531
-1645 4083 1714849325084208159 CMakeFiles/ocean.dir/src/main.cpp.o 11d1d3bb5133c4bd
-1646 4515 1714849325508570672 CMakeFiles/ocean.dir/src/glwidget.cpp.o b59369eca2fe4e32
-3358 3439 1714798635528627000 libStaticGLEW.a 8b4a852037c57830
-5173 5621 1714798637703869673 CMakeFiles/ocean.dir/src/graphics/graphicsdebug.cpp.o bf7241321ed3a409
-12 41 1714798632131430431 /Users/sotech117/Documents/final/adv/ocean-simulation/cmake-build-debug/StaticGLEW_autogen/mocs_compilation.cpp dc143b4497306125
-12 41 1714798632131430431 StaticGLEW_autogen/mocs_compilation.cpp dc143b4497306125
-1904 5414 1712645733171665244 CMakeFiles/ocean.dir/src/graphics/meshloader.cpp.o 64961778db90f56
-12 41 1714798632131430431 StaticGLEW_autogen/timestamp dc143b4497306125
-1 208 1714786291867142933 build.ninja dbd6bd50c232cbc4
-13 1443 1714849322439247000 ocean_autogen/mocs_compilation.cpp 43dd0284b7c480b9
-1444 1644 1714849322652629849 /Users/sotech117/Documents/final/adv/ocean-simulation/cmake-build-debug/.rcc/qrc_Resources.cpp e023bb8377457e1b
-42 3358 1714798635444441414 CMakeFiles/StaticGLEW.dir/glew/src/glew.c.o 4784775df883673d
-13 1443 1714849322439247000 /Users/sotech117/Documents/final/adv/ocean-simulation/cmake-build-debug/ocean_autogen/timestamp 43dd0284b7c480b9
+2947 4344 1715274669529296463 CMakeFiles/ocean.dir/src/ocean/ocean.cpp.o 960e422714c6a8ba
+1848 2039 1715274667230803612 .rcc/qrc_Resources.cpp e023bb8377457e1b
+54 1003 1715281217677853384 CMakeFiles/ocean.dir/src/ocean/ocean_alt.cpp.o ad7112753002ff6a
+1461 4462 1715280373353844511 CMakeFiles/ocean.dir/src/arap.cpp.o 46f485071c8cb61b
+1452 4403 1715280373286798214 CMakeFiles/ocean.dir/ocean_autogen/mocs_compilation.cpp.o a0b6000c88b7e2e0
+13 50 1715281216730706979 /Users/sotech117/Documents/final/adv/ocean-simulation/cmake-build-debug/ocean_autogen/mocs_compilation.cpp 43dd0284b7c480b9
+2046 4734 1715274669919280047 CMakeFiles/ocean.dir/src/graphics/shader.cpp.o 267b6ae673a33204
+13 50 1715281216730706979 ocean_autogen/timestamp 43dd0284b7c480b9
1899 4665 1712645732404853458 CMakeFiles/ocean.dir/src/graphics/camera.cpp.o d624ce2b01ab1415
-13 1443 1714849322439247000 ocean_autogen/timestamp 43dd0284b7c480b9
-13 1443 1714849322439247000 /Users/sotech117/Documents/final/adv/ocean-simulation/cmake-build-debug/ocean_autogen/mocs_compilation.cpp 43dd0284b7c480b9
-1644 3711 1714849324706874005 CMakeFiles/ocean.dir/ocean_autogen/mocs_compilation.cpp.o a0b6000c88b7e2e0
-5173 6446 1714798638528665913 CMakeFiles/ocean.dir/src/graphics/shader.cpp.o 267b6ae673a33204
-1646 3824 1714849324823821994 CMakeFiles/ocean.dir/src/arap.cpp.o 46f485071c8cb61b
-1444 1644 1714849322652629849 .rcc/qrc_Resources.cpp e023bb8377457e1b
-5622 6431 1714798638512399688 CMakeFiles/ocean.dir/src/ocean/ocean.cpp.o 960e422714c6a8ba
-1647 2974 1714849323972820909 CMakeFiles/ocean.dir/src/ocean/ocean_alt.cpp.o ad7112753002ff6a
-12 1343 1714849489919521000 ocean_autogen/timestamp 43dd0284b7c480b9
-12 1343 1714849489919521000 ocean_autogen/mocs_compilation.cpp 43dd0284b7c480b9
-12 1343 1714849489919521000 /Users/sotech117/Documents/final/adv/ocean-simulation/cmake-build-debug/ocean_autogen/timestamp 43dd0284b7c480b9
-12 1343 1714849489919521000 /Users/sotech117/Documents/final/adv/ocean-simulation/cmake-build-debug/ocean_autogen/mocs_compilation.cpp 43dd0284b7c480b9
-1343 3058 1714849491634745870 CMakeFiles/ocean.dir/src/mainwindow.cpp.o b8eab0029b0c2d42
-1344 3066 1714849491644097365 CMakeFiles/ocean.dir/src/main.cpp.o 11d1d3bb5133c4bd
-1343 3071 1714849491648431194 CMakeFiles/ocean.dir/ocean_autogen/mocs_compilation.cpp.o a0b6000c88b7e2e0
-12 54 1714849512803933609 ocean_autogen/timestamp 43dd0284b7c480b9
-12 54 1714849512803933609 ocean_autogen/mocs_compilation.cpp 43dd0284b7c480b9
-12 54 1714849512803933609 /Users/sotech117/Documents/final/adv/ocean-simulation/cmake-build-debug/ocean_autogen/timestamp 43dd0284b7c480b9
-12 54 1714849512803933609 /Users/sotech117/Documents/final/adv/ocean-simulation/cmake-build-debug/ocean_autogen/mocs_compilation.cpp 43dd0284b7c480b9
-59 2256 1714849514995444844 CMakeFiles/ocean.dir/src/glwidget.cpp.o b59369eca2fe4e32
-2256 2378 1714849515124708731 ocean 90ea6245b9d0c531
-12 48 1714849546910108212 ocean_autogen/timestamp 43dd0284b7c480b9
-12 48 1714849546910108212 ocean_autogen/mocs_compilation.cpp 43dd0284b7c480b9
-12 48 1714849546910108212 /Users/sotech117/Documents/final/adv/ocean-simulation/cmake-build-debug/ocean_autogen/timestamp 43dd0284b7c480b9
-12 48 1714849546910108212 /Users/sotech117/Documents/final/adv/ocean-simulation/cmake-build-debug/ocean_autogen/mocs_compilation.cpp 43dd0284b7c480b9
-12 903 1714849585867613000 ocean_autogen/timestamp 43dd0284b7c480b9
-12 903 1714849585867613000 ocean_autogen/mocs_compilation.cpp 43dd0284b7c480b9
-12 903 1714849585867613000 /Users/sotech117/Documents/final/adv/ocean-simulation/cmake-build-debug/ocean_autogen/timestamp 43dd0284b7c480b9
-12 903 1714849585867613000 /Users/sotech117/Documents/final/adv/ocean-simulation/cmake-build-debug/ocean_autogen/mocs_compilation.cpp 43dd0284b7c480b9
-13 1371 1714849679964127000 ocean_autogen/timestamp 43dd0284b7c480b9
-13 1371 1714849679964127000 ocean_autogen/mocs_compilation.cpp 43dd0284b7c480b9
-13 1371 1714849679964127000 /Users/sotech117/Documents/final/adv/ocean-simulation/cmake-build-debug/ocean_autogen/timestamp 43dd0284b7c480b9
-13 1371 1714849679964127000 /Users/sotech117/Documents/final/adv/ocean-simulation/cmake-build-debug/ocean_autogen/mocs_compilation.cpp 43dd0284b7c480b9
-12 1419 1714849740909476000 ocean_autogen/timestamp 43dd0284b7c480b9
-12 1419 1714849740909476000 ocean_autogen/mocs_compilation.cpp 43dd0284b7c480b9
-12 1419 1714849740909476000 /Users/sotech117/Documents/final/adv/ocean-simulation/cmake-build-debug/ocean_autogen/timestamp 43dd0284b7c480b9
-12 1419 1714849740909476000 /Users/sotech117/Documents/final/adv/ocean-simulation/cmake-build-debug/ocean_autogen/mocs_compilation.cpp 43dd0284b7c480b9
-1420 3366 1714849742859070429 CMakeFiles/ocean.dir/src/main.cpp.o 11d1d3bb5133c4bd
-1419 3374 1714849742869732936 CMakeFiles/ocean.dir/ocean_autogen/mocs_compilation.cpp.o a0b6000c88b7e2e0
-1419 3406 1714849742902087877 CMakeFiles/ocean.dir/src/mainwindow.cpp.o b8eab0029b0c2d42
-1421 3822 1714849743317925525 CMakeFiles/ocean.dir/src/glwidget.cpp.o b59369eca2fe4e32
-3822 3938 1714849743440390980 ocean 90ea6245b9d0c531
-13 50 1714849812101018777 ocean_autogen/timestamp 43dd0284b7c480b9
-13 50 1714849812101018777 ocean_autogen/mocs_compilation.cpp 43dd0284b7c480b9
-13 50 1714849812101018777 /Users/sotech117/Documents/final/adv/ocean-simulation/cmake-build-debug/ocean_autogen/timestamp 43dd0284b7c480b9
-13 50 1714849812101018777 /Users/sotech117/Documents/final/adv/ocean-simulation/cmake-build-debug/ocean_autogen/mocs_compilation.cpp 43dd0284b7c480b9
-55 2158 1714849814198824051 CMakeFiles/ocean.dir/src/glwidget.cpp.o b59369eca2fe4e32
-2159 2268 1714849814316943052 ocean 90ea6245b9d0c531
-12 47 1714849854255275738 ocean_autogen/timestamp 43dd0284b7c480b9
-12 47 1714849854255275738 ocean_autogen/mocs_compilation.cpp 43dd0284b7c480b9
-12 47 1714849854255275738 /Users/sotech117/Documents/final/adv/ocean-simulation/cmake-build-debug/ocean_autogen/timestamp 43dd0284b7c480b9
-12 47 1714849854255275738 /Users/sotech117/Documents/final/adv/ocean-simulation/cmake-build-debug/ocean_autogen/mocs_compilation.cpp 43dd0284b7c480b9
-52 2271 1714849856467743692 CMakeFiles/ocean.dir/src/glwidget.cpp.o b59369eca2fe4e32
-2271 2381 1714849856586742326 ocean 90ea6245b9d0c531
-12 1395 1714850004866419000 ocean_autogen/timestamp 43dd0284b7c480b9
-12 1395 1714850004866419000 ocean_autogen/mocs_compilation.cpp 43dd0284b7c480b9
-12 1395 1714850004866419000 /Users/sotech117/Documents/final/adv/ocean-simulation/cmake-build-debug/ocean_autogen/timestamp 43dd0284b7c480b9
-12 1395 1714850004866419000 /Users/sotech117/Documents/final/adv/ocean-simulation/cmake-build-debug/ocean_autogen/mocs_compilation.cpp 43dd0284b7c480b9
-1395 3342 1714850006815112363 CMakeFiles/ocean.dir/ocean_autogen/mocs_compilation.cpp.o a0b6000c88b7e2e0
-1395 3348 1714850006819452984 CMakeFiles/ocean.dir/src/mainwindow.cpp.o b8eab0029b0c2d42
-1396 3357 1714850006832743054 CMakeFiles/ocean.dir/src/main.cpp.o 11d1d3bb5133c4bd
-12 49 1714850057707318528 ocean_autogen/timestamp 43dd0284b7c480b9
-12 49 1714850057707318528 ocean_autogen/mocs_compilation.cpp 43dd0284b7c480b9
-12 49 1714850057707318528 /Users/sotech117/Documents/final/adv/ocean-simulation/cmake-build-debug/ocean_autogen/timestamp 43dd0284b7c480b9
-12 49 1714850057707318528 /Users/sotech117/Documents/final/adv/ocean-simulation/cmake-build-debug/ocean_autogen/mocs_compilation.cpp 43dd0284b7c480b9
-53 2317 1714850059965615495 CMakeFiles/ocean.dir/src/glwidget.cpp.o b59369eca2fe4e32
-2317 2433 1714850060089833714 ocean 90ea6245b9d0c531
+1848 2039 1715274667230803612 /Users/sotech117/Documents/final/adv/ocean-simulation/cmake-build-debug/.rcc/qrc_Resources.cpp e023bb8377457e1b
+0 312 1715274665170073627 build.ninja dbd6bd50c232cbc4
+13 50 1715281216730706979 ocean_autogen/mocs_compilation.cpp 43dd0284b7c480b9
+13 50 1715281216730706979 /Users/sotech117/Documents/final/adv/ocean-simulation/cmake-build-debug/ocean_autogen/timestamp 43dd0284b7c480b9
+39 439 1715274665627645867 CMakeFiles/StaticGLEW.dir/glew/src/glew.c.o 4784775df883673d
+13 38 1715274665230530986 StaticGLEW_autogen/timestamp dc143b4497306125
+1904 5414 1712645733171665244 CMakeFiles/ocean.dir/src/graphics/meshloader.cpp.o 64961778db90f56
+13 38 1715274665230530986 StaticGLEW_autogen/mocs_compilation.cpp dc143b4497306125
+13 38 1715274665230530986 /Users/sotech117/Documents/final/adv/ocean-simulation/cmake-build-debug/StaticGLEW_autogen/mocs_compilation.cpp dc143b4497306125
+2043 2947 1715274668133653802 CMakeFiles/ocean.dir/src/graphics/graphicsdebug.cpp.o bf7241321ed3a409
+439 519 1715274665712161000 libStaticGLEW.a 8b4a852037c57830
+1003 1128 1715281217805809420 ocean 90ea6245b9d0c531
+4734 7910 1715274673090001677 CMakeFiles/ocean.dir/cmake-build-debug/.rcc/qrc_Resources.cpp.o 5414beaf8d128308
+1465 4774 1715280373664251970 CMakeFiles/ocean.dir/src/glwidget.cpp.o b59369eca2fe4e32
+1454 4406 1715280373288458479 CMakeFiles/ocean.dir/src/main.cpp.o 11d1d3bb5133c4bd
+2048 5185 1715274670365151792 CMakeFiles/ocean.dir/src/graphics/shape.cpp.o fad1395b11fceaa7
+78 110 1712645727876186134 CMakeFiles/StaticGLEW.dir/StaticGLEW_autogen/mocs_compilation.cpp.o cf14dd1335b34a8d
+1453 4308 1715280373192267033 CMakeFiles/ocean.dir/src/mainwindow.cpp.o b8eab0029b0c2d42
+13 38 1715274665230530986 /Users/sotech117/Documents/final/adv/ocean-simulation/cmake-build-debug/StaticGLEW_autogen/timestamp dc143b4497306125
+12 50 1715281268927907042 ocean_autogen/timestamp 43dd0284b7c480b9
+12 50 1715281268927907042 ocean_autogen/mocs_compilation.cpp 43dd0284b7c480b9
+12 50 1715281268927907042 /Users/sotech117/Documents/final/adv/ocean-simulation/cmake-build-debug/ocean_autogen/timestamp 43dd0284b7c480b9
+12 50 1715281268927907042 /Users/sotech117/Documents/final/adv/ocean-simulation/cmake-build-debug/ocean_autogen/mocs_compilation.cpp 43dd0284b7c480b9
+55 1023 1715281269895587725 CMakeFiles/ocean.dir/src/ocean/ocean_alt.cpp.o ad7112753002ff6a
+1023 1134 1715281270009164793 ocean 90ea6245b9d0c531
+16 64 1715281338252186848 ocean_autogen/timestamp 43dd0284b7c480b9
+16 64 1715281338252186848 ocean_autogen/mocs_compilation.cpp 43dd0284b7c480b9
+16 64 1715281338252186848 /Users/sotech117/Documents/final/adv/ocean-simulation/cmake-build-debug/ocean_autogen/timestamp 43dd0284b7c480b9
+16 64 1715281338252186848 /Users/sotech117/Documents/final/adv/ocean-simulation/cmake-build-debug/ocean_autogen/mocs_compilation.cpp 43dd0284b7c480b9
+69 1286 1715281339468067863 CMakeFiles/ocean.dir/src/ocean/ocean_alt.cpp.o ad7112753002ff6a
+1286 1448 1715281339634009005 ocean 90ea6245b9d0c531
diff --git a/cmake-build-debug/.rcc/Resources.qrc b/cmake-build-debug/.rcc/Resources.qrc
index d9e170f..8cf8334 100755
--- a/cmake-build-debug/.rcc/Resources.qrc
+++ b/cmake-build-debug/.rcc/Resources.qrc
@@ -15,6 +15,8 @@
<file alias="resources/shaders/anchorPoint.frag">/Users/sotech117/Documents/final/adv/ocean-simulation/resources/shaders/anchorPoint.frag</file>
<file alias="resources/shaders/texture.vert">/Users/sotech117/Documents/final/adv/ocean-simulation/resources/shaders/texture.vert</file>
<file alias="resources/shaders/texture.frag">/Users/sotech117/Documents/final/adv/ocean-simulation/resources/shaders/texture.frag</file>
+ <file alias="resources/shaders/color.vert">/Users/sotech117/Documents/final/adv/ocean-simulation/resources/shaders/color.vert</file>
+ <file alias="resources/shaders/color.frag">/Users/sotech117/Documents/final/adv/ocean-simulation/resources/shaders/color.frag</file>
</qresource>
</RCC>
diff --git a/cmake-build-debug/.rcc/qrc_Resources.cpp b/cmake-build-debug/.rcc/qrc_Resources.cpp
index 32602c5..aea2901 100644
--- a/cmake-build-debug/.rcc/qrc_Resources.cpp
+++ b/cmake-build-debug/.rcc/qrc_Resources.cpp
@@ -7,7 +7,305 @@
*****************************************************************************/
static const unsigned char qt_resource_data[] = {
- // /Users/sotech117/Documents/final/adv/ocean-simulation/resources/shaders/texture.vert
+ // /Users/sotech117/Documents/final/adv/ocean-simulation/resources/shaders/color.vert
+ 0x0,0x0,0xc,0xf2,
+ 0x23,
+ 0x76,0x65,0x72,0x73,0x69,0x6f,0x6e,0x20,0x33,0x33,0x30,0x20,0x63,0x6f,0x72,0x65,
+ 0xa,0xa,0x6c,0x61,0x79,0x6f,0x75,0x74,0x28,0x6c,0x6f,0x63,0x61,0x74,0x69,0x6f,
+ 0x6e,0x20,0x3d,0x20,0x30,0x29,0x20,0x69,0x6e,0x20,0x76,0x65,0x63,0x33,0x20,0x70,
+ 0x6f,0x73,0x69,0x74,0x69,0x6f,0x6e,0x3b,0x20,0x2f,0x2f,0x20,0x50,0x6f,0x73,0x69,
+ 0x74,0x69,0x6f,0x6e,0x20,0x6f,0x66,0x20,0x74,0x68,0x65,0x20,0x76,0x65,0x72,0x74,
+ 0x65,0x78,0xa,0x6c,0x61,0x79,0x6f,0x75,0x74,0x28,0x6c,0x6f,0x63,0x61,0x74,0x69,
+ 0x6f,0x6e,0x20,0x3d,0x20,0x31,0x29,0x20,0x69,0x6e,0x20,0x76,0x65,0x63,0x33,0x20,
+ 0x6e,0x6f,0x72,0x6d,0x61,0x6c,0x3b,0x20,0x20,0x20,0x2f,0x2f,0x20,0x4e,0x6f,0x72,
+ 0x6d,0x61,0x6c,0x20,0x6f,0x66,0x20,0x74,0x68,0x65,0x20,0x76,0x65,0x72,0x74,0x65,
+ 0x78,0xa,0x6c,0x61,0x79,0x6f,0x75,0x74,0x28,0x6c,0x6f,0x63,0x61,0x74,0x69,0x6f,
+ 0x6e,0x20,0x3d,0x20,0x32,0x29,0x20,0x69,0x6e,0x20,0x76,0x65,0x63,0x33,0x20,0x74,
+ 0x65,0x78,0x43,0x6f,0x6f,0x72,0x64,0x73,0x3b,0x20,0x20,0x20,0x2f,0x2f,0x20,0x4e,
+ 0x6f,0x72,0x6d,0x61,0x6c,0x20,0x6f,0x66,0x20,0x74,0x68,0x65,0x20,0x76,0x65,0x72,
+ 0x74,0x65,0x78,0xa,0xa,0x75,0x6e,0x69,0x66,0x6f,0x72,0x6d,0x20,0x66,0x6c,0x6f,
+ 0x61,0x74,0x20,0x64,0x65,0x70,0x74,0x68,0x20,0x3d,0x20,0x2d,0x33,0x30,0x30,0x30,
+ 0x2e,0x66,0x3b,0xa,0x75,0x6e,0x69,0x66,0x6f,0x72,0x6d,0x20,0x66,0x6c,0x6f,0x61,
+ 0x74,0x20,0x73,0x6b,0x79,0x48,0x65,0x69,0x67,0x68,0x74,0x20,0x3d,0x20,0x35,0x30,
+ 0x30,0x2e,0x66,0x3b,0xa,0x75,0x6e,0x69,0x66,0x6f,0x72,0x6d,0x20,0x6d,0x61,0x74,
+ 0x34,0x20,0x70,0x72,0x6f,0x6a,0x3b,0xa,0x75,0x6e,0x69,0x66,0x6f,0x72,0x6d,0x20,
+ 0x6d,0x61,0x74,0x34,0x20,0x76,0x69,0x65,0x77,0x3b,0xa,0x75,0x6e,0x69,0x66,0x6f,
+ 0x72,0x6d,0x20,0x6d,0x61,0x74,0x34,0x20,0x6d,0x6f,0x64,0x65,0x6c,0x3b,0xa,0x75,
+ 0x6e,0x69,0x66,0x6f,0x72,0x6d,0x20,0x6d,0x61,0x74,0x34,0x20,0x69,0x6e,0x76,0x65,
+ 0x72,0x73,0x65,0x56,0x69,0x65,0x77,0x3b,0xa,0x2f,0x2f,0x75,0x6e,0x69,0x66,0x6f,
+ 0x72,0x6d,0x20,0x66,0x6c,0x6f,0x61,0x74,0x20,0x77,0x69,0x64,0x74,0x68,0x3b,0xa,
+ 0x2f,0x2f,0x75,0x6e,0x69,0x66,0x6f,0x72,0x6d,0x20,0x66,0x6c,0x6f,0x61,0x74,0x20,
+ 0x68,0x65,0x69,0x67,0x68,0x74,0x3b,0x20,0x2f,0x2f,0x20,0x54,0x4f,0x44,0x4f,0x3a,
+ 0x20,0x50,0x61,0x73,0x73,0x20,0x69,0x6e,0x20,0x77,0x69,0x64,0x74,0x68,0x20,0x61,
+ 0x6e,0x64,0x20,0x68,0x65,0x69,0x67,0x68,0x74,0x20,0x61,0x73,0x20,0x75,0x6e,0x69,
+ 0x66,0x6f,0x72,0x6d,0xa,0xa,0x75,0x6e,0x69,0x66,0x6f,0x72,0x6d,0x20,0x6d,0x61,
+ 0x74,0x33,0x20,0x69,0x6e,0x76,0x65,0x72,0x73,0x65,0x54,0x72,0x61,0x6e,0x73,0x70,
+ 0x6f,0x73,0x65,0x4d,0x6f,0x64,0x65,0x6c,0x3b,0xa,0xa,0x6f,0x75,0x74,0x20,0x76,
+ 0x65,0x63,0x33,0x20,0x6e,0x6f,0x72,0x6d,0x61,0x6c,0x5f,0x63,0x61,0x6d,0x65,0x72,
+ 0x61,0x53,0x70,0x61,0x63,0x65,0x3b,0xa,0x6f,0x75,0x74,0x20,0x76,0x65,0x63,0x33,
+ 0x20,0x6e,0x6f,0x72,0x6d,0x61,0x6c,0x5f,0x77,0x6f,0x72,0x6c,0x64,0x53,0x70,0x61,
+ 0x63,0x65,0x3b,0xa,0x6f,0x75,0x74,0x20,0x76,0x65,0x63,0x33,0x20,0x63,0x61,0x6d,
+ 0x65,0x72,0x61,0x5f,0x77,0x6f,0x72,0x6c,0x64,0x53,0x70,0x61,0x63,0x65,0x3b,0xa,
+ 0x6f,0x75,0x74,0x20,0x76,0x65,0x63,0x33,0x20,0x70,0x6f,0x73,0x3b,0xa,0x6f,0x75,
+ 0x74,0x20,0x66,0x6c,0x6f,0x61,0x74,0x20,0x69,0x6e,0x74,0x65,0x6e,0x73,0x69,0x74,
+ 0x79,0x3b,0xa,0x6f,0x75,0x74,0x20,0x76,0x65,0x63,0x33,0x20,0x6f,0x6c,0x64,0x50,
+ 0x6f,0x73,0x46,0x6c,0x61,0x74,0x3b,0xa,0xa,0x75,0x6e,0x69,0x66,0x6f,0x72,0x6d,
+ 0x20,0x76,0x65,0x63,0x32,0x20,0x77,0x69,0x64,0x74,0x68,0x42,0x6f,0x75,0x6e,0x64,
+ 0x73,0x3b,0xa,0x75,0x6e,0x69,0x66,0x6f,0x72,0x6d,0x20,0x76,0x65,0x63,0x32,0x20,
+ 0x6c,0x65,0x6e,0x67,0x74,0x68,0x42,0x6f,0x75,0x6e,0x64,0x73,0x3b,0xa,0xa,0x76,
+ 0x65,0x63,0x33,0x20,0x6d,0x6f,0x76,0x65,0x54,0x6f,0x54,0x6f,0x70,0x44,0x6f,0x77,
+ 0x6e,0x28,0x76,0x65,0x63,0x33,0x20,0x70,0x29,0x20,0x7b,0xa,0x20,0x20,0x20,0x20,
+ 0x72,0x65,0x74,0x75,0x72,0x6e,0x20,0x76,0x65,0x63,0x33,0x28,0x28,0x70,0x5b,0x30,
+ 0x5d,0x20,0x2d,0x20,0x28,0x28,0x77,0x69,0x64,0x74,0x68,0x42,0x6f,0x75,0x6e,0x64,
+ 0x73,0x5b,0x30,0x5d,0x20,0x2b,0x20,0x77,0x69,0x64,0x74,0x68,0x42,0x6f,0x75,0x6e,
+ 0x64,0x73,0x5b,0x31,0x5d,0x29,0x20,0x2f,0x20,0x32,0x29,0x29,0x20,0x2f,0x20,0x28,
+ 0x77,0x69,0x64,0x74,0x68,0x42,0x6f,0x75,0x6e,0x64,0x73,0x5b,0x31,0x5d,0x20,0x2d,
+ 0x20,0x77,0x69,0x64,0x74,0x68,0x42,0x6f,0x75,0x6e,0x64,0x73,0x5b,0x30,0x5d,0x29,
+ 0x20,0x2a,0x20,0x32,0x2c,0xa,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,
+ 0x20,0x20,0x2d,0x28,0x70,0x5b,0x32,0x5d,0x20,0x2d,0x20,0x28,0x28,0x6c,0x65,0x6e,
+ 0x67,0x74,0x68,0x42,0x6f,0x75,0x6e,0x64,0x73,0x5b,0x30,0x5d,0x20,0x2b,0x20,0x6c,
+ 0x65,0x6e,0x67,0x74,0x68,0x42,0x6f,0x75,0x6e,0x64,0x73,0x5b,0x31,0x5d,0x29,0x20,
+ 0x2f,0x20,0x32,0x29,0x29,0x20,0x2a,0x20,0x32,0x20,0x2f,0x20,0x28,0x6c,0x65,0x6e,
+ 0x67,0x74,0x68,0x42,0x6f,0x75,0x6e,0x64,0x73,0x5b,0x31,0x5d,0x20,0x2d,0x20,0x6c,
+ 0x65,0x6e,0x67,0x74,0x68,0x42,0x6f,0x75,0x6e,0x64,0x73,0x5b,0x30,0x5d,0x29,0x2c,
+ 0x20,0x30,0x2e,0x66,0x29,0x3b,0xa,0x7d,0xa,0xa,0x76,0x65,0x63,0x34,0x20,0x72,
+ 0x65,0x66,0x72,0x61,0x63,0x74,0x54,0x6f,0x46,0x6c,0x6f,0x6f,0x72,0x28,0x76,0x65,
+ 0x63,0x33,0x20,0x6c,0x2c,0x20,0x76,0x65,0x63,0x33,0x20,0x70,0x2c,0x20,0x76,0x65,
+ 0x63,0x33,0x20,0x6e,0x2c,0x20,0x66,0x6c,0x6f,0x61,0x74,0x20,0x64,0x29,0x20,0x7b,
+ 0xa,0x20,0x20,0x20,0x20,0x2f,0x2f,0x20,0x52,0x65,0x66,0x72,0x61,0x63,0x74,0x73,
+ 0x20,0x69,0x6e,0x63,0x6f,0x6d,0x69,0x6e,0x67,0x20,0x6c,0x69,0x67,0x68,0x74,0x20,
+ 0x64,0x69,0x72,0x65,0x63,0x74,0x69,0x6f,0x6e,0x20,0x6c,0x20,0x74,0x68,0x72,0x6f,
+ 0x75,0x67,0x68,0x20,0x6e,0x6f,0x72,0x6d,0x61,0x6c,0x20,0x6e,0x20,0x61,0x74,0x20,
+ 0x70,0x6f,0x69,0x6e,0x74,0x20,0x70,0x20,0x75,0x6e,0x74,0x69,0x6c,0x20,0x68,0x69,
+ 0x74,0x73,0x20,0x66,0x6c,0x6f,0x6f,0x72,0x20,0x61,0x74,0x20,0x64,0x65,0x70,0x74,
+ 0x68,0x20,0x64,0xa,0x20,0x20,0x20,0x20,0x76,0x65,0x63,0x33,0x20,0x77,0x5f,0x6f,
+ 0x20,0x3d,0x20,0x6e,0x6f,0x72,0x6d,0x61,0x6c,0x69,0x7a,0x65,0x28,0x6c,0x29,0x3b,
+ 0xa,0x20,0x20,0x20,0x20,0x66,0x6c,0x6f,0x61,0x74,0x20,0x63,0x6f,0x73,0x5f,0x74,
+ 0x68,0x65,0x74,0x61,0x5f,0x69,0x20,0x3d,0x20,0x64,0x6f,0x74,0x28,0x2d,0x77,0x5f,
+ 0x6f,0x2c,0x20,0x6e,0x29,0x3b,0xa,0x20,0x20,0x20,0x20,0x66,0x6c,0x6f,0x61,0x74,
+ 0x20,0x6e,0x5f,0x69,0x20,0x3d,0x20,0x31,0x3b,0xa,0x20,0x20,0x20,0x20,0x66,0x6c,
+ 0x6f,0x61,0x74,0x20,0x6e,0x5f,0x74,0x20,0x3d,0x20,0x31,0x2e,0x33,0x33,0x66,0x3b,
+ 0xa,0x20,0x20,0x20,0x20,0x66,0x6c,0x6f,0x61,0x74,0x20,0x64,0x65,0x74,0x65,0x72,
+ 0x6d,0x69,0x6e,0x61,0x6e,0x74,0x20,0x3d,0x20,0x31,0x2e,0x66,0x20,0x2d,0x20,0x28,
+ 0x70,0x6f,0x77,0x28,0x28,0x6e,0x5f,0x69,0x20,0x2f,0x20,0x6e,0x5f,0x74,0x29,0x2c,
+ 0x20,0x32,0x2e,0x66,0x29,0x20,0x2a,0x20,0x28,0x31,0x2e,0x66,0x20,0x2d,0x20,0x70,
+ 0x6f,0x77,0x28,0x63,0x6f,0x73,0x5f,0x74,0x68,0x65,0x74,0x61,0x5f,0x69,0x2c,0x20,
+ 0x32,0x2e,0x66,0x29,0x29,0x29,0x3b,0xa,0xa,0x20,0x20,0x20,0x20,0x66,0x6c,0x6f,
+ 0x61,0x74,0x20,0x72,0x30,0x20,0x3d,0x20,0x70,0x6f,0x77,0x28,0x28,0x6e,0x5f,0x69,
+ 0x20,0x2d,0x20,0x6e,0x5f,0x74,0x29,0x20,0x2f,0x20,0x28,0x6e,0x5f,0x69,0x20,0x2b,
+ 0x20,0x6e,0x5f,0x74,0x29,0x2c,0x20,0x32,0x2e,0x66,0x29,0x3b,0x20,0x2f,0x2f,0x20,
+ 0x76,0x61,0x72,0x69,0x61,0x62,0x6c,0x65,0x20,0x72,0x65,0x71,0x75,0x69,0x72,0x65,
+ 0x64,0x20,0x74,0x6f,0x20,0x63,0x61,0x6c,0x63,0x75,0x6c,0x61,0x74,0x65,0x20,0x70,
+ 0x72,0x6f,0x62,0x61,0x62,0x69,0x6c,0x69,0x74,0x79,0x20,0x6f,0x66,0x20,0x72,0x65,
+ 0x66,0x6c,0x65,0x63,0x74,0x69,0x6f,0x6e,0xa,0x20,0x20,0x20,0x20,0x66,0x6c,0x6f,
+ 0x61,0x74,0x20,0x70,0x72,0x6f,0x62,0x5f,0x74,0x6f,0x5f,0x72,0x65,0x66,0x6c,0x20,
+ 0x3d,0x20,0x72,0x30,0x20,0x2b,0x20,0x28,0x28,0x31,0x20,0x2d,0x20,0x72,0x30,0x29,
+ 0x20,0x2a,0x20,0x70,0x6f,0x77,0x28,0x28,0x31,0x20,0x2d,0x20,0x63,0x6f,0x73,0x5f,
+ 0x74,0x68,0x65,0x74,0x61,0x5f,0x69,0x29,0x2c,0x20,0x35,0x2e,0x66,0x29,0x29,0x3b,
+ 0xa,0xa,0x20,0x20,0x20,0x20,0x69,0x66,0x20,0x28,0x64,0x65,0x74,0x65,0x72,0x6d,
+ 0x69,0x6e,0x61,0x6e,0x74,0x20,0x3e,0x3d,0x20,0x30,0x29,0x20,0x7b,0xa,0x20,0x20,
+ 0x20,0x20,0x20,0x20,0x20,0x20,0x66,0x6c,0x6f,0x61,0x74,0x20,0x63,0x6f,0x73,0x5f,
+ 0x74,0x68,0x65,0x74,0x61,0x5f,0x74,0x20,0x3d,0x20,0x73,0x71,0x72,0x74,0x28,0x64,
+ 0x65,0x74,0x65,0x72,0x6d,0x69,0x6e,0x61,0x6e,0x74,0x29,0x3b,0xa,0x20,0x20,0x20,
+ 0x20,0x20,0x20,0x20,0x20,0x76,0x65,0x63,0x33,0x20,0x77,0x5f,0x74,0x20,0x3d,0x20,
+ 0x28,0x6e,0x5f,0x69,0x20,0x2f,0x20,0x6e,0x5f,0x74,0x29,0x20,0x2a,0x20,0x77,0x5f,
+ 0x6f,0x20,0x2b,0x20,0x28,0x28,0x6e,0x5f,0x69,0x20,0x2f,0x20,0x6e,0x5f,0x74,0x29,
+ 0x20,0x2a,0x20,0x63,0x6f,0x73,0x5f,0x74,0x68,0x65,0x74,0x61,0x5f,0x69,0x20,0x2d,
+ 0x20,0x63,0x6f,0x73,0x5f,0x74,0x68,0x65,0x74,0x61,0x5f,0x74,0x29,0x20,0x2a,0x20,
+ 0x6e,0x3b,0xa,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x66,0x6c,0x6f,0x61,0x74,
+ 0x20,0x64,0x69,0x73,0x74,0x20,0x3d,0x20,0x70,0x2e,0x79,0x20,0x2d,0x20,0x64,0x3b,
+ 0xa,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x66,0x6c,0x6f,0x61,0x74,0x20,0x64,
+ 0x65,0x70,0x74,0x68,0x53,0x63,0x61,0x6c,0x65,0x20,0x3d,0x20,0x64,0x69,0x73,0x74,
+ 0x20,0x2f,0x20,0x77,0x5f,0x74,0x2e,0x79,0x3b,0xa,0x20,0x20,0x20,0x20,0x20,0x20,
+ 0x20,0x20,0x76,0x65,0x63,0x33,0x20,0x67,0x72,0x6f,0x75,0x6e,0x64,0x43,0x6f,0x6e,
+ 0x74,0x61,0x63,0x74,0x50,0x6f,0x69,0x6e,0x74,0x20,0x3d,0x20,0x2d,0x28,0x77,0x5f,
+ 0x74,0x20,0x2a,0x20,0x64,0x65,0x70,0x74,0x68,0x53,0x63,0x61,0x6c,0x65,0x29,0x20,
+ 0x2b,0x20,0x70,0x3b,0xa,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x72,0x65,0x74,
+ 0x75,0x72,0x6e,0x20,0x76,0x65,0x63,0x34,0x28,0x67,0x72,0x6f,0x75,0x6e,0x64,0x43,
+ 0x6f,0x6e,0x74,0x61,0x63,0x74,0x50,0x6f,0x69,0x6e,0x74,0x2c,0x20,0x31,0x2e,0x66,
+ 0x20,0x2d,0x20,0x70,0x72,0x6f,0x62,0x5f,0x74,0x6f,0x5f,0x72,0x65,0x66,0x6c,0x29,
+ 0x3b,0xa,0x20,0x20,0x20,0x20,0x7d,0x20,0x65,0x6c,0x73,0x65,0x20,0x7b,0xa,0x20,
+ 0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x72,0x65,0x74,0x75,0x72,0x6e,0x20,0x76,0x65,
+ 0x63,0x34,0x28,0x30,0x2c,0x20,0x30,0x2c,0x20,0x30,0x2c,0x20,0x30,0x29,0x3b,0xa,
+ 0x20,0x20,0x20,0x20,0x7d,0xa,0x7d,0xa,0xa,0x76,0x65,0x63,0x33,0x20,0x77,0x72,
+ 0x61,0x70,0x47,0x4c,0x28,0x76,0x65,0x63,0x33,0x20,0x70,0x29,0x20,0x7b,0xa,0x20,
+ 0x20,0x20,0x20,0x66,0x6c,0x6f,0x61,0x74,0x20,0x6e,0x65,0x77,0x58,0x20,0x3d,0x20,
+ 0x70,0x5b,0x30,0x5d,0x3b,0xa,0x20,0x20,0x20,0x20,0x66,0x6c,0x6f,0x61,0x74,0x20,
+ 0x6e,0x65,0x77,0x59,0x20,0x3d,0x20,0x70,0x5b,0x31,0x5d,0x3b,0xa,0xa,0x20,0x20,
+ 0x20,0x20,0x6e,0x65,0x77,0x58,0x20,0x3d,0x20,0x6d,0x6f,0x64,0x28,0x6e,0x65,0x77,
+ 0x58,0x20,0x2b,0x20,0x31,0x2e,0x66,0x2c,0x20,0x32,0x2e,0x66,0x29,0x20,0x2d,0x20,
+ 0x31,0x2e,0x66,0x3b,0xa,0xa,0x20,0x20,0x20,0x20,0x6e,0x65,0x77,0x59,0x20,0x3d,
+ 0x20,0x6d,0x6f,0x64,0x28,0x6e,0x65,0x77,0x59,0x20,0x2b,0x20,0x31,0x2e,0x66,0x2c,
+ 0x20,0x32,0x2e,0x66,0x29,0x20,0x2d,0x20,0x31,0x2e,0x66,0x3b,0xa,0xa,0x20,0x20,
+ 0x20,0x20,0x72,0x65,0x74,0x75,0x72,0x6e,0x20,0x76,0x65,0x63,0x33,0x28,0x6e,0x65,
+ 0x77,0x58,0x2c,0x20,0x6e,0x65,0x77,0x59,0x2c,0x20,0x30,0x2e,0x66,0x29,0x3b,0xa,
+ 0x7d,0xa,0xa,0x76,0x6f,0x69,0x64,0x20,0x6d,0x61,0x69,0x6e,0x28,0x29,0x20,0x7b,
+ 0xa,0x20,0x20,0x20,0x20,0x6e,0x6f,0x72,0x6d,0x61,0x6c,0x5f,0x63,0x61,0x6d,0x65,
+ 0x72,0x61,0x53,0x70,0x61,0x63,0x65,0x20,0x3d,0x20,0x6e,0x6f,0x72,0x6d,0x61,0x6c,
+ 0x69,0x7a,0x65,0x28,0x69,0x6e,0x76,0x65,0x72,0x73,0x65,0x28,0x74,0x72,0x61,0x6e,
+ 0x73,0x70,0x6f,0x73,0x65,0x28,0x6d,0x61,0x74,0x33,0x28,0x76,0x69,0x65,0x77,0x29,
+ 0x29,0x29,0x20,0x2a,0x20,0x69,0x6e,0x76,0x65,0x72,0x73,0x65,0x54,0x72,0x61,0x6e,
+ 0x73,0x70,0x6f,0x73,0x65,0x4d,0x6f,0x64,0x65,0x6c,0x20,0x2a,0x20,0x6e,0x6f,0x72,
+ 0x6d,0x61,0x6c,0x29,0x3b,0xa,0x20,0x20,0x20,0x20,0x63,0x61,0x6d,0x65,0x72,0x61,
+ 0x5f,0x77,0x6f,0x72,0x6c,0x64,0x53,0x70,0x61,0x63,0x65,0x20,0x3d,0x20,0x76,0x65,
+ 0x63,0x33,0x28,0x69,0x6e,0x76,0x65,0x72,0x73,0x65,0x56,0x69,0x65,0x77,0x20,0x2a,
+ 0x20,0x76,0x65,0x63,0x34,0x28,0x30,0x2e,0x66,0x2c,0x20,0x30,0x2e,0x66,0x2c,0x20,
+ 0x30,0x2e,0x66,0x2c,0x20,0x31,0x2e,0x66,0x29,0x29,0x3b,0xa,0x20,0x20,0x20,0x20,
+ 0x6e,0x6f,0x72,0x6d,0x61,0x6c,0x5f,0x77,0x6f,0x72,0x6c,0x64,0x53,0x70,0x61,0x63,
+ 0x65,0x20,0x3d,0x20,0x6e,0x6f,0x72,0x6d,0x61,0x6c,0x3b,0xa,0x20,0x20,0x20,0x20,
+ 0x70,0x6f,0x73,0x20,0x3d,0x20,0x76,0x65,0x63,0x33,0x28,0x6d,0x6f,0x64,0x65,0x6c,
+ 0x20,0x2a,0x20,0x76,0x65,0x63,0x34,0x28,0x70,0x6f,0x73,0x69,0x74,0x69,0x6f,0x6e,
+ 0x2c,0x20,0x31,0x2e,0x66,0x29,0x29,0x3b,0x20,0x2f,0x2f,0x76,0x65,0x63,0x33,0x28,
+ 0x6d,0x6f,0x64,0x65,0x6c,0x20,0x2a,0x20,0x76,0x65,0x63,0x34,0x28,0x6f,0x62,0x6a,
+ 0x53,0x70,0x61,0x63,0x65,0x50,0x6f,0x73,0x2c,0x20,0x31,0x2e,0x66,0x29,0x29,0x3b,
+ 0xa,0x20,0x20,0x20,0x20,0x76,0x65,0x63,0x33,0x20,0x6c,0x69,0x67,0x68,0x74,0x44,
+ 0x69,0x72,0x20,0x3d,0x20,0x2d,0x6e,0x6f,0x72,0x6d,0x61,0x6c,0x69,0x7a,0x65,0x28,
+ 0x76,0x65,0x63,0x33,0x28,0x31,0x2c,0x20,0x2d,0x31,0x2c,0x20,0x31,0x29,0x29,0x3b,
+ 0xa,0xa,0x20,0x20,0x20,0x20,0x67,0x6c,0x5f,0x50,0x6f,0x73,0x69,0x74,0x69,0x6f,
+ 0x6e,0x20,0x3d,0x20,0x70,0x72,0x6f,0x6a,0x20,0x2a,0x20,0x76,0x69,0x65,0x77,0x20,
+ 0x2a,0x20,0x6d,0x6f,0x64,0x65,0x6c,0x20,0x2a,0x20,0x76,0x65,0x63,0x34,0x28,0x70,
+ 0x6f,0x73,0x69,0x74,0x69,0x6f,0x6e,0x2c,0x20,0x31,0x29,0x3b,0xa,0xa,0x2f,0x2f,
+ 0x20,0x20,0x20,0x20,0x67,0x6c,0x5f,0x50,0x6f,0x73,0x69,0x74,0x69,0x6f,0x6e,0x20,
+ 0x3d,0x20,0x76,0x65,0x63,0x34,0x28,0x28,0x70,0x6f,0x73,0x69,0x74,0x69,0x6f,0x6e,
+ 0x5b,0x30,0x5d,0x20,0x2d,0x20,0x28,0x28,0x77,0x69,0x64,0x74,0x68,0x42,0x6f,0x75,
+ 0x6e,0x64,0x73,0x5b,0x30,0x5d,0x20,0x2b,0x20,0x77,0x69,0x64,0x74,0x68,0x42,0x6f,
+ 0x75,0x6e,0x64,0x73,0x5b,0x31,0x5d,0x29,0x20,0x2f,0x20,0x32,0x29,0x29,0x20,0x2f,
+ 0x20,0x28,0x77,0x69,0x64,0x74,0x68,0x42,0x6f,0x75,0x6e,0x64,0x73,0x5b,0x31,0x5d,
+ 0x20,0x2d,0x20,0x77,0x69,0x64,0x74,0x68,0x42,0x6f,0x75,0x6e,0x64,0x73,0x5b,0x30,
+ 0x5d,0x29,0x20,0x2a,0x20,0x32,0x2c,0xa,0x2f,0x2f,0x20,0x20,0x20,0x20,0x20,0x20,
+ 0x20,0x20,0x20,0x20,0x20,0x20,0x28,0x70,0x6f,0x73,0x69,0x74,0x69,0x6f,0x6e,0x5b,
+ 0x32,0x5d,0x20,0x2d,0x20,0x28,0x28,0x6c,0x65,0x6e,0x67,0x74,0x68,0x42,0x6f,0x75,
+ 0x6e,0x64,0x73,0x5b,0x30,0x5d,0x20,0x2b,0x20,0x6c,0x65,0x6e,0x67,0x74,0x68,0x42,
+ 0x6f,0x75,0x6e,0x64,0x73,0x5b,0x31,0x5d,0x29,0x20,0x2f,0x20,0x32,0x29,0x29,0x20,
+ 0x2f,0x20,0x28,0x6c,0x65,0x6e,0x67,0x74,0x68,0x42,0x6f,0x75,0x6e,0x64,0x73,0x5b,
+ 0x31,0x5d,0x20,0x2d,0x20,0x6c,0x65,0x6e,0x67,0x74,0x68,0x42,0x6f,0x75,0x6e,0x64,
+ 0x73,0x5b,0x30,0x5d,0x29,0x20,0x2a,0x20,0x32,0x2c,0x20,0x30,0x2e,0x66,0x2c,0x20,
+ 0x31,0x2e,0x66,0x29,0x3b,0xa,0x20,0x20,0x20,0x20,0x66,0x6c,0x6f,0x61,0x74,0x20,
+ 0x6e,0x65,0x77,0x58,0x20,0x3d,0x20,0x6d,0x6f,0x64,0x28,0x69,0x6e,0x74,0x28,0x70,
+ 0x6f,0x73,0x69,0x74,0x69,0x6f,0x6e,0x5b,0x30,0x5d,0x29,0x2c,0x20,0x33,0x29,0x20,
+ 0x2d,0x20,0x31,0x3b,0xa,0x20,0x20,0x20,0x20,0x66,0x6c,0x6f,0x61,0x74,0x20,0x6e,
+ 0x65,0x77,0x59,0x20,0x3d,0x20,0x6d,0x6f,0x64,0x28,0x69,0x6e,0x74,0x28,0x70,0x6f,
+ 0x73,0x69,0x74,0x69,0x6f,0x6e,0x5b,0x32,0x5d,0x29,0x2c,0x20,0x33,0x29,0x20,0x2d,
+ 0x20,0x31,0x3b,0xa,0xa,0x20,0x20,0x20,0x20,0x76,0x65,0x63,0x34,0x20,0x72,0x65,
+ 0x66,0x72,0x61,0x63,0x74,0x65,0x64,0x50,0x6f,0x73,0x69,0x74,0x69,0x6f,0x6e,0x41,
+ 0x6e,0x64,0x50,0x72,0x6f,0x62,0x20,0x3d,0x20,0x72,0x65,0x66,0x72,0x61,0x63,0x74,
+ 0x54,0x6f,0x46,0x6c,0x6f,0x6f,0x72,0x28,0x2d,0x6c,0x69,0x67,0x68,0x74,0x44,0x69,
+ 0x72,0x2c,0x20,0x70,0x6f,0x73,0x69,0x74,0x69,0x6f,0x6e,0x2c,0x20,0x6e,0x6f,0x72,
+ 0x6d,0x61,0x6c,0x5f,0x77,0x6f,0x72,0x6c,0x64,0x53,0x70,0x61,0x63,0x65,0x2c,0x20,
+ 0x64,0x65,0x70,0x74,0x68,0x29,0x3b,0xa,0xa,0x20,0x20,0x20,0x20,0x66,0x6c,0x6f,
+ 0x61,0x74,0x20,0x77,0x61,0x74,0x65,0x72,0x4d,0x75,0x72,0x6b,0x69,0x6e,0x65,0x73,
+ 0x73,0x20,0x3d,0x20,0x2e,0x30,0x30,0x32,0x66,0x3b,0xa,0xa,0x20,0x20,0x20,0x20,
+ 0x67,0x6c,0x5f,0x50,0x6f,0x73,0x69,0x74,0x69,0x6f,0x6e,0x20,0x3d,0x20,0x76,0x65,
+ 0x63,0x34,0x28,0x6e,0x65,0x77,0x58,0x2c,0x20,0x6e,0x65,0x77,0x59,0x2c,0x20,0x30,
+ 0x2e,0x66,0x2c,0x20,0x31,0x2e,0x66,0x29,0x3b,0xa,0xa,0x20,0x20,0x20,0x20,0x69,
+ 0x6e,0x74,0x65,0x6e,0x73,0x69,0x74,0x79,0x20,0x3d,0x20,0x72,0x65,0x66,0x72,0x61,
+ 0x63,0x74,0x65,0x64,0x50,0x6f,0x73,0x69,0x74,0x69,0x6f,0x6e,0x41,0x6e,0x64,0x50,
+ 0x72,0x6f,0x62,0x5b,0x33,0x5d,0x20,0x2a,0x20,0x63,0x6c,0x61,0x6d,0x70,0x28,0x64,
+ 0x6f,0x74,0x28,0x6e,0x6f,0x72,0x6d,0x61,0x6c,0x5f,0x77,0x6f,0x72,0x6c,0x64,0x53,
+ 0x70,0x61,0x63,0x65,0x2c,0x20,0x6c,0x69,0x67,0x68,0x74,0x44,0x69,0x72,0x29,0x2c,
+ 0x20,0x30,0x2e,0x66,0x2c,0x20,0x31,0x2e,0x66,0x29,0x20,0x2a,0x20,0x65,0x78,0x70,
+ 0x28,0x2d,0x6c,0x65,0x6e,0x67,0x74,0x68,0x28,0x28,0x70,0x6f,0x73,0x69,0x74,0x69,
+ 0x6f,0x6e,0x20,0x2d,0x20,0x76,0x65,0x63,0x33,0x28,0x72,0x65,0x66,0x72,0x61,0x63,
+ 0x74,0x65,0x64,0x50,0x6f,0x73,0x69,0x74,0x69,0x6f,0x6e,0x41,0x6e,0x64,0x50,0x72,
+ 0x6f,0x62,0x29,0x29,0x29,0x20,0x2a,0x20,0x77,0x61,0x74,0x65,0x72,0x4d,0x75,0x72,
+ 0x6b,0x69,0x6e,0x65,0x73,0x73,0x29,0x3b,0xa,0xa,0x20,0x20,0x20,0x20,0x6f,0x6c,
+ 0x64,0x50,0x6f,0x73,0x46,0x6c,0x61,0x74,0x20,0x3d,0x20,0x6d,0x6f,0x76,0x65,0x54,
+ 0x6f,0x54,0x6f,0x70,0x44,0x6f,0x77,0x6e,0x28,0x70,0x6f,0x73,0x69,0x74,0x69,0x6f,
+ 0x6e,0x29,0x3b,0xa,0x20,0x20,0x20,0x20,0x70,0x6f,0x73,0x20,0x3d,0x20,0x6d,0x6f,
+ 0x76,0x65,0x54,0x6f,0x54,0x6f,0x70,0x44,0x6f,0x77,0x6e,0x28,0x76,0x65,0x63,0x33,
+ 0x28,0x72,0x65,0x66,0x72,0x61,0x63,0x74,0x65,0x64,0x50,0x6f,0x73,0x69,0x74,0x69,
+ 0x6f,0x6e,0x41,0x6e,0x64,0x50,0x72,0x6f,0x62,0x29,0x29,0x3b,0xa,0x20,0x20,0x20,
+ 0x20,0x67,0x6c,0x5f,0x50,0x6f,0x73,0x69,0x74,0x69,0x6f,0x6e,0x20,0x3d,0x20,0x76,
+ 0x65,0x63,0x34,0x28,0x70,0x6f,0x73,0x2c,0x20,0x31,0x2e,0x66,0x29,0x3b,0xa,0x7d,
+ 0xa,
+ // /Users/sotech117/Documents/final/adv/ocean-simulation/resources/shaders/color.frag
+ 0x0,0x0,0x5,0x40,
+ 0x23,
+ 0x76,0x65,0x72,0x73,0x69,0x6f,0x6e,0x20,0x34,0x31,0x30,0x20,0x63,0x6f,0x72,0x65,
+ 0xa,0x6f,0x75,0x74,0x20,0x76,0x65,0x63,0x34,0x20,0x66,0x72,0x61,0x67,0x43,0x6f,
+ 0x6c,0x6f,0x72,0x3b,0xa,0xa,0x69,0x6e,0x20,0x76,0x65,0x63,0x33,0x20,0x6e,0x6f,
+ 0x72,0x6d,0x61,0x6c,0x5f,0x63,0x61,0x6d,0x65,0x72,0x61,0x53,0x70,0x61,0x63,0x65,
+ 0x3b,0xa,0x69,0x6e,0x20,0x76,0x65,0x63,0x33,0x20,0x63,0x61,0x6d,0x65,0x72,0x61,
+ 0x5f,0x77,0x6f,0x72,0x6c,0x64,0x53,0x70,0x61,0x63,0x65,0x3b,0xa,0x69,0x6e,0x20,
+ 0x76,0x65,0x63,0x33,0x20,0x6e,0x6f,0x72,0x6d,0x61,0x6c,0x5f,0x77,0x6f,0x72,0x6c,
+ 0x64,0x53,0x70,0x61,0x63,0x65,0x3b,0xa,0x69,0x6e,0x20,0x76,0x65,0x63,0x33,0x20,
+ 0x70,0x6f,0x73,0x3b,0xa,0x69,0x6e,0x20,0x76,0x65,0x63,0x33,0x20,0x6f,0x6c,0x64,
+ 0x50,0x6f,0x73,0x46,0x6c,0x61,0x74,0x3b,0xa,0x69,0x6e,0x20,0x66,0x6c,0x6f,0x61,
+ 0x74,0x20,0x69,0x6e,0x74,0x65,0x6e,0x73,0x69,0x74,0x79,0x3b,0xa,0xa,0x2f,0x2f,
+ 0x75,0x6e,0x69,0x66,0x6f,0x72,0x6d,0x20,0x66,0x6c,0x6f,0x61,0x74,0x20,0x6d,0x75,
+ 0x6c,0x74,0x69,0x70,0x6c,0x69,0x65,0x72,0x20,0x3d,0x20,0x31,0x2e,0x66,0x3b,0xa,
+ 0x2f,0x2f,0x75,0x6e,0x69,0x66,0x6f,0x72,0x6d,0x20,0x66,0x6c,0x6f,0x61,0x74,0x20,
+ 0x63,0x6f,0x6e,0x74,0x72,0x61,0x73,0x74,0x20,0x3d,0x20,0x31,0x30,0x2e,0x66,0x3b,
+ 0xa,0x2f,0x2f,0x75,0x6e,0x69,0x66,0x6f,0x72,0x6d,0x20,0x66,0x6c,0x6f,0x61,0x74,
+ 0x20,0x69,0x6e,0x74,0x45,0x78,0x70,0x20,0x3d,0x20,0x30,0x2e,0x35,0x66,0x3b,0xa,
+ 0x2f,0x2f,0x75,0x6e,0x69,0x66,0x6f,0x72,0x6d,0x20,0x66,0x6c,0x6f,0x61,0x74,0x20,
+ 0x73,0x63,0x61,0x6c,0x65,0x20,0x3d,0x20,0x31,0x2e,0x66,0x3b,0xa,0xa,0x75,0x6e,
+ 0x69,0x66,0x6f,0x72,0x6d,0x20,0x66,0x6c,0x6f,0x61,0x74,0x20,0x6d,0x75,0x6c,0x74,
+ 0x69,0x70,0x6c,0x69,0x65,0x72,0x20,0x3d,0x20,0x2e,0x39,0x66,0x3b,0xa,0x75,0x6e,
+ 0x69,0x66,0x6f,0x72,0x6d,0x20,0x66,0x6c,0x6f,0x61,0x74,0x20,0x63,0x6f,0x6e,0x74,
+ 0x72,0x61,0x73,0x74,0x20,0x3d,0x20,0x32,0x30,0x2e,0x66,0x3b,0xa,0x75,0x6e,0x69,
+ 0x66,0x6f,0x72,0x6d,0x20,0x66,0x6c,0x6f,0x61,0x74,0x20,0x69,0x6e,0x74,0x45,0x78,
+ 0x70,0x20,0x3d,0x20,0x30,0x2e,0x66,0x3b,0xa,0x75,0x6e,0x69,0x66,0x6f,0x72,0x6d,
+ 0x20,0x66,0x6c,0x6f,0x61,0x74,0x20,0x73,0x63,0x61,0x6c,0x65,0x20,0x3d,0x20,0x31,
+ 0x2e,0x66,0x3b,0xa,0xa,0x2f,0x2f,0x75,0x6e,0x69,0x66,0x6f,0x72,0x6d,0x20,0x66,
+ 0x6c,0x6f,0x61,0x74,0x20,0x6d,0x75,0x6c,0x74,0x69,0x70,0x6c,0x69,0x65,0x72,0x20,
+ 0x3d,0x20,0x2e,0x35,0x66,0x3b,0xa,0x2f,0x2f,0x75,0x6e,0x69,0x66,0x6f,0x72,0x6d,
+ 0x20,0x66,0x6c,0x6f,0x61,0x74,0x20,0x63,0x6f,0x6e,0x74,0x72,0x61,0x73,0x74,0x20,
+ 0x3d,0x20,0x31,0x2e,0x35,0x66,0x3b,0xa,0x2f,0x2f,0x75,0x6e,0x69,0x66,0x6f,0x72,
+ 0x6d,0x20,0x66,0x6c,0x6f,0x61,0x74,0x20,0x69,0x6e,0x74,0x45,0x78,0x70,0x20,0x3d,
+ 0x20,0x30,0x2e,0x66,0x3b,0xa,0x2f,0x2f,0x75,0x6e,0x69,0x66,0x6f,0x72,0x6d,0x20,
+ 0x66,0x6c,0x6f,0x61,0x74,0x20,0x73,0x63,0x61,0x6c,0x65,0x20,0x3d,0x20,0x31,0x2e,
+ 0x66,0x3b,0xa,0xa,0x2f,0x2f,0x75,0x6e,0x69,0x66,0x6f,0x72,0x6d,0x20,0x76,0x65,
+ 0x63,0x34,0x20,0x62,0x61,0x73,0x65,0x43,0x6f,0x6c,0x6f,0x72,0x20,0x3d,0x76,0x65,
+ 0x63,0x34,0x28,0x29,0x3b,0xa,0xa,0x76,0x6f,0x69,0x64,0x20,0x6d,0x61,0x69,0x6e,
+ 0x28,0x29,0x20,0x7b,0xa,0x20,0x20,0x20,0x20,0x66,0x72,0x61,0x67,0x43,0x6f,0x6c,
+ 0x6f,0x72,0x20,0x3d,0x20,0x30,0x2e,0x35,0x66,0x20,0x2a,0x20,0x28,0x76,0x65,0x63,
+ 0x34,0x28,0x6e,0x6f,0x72,0x6d,0x61,0x6c,0x5f,0x77,0x6f,0x72,0x6c,0x64,0x53,0x70,
+ 0x61,0x63,0x65,0x5b,0x30,0x5d,0x2c,0x20,0x30,0x2e,0x66,0x2c,0x20,0x6e,0x6f,0x72,
+ 0x6d,0x61,0x6c,0x5f,0x77,0x6f,0x72,0x6c,0x64,0x53,0x70,0x61,0x63,0x65,0x5b,0x32,
+ 0x5d,0x2c,0x20,0x31,0x2e,0x66,0x29,0x20,0x2b,0x20,0x31,0x29,0x3b,0xa,0x20,0x20,
+ 0x20,0x20,0x66,0x6c,0x6f,0x61,0x74,0x20,0x6f,0x6c,0x64,0x41,0x72,0x65,0x61,0x20,
+ 0x3d,0x20,0x6c,0x65,0x6e,0x67,0x74,0x68,0x28,0x64,0x46,0x64,0x78,0x28,0x6f,0x6c,
+ 0x64,0x50,0x6f,0x73,0x46,0x6c,0x61,0x74,0x29,0x29,0x20,0x2a,0x20,0x6c,0x65,0x6e,
+ 0x67,0x74,0x68,0x28,0x64,0x46,0x64,0x79,0x28,0x6f,0x6c,0x64,0x50,0x6f,0x73,0x46,
+ 0x6c,0x61,0x74,0x29,0x29,0x3b,0xa,0x20,0x20,0x20,0x20,0x66,0x6c,0x6f,0x61,0x74,
+ 0x20,0x6e,0x65,0x77,0x41,0x72,0x65,0x61,0x20,0x3d,0x20,0x6c,0x65,0x6e,0x67,0x74,
+ 0x68,0x28,0x64,0x46,0x64,0x78,0x28,0x70,0x6f,0x73,0x29,0x29,0x20,0x2a,0x20,0x6c,
+ 0x65,0x6e,0x67,0x74,0x68,0x28,0x64,0x46,0x64,0x79,0x28,0x70,0x6f,0x73,0x29,0x29,
+ 0x3b,0xa,0x20,0x20,0x20,0x20,0x66,0x6c,0x6f,0x61,0x74,0x20,0x61,0x72,0x65,0x61,
+ 0x52,0x61,0x74,0x69,0x6f,0x20,0x3d,0x20,0x6f,0x6c,0x64,0x41,0x72,0x65,0x61,0x20,
+ 0x2f,0x20,0x6e,0x65,0x77,0x41,0x72,0x65,0x61,0x20,0x2a,0x20,0x6d,0x75,0x6c,0x74,
+ 0x69,0x70,0x6c,0x69,0x65,0x72,0x3b,0xa,0x2f,0x2f,0x20,0x20,0x20,0x20,0x69,0x66,
+ 0x28,0x6f,0x6c,0x64,0x41,0x72,0x65,0x61,0x20,0x2f,0x20,0x6e,0x65,0x77,0x41,0x72,
+ 0x65,0x61,0x20,0x3e,0x20,0x33,0x29,0x20,0x7b,0xa,0x2f,0x2f,0x20,0x20,0x20,0x20,
+ 0x20,0x20,0x20,0x20,0x61,0x72,0x65,0x61,0x52,0x61,0x74,0x69,0x6f,0x20,0x3d,0x20,
+ 0x30,0x2e,0x66,0x3b,0xa,0x2f,0x2f,0x20,0x20,0x20,0x20,0x7d,0xa,0x2f,0x2f,0x20,
+ 0x20,0x20,0x20,0x66,0x72,0x61,0x67,0x43,0x6f,0x6c,0x6f,0x72,0x20,0x3d,0x20,0x63,
+ 0x6c,0x61,0x6d,0x70,0x28,0x76,0x65,0x63,0x34,0x28,0x69,0x6e,0x74,0x65,0x6e,0x73,
+ 0x69,0x74,0x79,0x2c,0x20,0x69,0x6e,0x74,0x65,0x6e,0x73,0x69,0x74,0x79,0x2c,0x20,
+ 0x28,0x31,0x2e,0x66,0x20,0x2d,0x20,0x69,0x6e,0x74,0x65,0x6e,0x73,0x69,0x74,0x79,
+ 0x29,0x20,0x2a,0x20,0x2e,0x35,0x66,0x2c,0x20,0x69,0x6e,0x74,0x65,0x6e,0x73,0x69,
+ 0x74,0x79,0x29,0x2c,0x20,0x30,0x2e,0x66,0x2c,0x20,0x31,0x2e,0x66,0x29,0x3b,0xa,
+ 0x20,0x20,0x20,0x20,0x66,0x72,0x61,0x67,0x43,0x6f,0x6c,0x6f,0x72,0x20,0x3d,0x20,
+ 0x76,0x65,0x63,0x34,0x28,0x70,0x6f,0x77,0x28,0x61,0x72,0x65,0x61,0x52,0x61,0x74,
+ 0x69,0x6f,0x2c,0x20,0x63,0x6f,0x6e,0x74,0x72,0x61,0x73,0x74,0x29,0x29,0x20,0x2a,
+ 0x20,0x70,0x6f,0x77,0x28,0x69,0x6e,0x74,0x65,0x6e,0x73,0x69,0x74,0x79,0x2c,0x20,
+ 0x69,0x6e,0x74,0x45,0x78,0x70,0x29,0x3b,0xa,0x20,0x20,0x20,0x20,0x66,0x6c,0x6f,
+ 0x61,0x74,0x20,0x66,0x69,0x6e,0x61,0x6c,0x49,0x6e,0x74,0x20,0x3d,0x20,0x70,0x6f,
+ 0x77,0x28,0x61,0x72,0x65,0x61,0x52,0x61,0x74,0x69,0x6f,0x2c,0x20,0x63,0x6f,0x6e,
+ 0x74,0x72,0x61,0x73,0x74,0x29,0x20,0x2a,0x20,0x70,0x6f,0x77,0x28,0x69,0x6e,0x74,
+ 0x65,0x6e,0x73,0x69,0x74,0x79,0x2c,0x20,0x69,0x6e,0x74,0x45,0x78,0x70,0x29,0x3b,
+ 0xa,0x20,0x20,0x20,0x20,0x66,0x69,0x6e,0x61,0x6c,0x49,0x6e,0x74,0x20,0x3d,0x20,
+ 0x63,0x6c,0x61,0x6d,0x70,0x28,0x66,0x69,0x6e,0x61,0x6c,0x49,0x6e,0x74,0x2c,0x20,
+ 0x30,0x2c,0x20,0x31,0x29,0x3b,0xa,0x20,0x20,0x20,0x20,0x66,0x72,0x61,0x67,0x43,
+ 0x6f,0x6c,0x6f,0x72,0x20,0x3d,0x20,0x76,0x65,0x63,0x34,0x28,0x31,0x2c,0x20,0x31,
+ 0x2c,0x20,0x31,0x2c,0x20,0x66,0x69,0x6e,0x61,0x6c,0x49,0x6e,0x74,0x20,0x2a,0x20,
+ 0x73,0x63,0x61,0x6c,0x65,0x29,0x3b,0xa,0x2f,0x2f,0x20,0x20,0x20,0x20,0x66,0x72,
+ 0x61,0x67,0x43,0x6f,0x6c,0x6f,0x72,0x20,0x3d,0x20,0x76,0x65,0x63,0x34,0x28,0x76,
+ 0x65,0x63,0x33,0x28,0x31,0x29,0x2c,0x20,0x70,0x6f,0x77,0x28,0x6f,0x6c,0x64,0x41,
+ 0x72,0x65,0x61,0x20,0x2f,0x20,0x6e,0x65,0x77,0x41,0x72,0x65,0x61,0x20,0x2a,0x20,
+ 0x2e,0x32,0x66,0x2c,0x20,0x31,0x2e,0x35,0x66,0x29,0x29,0x3b,0xa,0x7d,0xa,
+ // /Users/sotech117/Documents/final/adv/ocean-simulation/resources/shaders/texture.vert
0x0,0x0,0x1,0x88,
0x23,
0x76,0x65,0x72,0x73,0x69,0x6f,0x6e,0x20,0x33,0x33,0x30,0x20,0x63,0x6f,0x72,0x65,
@@ -164,7 +462,7 @@ static const unsigned char qt_resource_data[] = {
0x6f,0x6c,0x6f,0x72,0x2e,0x77,0x20,0x3d,0x20,0x31,0x3b,0xa,0x20,0x20,0x20,0x20,
0x7d,0xa,0x7d,0xa,
// /Users/sotech117/Documents/final/adv/ocean-simulation/resources/shaders/shader.vert
- 0x0,0x0,0xd,0x53,
+ 0x0,0x0,0xd,0x9a,
0x23,
0x76,0x65,0x72,0x73,0x69,0x6f,0x6e,0x20,0x33,0x33,0x30,0x20,0x63,0x6f,0x72,0x65,
0xa,0xa,0x6c,0x61,0x79,0x6f,0x75,0x74,0x28,0x6c,0x6f,0x63,0x61,0x74,0x69,0x6f,
@@ -176,212 +474,216 @@ static const unsigned char qt_resource_data[] = {
0x6e,0x6f,0x72,0x6d,0x61,0x6c,0x3b,0x20,0x20,0x20,0x2f,0x2f,0x20,0x4e,0x6f,0x72,
0x6d,0x61,0x6c,0x20,0x6f,0x66,0x20,0x74,0x68,0x65,0x20,0x76,0x65,0x72,0x74,0x65,
0x78,0xa,0x6c,0x61,0x79,0x6f,0x75,0x74,0x28,0x6c,0x6f,0x63,0x61,0x74,0x69,0x6f,
- 0x6e,0x20,0x3d,0x20,0x33,0x29,0x20,0x69,0x6e,0x20,0x76,0x65,0x63,0x33,0x20,0x74,
+ 0x6e,0x20,0x3d,0x20,0x32,0x29,0x20,0x69,0x6e,0x20,0x76,0x65,0x63,0x33,0x20,0x74,
0x65,0x78,0x43,0x6f,0x6f,0x72,0x64,0x73,0x3b,0x20,0x20,0x20,0x2f,0x2f,0x20,0x4e,
0x6f,0x72,0x6d,0x61,0x6c,0x20,0x6f,0x66,0x20,0x74,0x68,0x65,0x20,0x76,0x65,0x72,
- 0x74,0x65,0x78,0xa,0xa,0xa,0x75,0x6e,0x69,0x66,0x6f,0x72,0x6d,0x20,0x6d,0x61,
- 0x74,0x34,0x20,0x70,0x72,0x6f,0x6a,0x3b,0xa,0x75,0x6e,0x69,0x66,0x6f,0x72,0x6d,
- 0x20,0x6d,0x61,0x74,0x34,0x20,0x76,0x69,0x65,0x77,0x3b,0xa,0x75,0x6e,0x69,0x66,
- 0x6f,0x72,0x6d,0x20,0x6d,0x61,0x74,0x34,0x20,0x6d,0x6f,0x64,0x65,0x6c,0x3b,0xa,
- 0x75,0x6e,0x69,0x66,0x6f,0x72,0x6d,0x20,0x6d,0x61,0x74,0x34,0x20,0x69,0x6e,0x76,
- 0x65,0x72,0x73,0x65,0x56,0x69,0x65,0x77,0x3b,0xa,0x2f,0x2f,0x75,0x6e,0x69,0x66,
- 0x6f,0x72,0x6d,0x20,0x66,0x6c,0x6f,0x61,0x74,0x20,0x77,0x69,0x64,0x74,0x68,0x3b,
- 0xa,0x2f,0x2f,0x75,0x6e,0x69,0x66,0x6f,0x72,0x6d,0x20,0x66,0x6c,0x6f,0x61,0x74,
- 0x20,0x68,0x65,0x69,0x67,0x68,0x74,0x3b,0x20,0x2f,0x2f,0x20,0x54,0x4f,0x44,0x4f,
- 0x3a,0x20,0x50,0x61,0x73,0x73,0x20,0x69,0x6e,0x20,0x77,0x69,0x64,0x74,0x68,0x20,
- 0x61,0x6e,0x64,0x20,0x68,0x65,0x69,0x67,0x68,0x74,0x20,0x61,0x73,0x20,0x75,0x6e,
- 0x69,0x66,0x6f,0x72,0x6d,0xa,0xa,0x75,0x6e,0x69,0x66,0x6f,0x72,0x6d,0x20,0x6d,
- 0x61,0x74,0x33,0x20,0x69,0x6e,0x76,0x65,0x72,0x73,0x65,0x54,0x72,0x61,0x6e,0x73,
- 0x70,0x6f,0x73,0x65,0x4d,0x6f,0x64,0x65,0x6c,0x3b,0xa,0xa,0x6f,0x75,0x74,0x20,
- 0x76,0x65,0x63,0x33,0x20,0x6e,0x6f,0x72,0x6d,0x61,0x6c,0x5f,0x63,0x61,0x6d,0x65,
- 0x72,0x61,0x53,0x70,0x61,0x63,0x65,0x3b,0xa,0x6f,0x75,0x74,0x20,0x76,0x65,0x63,
- 0x33,0x20,0x6e,0x6f,0x72,0x6d,0x61,0x6c,0x5f,0x77,0x6f,0x72,0x6c,0x64,0x53,0x70,
- 0x61,0x63,0x65,0x3b,0xa,0x6f,0x75,0x74,0x20,0x76,0x65,0x63,0x33,0x20,0x63,0x61,
- 0x6d,0x65,0x72,0x61,0x5f,0x77,0x6f,0x72,0x6c,0x64,0x53,0x70,0x61,0x63,0x65,0x3b,
- 0xa,0x6f,0x75,0x74,0x20,0x76,0x65,0x63,0x33,0x20,0x70,0x6f,0x73,0x3b,0xa,0x6f,
- 0x75,0x74,0x20,0x76,0x65,0x63,0x33,0x20,0x72,0x65,0x66,0x6c,0x50,0x6f,0x73,0x3b,
- 0xa,0x6f,0x75,0x74,0x20,0x76,0x65,0x63,0x33,0x20,0x72,0x65,0x66,0x72,0x50,0x6f,
- 0x73,0x3b,0xa,0x6f,0x75,0x74,0x20,0x66,0x6c,0x6f,0x61,0x74,0x20,0x72,0x65,0x66,
- 0x72,0x50,0x72,0x6f,0x62,0x3b,0xa,0x6f,0x75,0x74,0x20,0x76,0x65,0x63,0x32,0x20,
- 0x75,0x76,0x3b,0xa,0x6f,0x75,0x74,0x20,0x66,0x6c,0x6f,0x61,0x74,0x20,0x6d,0x61,
- 0x74,0x49,0x6f,0x72,0x3b,0xa,0xa,0x76,0x65,0x63,0x34,0x20,0x67,0x65,0x74,0x52,
- 0x65,0x66,0x72,0x50,0x6f,0x73,0x28,0x29,0x20,0x7b,0xa,0x20,0x20,0x20,0x20,0x66,
- 0x6c,0x6f,0x61,0x74,0x20,0x64,0x65,0x70,0x74,0x68,0x20,0x3d,0x20,0x2d,0x31,0x30,
- 0x30,0x30,0x2e,0x66,0x3b,0x20,0x2f,0x2f,0x20,0x54,0x4f,0x44,0x4f,0x3a,0x20,0x50,
- 0x61,0x73,0x73,0x20,0x61,0x73,0x20,0x75,0x6e,0x69,0x66,0x6f,0x72,0x6d,0xa,0x20,
- 0x20,0x20,0x20,0x76,0x65,0x63,0x33,0x20,0x77,0x5f,0x6f,0x20,0x3d,0x20,0x6e,0x6f,
- 0x72,0x6d,0x61,0x6c,0x69,0x7a,0x65,0x28,0x70,0x6f,0x73,0x20,0x2d,0x20,0x63,0x61,
- 0x6d,0x65,0x72,0x61,0x5f,0x77,0x6f,0x72,0x6c,0x64,0x53,0x70,0x61,0x63,0x65,0x29,
- 0x3b,0xa,0x20,0x20,0x20,0x20,0x66,0x6c,0x6f,0x61,0x74,0x20,0x63,0x6f,0x73,0x5f,
- 0x74,0x68,0x65,0x74,0x61,0x5f,0x69,0x20,0x3d,0x20,0x64,0x6f,0x74,0x28,0x2d,0x77,
- 0x5f,0x6f,0x2c,0x20,0x6e,0x6f,0x72,0x6d,0x61,0x6c,0x5f,0x77,0x6f,0x72,0x6c,0x64,
- 0x53,0x70,0x61,0x63,0x65,0x29,0x3b,0xa,0x20,0x20,0x20,0x20,0x66,0x6c,0x6f,0x61,
- 0x74,0x20,0x6e,0x5f,0x69,0x20,0x3d,0x20,0x31,0x3b,0xa,0x20,0x20,0x20,0x20,0x66,
- 0x6c,0x6f,0x61,0x74,0x20,0x6e,0x5f,0x74,0x20,0x3d,0x20,0x31,0x2e,0x33,0x33,0x66,
- 0x3b,0xa,0x2f,0x2f,0x20,0x20,0x20,0x20,0x6d,0x61,0x74,0x49,0x6f,0x72,0x20,0x3d,
- 0x20,0x6e,0x5f,0x74,0x3b,0xa,0x20,0x20,0x20,0x20,0x66,0x6c,0x6f,0x61,0x74,0x20,
- 0x64,0x65,0x74,0x65,0x72,0x6d,0x69,0x6e,0x61,0x6e,0x74,0x20,0x3d,0x20,0x31,0x2e,
- 0x66,0x20,0x2d,0x20,0x28,0x70,0x6f,0x77,0x28,0x28,0x6e,0x5f,0x69,0x20,0x2f,0x20,
- 0x6e,0x5f,0x74,0x29,0x2c,0x20,0x32,0x2e,0x66,0x29,0x20,0x2a,0x20,0x28,0x31,0x2e,
- 0x66,0x20,0x2d,0x20,0x70,0x6f,0x77,0x28,0x63,0x6f,0x73,0x5f,0x74,0x68,0x65,0x74,
- 0x61,0x5f,0x69,0x2c,0x20,0x32,0x2e,0x66,0x29,0x29,0x29,0x3b,0xa,0xa,0x20,0x20,
- 0x20,0x20,0x66,0x6c,0x6f,0x61,0x74,0x20,0x72,0x30,0x20,0x3d,0x20,0x70,0x6f,0x77,
- 0x28,0x28,0x6e,0x5f,0x69,0x20,0x2d,0x20,0x6e,0x5f,0x74,0x29,0x20,0x2f,0x20,0x28,
- 0x6e,0x5f,0x69,0x20,0x2b,0x20,0x6e,0x5f,0x74,0x29,0x2c,0x20,0x32,0x2e,0x66,0x29,
- 0x3b,0x20,0x2f,0x2f,0x20,0x76,0x61,0x72,0x69,0x61,0x62,0x6c,0x65,0x20,0x72,0x65,
- 0x71,0x75,0x69,0x72,0x65,0x64,0x20,0x74,0x6f,0x20,0x63,0x61,0x6c,0x63,0x75,0x6c,
- 0x61,0x74,0x65,0x20,0x70,0x72,0x6f,0x62,0x61,0x62,0x69,0x6c,0x69,0x74,0x79,0x20,
- 0x6f,0x66,0x20,0x72,0x65,0x66,0x6c,0x65,0x63,0x74,0x69,0x6f,0x6e,0xa,0x20,0x20,
- 0x20,0x20,0x66,0x6c,0x6f,0x61,0x74,0x20,0x70,0x72,0x6f,0x62,0x5f,0x74,0x6f,0x5f,
- 0x72,0x65,0x66,0x6c,0x20,0x3d,0x20,0x72,0x30,0x20,0x2b,0x20,0x28,0x28,0x31,0x20,
- 0x2d,0x20,0x72,0x30,0x29,0x20,0x2a,0x20,0x70,0x6f,0x77,0x28,0x28,0x31,0x20,0x2d,
- 0x20,0x63,0x6f,0x73,0x5f,0x74,0x68,0x65,0x74,0x61,0x5f,0x69,0x29,0x2c,0x20,0x35,
- 0x2e,0x66,0x29,0x29,0x3b,0xa,0xa,0x20,0x20,0x20,0x20,0x69,0x66,0x20,0x28,0x64,
- 0x65,0x74,0x65,0x72,0x6d,0x69,0x6e,0x61,0x6e,0x74,0x20,0x3e,0x3d,0x20,0x30,0x29,
- 0x20,0x7b,0xa,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x66,0x6c,0x6f,0x61,0x74,
- 0x20,0x63,0x6f,0x73,0x5f,0x74,0x68,0x65,0x74,0x61,0x5f,0x74,0x20,0x3d,0x20,0x73,
- 0x71,0x72,0x74,0x28,0x64,0x65,0x74,0x65,0x72,0x6d,0x69,0x6e,0x61,0x6e,0x74,0x29,
- 0x3b,0xa,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x76,0x65,0x63,0x33,0x20,0x77,
- 0x5f,0x74,0x20,0x3d,0x20,0x28,0x6e,0x5f,0x69,0x20,0x2f,0x20,0x6e,0x5f,0x74,0x29,
- 0x20,0x2a,0x20,0x77,0x5f,0x6f,0x20,0x2b,0x20,0x28,0x28,0x6e,0x5f,0x69,0x20,0x2f,
- 0x20,0x6e,0x5f,0x74,0x29,0x20,0x2a,0x20,0x63,0x6f,0x73,0x5f,0x74,0x68,0x65,0x74,
- 0x61,0x5f,0x69,0x20,0x2d,0x20,0x63,0x6f,0x73,0x5f,0x74,0x68,0x65,0x74,0x61,0x5f,
- 0x74,0x29,0x20,0x2a,0x20,0x6e,0x6f,0x72,0x6d,0x61,0x6c,0x5f,0x77,0x6f,0x72,0x6c,
- 0x64,0x53,0x70,0x61,0x63,0x65,0x3b,0xa,0x2f,0x2f,0x20,0x20,0x20,0x20,0x20,0x20,
- 0x20,0x20,0x52,0x61,0x79,0x20,0x72,0x65,0x66,0x6c,0x65,0x63,0x74,0x65,0x64,0x52,
- 0x61,0x79,0x28,0x69,0x2e,0x68,0x69,0x74,0x2c,0x20,0x77,0x5f,0x74,0x29,0x3b,0xa,
- 0x2f,0x2f,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x66,0x6c,0x6f,0x61,0x74,0x20,
- 0x61,0x74,0x74,0x65,0x6e,0x75,0x61,0x74,0x69,0x6f,0x6e,0x20,0x3d,0x20,0x28,0x21,
- 0x65,0x6e,0x74,0x65,0x72,0x69,0x6e,0x67,0x20,0x26,0x26,0x20,0x61,0x74,0x74,0x65,
- 0x6e,0x75,0x61,0x74,0x65,0x52,0x65,0x66,0x72,0x61,0x63,0x74,0x29,0x20,0x3f,0x20,
- 0x73,0x74,0x64,0x3a,0x3a,0x70,0x6f,0x77,0x28,0x4d,0x5f,0x45,0x2c,0x20,0x28,0x2d,
- 0x28,0x72,0x61,0x79,0x2e,0x6f,0x20,0x2d,0x20,0x69,0x2e,0x68,0x69,0x74,0x29,0x2e,
- 0x6e,0x6f,0x72,0x6d,0x28,0x29,0x29,0x20,0x2a,0x20,0x6d,0x61,0x74,0x2e,0x69,0x6f,
- 0x72,0x29,0x20,0x3a,0x20,0x31,0x3b,0xa,0x2f,0x2f,0x20,0x20,0x20,0x20,0x20,0x20,
- 0x20,0x20,0x4c,0x20,0x2b,0x3d,0x20,0x74,0x72,0x61,0x63,0x65,0x52,0x61,0x79,0x28,
- 0x72,0x65,0x66,0x6c,0x65,0x63,0x74,0x65,0x64,0x52,0x61,0x79,0x2c,0x20,0x73,0x63,
- 0x65,0x6e,0x65,0x2c,0x20,0x74,0x72,0x75,0x65,0x2c,0x20,0x6e,0x5f,0x74,0x2c,0x20,
- 0x21,0x69,0x73,0x5f,0x69,0x6e,0x5f,0x72,0x65,0x66,0x72,0x61,0x63,0x74,0x6f,0x72,
- 0x29,0x20,0x2a,0x20,0x61,0x74,0x74,0x65,0x6e,0x75,0x61,0x74,0x69,0x6f,0x6e,0x20,
- 0x2f,0x20,0x74,0x68,0x72,0x65,0x73,0x68,0x6f,0x6c,0x64,0x3b,0xa,0x20,0x20,0x20,
- 0x20,0x20,0x20,0x20,0x20,0x66,0x6c,0x6f,0x61,0x74,0x20,0x64,0x69,0x73,0x74,0x20,
- 0x3d,0x20,0x70,0x6f,0x73,0x69,0x74,0x69,0x6f,0x6e,0x2e,0x79,0x20,0x2d,0x20,0x64,
- 0x65,0x70,0x74,0x68,0x3b,0xa,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x66,0x6c,
- 0x6f,0x61,0x74,0x20,0x64,0x65,0x70,0x74,0x68,0x53,0x63,0x61,0x6c,0x65,0x20,0x3d,
- 0x20,0x64,0x69,0x73,0x74,0x20,0x2f,0x20,0x77,0x5f,0x74,0x2e,0x79,0x3b,0xa,0x20,
- 0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x76,0x65,0x63,0x33,0x20,0x67,0x72,0x6f,0x75,
- 0x6e,0x64,0x43,0x6f,0x6e,0x74,0x61,0x63,0x74,0x50,0x6f,0x69,0x6e,0x74,0x20,0x3d,
- 0x20,0x2d,0x28,0x77,0x5f,0x74,0x20,0x2a,0x20,0x64,0x65,0x70,0x74,0x68,0x53,0x63,
- 0x61,0x6c,0x65,0x29,0x20,0x2b,0x20,0x70,0x6f,0x73,0x69,0x74,0x69,0x6f,0x6e,0x3b,
- 0xa,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x72,0x65,0x74,0x75,0x72,0x6e,0x20,
- 0x76,0x65,0x63,0x34,0x28,0x67,0x72,0x6f,0x75,0x6e,0x64,0x43,0x6f,0x6e,0x74,0x61,
- 0x63,0x74,0x50,0x6f,0x69,0x6e,0x74,0x2c,0x20,0x31,0x2e,0x66,0x20,0x2d,0x20,0x70,
- 0x72,0x6f,0x62,0x5f,0x74,0x6f,0x5f,0x72,0x65,0x66,0x6c,0x29,0x3b,0xa,0x20,0x20,
- 0x20,0x20,0x7d,0x20,0x65,0x6c,0x73,0x65,0x20,0x7b,0xa,0x2f,0x2f,0x20,0x20,0x20,
- 0x20,0x20,0x20,0x20,0x20,0x45,0x69,0x67,0x65,0x6e,0x3a,0x3a,0x56,0x65,0x63,0x74,
- 0x6f,0x72,0x33,0x66,0x20,0x77,0x5f,0x69,0x20,0x3d,0x20,0x77,0x5f,0x6f,0x20,0x2d,
- 0x20,0x32,0x20,0x2a,0x20,0x77,0x5f,0x6f,0x2e,0x64,0x6f,0x74,0x28,0x69,0x6e,0x74,
- 0x65,0x72,0x73,0x65,0x63,0x74,0x4e,0x6f,0x72,0x6d,0x61,0x6c,0x29,0x20,0x2a,0x20,
- 0x69,0x6e,0x63,0x69,0x64,0x65,0x6e,0x63,0x65,0x4e,0x6f,0x72,0x6d,0x61,0x6c,0x3b,
- 0xa,0x2f,0x2f,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x52,0x61,0x79,0x20,0x72,
- 0x65,0x66,0x6c,0x65,0x63,0x74,0x65,0x64,0x52,0x61,0x79,0x28,0x69,0x2e,0x68,0x69,
- 0x74,0x2c,0x20,0x77,0x5f,0x69,0x29,0x3b,0xa,0x2f,0x2f,0x20,0x20,0x20,0x20,0x20,
+ 0x74,0x65,0x78,0xa,0xa,0x75,0x6e,0x69,0x66,0x6f,0x72,0x6d,0x20,0x66,0x6c,0x6f,
+ 0x61,0x74,0x20,0x64,0x65,0x70,0x74,0x68,0x20,0x3d,0x20,0x2d,0x33,0x30,0x30,0x30,
+ 0x2e,0x66,0x3b,0xa,0x75,0x6e,0x69,0x66,0x6f,0x72,0x6d,0x20,0x66,0x6c,0x6f,0x61,
+ 0x74,0x20,0x73,0x6b,0x79,0x48,0x65,0x69,0x67,0x68,0x74,0x20,0x3d,0x20,0x35,0x30,
+ 0x30,0x2e,0x66,0x3b,0xa,0x75,0x6e,0x69,0x66,0x6f,0x72,0x6d,0x20,0x6d,0x61,0x74,
+ 0x34,0x20,0x70,0x72,0x6f,0x6a,0x3b,0xa,0x75,0x6e,0x69,0x66,0x6f,0x72,0x6d,0x20,
+ 0x6d,0x61,0x74,0x34,0x20,0x76,0x69,0x65,0x77,0x3b,0xa,0x75,0x6e,0x69,0x66,0x6f,
+ 0x72,0x6d,0x20,0x6d,0x61,0x74,0x34,0x20,0x6d,0x6f,0x64,0x65,0x6c,0x3b,0xa,0x75,
+ 0x6e,0x69,0x66,0x6f,0x72,0x6d,0x20,0x6d,0x61,0x74,0x34,0x20,0x69,0x6e,0x76,0x65,
+ 0x72,0x73,0x65,0x56,0x69,0x65,0x77,0x3b,0xa,0x2f,0x2f,0x75,0x6e,0x69,0x66,0x6f,
+ 0x72,0x6d,0x20,0x66,0x6c,0x6f,0x61,0x74,0x20,0x77,0x69,0x64,0x74,0x68,0x3b,0xa,
+ 0x2f,0x2f,0x75,0x6e,0x69,0x66,0x6f,0x72,0x6d,0x20,0x66,0x6c,0x6f,0x61,0x74,0x20,
+ 0x68,0x65,0x69,0x67,0x68,0x74,0x3b,0x20,0x2f,0x2f,0x20,0x54,0x4f,0x44,0x4f,0x3a,
+ 0x20,0x50,0x61,0x73,0x73,0x20,0x69,0x6e,0x20,0x77,0x69,0x64,0x74,0x68,0x20,0x61,
+ 0x6e,0x64,0x20,0x68,0x65,0x69,0x67,0x68,0x74,0x20,0x61,0x73,0x20,0x75,0x6e,0x69,
+ 0x66,0x6f,0x72,0x6d,0xa,0xa,0x75,0x6e,0x69,0x66,0x6f,0x72,0x6d,0x20,0x6d,0x61,
+ 0x74,0x33,0x20,0x69,0x6e,0x76,0x65,0x72,0x73,0x65,0x54,0x72,0x61,0x6e,0x73,0x70,
+ 0x6f,0x73,0x65,0x4d,0x6f,0x64,0x65,0x6c,0x3b,0xa,0xa,0x6f,0x75,0x74,0x20,0x76,
+ 0x65,0x63,0x33,0x20,0x6e,0x6f,0x72,0x6d,0x61,0x6c,0x5f,0x63,0x61,0x6d,0x65,0x72,
+ 0x61,0x53,0x70,0x61,0x63,0x65,0x3b,0xa,0x6f,0x75,0x74,0x20,0x76,0x65,0x63,0x33,
+ 0x20,0x6e,0x6f,0x72,0x6d,0x61,0x6c,0x5f,0x77,0x6f,0x72,0x6c,0x64,0x53,0x70,0x61,
+ 0x63,0x65,0x3b,0xa,0x6f,0x75,0x74,0x20,0x76,0x65,0x63,0x33,0x20,0x63,0x61,0x6d,
+ 0x65,0x72,0x61,0x5f,0x77,0x6f,0x72,0x6c,0x64,0x53,0x70,0x61,0x63,0x65,0x3b,0xa,
+ 0x6f,0x75,0x74,0x20,0x76,0x65,0x63,0x33,0x20,0x70,0x6f,0x73,0x3b,0xa,0x6f,0x75,
+ 0x74,0x20,0x76,0x65,0x63,0x33,0x20,0x72,0x65,0x66,0x6c,0x50,0x6f,0x73,0x3b,0xa,
+ 0x6f,0x75,0x74,0x20,0x76,0x65,0x63,0x33,0x20,0x72,0x65,0x66,0x72,0x50,0x6f,0x73,
+ 0x3b,0xa,0x6f,0x75,0x74,0x20,0x66,0x6c,0x6f,0x61,0x74,0x20,0x72,0x65,0x66,0x72,
+ 0x50,0x72,0x6f,0x62,0x3b,0xa,0x6f,0x75,0x74,0x20,0x76,0x65,0x63,0x32,0x20,0x75,
+ 0x76,0x3b,0xa,0x6f,0x75,0x74,0x20,0x66,0x6c,0x6f,0x61,0x74,0x20,0x6d,0x61,0x74,
+ 0x49,0x6f,0x72,0x3b,0xa,0xa,0x76,0x65,0x63,0x34,0x20,0x67,0x65,0x74,0x52,0x65,
+ 0x66,0x72,0x50,0x6f,0x73,0x28,0x29,0x20,0x7b,0xa,0x2f,0x2f,0x20,0x20,0x20,0x20,
+ 0x66,0x6c,0x6f,0x61,0x74,0x20,0x64,0x65,0x70,0x74,0x68,0x20,0x3d,0x20,0x2d,0x31,
+ 0x35,0x30,0x30,0x2e,0x66,0x3b,0x20,0x2f,0x2f,0x20,0x54,0x4f,0x44,0x4f,0x3a,0x20,
+ 0x50,0x61,0x73,0x73,0x20,0x61,0x73,0x20,0x75,0x6e,0x69,0x66,0x6f,0x72,0x6d,0xa,
+ 0x20,0x20,0x20,0x20,0x76,0x65,0x63,0x33,0x20,0x77,0x5f,0x6f,0x20,0x3d,0x20,0x6e,
+ 0x6f,0x72,0x6d,0x61,0x6c,0x69,0x7a,0x65,0x28,0x70,0x6f,0x73,0x20,0x2d,0x20,0x63,
+ 0x61,0x6d,0x65,0x72,0x61,0x5f,0x77,0x6f,0x72,0x6c,0x64,0x53,0x70,0x61,0x63,0x65,
+ 0x29,0x3b,0xa,0x20,0x20,0x20,0x20,0x66,0x6c,0x6f,0x61,0x74,0x20,0x63,0x6f,0x73,
+ 0x5f,0x74,0x68,0x65,0x74,0x61,0x5f,0x69,0x20,0x3d,0x20,0x64,0x6f,0x74,0x28,0x2d,
+ 0x77,0x5f,0x6f,0x2c,0x20,0x6e,0x6f,0x72,0x6d,0x61,0x6c,0x5f,0x77,0x6f,0x72,0x6c,
+ 0x64,0x53,0x70,0x61,0x63,0x65,0x29,0x3b,0xa,0x20,0x20,0x20,0x20,0x66,0x6c,0x6f,
+ 0x61,0x74,0x20,0x6e,0x5f,0x69,0x20,0x3d,0x20,0x31,0x3b,0xa,0x20,0x20,0x20,0x20,
+ 0x66,0x6c,0x6f,0x61,0x74,0x20,0x6e,0x5f,0x74,0x20,0x3d,0x20,0x31,0x2e,0x33,0x33,
+ 0x66,0x3b,0xa,0x2f,0x2f,0x20,0x20,0x20,0x20,0x6d,0x61,0x74,0x49,0x6f,0x72,0x20,
+ 0x3d,0x20,0x6e,0x5f,0x74,0x3b,0xa,0x20,0x20,0x20,0x20,0x66,0x6c,0x6f,0x61,0x74,
+ 0x20,0x64,0x65,0x74,0x65,0x72,0x6d,0x69,0x6e,0x61,0x6e,0x74,0x20,0x3d,0x20,0x31,
+ 0x2e,0x66,0x20,0x2d,0x20,0x28,0x70,0x6f,0x77,0x28,0x28,0x6e,0x5f,0x69,0x20,0x2f,
+ 0x20,0x6e,0x5f,0x74,0x29,0x2c,0x20,0x32,0x2e,0x66,0x29,0x20,0x2a,0x20,0x28,0x31,
+ 0x2e,0x66,0x20,0x2d,0x20,0x70,0x6f,0x77,0x28,0x63,0x6f,0x73,0x5f,0x74,0x68,0x65,
+ 0x74,0x61,0x5f,0x69,0x2c,0x20,0x32,0x2e,0x66,0x29,0x29,0x29,0x3b,0xa,0xa,0x20,
+ 0x20,0x20,0x20,0x66,0x6c,0x6f,0x61,0x74,0x20,0x72,0x30,0x20,0x3d,0x20,0x70,0x6f,
+ 0x77,0x28,0x28,0x6e,0x5f,0x69,0x20,0x2d,0x20,0x6e,0x5f,0x74,0x29,0x20,0x2f,0x20,
+ 0x28,0x6e,0x5f,0x69,0x20,0x2b,0x20,0x6e,0x5f,0x74,0x29,0x2c,0x20,0x32,0x2e,0x66,
+ 0x29,0x3b,0x20,0x2f,0x2f,0x20,0x76,0x61,0x72,0x69,0x61,0x62,0x6c,0x65,0x20,0x72,
+ 0x65,0x71,0x75,0x69,0x72,0x65,0x64,0x20,0x74,0x6f,0x20,0x63,0x61,0x6c,0x63,0x75,
+ 0x6c,0x61,0x74,0x65,0x20,0x70,0x72,0x6f,0x62,0x61,0x62,0x69,0x6c,0x69,0x74,0x79,
+ 0x20,0x6f,0x66,0x20,0x72,0x65,0x66,0x6c,0x65,0x63,0x74,0x69,0x6f,0x6e,0xa,0x20,
+ 0x20,0x20,0x20,0x66,0x6c,0x6f,0x61,0x74,0x20,0x70,0x72,0x6f,0x62,0x5f,0x74,0x6f,
+ 0x5f,0x72,0x65,0x66,0x6c,0x20,0x3d,0x20,0x72,0x30,0x20,0x2b,0x20,0x28,0x28,0x31,
+ 0x20,0x2d,0x20,0x72,0x30,0x29,0x20,0x2a,0x20,0x70,0x6f,0x77,0x28,0x28,0x31,0x20,
+ 0x2d,0x20,0x63,0x6f,0x73,0x5f,0x74,0x68,0x65,0x74,0x61,0x5f,0x69,0x29,0x2c,0x20,
+ 0x35,0x2e,0x66,0x29,0x29,0x3b,0xa,0xa,0x20,0x20,0x20,0x20,0x69,0x66,0x20,0x28,
+ 0x64,0x65,0x74,0x65,0x72,0x6d,0x69,0x6e,0x61,0x6e,0x74,0x20,0x3e,0x3d,0x20,0x30,
+ 0x29,0x20,0x7b,0xa,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x66,0x6c,0x6f,0x61,
+ 0x74,0x20,0x63,0x6f,0x73,0x5f,0x74,0x68,0x65,0x74,0x61,0x5f,0x74,0x20,0x3d,0x20,
+ 0x73,0x71,0x72,0x74,0x28,0x64,0x65,0x74,0x65,0x72,0x6d,0x69,0x6e,0x61,0x6e,0x74,
+ 0x29,0x3b,0xa,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x76,0x65,0x63,0x33,0x20,
+ 0x77,0x5f,0x74,0x20,0x3d,0x20,0x28,0x6e,0x5f,0x69,0x20,0x2f,0x20,0x6e,0x5f,0x74,
+ 0x29,0x20,0x2a,0x20,0x77,0x5f,0x6f,0x20,0x2b,0x20,0x28,0x28,0x6e,0x5f,0x69,0x20,
+ 0x2f,0x20,0x6e,0x5f,0x74,0x29,0x20,0x2a,0x20,0x63,0x6f,0x73,0x5f,0x74,0x68,0x65,
+ 0x74,0x61,0x5f,0x69,0x20,0x2d,0x20,0x63,0x6f,0x73,0x5f,0x74,0x68,0x65,0x74,0x61,
+ 0x5f,0x74,0x29,0x20,0x2a,0x20,0x6e,0x6f,0x72,0x6d,0x61,0x6c,0x5f,0x77,0x6f,0x72,
+ 0x6c,0x64,0x53,0x70,0x61,0x63,0x65,0x3b,0xa,0x2f,0x2f,0x20,0x20,0x20,0x20,0x20,
+ 0x20,0x20,0x20,0x52,0x61,0x79,0x20,0x72,0x65,0x66,0x6c,0x65,0x63,0x74,0x65,0x64,
+ 0x52,0x61,0x79,0x28,0x69,0x2e,0x68,0x69,0x74,0x2c,0x20,0x77,0x5f,0x74,0x29,0x3b,
+ 0xa,0x2f,0x2f,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x66,0x6c,0x6f,0x61,0x74,
+ 0x20,0x61,0x74,0x74,0x65,0x6e,0x75,0x61,0x74,0x69,0x6f,0x6e,0x20,0x3d,0x20,0x28,
+ 0x21,0x65,0x6e,0x74,0x65,0x72,0x69,0x6e,0x67,0x20,0x26,0x26,0x20,0x61,0x74,0x74,
+ 0x65,0x6e,0x75,0x61,0x74,0x65,0x52,0x65,0x66,0x72,0x61,0x63,0x74,0x29,0x20,0x3f,
+ 0x20,0x73,0x74,0x64,0x3a,0x3a,0x70,0x6f,0x77,0x28,0x4d,0x5f,0x45,0x2c,0x20,0x28,
+ 0x2d,0x28,0x72,0x61,0x79,0x2e,0x6f,0x20,0x2d,0x20,0x69,0x2e,0x68,0x69,0x74,0x29,
+ 0x2e,0x6e,0x6f,0x72,0x6d,0x28,0x29,0x29,0x20,0x2a,0x20,0x6d,0x61,0x74,0x2e,0x69,
+ 0x6f,0x72,0x29,0x20,0x3a,0x20,0x31,0x3b,0xa,0x2f,0x2f,0x20,0x20,0x20,0x20,0x20,
0x20,0x20,0x20,0x4c,0x20,0x2b,0x3d,0x20,0x74,0x72,0x61,0x63,0x65,0x52,0x61,0x79,
0x28,0x72,0x65,0x66,0x6c,0x65,0x63,0x74,0x65,0x64,0x52,0x61,0x79,0x2c,0x20,0x73,
- 0x63,0x65,0x6e,0x65,0x2c,0x20,0x74,0x72,0x75,0x65,0x2c,0x20,0x63,0x75,0x72,0x72,
- 0x65,0x6e,0x74,0x5f,0x69,0x6f,0x72,0x2c,0x20,0x66,0x61,0x6c,0x73,0x65,0x29,0x20,
- 0x2f,0x20,0x74,0x68,0x72,0x65,0x73,0x68,0x6f,0x6c,0x64,0x3b,0xa,0x20,0x20,0x20,
- 0x20,0x20,0x20,0x20,0x20,0x72,0x65,0x74,0x75,0x72,0x6e,0x20,0x76,0x65,0x63,0x34,
- 0x28,0x30,0x2c,0x20,0x30,0x2c,0x20,0x30,0x2c,0x20,0x30,0x29,0x3b,0xa,0x20,0x20,
- 0x20,0x20,0x7d,0xa,0x7d,0xa,0xa,0x76,0x65,0x63,0x33,0x20,0x67,0x65,0x74,0x52,
- 0x65,0x66,0x6c,0x50,0x6f,0x73,0x28,0x29,0x20,0x7b,0xa,0x20,0x20,0x20,0x20,0x66,
- 0x6c,0x6f,0x61,0x74,0x20,0x64,0x65,0x70,0x74,0x68,0x20,0x3d,0x20,0x35,0x30,0x30,
- 0x2e,0x66,0x3b,0x20,0x2f,0x2f,0x20,0x54,0x4f,0x44,0x4f,0x3a,0x20,0x50,0x61,0x73,
- 0x73,0x20,0x61,0x73,0x20,0x75,0x6e,0x69,0x66,0x6f,0x72,0x6d,0xa,0x20,0x20,0x20,
- 0x20,0x76,0x65,0x63,0x33,0x20,0x77,0x5f,0x6f,0x20,0x3d,0x20,0x6e,0x6f,0x72,0x6d,
- 0x61,0x6c,0x69,0x7a,0x65,0x28,0x70,0x6f,0x73,0x20,0x2d,0x20,0x63,0x61,0x6d,0x65,
- 0x72,0x61,0x5f,0x77,0x6f,0x72,0x6c,0x64,0x53,0x70,0x61,0x63,0x65,0x29,0x3b,0xa,
- 0x20,0x20,0x20,0x20,0x76,0x65,0x63,0x33,0x20,0x72,0x65,0x66,0x6c,0x65,0x63,0x74,
- 0x65,0x64,0x52,0x61,0x79,0x20,0x3d,0x20,0x77,0x5f,0x6f,0x20,0x2d,0x20,0x32,0x20,
- 0x2a,0x20,0x64,0x6f,0x74,0x28,0x77,0x5f,0x6f,0x2c,0x20,0x6e,0x6f,0x72,0x6d,0x61,
- 0x6c,0x5f,0x77,0x6f,0x72,0x6c,0x64,0x53,0x70,0x61,0x63,0x65,0x29,0x20,0x2a,0x20,
+ 0x63,0x65,0x6e,0x65,0x2c,0x20,0x74,0x72,0x75,0x65,0x2c,0x20,0x6e,0x5f,0x74,0x2c,
+ 0x20,0x21,0x69,0x73,0x5f,0x69,0x6e,0x5f,0x72,0x65,0x66,0x72,0x61,0x63,0x74,0x6f,
+ 0x72,0x29,0x20,0x2a,0x20,0x61,0x74,0x74,0x65,0x6e,0x75,0x61,0x74,0x69,0x6f,0x6e,
+ 0x20,0x2f,0x20,0x74,0x68,0x72,0x65,0x73,0x68,0x6f,0x6c,0x64,0x3b,0xa,0x20,0x20,
+ 0x20,0x20,0x20,0x20,0x20,0x20,0x66,0x6c,0x6f,0x61,0x74,0x20,0x64,0x69,0x73,0x74,
+ 0x20,0x3d,0x20,0x70,0x6f,0x73,0x69,0x74,0x69,0x6f,0x6e,0x2e,0x79,0x20,0x2d,0x20,
+ 0x64,0x65,0x70,0x74,0x68,0x3b,0xa,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x66,
+ 0x6c,0x6f,0x61,0x74,0x20,0x64,0x65,0x70,0x74,0x68,0x53,0x63,0x61,0x6c,0x65,0x20,
+ 0x3d,0x20,0x64,0x69,0x73,0x74,0x20,0x2f,0x20,0x77,0x5f,0x74,0x2e,0x79,0x3b,0xa,
+ 0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x76,0x65,0x63,0x33,0x20,0x67,0x72,0x6f,
+ 0x75,0x6e,0x64,0x43,0x6f,0x6e,0x74,0x61,0x63,0x74,0x50,0x6f,0x69,0x6e,0x74,0x20,
+ 0x3d,0x20,0x2d,0x28,0x77,0x5f,0x74,0x20,0x2a,0x20,0x64,0x65,0x70,0x74,0x68,0x53,
+ 0x63,0x61,0x6c,0x65,0x29,0x20,0x2b,0x20,0x70,0x6f,0x73,0x69,0x74,0x69,0x6f,0x6e,
+ 0x3b,0xa,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x72,0x65,0x74,0x75,0x72,0x6e,
+ 0x20,0x76,0x65,0x63,0x34,0x28,0x67,0x72,0x6f,0x75,0x6e,0x64,0x43,0x6f,0x6e,0x74,
+ 0x61,0x63,0x74,0x50,0x6f,0x69,0x6e,0x74,0x2c,0x20,0x31,0x2e,0x66,0x20,0x2d,0x20,
+ 0x70,0x72,0x6f,0x62,0x5f,0x74,0x6f,0x5f,0x72,0x65,0x66,0x6c,0x29,0x3b,0xa,0x20,
+ 0x20,0x20,0x20,0x7d,0x20,0x65,0x6c,0x73,0x65,0x20,0x7b,0xa,0x2f,0x2f,0x20,0x20,
+ 0x20,0x20,0x20,0x20,0x20,0x20,0x45,0x69,0x67,0x65,0x6e,0x3a,0x3a,0x56,0x65,0x63,
+ 0x74,0x6f,0x72,0x33,0x66,0x20,0x77,0x5f,0x69,0x20,0x3d,0x20,0x77,0x5f,0x6f,0x20,
+ 0x2d,0x20,0x32,0x20,0x2a,0x20,0x77,0x5f,0x6f,0x2e,0x64,0x6f,0x74,0x28,0x69,0x6e,
+ 0x74,0x65,0x72,0x73,0x65,0x63,0x74,0x4e,0x6f,0x72,0x6d,0x61,0x6c,0x29,0x20,0x2a,
+ 0x20,0x69,0x6e,0x63,0x69,0x64,0x65,0x6e,0x63,0x65,0x4e,0x6f,0x72,0x6d,0x61,0x6c,
+ 0x3b,0xa,0x2f,0x2f,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x52,0x61,0x79,0x20,
+ 0x72,0x65,0x66,0x6c,0x65,0x63,0x74,0x65,0x64,0x52,0x61,0x79,0x28,0x69,0x2e,0x68,
+ 0x69,0x74,0x2c,0x20,0x77,0x5f,0x69,0x29,0x3b,0xa,0x2f,0x2f,0x20,0x20,0x20,0x20,
+ 0x20,0x20,0x20,0x20,0x4c,0x20,0x2b,0x3d,0x20,0x74,0x72,0x61,0x63,0x65,0x52,0x61,
+ 0x79,0x28,0x72,0x65,0x66,0x6c,0x65,0x63,0x74,0x65,0x64,0x52,0x61,0x79,0x2c,0x20,
+ 0x73,0x63,0x65,0x6e,0x65,0x2c,0x20,0x74,0x72,0x75,0x65,0x2c,0x20,0x63,0x75,0x72,
+ 0x72,0x65,0x6e,0x74,0x5f,0x69,0x6f,0x72,0x2c,0x20,0x66,0x61,0x6c,0x73,0x65,0x29,
+ 0x20,0x2f,0x20,0x74,0x68,0x72,0x65,0x73,0x68,0x6f,0x6c,0x64,0x3b,0xa,0x20,0x20,
+ 0x20,0x20,0x20,0x20,0x20,0x20,0x72,0x65,0x74,0x75,0x72,0x6e,0x20,0x76,0x65,0x63,
+ 0x34,0x28,0x30,0x2c,0x20,0x30,0x2c,0x20,0x30,0x2c,0x20,0x30,0x29,0x3b,0xa,0x20,
+ 0x20,0x20,0x20,0x7d,0xa,0x7d,0xa,0xa,0x76,0x65,0x63,0x33,0x20,0x67,0x65,0x74,
+ 0x52,0x65,0x66,0x6c,0x50,0x6f,0x73,0x28,0x29,0x20,0x7b,0xa,0x2f,0x2f,0x20,0x20,
+ 0x20,0x20,0x66,0x6c,0x6f,0x61,0x74,0x20,0x64,0x65,0x70,0x74,0x68,0x20,0x3d,0x20,
+ 0x35,0x30,0x30,0x2e,0x66,0x3b,0x20,0x2f,0x2f,0x20,0x54,0x4f,0x44,0x4f,0x3a,0x20,
+ 0x50,0x61,0x73,0x73,0x20,0x61,0x73,0x20,0x75,0x6e,0x69,0x66,0x6f,0x72,0x6d,0xa,
+ 0x20,0x20,0x20,0x20,0x76,0x65,0x63,0x33,0x20,0x77,0x5f,0x6f,0x20,0x3d,0x20,0x6e,
+ 0x6f,0x72,0x6d,0x61,0x6c,0x69,0x7a,0x65,0x28,0x70,0x6f,0x73,0x20,0x2d,0x20,0x63,
+ 0x61,0x6d,0x65,0x72,0x61,0x5f,0x77,0x6f,0x72,0x6c,0x64,0x53,0x70,0x61,0x63,0x65,
+ 0x29,0x3b,0xa,0x20,0x20,0x20,0x20,0x76,0x65,0x63,0x33,0x20,0x72,0x65,0x66,0x6c,
+ 0x65,0x63,0x74,0x65,0x64,0x52,0x61,0x79,0x20,0x3d,0x20,0x77,0x5f,0x6f,0x20,0x2d,
+ 0x20,0x32,0x20,0x2a,0x20,0x64,0x6f,0x74,0x28,0x77,0x5f,0x6f,0x2c,0x20,0x6e,0x6f,
+ 0x72,0x6d,0x61,0x6c,0x5f,0x77,0x6f,0x72,0x6c,0x64,0x53,0x70,0x61,0x63,0x65,0x29,
+ 0x20,0x2a,0x20,0x6e,0x6f,0x72,0x6d,0x61,0x6c,0x5f,0x77,0x6f,0x72,0x6c,0x64,0x53,
+ 0x70,0x61,0x63,0x65,0x3b,0xa,0xa,0x20,0x20,0x20,0x20,0x66,0x6c,0x6f,0x61,0x74,
+ 0x20,0x64,0x69,0x73,0x74,0x20,0x3d,0x20,0x73,0x6b,0x79,0x48,0x65,0x69,0x67,0x68,
+ 0x74,0x20,0x2d,0x20,0x70,0x6f,0x73,0x69,0x74,0x69,0x6f,0x6e,0x2e,0x79,0x3b,0xa,
+ 0x20,0x20,0x20,0x20,0x66,0x6c,0x6f,0x61,0x74,0x20,0x64,0x65,0x70,0x74,0x68,0x53,
+ 0x63,0x61,0x6c,0x65,0x20,0x3d,0x20,0x64,0x69,0x73,0x74,0x20,0x2f,0x20,0x72,0x65,
+ 0x66,0x6c,0x65,0x63,0x74,0x65,0x64,0x52,0x61,0x79,0x2e,0x79,0x3b,0xa,0x20,0x20,
+ 0x20,0x20,0x76,0x65,0x63,0x33,0x20,0x73,0x6b,0x79,0x43,0x6f,0x6e,0x74,0x61,0x63,
+ 0x74,0x50,0x6f,0x69,0x6e,0x74,0x20,0x3d,0x20,0x28,0x72,0x65,0x66,0x6c,0x65,0x63,
+ 0x74,0x65,0x64,0x52,0x61,0x79,0x20,0x2a,0x20,0x64,0x65,0x70,0x74,0x68,0x53,0x63,
+ 0x61,0x6c,0x65,0x29,0x20,0x2b,0x20,0x70,0x6f,0x73,0x69,0x74,0x69,0x6f,0x6e,0x3b,
+ 0xa,0x20,0x20,0x20,0x20,0x72,0x65,0x74,0x75,0x72,0x6e,0x20,0x73,0x6b,0x79,0x43,
+ 0x6f,0x6e,0x74,0x61,0x63,0x74,0x50,0x6f,0x69,0x6e,0x74,0x3b,0xa,0x7d,0xa,0xa,
+ 0x76,0x6f,0x69,0x64,0x20,0x6d,0x61,0x69,0x6e,0x28,0x29,0x20,0x7b,0xa,0x2f,0x2f,
+ 0x20,0x20,0x20,0x20,0x66,0x6c,0x6f,0x61,0x74,0x20,0x64,0x65,0x70,0x74,0x68,0x20,
+ 0x3d,0x20,0x2d,0x34,0x2e,0x66,0x3b,0xa,0x2f,0x2f,0x20,0x20,0x20,0x20,0x66,0x6c,
+ 0x6f,0x61,0x74,0x20,0x64,0x69,0x73,0x74,0x20,0x3d,0x20,0x70,0x6f,0x73,0x69,0x74,
+ 0x69,0x6f,0x6e,0x2e,0x79,0x20,0x2d,0x20,0x64,0x65,0x70,0x74,0x68,0x3b,0xa,0x20,
+ 0x20,0x20,0x20,0x66,0x6c,0x6f,0x61,0x74,0x20,0x77,0x69,0x64,0x74,0x68,0x20,0x3d,
+ 0x20,0x38,0x31,0x2e,0x66,0x20,0x2a,0x20,0x32,0x2e,0x66,0x3b,0xa,0x20,0x20,0x20,
+ 0x20,0x66,0x6c,0x6f,0x61,0x74,0x20,0x6c,0x65,0x6e,0x67,0x74,0x68,0x20,0x3d,0x20,
+ 0x38,0x31,0x2e,0x66,0x20,0x2a,0x20,0x32,0x2e,0x66,0x3b,0xa,0x20,0x20,0x20,0x20,
+ 0x6d,0x61,0x74,0x49,0x6f,0x72,0x20,0x3d,0x20,0x31,0x2e,0x33,0x33,0x66,0x3b,0xa,
+ 0xa,0x20,0x20,0x20,0x20,0x6e,0x6f,0x72,0x6d,0x61,0x6c,0x5f,0x63,0x61,0x6d,0x65,
+ 0x72,0x61,0x53,0x70,0x61,0x63,0x65,0x20,0x3d,0x20,0x6e,0x6f,0x72,0x6d,0x61,0x6c,
+ 0x69,0x7a,0x65,0x28,0x69,0x6e,0x76,0x65,0x72,0x73,0x65,0x28,0x74,0x72,0x61,0x6e,
+ 0x73,0x70,0x6f,0x73,0x65,0x28,0x6d,0x61,0x74,0x33,0x28,0x76,0x69,0x65,0x77,0x29,
+ 0x29,0x29,0x20,0x2a,0x20,0x69,0x6e,0x76,0x65,0x72,0x73,0x65,0x54,0x72,0x61,0x6e,
+ 0x73,0x70,0x6f,0x73,0x65,0x4d,0x6f,0x64,0x65,0x6c,0x20,0x2a,0x20,0x6e,0x6f,0x72,
+ 0x6d,0x61,0x6c,0x29,0x3b,0xa,0x20,0x20,0x20,0x20,0x63,0x61,0x6d,0x65,0x72,0x61,
+ 0x5f,0x77,0x6f,0x72,0x6c,0x64,0x53,0x70,0x61,0x63,0x65,0x20,0x3d,0x20,0x76,0x65,
+ 0x63,0x33,0x28,0x69,0x6e,0x76,0x65,0x72,0x73,0x65,0x56,0x69,0x65,0x77,0x20,0x2a,
+ 0x20,0x76,0x65,0x63,0x34,0x28,0x30,0x2e,0x66,0x2c,0x20,0x30,0x2e,0x66,0x2c,0x20,
+ 0x30,0x2e,0x66,0x2c,0x20,0x31,0x2e,0x66,0x29,0x29,0x3b,0xa,0x20,0x20,0x20,0x20,
0x6e,0x6f,0x72,0x6d,0x61,0x6c,0x5f,0x77,0x6f,0x72,0x6c,0x64,0x53,0x70,0x61,0x63,
- 0x65,0x3b,0xa,0xa,0x20,0x20,0x20,0x20,0x66,0x6c,0x6f,0x61,0x74,0x20,0x64,0x69,
- 0x73,0x74,0x20,0x3d,0x20,0x64,0x65,0x70,0x74,0x68,0x20,0x2d,0x20,0x70,0x6f,0x73,
- 0x69,0x74,0x69,0x6f,0x6e,0x2e,0x79,0x3b,0xa,0x20,0x20,0x20,0x20,0x66,0x6c,0x6f,
- 0x61,0x74,0x20,0x64,0x65,0x70,0x74,0x68,0x53,0x63,0x61,0x6c,0x65,0x20,0x3d,0x20,
- 0x64,0x69,0x73,0x74,0x20,0x2f,0x20,0x72,0x65,0x66,0x6c,0x65,0x63,0x74,0x65,0x64,
- 0x52,0x61,0x79,0x2e,0x79,0x3b,0xa,0x20,0x20,0x20,0x20,0x76,0x65,0x63,0x33,0x20,
- 0x73,0x6b,0x79,0x43,0x6f,0x6e,0x74,0x61,0x63,0x74,0x50,0x6f,0x69,0x6e,0x74,0x20,
- 0x3d,0x20,0x28,0x72,0x65,0x66,0x6c,0x65,0x63,0x74,0x65,0x64,0x52,0x61,0x79,0x20,
- 0x2a,0x20,0x64,0x65,0x70,0x74,0x68,0x53,0x63,0x61,0x6c,0x65,0x29,0x20,0x2b,0x20,
- 0x70,0x6f,0x73,0x69,0x74,0x69,0x6f,0x6e,0x3b,0xa,0x20,0x20,0x20,0x20,0x72,0x65,
- 0x74,0x75,0x72,0x6e,0x20,0x73,0x6b,0x79,0x43,0x6f,0x6e,0x74,0x61,0x63,0x74,0x50,
- 0x6f,0x69,0x6e,0x74,0x3b,0xa,0x7d,0xa,0xa,0x76,0x6f,0x69,0x64,0x20,0x6d,0x61,
- 0x69,0x6e,0x28,0x29,0x20,0x7b,0xa,0x2f,0x2f,0x20,0x20,0x20,0x20,0x66,0x6c,0x6f,
- 0x61,0x74,0x20,0x64,0x65,0x70,0x74,0x68,0x20,0x3d,0x20,0x2d,0x34,0x2e,0x66,0x3b,
- 0xa,0x2f,0x2f,0x20,0x20,0x20,0x20,0x66,0x6c,0x6f,0x61,0x74,0x20,0x64,0x69,0x73,
- 0x74,0x20,0x3d,0x20,0x70,0x6f,0x73,0x69,0x74,0x69,0x6f,0x6e,0x2e,0x79,0x20,0x2d,
- 0x20,0x64,0x65,0x70,0x74,0x68,0x3b,0xa,0x20,0x20,0x20,0x20,0x66,0x6c,0x6f,0x61,
- 0x74,0x20,0x77,0x69,0x64,0x74,0x68,0x20,0x3d,0x20,0x38,0x31,0x2e,0x66,0x20,0x2a,
- 0x20,0x32,0x2e,0x66,0x3b,0xa,0x20,0x20,0x20,0x20,0x66,0x6c,0x6f,0x61,0x74,0x20,
- 0x6c,0x65,0x6e,0x67,0x74,0x68,0x20,0x3d,0x20,0x38,0x31,0x2e,0x66,0x20,0x2a,0x20,
- 0x32,0x2e,0x66,0x3b,0xa,0x20,0x20,0x20,0x20,0x6d,0x61,0x74,0x49,0x6f,0x72,0x20,
- 0x3d,0x20,0x31,0x2e,0x33,0x33,0x66,0x3b,0xa,0xa,0x20,0x20,0x20,0x20,0x6e,0x6f,
- 0x72,0x6d,0x61,0x6c,0x5f,0x63,0x61,0x6d,0x65,0x72,0x61,0x53,0x70,0x61,0x63,0x65,
- 0x20,0x3d,0x20,0x6e,0x6f,0x72,0x6d,0x61,0x6c,0x69,0x7a,0x65,0x28,0x69,0x6e,0x76,
- 0x65,0x72,0x73,0x65,0x28,0x74,0x72,0x61,0x6e,0x73,0x70,0x6f,0x73,0x65,0x28,0x6d,
- 0x61,0x74,0x33,0x28,0x76,0x69,0x65,0x77,0x29,0x29,0x29,0x20,0x2a,0x20,0x69,0x6e,
- 0x76,0x65,0x72,0x73,0x65,0x54,0x72,0x61,0x6e,0x73,0x70,0x6f,0x73,0x65,0x4d,0x6f,
- 0x64,0x65,0x6c,0x20,0x2a,0x20,0x6e,0x6f,0x72,0x6d,0x61,0x6c,0x29,0x3b,0xa,0x20,
- 0x20,0x20,0x20,0x63,0x61,0x6d,0x65,0x72,0x61,0x5f,0x77,0x6f,0x72,0x6c,0x64,0x53,
- 0x70,0x61,0x63,0x65,0x20,0x3d,0x20,0x76,0x65,0x63,0x33,0x28,0x69,0x6e,0x76,0x65,
- 0x72,0x73,0x65,0x56,0x69,0x65,0x77,0x20,0x2a,0x20,0x76,0x65,0x63,0x34,0x28,0x30,
- 0x2e,0x66,0x2c,0x20,0x30,0x2e,0x66,0x2c,0x20,0x30,0x2e,0x66,0x2c,0x20,0x31,0x2e,
- 0x66,0x29,0x29,0x3b,0xa,0x20,0x20,0x20,0x20,0x6e,0x6f,0x72,0x6d,0x61,0x6c,0x5f,
- 0x77,0x6f,0x72,0x6c,0x64,0x53,0x70,0x61,0x63,0x65,0x20,0x3d,0x20,0x6e,0x6f,0x72,
- 0x6d,0x61,0x6c,0x3b,0xa,0x20,0x20,0x20,0x20,0x70,0x6f,0x73,0x20,0x3d,0x20,0x76,
- 0x65,0x63,0x33,0x28,0x6d,0x6f,0x64,0x65,0x6c,0x20,0x2a,0x20,0x76,0x65,0x63,0x34,
- 0x28,0x70,0x6f,0x73,0x69,0x74,0x69,0x6f,0x6e,0x2c,0x20,0x31,0x2e,0x66,0x29,0x29,
- 0x3b,0x20,0x2f,0x2f,0x76,0x65,0x63,0x33,0x28,0x6d,0x6f,0x64,0x65,0x6c,0x20,0x2a,
- 0x20,0x76,0x65,0x63,0x34,0x28,0x6f,0x62,0x6a,0x53,0x70,0x61,0x63,0x65,0x50,0x6f,
- 0x73,0x2c,0x20,0x31,0x2e,0x66,0x29,0x29,0x3b,0xa,0x2f,0x2f,0x20,0x20,0x20,0x20,
- 0x70,0x6f,0x73,0x20,0x3d,0x20,0x70,0x6f,0x73,0x69,0x74,0x69,0x6f,0x6e,0x3b,0xa,
- 0xa,0x2f,0x2f,0x20,0x20,0x20,0x20,0x66,0x6c,0x6f,0x61,0x74,0x20,0x64,0x65,0x70,
- 0x74,0x68,0x53,0x63,0x61,0x6c,0x65,0x20,0x3d,0x20,0x64,0x69,0x73,0x74,0x20,0x2f,
- 0x20,0x6e,0x6f,0x72,0x6d,0x61,0x6c,0x2e,0x79,0x3b,0xa,0x2f,0x2f,0x20,0x20,0x20,
- 0x20,0x76,0x65,0x63,0x33,0x20,0x67,0x72,0x6f,0x75,0x6e,0x64,0x43,0x6f,0x6e,0x74,
- 0x61,0x63,0x74,0x50,0x6f,0x69,0x6e,0x74,0x20,0x3d,0x20,0x2d,0x28,0x6e,0x6f,0x72,
- 0x6d,0x61,0x6c,0x20,0x2a,0x20,0x64,0x65,0x70,0x74,0x68,0x53,0x63,0x61,0x6c,0x65,
- 0x29,0x20,0x2b,0x20,0x70,0x6f,0x73,0x69,0x74,0x69,0x6f,0x6e,0x3b,0x20,0x2f,0x2f,
- 0x20,0x63,0x61,0x72,0x72,0x69,0x65,0x73,0x20,0x64,0x6f,0x77,0x6e,0x20,0x74,0x6f,
- 0x20,0x67,0x72,0x6f,0x75,0x6e,0x64,0xa,0x2f,0x2f,0x20,0x20,0x20,0x20,0x67,0x72,
- 0x6f,0x75,0x6e,0x64,0x43,0x6f,0x6e,0x74,0x61,0x63,0x74,0x50,0x6f,0x69,0x6e,0x74,
- 0x20,0x3d,0x20,0x76,0x65,0x63,0x33,0x28,0x6d,0x6f,0x64,0x65,0x6c,0x20,0x2a,0x20,
- 0x76,0x65,0x63,0x34,0x28,0x70,0x6f,0x73,0x69,0x74,0x69,0x6f,0x6e,0x2c,0x20,0x31,
- 0x29,0x29,0x3b,0xa,0x2f,0x2f,0x20,0x20,0x20,0x20,0x75,0x76,0x20,0x3d,0x20,0x76,
- 0x65,0x63,0x32,0x28,0x28,0x70,0x6f,0x73,0x69,0x74,0x69,0x6f,0x6e,0x2e,0x78,0x20,
- 0x2b,0x20,0x38,0x31,0x2e,0x66,0x29,0x20,0x2f,0x20,0x28,0x31,0x36,0x32,0x2e,0x66,
- 0x29,0x2c,0x20,0x67,0x72,0x6f,0x75,0x6e,0x64,0x43,0x6f,0x6e,0x74,0x61,0x63,0x74,
- 0x50,0x6f,0x69,0x6e,0x74,0x2e,0x7a,0x29,0x3b,0xa,0x2f,0x2f,0x20,0x20,0x20,0x20,
- 0x75,0x76,0x20,0x3d,0x20,0x76,0x65,0x63,0x32,0x28,0x6e,0x6f,0x72,0x6d,0x61,0x6c,
- 0x29,0x3b,0xa,0x20,0x20,0x20,0x20,0x76,0x65,0x63,0x34,0x20,0x72,0x65,0x66,0x72,
- 0x50,0x6f,0x73,0x5f,0x61,0x6e,0x64,0x5f,0x70,0x72,0x6f,0x62,0x20,0x3d,0x20,0x67,
- 0x65,0x74,0x52,0x65,0x66,0x72,0x50,0x6f,0x73,0x28,0x29,0x3b,0xa,0x20,0x20,0x20,
- 0x20,0x72,0x65,0x66,0x72,0x50,0x6f,0x73,0x20,0x3d,0x20,0x76,0x65,0x63,0x33,0x28,
- 0x72,0x65,0x66,0x72,0x50,0x6f,0x73,0x5f,0x61,0x6e,0x64,0x5f,0x70,0x72,0x6f,0x62,
- 0x29,0x3b,0xa,0x20,0x20,0x20,0x20,0x72,0x65,0x66,0x72,0x50,0x72,0x6f,0x62,0x20,
- 0x3d,0x20,0x63,0x6c,0x61,0x6d,0x70,0x28,0x72,0x65,0x66,0x72,0x50,0x6f,0x73,0x5f,
- 0x61,0x6e,0x64,0x5f,0x70,0x72,0x6f,0x62,0x2e,0x77,0x2c,0x20,0x30,0x2e,0x66,0x2c,
- 0x20,0x31,0x2e,0x66,0x29,0x3b,0xa,0xa,0x20,0x20,0x20,0x20,0x72,0x65,0x66,0x6c,
- 0x50,0x6f,0x73,0x20,0x3d,0x20,0x67,0x65,0x74,0x52,0x65,0x66,0x6c,0x50,0x6f,0x73,
- 0x28,0x29,0x3b,0xa,0xa,0x20,0x20,0x20,0x20,0x67,0x6c,0x5f,0x50,0x6f,0x73,0x69,
- 0x74,0x69,0x6f,0x6e,0x20,0x3d,0x20,0x70,0x72,0x6f,0x6a,0x20,0x2a,0x20,0x76,0x69,
- 0x65,0x77,0x20,0x2a,0x20,0x6d,0x6f,0x64,0x65,0x6c,0x20,0x2a,0x20,0x76,0x65,0x63,
- 0x34,0x28,0x70,0x6f,0x73,0x69,0x74,0x69,0x6f,0x6e,0x2c,0x20,0x31,0x29,0x3b,0xa,
- 0x7d,0xa,
+ 0x65,0x20,0x3d,0x20,0x6e,0x6f,0x72,0x6d,0x61,0x6c,0x3b,0xa,0x20,0x20,0x20,0x20,
+ 0x70,0x6f,0x73,0x20,0x3d,0x20,0x76,0x65,0x63,0x33,0x28,0x6d,0x6f,0x64,0x65,0x6c,
+ 0x20,0x2a,0x20,0x76,0x65,0x63,0x34,0x28,0x70,0x6f,0x73,0x69,0x74,0x69,0x6f,0x6e,
+ 0x2c,0x20,0x31,0x2e,0x66,0x29,0x29,0x3b,0x20,0x2f,0x2f,0x76,0x65,0x63,0x33,0x28,
+ 0x6d,0x6f,0x64,0x65,0x6c,0x20,0x2a,0x20,0x76,0x65,0x63,0x34,0x28,0x6f,0x62,0x6a,
+ 0x53,0x70,0x61,0x63,0x65,0x50,0x6f,0x73,0x2c,0x20,0x31,0x2e,0x66,0x29,0x29,0x3b,
+ 0xa,0x2f,0x2f,0x20,0x20,0x20,0x20,0x70,0x6f,0x73,0x20,0x3d,0x20,0x70,0x6f,0x73,
+ 0x69,0x74,0x69,0x6f,0x6e,0x3b,0xa,0xa,0x2f,0x2f,0x20,0x20,0x20,0x20,0x66,0x6c,
+ 0x6f,0x61,0x74,0x20,0x64,0x65,0x70,0x74,0x68,0x53,0x63,0x61,0x6c,0x65,0x20,0x3d,
+ 0x20,0x64,0x69,0x73,0x74,0x20,0x2f,0x20,0x6e,0x6f,0x72,0x6d,0x61,0x6c,0x2e,0x79,
+ 0x3b,0xa,0x2f,0x2f,0x20,0x20,0x20,0x20,0x76,0x65,0x63,0x33,0x20,0x67,0x72,0x6f,
+ 0x75,0x6e,0x64,0x43,0x6f,0x6e,0x74,0x61,0x63,0x74,0x50,0x6f,0x69,0x6e,0x74,0x20,
+ 0x3d,0x20,0x2d,0x28,0x6e,0x6f,0x72,0x6d,0x61,0x6c,0x20,0x2a,0x20,0x64,0x65,0x70,
+ 0x74,0x68,0x53,0x63,0x61,0x6c,0x65,0x29,0x20,0x2b,0x20,0x70,0x6f,0x73,0x69,0x74,
+ 0x69,0x6f,0x6e,0x3b,0x20,0x2f,0x2f,0x20,0x63,0x61,0x72,0x72,0x69,0x65,0x73,0x20,
+ 0x64,0x6f,0x77,0x6e,0x20,0x74,0x6f,0x20,0x67,0x72,0x6f,0x75,0x6e,0x64,0xa,0x2f,
+ 0x2f,0x20,0x20,0x20,0x20,0x67,0x72,0x6f,0x75,0x6e,0x64,0x43,0x6f,0x6e,0x74,0x61,
+ 0x63,0x74,0x50,0x6f,0x69,0x6e,0x74,0x20,0x3d,0x20,0x76,0x65,0x63,0x33,0x28,0x6d,
+ 0x6f,0x64,0x65,0x6c,0x20,0x2a,0x20,0x76,0x65,0x63,0x34,0x28,0x70,0x6f,0x73,0x69,
+ 0x74,0x69,0x6f,0x6e,0x2c,0x20,0x31,0x29,0x29,0x3b,0xa,0x2f,0x2f,0x20,0x20,0x20,
+ 0x20,0x75,0x76,0x20,0x3d,0x20,0x76,0x65,0x63,0x32,0x28,0x28,0x70,0x6f,0x73,0x69,
+ 0x74,0x69,0x6f,0x6e,0x2e,0x78,0x20,0x2b,0x20,0x38,0x31,0x2e,0x66,0x29,0x20,0x2f,
+ 0x20,0x28,0x31,0x36,0x32,0x2e,0x66,0x29,0x2c,0x20,0x67,0x72,0x6f,0x75,0x6e,0x64,
+ 0x43,0x6f,0x6e,0x74,0x61,0x63,0x74,0x50,0x6f,0x69,0x6e,0x74,0x2e,0x7a,0x29,0x3b,
+ 0xa,0x2f,0x2f,0x20,0x20,0x20,0x20,0x75,0x76,0x20,0x3d,0x20,0x76,0x65,0x63,0x32,
+ 0x28,0x6e,0x6f,0x72,0x6d,0x61,0x6c,0x29,0x3b,0xa,0x20,0x20,0x20,0x20,0x76,0x65,
+ 0x63,0x34,0x20,0x72,0x65,0x66,0x72,0x50,0x6f,0x73,0x5f,0x61,0x6e,0x64,0x5f,0x70,
+ 0x72,0x6f,0x62,0x20,0x3d,0x20,0x67,0x65,0x74,0x52,0x65,0x66,0x72,0x50,0x6f,0x73,
+ 0x28,0x29,0x3b,0xa,0x20,0x20,0x20,0x20,0x72,0x65,0x66,0x72,0x50,0x6f,0x73,0x20,
+ 0x3d,0x20,0x76,0x65,0x63,0x33,0x28,0x72,0x65,0x66,0x72,0x50,0x6f,0x73,0x5f,0x61,
+ 0x6e,0x64,0x5f,0x70,0x72,0x6f,0x62,0x29,0x3b,0xa,0x20,0x20,0x20,0x20,0x72,0x65,
+ 0x66,0x72,0x50,0x72,0x6f,0x62,0x20,0x3d,0x20,0x63,0x6c,0x61,0x6d,0x70,0x28,0x72,
+ 0x65,0x66,0x72,0x50,0x6f,0x73,0x5f,0x61,0x6e,0x64,0x5f,0x70,0x72,0x6f,0x62,0x2e,
+ 0x77,0x2c,0x20,0x30,0x2e,0x66,0x2c,0x20,0x31,0x2e,0x66,0x29,0x3b,0xa,0xa,0x20,
+ 0x20,0x20,0x20,0x72,0x65,0x66,0x6c,0x50,0x6f,0x73,0x20,0x3d,0x20,0x67,0x65,0x74,
+ 0x52,0x65,0x66,0x6c,0x50,0x6f,0x73,0x28,0x29,0x3b,0xa,0xa,0x20,0x20,0x20,0x20,
+ 0x67,0x6c,0x5f,0x50,0x6f,0x73,0x69,0x74,0x69,0x6f,0x6e,0x20,0x3d,0x20,0x70,0x72,
+ 0x6f,0x6a,0x20,0x2a,0x20,0x76,0x69,0x65,0x77,0x20,0x2a,0x20,0x6d,0x6f,0x64,0x65,
+ 0x6c,0x20,0x2a,0x20,0x76,0x65,0x63,0x34,0x28,0x70,0x6f,0x73,0x69,0x74,0x69,0x6f,
+ 0x6e,0x2c,0x20,0x31,0x29,0x3b,0xa,0x7d,0xa,
// /Users/sotech117/Documents/final/adv/ocean-simulation/resources/shaders/shader.frag
- 0x0,0x0,0x12,0x6a,
+ 0x0,0x0,0x12,0xa6,
0x23,
0x76,0x65,0x72,0x73,0x69,0x6f,0x6e,0x20,0x34,0x31,0x30,0x20,0x63,0x6f,0x72,0x65,
0xa,0x6f,0x75,0x74,0x20,0x76,0x65,0x63,0x34,0x20,0x66,0x72,0x61,0x67,0x43,0x6f,
@@ -529,155 +831,159 @@ static const unsigned char qt_resource_data[] = {
0x50,0x6f,0x73,0x29,0x3b,0xa,0x20,0x20,0x20,0x20,0x76,0x65,0x63,0x32,0x20,0x72,
0x65,0x66,0x6c,0x55,0x56,0x20,0x3d,0x20,0x75,0x76,0x46,0x72,0x6f,0x6d,0x57,0x6f,
0x72,0x6c,0x64,0x50,0x6f,0x69,0x6e,0x74,0x28,0x72,0x65,0x66,0x6c,0x50,0x6f,0x73,
- 0x29,0x3b,0xa,0xa,0x20,0x20,0x20,0x20,0x66,0x6c,0x6f,0x61,0x74,0x20,0x77,0x61,
- 0x74,0x65,0x72,0x4d,0x75,0x72,0x6b,0x69,0x6e,0x65,0x73,0x73,0x20,0x3d,0x20,0x30,
- 0x2e,0x30,0x30,0x32,0x66,0x3b,0x20,0x2f,0x2f,0x20,0x54,0x4f,0x44,0x4f,0x3a,0x20,
- 0x4d,0x61,0x6b,0x65,0x20,0x75,0x6e,0x69,0x66,0x6f,0x72,0x6d,0xa,0x20,0x20,0x20,
- 0x20,0x76,0x65,0x63,0x33,0x20,0x77,0x61,0x74,0x65,0x72,0x56,0x6f,0x6c,0x75,0x6d,
- 0x65,0x43,0x6f,0x6c,0x6f,0x72,0x20,0x3d,0x20,0x76,0x65,0x63,0x33,0x28,0x72,0x65,
- 0x64,0x20,0x2a,0x20,0x30,0x2e,0x31,0x66,0x2c,0x20,0x67,0x72,0x65,0x65,0x6e,0x20,
- 0x2a,0x20,0x30,0x2e,0x32,0x66,0x2c,0x20,0x62,0x6c,0x75,0x65,0x20,0x2a,0x20,0x30,
- 0x2e,0x32,0x66,0x29,0x3b,0xa,0x20,0x20,0x20,0x20,0x66,0x6c,0x6f,0x61,0x74,0x20,
- 0x6d,0x75,0x72,0x6b,0x44,0x69,0x66,0x66,0x75,0x73,0x65,0x20,0x3d,0x20,0x30,0x2e,
- 0x33,0x66,0x3b,0xa,0x20,0x20,0x20,0x20,0x66,0x6c,0x6f,0x61,0x74,0x20,0x6d,0x75,
- 0x72,0x6b,0x41,0x6d,0x62,0x69,0x65,0x6e,0x74,0x20,0x3d,0x20,0x30,0x2e,0x38,0x66,
- 0x3b,0xa,0x20,0x20,0x20,0x20,0x66,0x6c,0x6f,0x61,0x74,0x20,0x62,0x65,0x65,0x72,
- 0x41,0x74,0x74,0x20,0x3d,0x20,0x65,0x78,0x70,0x28,0x2d,0x6c,0x65,0x6e,0x67,0x74,
- 0x68,0x28,0x28,0x70,0x6f,0x73,0x20,0x2d,0x20,0x72,0x65,0x66,0x72,0x50,0x6f,0x73,
- 0x29,0x29,0x20,0x2a,0x20,0x77,0x61,0x74,0x65,0x72,0x4d,0x75,0x72,0x6b,0x69,0x6e,
- 0x65,0x73,0x73,0x29,0x3b,0xa,0x20,0x20,0x20,0x20,0x2f,0x2f,0x20,0x45,0x58,0x50,
- 0x4c,0x41,0x4e,0x41,0x54,0x49,0x4f,0x4e,0x3a,0x20,0x57,0x48,0x45,0x4e,0x20,0x54,
- 0x48,0x45,0x20,0x57,0x41,0x54,0x45,0x52,0x20,0x49,0x53,0x20,0x4e,0x4f,0x54,0x20,
- 0x50,0x45,0x52,0x46,0x45,0x43,0x54,0x4c,0x59,0x20,0x43,0x4c,0x45,0x41,0x52,0x2c,
- 0x20,0x49,0x54,0x20,0x57,0x49,0x4c,0x4c,0x20,0x48,0x41,0x56,0x45,0x20,0x53,0x54,
- 0x55,0x46,0x46,0x20,0x53,0x43,0x41,0x54,0x54,0x45,0x52,0x49,0x4e,0x47,0x20,0x4c,
- 0x49,0x47,0x48,0x54,0x20,0x55,0x4e,0x44,0x45,0x52,0x4e,0x45,0x41,0x54,0x48,0x20,
- 0x54,0x48,0x45,0x20,0x53,0x55,0x52,0x46,0x41,0x43,0x45,0xa,0x20,0x20,0x20,0x20,
- 0x2f,0x2f,0x20,0x53,0x4f,0x4d,0x45,0x20,0x4f,0x46,0x20,0x49,0x54,0x20,0x57,0x49,
- 0x4c,0x4c,0x20,0x42,0x45,0x20,0x44,0x49,0x46,0x46,0x55,0x53,0x45,0x4c,0x59,0x20,
- 0x4c,0x49,0x54,0x2c,0x20,0x42,0x55,0x54,0x20,0x54,0x48,0x45,0x52,0x45,0x20,0x57,
- 0x49,0x4c,0x4c,0x20,0x42,0x45,0x20,0x53,0x55,0x42,0x53,0x55,0x52,0x46,0x41,0x43,
- 0x45,0x20,0x53,0x43,0x41,0x54,0x54,0x45,0x52,0x49,0x4e,0x47,0x2c,0x20,0x45,0x53,
- 0x54,0x49,0x4d,0x41,0x54,0x45,0x44,0x20,0x42,0x59,0x20,0x54,0x48,0x45,0x20,0x41,
- 0x4d,0x42,0x49,0x45,0x4e,0x54,0x20,0x54,0x45,0x52,0x4d,0xa,0xa,0x20,0x20,0x20,
- 0x20,0x76,0x65,0x63,0x34,0x20,0x64,0x69,0x66,0x66,0x75,0x73,0x65,0x20,0x3d,0x20,
- 0x76,0x65,0x63,0x34,0x28,0x72,0x65,0x64,0x20,0x2a,0x20,0x64,0x2c,0x20,0x67,0x72,
- 0x65,0x65,0x6e,0x20,0x2a,0x20,0x64,0x2c,0x20,0x62,0x6c,0x75,0x65,0x20,0x2a,0x20,
- 0x64,0x2c,0x20,0x31,0x2e,0x30,0x66,0x29,0x3b,0xa,0x20,0x20,0x20,0x20,0x76,0x65,
- 0x63,0x34,0x20,0x73,0x70,0x65,0x63,0x75,0x6c,0x61,0x72,0x20,0x3d,0x20,0x76,0x65,
- 0x63,0x34,0x28,0x31,0x2c,0x20,0x31,0x2c,0x20,0x31,0x2c,0x20,0x31,0x29,0x20,0x2a,
- 0x20,0x70,0x6f,0x77,0x28,0x73,0x70,0x65,0x63,0x2c,0x20,0x31,0x30,0x2e,0x66,0x29,
- 0x3b,0xa,0x2f,0x2f,0x20,0x20,0x20,0x20,0x76,0x65,0x63,0x34,0x20,0x74,0x72,0x61,
- 0x6e,0x73,0x6d,0x69,0x73,0x73,0x69,0x76,0x65,0x20,0x3d,0x20,0x76,0x65,0x63,0x34,
- 0x28,0x76,0x65,0x63,0x33,0x28,0x72,0x65,0x66,0x72,0x55,0x56,0x2c,0x20,0x31,0x2e,
- 0x66,0x20,0x2d,0x20,0x72,0x65,0x66,0x72,0x55,0x56,0x2e,0x79,0x29,0x2c,0x20,0x31,
- 0x2e,0x66,0x29,0x3b,0xa,0x20,0x20,0x20,0x20,0x66,0x6c,0x6f,0x61,0x74,0x20,0x77,
- 0x61,0x74,0x65,0x72,0x42,0x6c,0x75,0x72,0x72,0x69,0x6e,0x65,0x73,0x73,0x20,0x3d,
- 0x20,0x30,0x2e,0x66,0x3b,0xa,0x20,0x20,0x20,0x20,0x76,0x65,0x63,0x32,0x20,0x72,
- 0x65,0x66,0x72,0x55,0x56,0x42,0x6c,0x75,0x72,0x72,0x79,0x20,0x3d,0x20,0x28,0x31,
- 0x20,0x2d,0x20,0x62,0x65,0x65,0x72,0x41,0x74,0x74,0x29,0x20,0x2a,0x20,0x76,0x65,
- 0x63,0x32,0x28,0x72,0x61,0x6e,0x64,0x28,0x72,0x65,0x66,0x72,0x55,0x56,0x29,0x2c,
- 0x20,0x72,0x61,0x6e,0x64,0x28,0x76,0x65,0x63,0x34,0x28,0x70,0x6f,0x73,0x2c,0x20,
- 0x64,0x29,0x29,0x29,0x20,0x2a,0x20,0x77,0x61,0x74,0x65,0x72,0x42,0x6c,0x75,0x72,
- 0x72,0x69,0x6e,0x65,0x73,0x73,0x20,0x2b,0x20,0x72,0x65,0x66,0x72,0x55,0x56,0x3b,
- 0xa,0x20,0x20,0x20,0x20,0x76,0x65,0x63,0x34,0x20,0x74,0x72,0x61,0x6e,0x73,0x6d,
- 0x69,0x73,0x73,0x69,0x76,0x65,0x20,0x3d,0x20,0x74,0x65,0x78,0x74,0x75,0x72,0x65,
- 0x28,0x67,0x72,0x6f,0x75,0x6e,0x64,0x53,0x61,0x6d,0x70,0x6c,0x65,0x72,0x2c,0x20,
- 0x76,0x65,0x63,0x32,0x28,0x72,0x65,0x66,0x72,0x55,0x56,0x42,0x6c,0x75,0x72,0x72,
- 0x79,0x29,0x29,0x3b,0xa,0x20,0x20,0x20,0x20,0x76,0x65,0x63,0x34,0x20,0x6d,0x75,
- 0x72,0x6b,0x20,0x3d,0x20,0x28,0x76,0x65,0x63,0x34,0x28,0x77,0x61,0x74,0x65,0x72,
- 0x56,0x6f,0x6c,0x75,0x6d,0x65,0x43,0x6f,0x6c,0x6f,0x72,0x20,0x2a,0x20,0x64,0x20,
- 0x2a,0x20,0x6d,0x75,0x72,0x6b,0x44,0x69,0x66,0x66,0x75,0x73,0x65,0x20,0x2b,0x20,
- 0x77,0x61,0x74,0x65,0x72,0x56,0x6f,0x6c,0x75,0x6d,0x65,0x43,0x6f,0x6c,0x6f,0x72,
- 0x20,0x2a,0x20,0x6d,0x75,0x72,0x6b,0x41,0x6d,0x62,0x69,0x65,0x6e,0x74,0x2c,0x20,
- 0x31,0x2e,0x30,0x66,0x29,0x29,0x3b,0xa,0xa,0x20,0x20,0x20,0x20,0x76,0x65,0x63,
- 0x34,0x20,0x73,0x6b,0x79,0x52,0x65,0x66,0x6c,0x20,0x3d,0x20,0x74,0x65,0x78,0x74,
- 0x75,0x72,0x65,0x28,0x73,0x6b,0x79,0x53,0x61,0x6d,0x70,0x6c,0x65,0x72,0x2c,0x20,
- 0x76,0x65,0x63,0x32,0x28,0x72,0x65,0x66,0x6c,0x55,0x56,0x29,0x29,0x3b,0xa,0x2f,
- 0x2f,0x20,0x20,0x20,0x20,0x72,0x65,0x66,0x72,0x50,0x72,0x6f,0x62,0x20,0x2a,0x3d,
- 0x20,0x62,0x65,0x65,0x72,0x41,0x74,0x74,0x3b,0xa,0xa,0x20,0x20,0x20,0x20,0x66,
- 0x72,0x61,0x67,0x43,0x6f,0x6c,0x6f,0x72,0x20,0x3d,0x20,0x30,0x2e,0x37,0x35,0x66,
- 0x20,0x2a,0x20,0x64,0x69,0x66,0x66,0x75,0x73,0x65,0x3b,0x20,0x2f,0x2f,0x20,0x44,
- 0x69,0x66,0x66,0x75,0x73,0x65,0xa,0x2f,0x2f,0x20,0x20,0x20,0x20,0x66,0x72,0x61,
- 0x67,0x43,0x6f,0x6c,0x6f,0x72,0x20,0x3d,0x20,0x76,0x65,0x63,0x34,0x28,0x30,0x2c,
- 0x20,0x30,0x2c,0x20,0x30,0x2c,0x20,0x31,0x2e,0x66,0x29,0x3b,0xa,0x2f,0x2f,0x20,
- 0x20,0x20,0x20,0x66,0x72,0x61,0x67,0x43,0x6f,0x6c,0x6f,0x72,0x20,0x3d,0x20,0x76,
- 0x65,0x63,0x34,0x28,0x2e,0x39,0x66,0x2c,0x31,0x2e,0x66,0x2c,0x31,0x2e,0x66,0x2c,
- 0x30,0x29,0x3b,0xa,0x20,0x20,0x20,0x20,0x66,0x72,0x61,0x67,0x43,0x6f,0x6c,0x6f,
- 0x72,0x20,0x3d,0x20,0x76,0x65,0x63,0x34,0x28,0x72,0x65,0x64,0x20,0x2a,0x20,0x2e,
- 0x32,0x66,0x2c,0x20,0x67,0x72,0x65,0x65,0x6e,0x20,0x2a,0x20,0x2e,0x32,0x66,0x2c,
- 0x20,0x62,0x6c,0x75,0x65,0x20,0x2a,0x20,0x2e,0x32,0x66,0x2c,0x31,0x2e,0x66,0x29,
- 0x3b,0xa,0x20,0x20,0x20,0x20,0x66,0x72,0x61,0x67,0x43,0x6f,0x6c,0x6f,0x72,0x20,
- 0x2b,0x3d,0x20,0x31,0x2e,0x66,0x20,0x2a,0x20,0x73,0x70,0x65,0x63,0x75,0x6c,0x61,
- 0x72,0x3b,0x20,0x2f,0x2f,0x20,0x53,0x70,0x65,0x63,0x75,0x6c,0x61,0x72,0x20,0x54,
- 0x4f,0x44,0x4f,0x3a,0x20,0x50,0x61,0x73,0x73,0x20,0x6d,0x75,0x6c,0x74,0x69,0x70,
- 0x6c,0x69,0x63,0x61,0x74,0x69,0x6f,0x6e,0x73,0x20,0x61,0x73,0x20,0x75,0x6e,0x69,
- 0x66,0x6f,0x72,0x6d,0x73,0x2e,0xa,0x20,0x20,0x20,0x20,0x66,0x72,0x61,0x67,0x43,
- 0x6f,0x6c,0x6f,0x72,0x20,0x3d,0x20,0x63,0x6c,0x61,0x6d,0x70,0x28,0x66,0x72,0x61,
- 0x67,0x43,0x6f,0x6c,0x6f,0x72,0x2c,0x20,0x30,0x2e,0x66,0x2c,0x20,0x31,0x2e,0x66,
- 0x29,0x3b,0x20,0x2f,0x2f,0x20,0x43,0x6c,0x61,0x6d,0x70,0xa,0x20,0x20,0x20,0x20,
- 0x66,0x72,0x61,0x67,0x43,0x6f,0x6c,0x6f,0x72,0x20,0x2b,0x3d,0x20,0x30,0x2e,0x33,
- 0x66,0x20,0x2a,0x20,0x73,0x6b,0x79,0x52,0x65,0x66,0x6c,0x3b,0xa,0x20,0x20,0x20,
- 0x20,0x66,0x72,0x61,0x67,0x43,0x6f,0x6c,0x6f,0x72,0x20,0x3d,0x20,0x63,0x6c,0x61,
- 0x6d,0x70,0x28,0x66,0x72,0x61,0x67,0x43,0x6f,0x6c,0x6f,0x72,0x2c,0x20,0x30,0x2e,
- 0x66,0x2c,0x20,0x31,0x2e,0x66,0x29,0x3b,0x20,0x2f,0x2f,0x20,0x43,0x6c,0x61,0x6d,
- 0x70,0xa,0xa,0x20,0x20,0x20,0x20,0x66,0x72,0x61,0x67,0x43,0x6f,0x6c,0x6f,0x72,
- 0x20,0x2a,0x3d,0x20,0x20,0x28,0x28,0x31,0x20,0x2d,0x20,0x72,0x65,0x66,0x72,0x50,
- 0x72,0x6f,0x62,0x29,0x20,0x2f,0x20,0x31,0x2e,0x66,0x29,0x3b,0xa,0xa,0x20,0x20,
- 0x20,0x20,0x76,0x65,0x63,0x34,0x20,0x76,0x6f,0x6c,0x75,0x6d,0x65,0x74,0x72,0x69,
- 0x63,0x20,0x3d,0x20,0x62,0x65,0x65,0x72,0x41,0x74,0x74,0x20,0x2a,0x20,0x74,0x72,
- 0x61,0x6e,0x73,0x6d,0x69,0x73,0x73,0x69,0x76,0x65,0x3b,0xa,0x20,0x20,0x20,0x20,
- 0x76,0x6f,0x6c,0x75,0x6d,0x65,0x74,0x72,0x69,0x63,0x20,0x2b,0x3d,0x20,0x28,0x31,
- 0x20,0x2d,0x20,0x62,0x65,0x65,0x72,0x41,0x74,0x74,0x29,0x20,0x2a,0x20,0x6d,0x75,
- 0x72,0x6b,0x3b,0xa,0xa,0x20,0x20,0x20,0x20,0x66,0x72,0x61,0x67,0x43,0x6f,0x6c,
- 0x6f,0x72,0x20,0x2b,0x3d,0x20,0x72,0x65,0x66,0x72,0x50,0x72,0x6f,0x62,0x20,0x2a,
- 0x20,0x76,0x6f,0x6c,0x75,0x6d,0x65,0x74,0x72,0x69,0x63,0x3b,0xa,0x2f,0x2f,0x20,
- 0x20,0x20,0x20,0x66,0x72,0x61,0x67,0x43,0x6f,0x6c,0x6f,0x72,0x20,0x3d,0x20,0x74,
- 0x72,0x61,0x6e,0x73,0x6d,0x69,0x73,0x73,0x69,0x76,0x65,0x20,0x2a,0x20,0x72,0x65,
- 0x66,0x72,0x50,0x72,0x6f,0x62,0x3b,0xa,0x20,0x20,0x20,0x20,0x66,0x72,0x61,0x67,
- 0x43,0x6f,0x6c,0x6f,0x72,0x20,0x3d,0x20,0x76,0x65,0x63,0x34,0x28,0x76,0x65,0x63,
- 0x33,0x28,0x66,0x72,0x61,0x67,0x43,0x6f,0x6c,0x6f,0x72,0x29,0x2c,0x20,0x31,0x2e,
- 0x66,0x29,0x3b,0xa,0x20,0x20,0x20,0x20,0x2f,0x2f,0x20,0x44,0x69,0x76,0x69,0x64,
- 0x69,0x6e,0x67,0x20,0x72,0x65,0x66,0x72,0x50,0x72,0x6f,0x62,0x20,0x62,0x79,0x20,
- 0x32,0x20,0x6a,0x75,0x73,0x74,0x20,0x66,0x6f,0x72,0x20,0x68,0x65,0x75,0x72,0x69,
- 0x73,0x74,0x69,0x63,0x2e,0x20,0x57,0x61,0x6e,0x74,0x20,0x6d,0x6f,0x72,0x65,0x20,
- 0x70,0x68,0x6f,0x6e,0x67,0x20,0x74,0x6f,0x20,0x73,0x68,0x6f,0x77,0x20,0x74,0x68,
- 0x72,0x6f,0x75,0x67,0x68,0x2e,0xa,0x2f,0x2f,0x20,0x20,0x20,0x20,0x66,0x72,0x61,
+ 0x29,0x3b,0xa,0xa,0x2f,0x2f,0x20,0x20,0x20,0x20,0x66,0x6c,0x6f,0x61,0x74,0x20,
+ 0x77,0x61,0x74,0x65,0x72,0x4d,0x75,0x72,0x6b,0x69,0x6e,0x65,0x73,0x73,0x20,0x3d,
+ 0x20,0x30,0x2e,0x30,0x30,0x32,0x66,0x3b,0x20,0x2f,0x2f,0x20,0x54,0x4f,0x44,0x4f,
+ 0x3a,0x20,0x4d,0x61,0x6b,0x65,0x20,0x75,0x6e,0x69,0x66,0x6f,0x72,0x6d,0xa,0x20,
+ 0x20,0x20,0x20,0x66,0x6c,0x6f,0x61,0x74,0x20,0x77,0x61,0x74,0x65,0x72,0x4d,0x75,
+ 0x72,0x6b,0x69,0x6e,0x65,0x73,0x73,0x20,0x3d,0x20,0x30,0x2e,0x30,0x30,0x30,0x35,
+ 0x66,0x3b,0x20,0x2f,0x2f,0x20,0x54,0x4f,0x44,0x4f,0x3a,0x20,0x4d,0x61,0x6b,0x65,
+ 0x20,0x75,0x6e,0x69,0x66,0x6f,0x72,0x6d,0xa,0x20,0x20,0x20,0x20,0x76,0x65,0x63,
+ 0x33,0x20,0x77,0x61,0x74,0x65,0x72,0x56,0x6f,0x6c,0x75,0x6d,0x65,0x43,0x6f,0x6c,
+ 0x6f,0x72,0x20,0x3d,0x20,0x76,0x65,0x63,0x33,0x28,0x72,0x65,0x64,0x20,0x2a,0x20,
+ 0x30,0x2e,0x31,0x66,0x2c,0x20,0x67,0x72,0x65,0x65,0x6e,0x20,0x2a,0x20,0x30,0x2e,
+ 0x32,0x66,0x2c,0x20,0x62,0x6c,0x75,0x65,0x20,0x2a,0x20,0x30,0x2e,0x32,0x66,0x29,
+ 0x3b,0xa,0x20,0x20,0x20,0x20,0x66,0x6c,0x6f,0x61,0x74,0x20,0x6d,0x75,0x72,0x6b,
+ 0x44,0x69,0x66,0x66,0x75,0x73,0x65,0x20,0x3d,0x20,0x30,0x2e,0x33,0x66,0x3b,0xa,
+ 0x20,0x20,0x20,0x20,0x66,0x6c,0x6f,0x61,0x74,0x20,0x6d,0x75,0x72,0x6b,0x41,0x6d,
+ 0x62,0x69,0x65,0x6e,0x74,0x20,0x3d,0x20,0x30,0x2e,0x38,0x66,0x3b,0xa,0x20,0x20,
+ 0x20,0x20,0x66,0x6c,0x6f,0x61,0x74,0x20,0x62,0x65,0x65,0x72,0x41,0x74,0x74,0x20,
+ 0x3d,0x20,0x65,0x78,0x70,0x28,0x2d,0x6c,0x65,0x6e,0x67,0x74,0x68,0x28,0x28,0x70,
+ 0x6f,0x73,0x20,0x2d,0x20,0x72,0x65,0x66,0x72,0x50,0x6f,0x73,0x29,0x29,0x20,0x2a,
+ 0x20,0x77,0x61,0x74,0x65,0x72,0x4d,0x75,0x72,0x6b,0x69,0x6e,0x65,0x73,0x73,0x29,
+ 0x3b,0xa,0x20,0x20,0x20,0x20,0x2f,0x2f,0x20,0x45,0x58,0x50,0x4c,0x41,0x4e,0x41,
+ 0x54,0x49,0x4f,0x4e,0x3a,0x20,0x57,0x48,0x45,0x4e,0x20,0x54,0x48,0x45,0x20,0x57,
+ 0x41,0x54,0x45,0x52,0x20,0x49,0x53,0x20,0x4e,0x4f,0x54,0x20,0x50,0x45,0x52,0x46,
+ 0x45,0x43,0x54,0x4c,0x59,0x20,0x43,0x4c,0x45,0x41,0x52,0x2c,0x20,0x49,0x54,0x20,
+ 0x57,0x49,0x4c,0x4c,0x20,0x48,0x41,0x56,0x45,0x20,0x53,0x54,0x55,0x46,0x46,0x20,
+ 0x53,0x43,0x41,0x54,0x54,0x45,0x52,0x49,0x4e,0x47,0x20,0x4c,0x49,0x47,0x48,0x54,
+ 0x20,0x55,0x4e,0x44,0x45,0x52,0x4e,0x45,0x41,0x54,0x48,0x20,0x54,0x48,0x45,0x20,
+ 0x53,0x55,0x52,0x46,0x41,0x43,0x45,0xa,0x20,0x20,0x20,0x20,0x2f,0x2f,0x20,0x53,
+ 0x4f,0x4d,0x45,0x20,0x4f,0x46,0x20,0x49,0x54,0x20,0x57,0x49,0x4c,0x4c,0x20,0x42,
+ 0x45,0x20,0x44,0x49,0x46,0x46,0x55,0x53,0x45,0x4c,0x59,0x20,0x4c,0x49,0x54,0x2c,
+ 0x20,0x42,0x55,0x54,0x20,0x54,0x48,0x45,0x52,0x45,0x20,0x57,0x49,0x4c,0x4c,0x20,
+ 0x42,0x45,0x20,0x53,0x55,0x42,0x53,0x55,0x52,0x46,0x41,0x43,0x45,0x20,0x53,0x43,
+ 0x41,0x54,0x54,0x45,0x52,0x49,0x4e,0x47,0x2c,0x20,0x45,0x53,0x54,0x49,0x4d,0x41,
+ 0x54,0x45,0x44,0x20,0x42,0x59,0x20,0x54,0x48,0x45,0x20,0x41,0x4d,0x42,0x49,0x45,
+ 0x4e,0x54,0x20,0x54,0x45,0x52,0x4d,0xa,0xa,0x20,0x20,0x20,0x20,0x76,0x65,0x63,
+ 0x34,0x20,0x64,0x69,0x66,0x66,0x75,0x73,0x65,0x20,0x3d,0x20,0x76,0x65,0x63,0x34,
+ 0x28,0x72,0x65,0x64,0x20,0x2a,0x20,0x64,0x2c,0x20,0x67,0x72,0x65,0x65,0x6e,0x20,
+ 0x2a,0x20,0x64,0x2c,0x20,0x62,0x6c,0x75,0x65,0x20,0x2a,0x20,0x64,0x2c,0x20,0x31,
+ 0x2e,0x30,0x66,0x29,0x3b,0xa,0x20,0x20,0x20,0x20,0x76,0x65,0x63,0x34,0x20,0x73,
+ 0x70,0x65,0x63,0x75,0x6c,0x61,0x72,0x20,0x3d,0x20,0x76,0x65,0x63,0x34,0x28,0x31,
+ 0x2c,0x20,0x31,0x2c,0x20,0x31,0x2c,0x20,0x31,0x29,0x20,0x2a,0x20,0x70,0x6f,0x77,
+ 0x28,0x73,0x70,0x65,0x63,0x2c,0x20,0x31,0x30,0x2e,0x66,0x29,0x3b,0xa,0x2f,0x2f,
+ 0x20,0x20,0x20,0x20,0x76,0x65,0x63,0x34,0x20,0x74,0x72,0x61,0x6e,0x73,0x6d,0x69,
+ 0x73,0x73,0x69,0x76,0x65,0x20,0x3d,0x20,0x76,0x65,0x63,0x34,0x28,0x76,0x65,0x63,
+ 0x33,0x28,0x72,0x65,0x66,0x72,0x55,0x56,0x2c,0x20,0x31,0x2e,0x66,0x20,0x2d,0x20,
+ 0x72,0x65,0x66,0x72,0x55,0x56,0x2e,0x79,0x29,0x2c,0x20,0x31,0x2e,0x66,0x29,0x3b,
+ 0xa,0x20,0x20,0x20,0x20,0x66,0x6c,0x6f,0x61,0x74,0x20,0x77,0x61,0x74,0x65,0x72,
+ 0x42,0x6c,0x75,0x72,0x72,0x69,0x6e,0x65,0x73,0x73,0x20,0x3d,0x20,0x30,0x2e,0x66,
+ 0x3b,0xa,0x20,0x20,0x20,0x20,0x76,0x65,0x63,0x32,0x20,0x72,0x65,0x66,0x72,0x55,
+ 0x56,0x42,0x6c,0x75,0x72,0x72,0x79,0x20,0x3d,0x20,0x28,0x31,0x20,0x2d,0x20,0x62,
+ 0x65,0x65,0x72,0x41,0x74,0x74,0x29,0x20,0x2a,0x20,0x76,0x65,0x63,0x32,0x28,0x72,
+ 0x61,0x6e,0x64,0x28,0x72,0x65,0x66,0x72,0x55,0x56,0x29,0x2c,0x20,0x72,0x61,0x6e,
+ 0x64,0x28,0x76,0x65,0x63,0x34,0x28,0x70,0x6f,0x73,0x2c,0x20,0x64,0x29,0x29,0x29,
+ 0x20,0x2a,0x20,0x77,0x61,0x74,0x65,0x72,0x42,0x6c,0x75,0x72,0x72,0x69,0x6e,0x65,
+ 0x73,0x73,0x20,0x2b,0x20,0x72,0x65,0x66,0x72,0x55,0x56,0x3b,0xa,0x20,0x20,0x20,
+ 0x20,0x76,0x65,0x63,0x34,0x20,0x74,0x72,0x61,0x6e,0x73,0x6d,0x69,0x73,0x73,0x69,
+ 0x76,0x65,0x20,0x3d,0x20,0x74,0x65,0x78,0x74,0x75,0x72,0x65,0x28,0x67,0x72,0x6f,
+ 0x75,0x6e,0x64,0x53,0x61,0x6d,0x70,0x6c,0x65,0x72,0x2c,0x20,0x76,0x65,0x63,0x32,
+ 0x28,0x72,0x65,0x66,0x72,0x55,0x56,0x42,0x6c,0x75,0x72,0x72,0x79,0x29,0x29,0x3b,
+ 0xa,0x20,0x20,0x20,0x20,0x76,0x65,0x63,0x34,0x20,0x6d,0x75,0x72,0x6b,0x20,0x3d,
+ 0x20,0x28,0x76,0x65,0x63,0x34,0x28,0x77,0x61,0x74,0x65,0x72,0x56,0x6f,0x6c,0x75,
+ 0x6d,0x65,0x43,0x6f,0x6c,0x6f,0x72,0x20,0x2a,0x20,0x64,0x20,0x2a,0x20,0x6d,0x75,
+ 0x72,0x6b,0x44,0x69,0x66,0x66,0x75,0x73,0x65,0x20,0x2b,0x20,0x77,0x61,0x74,0x65,
+ 0x72,0x56,0x6f,0x6c,0x75,0x6d,0x65,0x43,0x6f,0x6c,0x6f,0x72,0x20,0x2a,0x20,0x6d,
+ 0x75,0x72,0x6b,0x41,0x6d,0x62,0x69,0x65,0x6e,0x74,0x2c,0x20,0x31,0x2e,0x30,0x66,
+ 0x29,0x29,0x3b,0xa,0xa,0x20,0x20,0x20,0x20,0x76,0x65,0x63,0x34,0x20,0x73,0x6b,
+ 0x79,0x52,0x65,0x66,0x6c,0x20,0x3d,0x20,0x74,0x65,0x78,0x74,0x75,0x72,0x65,0x28,
+ 0x73,0x6b,0x79,0x53,0x61,0x6d,0x70,0x6c,0x65,0x72,0x2c,0x20,0x76,0x65,0x63,0x32,
+ 0x28,0x72,0x65,0x66,0x6c,0x55,0x56,0x29,0x29,0x3b,0xa,0x2f,0x2f,0x20,0x20,0x20,
+ 0x20,0x72,0x65,0x66,0x72,0x50,0x72,0x6f,0x62,0x20,0x2a,0x3d,0x20,0x62,0x65,0x65,
+ 0x72,0x41,0x74,0x74,0x3b,0xa,0xa,0x20,0x20,0x20,0x20,0x66,0x72,0x61,0x67,0x43,
+ 0x6f,0x6c,0x6f,0x72,0x20,0x3d,0x20,0x30,0x2e,0x37,0x35,0x66,0x20,0x2a,0x20,0x64,
+ 0x69,0x66,0x66,0x75,0x73,0x65,0x3b,0x20,0x2f,0x2f,0x20,0x44,0x69,0x66,0x66,0x75,
+ 0x73,0x65,0xa,0x2f,0x2f,0x20,0x20,0x20,0x20,0x66,0x72,0x61,0x67,0x43,0x6f,0x6c,
+ 0x6f,0x72,0x20,0x3d,0x20,0x76,0x65,0x63,0x34,0x28,0x30,0x2c,0x20,0x30,0x2c,0x20,
+ 0x30,0x2c,0x20,0x31,0x2e,0x66,0x29,0x3b,0xa,0x2f,0x2f,0x20,0x20,0x20,0x20,0x66,
+ 0x72,0x61,0x67,0x43,0x6f,0x6c,0x6f,0x72,0x20,0x3d,0x20,0x76,0x65,0x63,0x34,0x28,
+ 0x2e,0x39,0x66,0x2c,0x31,0x2e,0x66,0x2c,0x31,0x2e,0x66,0x2c,0x30,0x29,0x3b,0xa,
+ 0x20,0x20,0x20,0x20,0x66,0x72,0x61,0x67,0x43,0x6f,0x6c,0x6f,0x72,0x20,0x3d,0x20,
+ 0x76,0x65,0x63,0x34,0x28,0x72,0x65,0x64,0x20,0x2a,0x20,0x2e,0x32,0x66,0x2c,0x20,
+ 0x67,0x72,0x65,0x65,0x6e,0x20,0x2a,0x20,0x2e,0x32,0x66,0x2c,0x20,0x62,0x6c,0x75,
+ 0x65,0x20,0x2a,0x20,0x2e,0x32,0x66,0x2c,0x31,0x2e,0x66,0x29,0x3b,0xa,0x20,0x20,
+ 0x20,0x20,0x66,0x72,0x61,0x67,0x43,0x6f,0x6c,0x6f,0x72,0x20,0x2b,0x3d,0x20,0x31,
+ 0x2e,0x66,0x20,0x2a,0x20,0x73,0x70,0x65,0x63,0x75,0x6c,0x61,0x72,0x3b,0x20,0x2f,
+ 0x2f,0x20,0x53,0x70,0x65,0x63,0x75,0x6c,0x61,0x72,0x20,0x54,0x4f,0x44,0x4f,0x3a,
+ 0x20,0x50,0x61,0x73,0x73,0x20,0x6d,0x75,0x6c,0x74,0x69,0x70,0x6c,0x69,0x63,0x61,
+ 0x74,0x69,0x6f,0x6e,0x73,0x20,0x61,0x73,0x20,0x75,0x6e,0x69,0x66,0x6f,0x72,0x6d,
+ 0x73,0x2e,0xa,0x20,0x20,0x20,0x20,0x66,0x72,0x61,0x67,0x43,0x6f,0x6c,0x6f,0x72,
+ 0x20,0x3d,0x20,0x63,0x6c,0x61,0x6d,0x70,0x28,0x66,0x72,0x61,0x67,0x43,0x6f,0x6c,
+ 0x6f,0x72,0x2c,0x20,0x30,0x2e,0x66,0x2c,0x20,0x31,0x2e,0x66,0x29,0x3b,0x20,0x2f,
+ 0x2f,0x20,0x43,0x6c,0x61,0x6d,0x70,0xa,0x20,0x20,0x20,0x20,0x66,0x72,0x61,0x67,
+ 0x43,0x6f,0x6c,0x6f,0x72,0x20,0x2b,0x3d,0x20,0x30,0x2e,0x33,0x66,0x20,0x2a,0x20,
+ 0x73,0x6b,0x79,0x52,0x65,0x66,0x6c,0x3b,0xa,0x20,0x20,0x20,0x20,0x66,0x72,0x61,
0x67,0x43,0x6f,0x6c,0x6f,0x72,0x20,0x3d,0x20,0x63,0x6c,0x61,0x6d,0x70,0x28,0x66,
0x72,0x61,0x67,0x43,0x6f,0x6c,0x6f,0x72,0x2c,0x20,0x30,0x2e,0x66,0x2c,0x20,0x31,
- 0x2e,0x66,0x29,0x3b,0xa,0x2f,0x2f,0x20,0x20,0x20,0x20,0x66,0x72,0x61,0x67,0x43,
- 0x6f,0x6c,0x6f,0x72,0x20,0x3d,0x20,0x76,0x65,0x63,0x34,0x28,0x72,0x65,0x66,0x72,
- 0x50,0x72,0x6f,0x62,0x2c,0x20,0x30,0x2e,0x66,0x2c,0x20,0x30,0x2e,0x66,0x2c,0x20,
- 0x31,0x2e,0x66,0x29,0x3b,0xa,0xa,0x20,0x20,0x20,0x20,0x2f,0x2f,0x20,0x54,0x4f,
- 0x44,0x4f,0x3a,0x20,0x41,0x43,0x54,0x55,0x41,0x4c,0x20,0x4c,0x49,0x47,0x48,0x54,
- 0x49,0x4e,0x47,0x20,0x4d,0x4f,0x44,0x45,0x4c,0x20,0x53,0x48,0x4f,0x55,0x4c,0x44,
- 0x20,0x42,0x45,0x20,0x53,0x4f,0x4d,0x45,0x54,0x48,0x49,0x4e,0x47,0x20,0x4c,0x49,
- 0x4b,0x45,0xa,0x20,0x20,0x20,0x20,0x2f,0x2f,0x20,0x56,0x45,0x4c,0x4f,0x43,0x49,
- 0x54,0x59,0x20,0x2a,0x20,0x44,0x49,0x46,0x46,0x55,0x53,0x45,0xa,0x20,0x20,0x20,
- 0x20,0x2f,0x2f,0x20,0x28,0x31,0x20,0x2d,0x20,0x72,0x65,0x66,0x72,0x50,0x72,0x6f,
- 0x62,0x29,0x20,0x2a,0x20,0x53,0x50,0x45,0x43,0x55,0x4c,0x41,0x52,0xa,0x20,0x20,
- 0x20,0x20,0x2f,0x2f,0x20,0x72,0x65,0x66,0x72,0x50,0x72,0x6f,0x62,0x20,0x2a,0x20,
- 0x28,0x42,0x45,0x45,0x52,0x20,0x2a,0x20,0x54,0x52,0x41,0x4e,0x53,0x4d,0x49,0x53,
- 0x53,0x49,0x56,0x45,0x20,0x2b,0x20,0x28,0x31,0x20,0x2d,0x20,0x62,0x65,0x65,0x72,
- 0x41,0x74,0x74,0x29,0x20,0x2a,0x20,0x56,0x4f,0x4c,0x55,0x4d,0x45,0x20,0x28,0x77,
- 0x68,0x69,0x63,0x68,0x20,0x69,0x73,0x20,0x73,0x6f,0x6d,0x65,0x77,0x68,0x61,0x74,
- 0x20,0x64,0x69,0x66,0x66,0x75,0x73,0x65,0x20,0x74,0x6f,0x6f,0x3f,0x29,0x29,0xa,
- 0x20,0x20,0x20,0x20,0x2f,0x2f,0x20,0x54,0x72,0x61,0x6e,0x73,0x6d,0x69,0x73,0x73,
- 0x69,0x76,0x65,0x20,0x73,0x68,0x6f,0x75,0x6c,0x64,0x6e,0x27,0x74,0x20,0x6a,0x75,
- 0x73,0x74,0x20,0x67,0x65,0x74,0x20,0x64,0x61,0x72,0x6b,0x65,0x72,0x2c,0x20,0x62,
- 0x75,0x74,0x20,0x62,0x6c,0x75,0x72,0x72,0x69,0x65,0x72,0x20,0x61,0x73,0x20,0x62,
- 0x65,0x65,0x72,0x20,0x61,0x74,0x74,0x65,0x6e,0x75,0x61,0x74,0x69,0x6f,0x6e,0x20,
- 0x6c,0x6f,0x77,0x65,0x72,0x73,0x2e,0xa,0x2f,0x2f,0x20,0x20,0x20,0x20,0x66,0x72,
- 0x61,0x67,0x43,0x6f,0x6c,0x6f,0x72,0x20,0x3d,0x20,0x74,0x65,0x78,0x74,0x75,0x72,
- 0x65,0x28,0x67,0x72,0x6f,0x75,0x6e,0x64,0x53,0x61,0x6d,0x70,0x6c,0x65,0x72,0x2c,
- 0x20,0x76,0x65,0x63,0x32,0x28,0x72,0x65,0x66,0x72,0x55,0x56,0x29,0x29,0x3b,0xa,
- 0x2f,0x2f,0x20,0x20,0x20,0x20,0x66,0x72,0x61,0x67,0x43,0x6f,0x6c,0x6f,0x72,0x20,
- 0x3d,0x20,0x76,0x65,0x63,0x34,0x28,0x6e,0x6f,0x72,0x6d,0x61,0x6c,0x5f,0x77,0x6f,
- 0x72,0x6c,0x64,0x53,0x70,0x61,0x63,0x65,0x5b,0x30,0x5d,0x2c,0x20,0x30,0x2c,0x20,
- 0x6e,0x6f,0x72,0x6d,0x61,0x6c,0x5f,0x77,0x6f,0x72,0x6c,0x64,0x53,0x70,0x61,0x63,
- 0x65,0x5b,0x31,0x5d,0x2c,0x20,0x31,0x2e,0x66,0x29,0x3b,0xa,0x2f,0x2f,0x20,0x20,
- 0x20,0x20,0x66,0x72,0x61,0x67,0x43,0x6f,0x6c,0x6f,0x72,0x20,0x3d,0x20,0x64,0x69,
- 0x66,0x66,0x75,0x73,0x65,0x3b,0xa,0x7d,0xa,
+ 0x2e,0x66,0x29,0x3b,0x20,0x2f,0x2f,0x20,0x43,0x6c,0x61,0x6d,0x70,0xa,0xa,0x20,
+ 0x20,0x20,0x20,0x66,0x72,0x61,0x67,0x43,0x6f,0x6c,0x6f,0x72,0x20,0x2a,0x3d,0x20,
+ 0x20,0x28,0x28,0x31,0x20,0x2d,0x20,0x72,0x65,0x66,0x72,0x50,0x72,0x6f,0x62,0x29,
+ 0x20,0x2f,0x20,0x31,0x2e,0x66,0x29,0x3b,0xa,0xa,0x20,0x20,0x20,0x20,0x76,0x65,
+ 0x63,0x34,0x20,0x76,0x6f,0x6c,0x75,0x6d,0x65,0x74,0x72,0x69,0x63,0x20,0x3d,0x20,
+ 0x62,0x65,0x65,0x72,0x41,0x74,0x74,0x20,0x2a,0x20,0x74,0x72,0x61,0x6e,0x73,0x6d,
+ 0x69,0x73,0x73,0x69,0x76,0x65,0x3b,0xa,0x20,0x20,0x20,0x20,0x76,0x6f,0x6c,0x75,
+ 0x6d,0x65,0x74,0x72,0x69,0x63,0x20,0x2b,0x3d,0x20,0x28,0x31,0x20,0x2d,0x20,0x62,
+ 0x65,0x65,0x72,0x41,0x74,0x74,0x29,0x20,0x2a,0x20,0x6d,0x75,0x72,0x6b,0x3b,0xa,
+ 0xa,0x20,0x20,0x20,0x20,0x66,0x72,0x61,0x67,0x43,0x6f,0x6c,0x6f,0x72,0x20,0x2b,
+ 0x3d,0x20,0x72,0x65,0x66,0x72,0x50,0x72,0x6f,0x62,0x20,0x2a,0x20,0x76,0x6f,0x6c,
+ 0x75,0x6d,0x65,0x74,0x72,0x69,0x63,0x3b,0xa,0x2f,0x2f,0x20,0x20,0x20,0x20,0x66,
+ 0x72,0x61,0x67,0x43,0x6f,0x6c,0x6f,0x72,0x20,0x3d,0x20,0x74,0x72,0x61,0x6e,0x73,
+ 0x6d,0x69,0x73,0x73,0x69,0x76,0x65,0x20,0x2a,0x20,0x72,0x65,0x66,0x72,0x50,0x72,
+ 0x6f,0x62,0x3b,0xa,0x20,0x20,0x20,0x20,0x66,0x72,0x61,0x67,0x43,0x6f,0x6c,0x6f,
+ 0x72,0x20,0x3d,0x20,0x76,0x65,0x63,0x34,0x28,0x76,0x65,0x63,0x33,0x28,0x66,0x72,
+ 0x61,0x67,0x43,0x6f,0x6c,0x6f,0x72,0x29,0x2c,0x20,0x31,0x2e,0x66,0x29,0x3b,0xa,
+ 0x20,0x20,0x20,0x20,0x2f,0x2f,0x20,0x44,0x69,0x76,0x69,0x64,0x69,0x6e,0x67,0x20,
+ 0x72,0x65,0x66,0x72,0x50,0x72,0x6f,0x62,0x20,0x62,0x79,0x20,0x32,0x20,0x6a,0x75,
+ 0x73,0x74,0x20,0x66,0x6f,0x72,0x20,0x68,0x65,0x75,0x72,0x69,0x73,0x74,0x69,0x63,
+ 0x2e,0x20,0x57,0x61,0x6e,0x74,0x20,0x6d,0x6f,0x72,0x65,0x20,0x70,0x68,0x6f,0x6e,
+ 0x67,0x20,0x74,0x6f,0x20,0x73,0x68,0x6f,0x77,0x20,0x74,0x68,0x72,0x6f,0x75,0x67,
+ 0x68,0x2e,0xa,0x2f,0x2f,0x20,0x20,0x20,0x20,0x66,0x72,0x61,0x67,0x43,0x6f,0x6c,
+ 0x6f,0x72,0x20,0x3d,0x20,0x63,0x6c,0x61,0x6d,0x70,0x28,0x66,0x72,0x61,0x67,0x43,
+ 0x6f,0x6c,0x6f,0x72,0x2c,0x20,0x30,0x2e,0x66,0x2c,0x20,0x31,0x2e,0x66,0x29,0x3b,
+ 0xa,0x2f,0x2f,0x20,0x20,0x20,0x20,0x66,0x72,0x61,0x67,0x43,0x6f,0x6c,0x6f,0x72,
+ 0x20,0x3d,0x20,0x76,0x65,0x63,0x34,0x28,0x72,0x65,0x66,0x72,0x50,0x72,0x6f,0x62,
+ 0x2c,0x20,0x30,0x2e,0x66,0x2c,0x20,0x30,0x2e,0x66,0x2c,0x20,0x31,0x2e,0x66,0x29,
+ 0x3b,0xa,0xa,0x20,0x20,0x20,0x20,0x2f,0x2f,0x20,0x54,0x4f,0x44,0x4f,0x3a,0x20,
+ 0x41,0x43,0x54,0x55,0x41,0x4c,0x20,0x4c,0x49,0x47,0x48,0x54,0x49,0x4e,0x47,0x20,
+ 0x4d,0x4f,0x44,0x45,0x4c,0x20,0x53,0x48,0x4f,0x55,0x4c,0x44,0x20,0x42,0x45,0x20,
+ 0x53,0x4f,0x4d,0x45,0x54,0x48,0x49,0x4e,0x47,0x20,0x4c,0x49,0x4b,0x45,0xa,0x20,
+ 0x20,0x20,0x20,0x2f,0x2f,0x20,0x56,0x45,0x4c,0x4f,0x43,0x49,0x54,0x59,0x20,0x2a,
+ 0x20,0x44,0x49,0x46,0x46,0x55,0x53,0x45,0xa,0x20,0x20,0x20,0x20,0x2f,0x2f,0x20,
+ 0x28,0x31,0x20,0x2d,0x20,0x72,0x65,0x66,0x72,0x50,0x72,0x6f,0x62,0x29,0x20,0x2a,
+ 0x20,0x53,0x50,0x45,0x43,0x55,0x4c,0x41,0x52,0xa,0x20,0x20,0x20,0x20,0x2f,0x2f,
+ 0x20,0x72,0x65,0x66,0x72,0x50,0x72,0x6f,0x62,0x20,0x2a,0x20,0x28,0x42,0x45,0x45,
+ 0x52,0x20,0x2a,0x20,0x54,0x52,0x41,0x4e,0x53,0x4d,0x49,0x53,0x53,0x49,0x56,0x45,
+ 0x20,0x2b,0x20,0x28,0x31,0x20,0x2d,0x20,0x62,0x65,0x65,0x72,0x41,0x74,0x74,0x29,
+ 0x20,0x2a,0x20,0x56,0x4f,0x4c,0x55,0x4d,0x45,0x20,0x28,0x77,0x68,0x69,0x63,0x68,
+ 0x20,0x69,0x73,0x20,0x73,0x6f,0x6d,0x65,0x77,0x68,0x61,0x74,0x20,0x64,0x69,0x66,
+ 0x66,0x75,0x73,0x65,0x20,0x74,0x6f,0x6f,0x3f,0x29,0x29,0xa,0x20,0x20,0x20,0x20,
+ 0x2f,0x2f,0x20,0x54,0x72,0x61,0x6e,0x73,0x6d,0x69,0x73,0x73,0x69,0x76,0x65,0x20,
+ 0x73,0x68,0x6f,0x75,0x6c,0x64,0x6e,0x27,0x74,0x20,0x6a,0x75,0x73,0x74,0x20,0x67,
+ 0x65,0x74,0x20,0x64,0x61,0x72,0x6b,0x65,0x72,0x2c,0x20,0x62,0x75,0x74,0x20,0x62,
+ 0x6c,0x75,0x72,0x72,0x69,0x65,0x72,0x20,0x61,0x73,0x20,0x62,0x65,0x65,0x72,0x20,
+ 0x61,0x74,0x74,0x65,0x6e,0x75,0x61,0x74,0x69,0x6f,0x6e,0x20,0x6c,0x6f,0x77,0x65,
+ 0x72,0x73,0x2e,0xa,0x2f,0x2f,0x20,0x20,0x20,0x20,0x66,0x72,0x61,0x67,0x43,0x6f,
+ 0x6c,0x6f,0x72,0x20,0x3d,0x20,0x74,0x65,0x78,0x74,0x75,0x72,0x65,0x28,0x67,0x72,
+ 0x6f,0x75,0x6e,0x64,0x53,0x61,0x6d,0x70,0x6c,0x65,0x72,0x2c,0x20,0x76,0x65,0x63,
+ 0x32,0x28,0x72,0x65,0x66,0x72,0x55,0x56,0x29,0x29,0x3b,0xa,0x2f,0x2f,0x20,0x20,
+ 0x20,0x20,0x66,0x72,0x61,0x67,0x43,0x6f,0x6c,0x6f,0x72,0x20,0x3d,0x20,0x76,0x65,
+ 0x63,0x34,0x28,0x6e,0x6f,0x72,0x6d,0x61,0x6c,0x5f,0x77,0x6f,0x72,0x6c,0x64,0x53,
+ 0x70,0x61,0x63,0x65,0x5b,0x30,0x5d,0x2c,0x20,0x30,0x2c,0x20,0x6e,0x6f,0x72,0x6d,
+ 0x61,0x6c,0x5f,0x77,0x6f,0x72,0x6c,0x64,0x53,0x70,0x61,0x63,0x65,0x5b,0x31,0x5d,
+ 0x2c,0x20,0x31,0x2e,0x66,0x29,0x3b,0xa,0x2f,0x2f,0x20,0x20,0x20,0x20,0x66,0x72,
+ 0x61,0x67,0x43,0x6f,0x6c,0x6f,0x72,0x20,0x3d,0x20,0x64,0x69,0x66,0x66,0x75,0x73,
+ 0x65,0x3b,0xa,0x7d,0xa,
// /Users/sotech117/Documents/final/adv/ocean-simulation/resources/images/caustic_sample.jpg
0x0,0x1,0x55,0xb5,
0xff,
@@ -292427,6 +292733,16 @@ static const unsigned char qt_resource_name[] = {
0x9,0xe7,0xac,0x73,
0x0,0x73,
0x0,0x68,0x0,0x61,0x0,0x64,0x0,0x65,0x0,0x72,0x0,0x73,
+ // color.vert
+ 0x0,0xa,
+ 0x6,0x58,0x80,0xf4,
+ 0x0,0x63,
+ 0x0,0x6f,0x0,0x6c,0x0,0x6f,0x0,0x72,0x0,0x2e,0x0,0x76,0x0,0x65,0x0,0x72,0x0,0x74,
+ // color.frag
+ 0x0,0xa,
+ 0x6,0x59,0x94,0x17,
+ 0x0,0x63,
+ 0x0,0x6f,0x0,0x6c,0x0,0x6f,0x0,0x72,0x0,0x2e,0x0,0x66,0x0,0x72,0x0,0x61,0x0,0x67,
// texture.vert
0x0,0xc,
0x7,0x5c,0x3b,0x14,
@@ -292514,55 +292830,61 @@ static const unsigned char qt_resource_struct[] = {
0x0,0x0,0x0,0x0,0x0,0x2,0x0,0x0,0x0,0x2,0x0,0x0,0x0,0x2,
0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,
// :/resources/images
- 0x0,0x0,0x0,0x18,0x0,0x2,0x0,0x0,0x0,0x8,0x0,0x0,0x0,0xb,
+ 0x0,0x0,0x0,0x18,0x0,0x2,0x0,0x0,0x0,0x8,0x0,0x0,0x0,0xd,
0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,
// :/resources/shaders
- 0x0,0x0,0x0,0x2a,0x0,0x2,0x0,0x0,0x0,0x7,0x0,0x0,0x0,0x4,
+ 0x0,0x0,0x0,0x2a,0x0,0x2,0x0,0x0,0x0,0x9,0x0,0x0,0x0,0x4,
0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,
- // :/resources/shaders/texture.vert
+ // :/resources/shaders/color.vert
0x0,0x0,0x0,0x3e,0x0,0x0,0x0,0x0,0x0,0x1,0x0,0x0,0x0,0x0,
+0x0,0x0,0x1,0x8f,0x5d,0xd8,0x6b,0x15,
+ // :/resources/shaders/color.frag
+ 0x0,0x0,0x0,0x58,0x0,0x0,0x0,0x0,0x0,0x1,0x0,0x0,0xc,0xf6,
+0x0,0x0,0x1,0x8f,0x5d,0xd8,0x6b,0x15,
+ // :/resources/shaders/texture.vert
+ 0x0,0x0,0x0,0x72,0x0,0x0,0x0,0x0,0x0,0x1,0x0,0x0,0x12,0x3a,
0x0,0x0,0x1,0x8f,0x2a,0xcf,0x26,0x7a,
// :/resources/shaders/texture.frag
- 0x0,0x0,0x0,0xce,0x0,0x0,0x0,0x0,0x0,0x1,0x0,0x0,0x6,0x98,
+ 0x0,0x0,0x1,0x2,0x0,0x0,0x0,0x0,0x0,0x1,0x0,0x0,0x18,0xd2,
0x0,0x0,0x1,0x8f,0x2a,0xcf,0x26,0x7a,
// :/resources/shaders/anchorPoint.frag
- 0x0,0x0,0x0,0x5c,0x0,0x0,0x0,0x0,0x0,0x1,0x0,0x0,0x1,0x8c,
+ 0x0,0x0,0x0,0x90,0x0,0x0,0x0,0x0,0x0,0x1,0x0,0x0,0x13,0xc6,
0x0,0x0,0x1,0x8e,0xa4,0xf3,0xf5,0x48,
// :/resources/shaders/anchorPoint.geom
- 0x0,0x0,0x0,0x82,0x0,0x0,0x0,0x0,0x0,0x1,0x0,0x0,0x2,0x12,
+ 0x0,0x0,0x0,0xb6,0x0,0x0,0x0,0x0,0x0,0x1,0x0,0x0,0x14,0x4c,
0x0,0x0,0x1,0x8f,0xd,0xe3,0x6f,0xf0,
// :/resources/shaders/anchorPoint.vert
- 0x0,0x0,0x0,0xa8,0x0,0x0,0x0,0x0,0x0,0x1,0x0,0x0,0x5,0x44,
+ 0x0,0x0,0x0,0xdc,0x0,0x0,0x0,0x0,0x0,0x1,0x0,0x0,0x17,0x7e,
0x0,0x0,0x1,0x8f,0x2a,0xcf,0x26,0x7a,
// :/resources/shaders/shader.vert
- 0x0,0x0,0x0,0xec,0x0,0x0,0x0,0x0,0x0,0x1,0x0,0x0,0x8,0xc1,
-0x0,0x0,0x1,0x8f,0x41,0x3a,0x4b,0x8f,
+ 0x0,0x0,0x1,0x20,0x0,0x0,0x0,0x0,0x0,0x1,0x0,0x0,0x1a,0xfb,
+0x0,0x0,0x1,0x8f,0x5d,0xd8,0x6b,0x17,
// :/resources/shaders/shader.frag
- 0x0,0x0,0x1,0x8,0x0,0x0,0x0,0x0,0x0,0x1,0x0,0x0,0x16,0x18,
-0x0,0x0,0x1,0x8f,0x44,0xe8,0xa7,0xca,
+ 0x0,0x0,0x1,0x3c,0x0,0x0,0x0,0x0,0x0,0x1,0x0,0x0,0x28,0x99,
+0x0,0x0,0x1,0x8f,0x5d,0xd8,0x6b,0x16,
// :/resources/images/caustic_sample.jpg
- 0x0,0x0,0x1,0x24,0x0,0x0,0x0,0x0,0x0,0x1,0x0,0x0,0x28,0x86,
+ 0x0,0x0,0x1,0x58,0x0,0x0,0x0,0x0,0x0,0x1,0x0,0x0,0x3b,0x43,
0x0,0x0,0x1,0x8f,0x2a,0xcf,0x26,0x6b,
// :/resources/images/hello.png
- 0x0,0x0,0x1,0x96,0x0,0x0,0x0,0x0,0x0,0x1,0x0,0x30,0x75,0x8c,
+ 0x0,0x0,0x1,0xca,0x0,0x0,0x0,0x0,0x0,0x1,0x0,0x30,0x88,0x49,
0x0,0x0,0x1,0x8f,0x2a,0xcf,0x26,0x6d,
// :/resources/images/anamorphic.jpg
- 0x0,0x0,0x1,0xce,0x0,0x0,0x0,0x0,0x0,0x1,0x0,0x37,0xd9,0x5c,
+ 0x0,0x0,0x2,0x2,0x0,0x0,0x0,0x0,0x0,0x1,0x0,0x37,0xec,0x19,
0x0,0x0,0x1,0x8f,0x2a,0xcf,0x26,0x6a,
// :/resources/images/kitten.png
- 0x0,0x0,0x1,0x4e,0x0,0x0,0x0,0x0,0x0,0x1,0x0,0x1,0x7e,0x3f,
+ 0x0,0x0,0x1,0x82,0x0,0x0,0x0,0x0,0x0,0x1,0x0,0x1,0x90,0xfc,
0x0,0x0,0x1,0x8f,0x2a,0xcf,0x26,0x72,
// :/resources/images/uv1.png
- 0x0,0x0,0x1,0x82,0x0,0x0,0x0,0x0,0x0,0x1,0x0,0x2f,0xb9,0xf4,
+ 0x0,0x0,0x1,0xb6,0x0,0x0,0x0,0x0,0x0,0x1,0x0,0x2f,0xcc,0xb1,
0x0,0x0,0x1,0x8f,0x2a,0xcf,0x26,0x72,
// :/resources/images/sky_clouds.png
- 0x0,0x0,0x1,0xf0,0x0,0x0,0x0,0x0,0x0,0x1,0x0,0x38,0x4e,0x5e,
-0x0,0x0,0x1,0x8f,0x41,0x3a,0x4b,0x8e,
+ 0x0,0x0,0x2,0x24,0x0,0x0,0x0,0x0,0x0,0x1,0x0,0x38,0x61,0x1b,
+0x0,0x0,0x1,0x8f,0x4c,0x56,0x85,0x26,
// :/resources/images/daniel.jpg
- 0x0,0x0,0x1,0x68,0x0,0x0,0x0,0x0,0x0,0x1,0x0,0x19,0xf7,0x5f,
-0x0,0x0,0x1,0x8f,0x41,0x3a,0x4b,0x8b,
+ 0x0,0x0,0x1,0x9c,0x0,0x0,0x0,0x0,0x0,0x1,0x0,0x1a,0xa,0x1c,
+0x0,0x0,0x1,0x8f,0x4c,0x56,0x85,0x24,
// :/resources/images/sand_text.jpg
- 0x0,0x0,0x1,0xae,0x0,0x0,0x0,0x0,0x0,0x1,0x0,0x37,0x7e,0xea,
+ 0x0,0x0,0x1,0xe2,0x0,0x0,0x0,0x0,0x0,0x1,0x0,0x37,0x91,0xa7,
0x0,0x0,0x1,0x8f,0x2a,0xcf,0x26,0x72,
};
diff --git a/cmake-build-debug/CMakeFiles/ocean_autogen.dir/ParseCache.txt b/cmake-build-debug/CMakeFiles/ocean_autogen.dir/ParseCache.txt
index d55e7dc..363ebe7 100644
--- a/cmake-build-debug/CMakeFiles/ocean_autogen.dir/ParseCache.txt
+++ b/cmake-build-debug/CMakeFiles/ocean_autogen.dir/ParseCache.txt
@@ -2,8 +2,7 @@
/Users/sotech117/Documents/final/adv/ocean-simulation/src/arap.h
/Users/sotech117/Documents/final/adv/ocean-simulation/src/ocean/ocean.h
/Users/sotech117/Documents/final/adv/ocean-simulation/src/graphics/camera.cpp
-/Users/sotech117/Documents/final/adv/ocean-simulation/util/tiny_obj_loader.h
-/Users/sotech117/Documents/final/adv/ocean-simulation/src/graphics/camera.h
+/Users/sotech117/Documents/final/adv/ocean-simulation/src/graphics/shape.cpp
/Users/sotech117/Documents/final/adv/ocean-simulation/src/glwidget.h
mmc:Q_OBJECT
mdp:/Users/sotech117/Documents/final/adv/ocean-simulation/src/glwidget.h
@@ -1388,7 +1387,8 @@
mdp:/Users/sotech117/Qt/6.5.2/macos/lib/QtWidgets.framework/Versions/A/Headers/qtwidgetsexports.h
mdp:/Users/sotech117/Qt/6.5.2/macos/lib/QtWidgets.framework/Versions/A/Headers/qtwidgetsglobal.h
mdp:/Users/sotech117/Qt/6.5.2/macos/lib/QtWidgets.framework/Versions/A/Headers/qwidget.h
-/Users/sotech117/Documents/final/adv/ocean-simulation/src/graphics/shape.cpp
+/Users/sotech117/Documents/final/adv/ocean-simulation/util/tiny_obj_loader.h
+/Users/sotech117/Documents/final/adv/ocean-simulation/src/graphics/camera.h
/Users/sotech117/Documents/final/adv/ocean-simulation/src/arap.cpp
/Users/sotech117/Documents/final/adv/ocean-simulation/src/graphics/meshloader.cpp
/Users/sotech117/Documents/final/adv/ocean-simulation/src/graphics/shader.h
diff --git a/cmake-build-debug/Testing/Temporary/LastTest.log b/cmake-build-debug/Testing/Temporary/LastTest.log
index 2c5f261..41fa4a8 100644
--- a/cmake-build-debug/Testing/Temporary/LastTest.log
+++ b/cmake-build-debug/Testing/Temporary/LastTest.log
@@ -1,3 +1,3 @@
-Start testing: May 04 15:14 EDT
+Start testing: May 09 15:02 EDT
----------------------------------------------------------
-End testing: May 04 15:14 EDT
+End testing: May 09 15:02 EDT
diff --git a/cmake-build-debug/build.ninja b/cmake-build-debug/build.ninja
index 299a3cc..50e4a07 100644
--- a/cmake-build-debug/build.ninja
+++ b/cmake-build-debug/build.ninja
@@ -268,7 +268,7 @@ build StaticGLEW_autogen: phony CMakeFiles/StaticGLEW_autogen StaticGLEW_autogen
#############################################
# Custom command for .rcc/qrc_Resources.cpp
-build .rcc/qrc_Resources.cpp | ${cmake_ninja_workdir}.rcc/qrc_Resources.cpp: CUSTOM_COMMAND /Users/sotech117/Documents/final/adv/ocean-simulation/resources/images/uv1.png /Users/sotech117/Documents/final/adv/ocean-simulation/resources/images/kitten.png /Users/sotech117/Documents/final/adv/ocean-simulation/resources/images/hello.png /Users/sotech117/Documents/final/adv/ocean-simulation/resources/images/sand_text.jpg /Users/sotech117/Documents/final/adv/ocean-simulation/resources/images/caustic_sample.jpg /Users/sotech117/Documents/final/adv/ocean-simulation/resources/images/anamorphic.jpg /Users/sotech117/Documents/final/adv/ocean-simulation/resources/images/daniel.jpg /Users/sotech117/Documents/final/adv/ocean-simulation/resources/images/sky_clouds.png /Users/sotech117/Documents/final/adv/ocean-simulation/resources/shaders/shader.frag /Users/sotech117/Documents/final/adv/ocean-simulation/resources/shaders/shader.vert /Users/sotech117/Documents/final/adv/ocean-simulation/resources/shaders/anchorPoint.vert /Users/sotech117/Documents/final/adv/ocean-simulation/resources/shaders/anchorPoint.geom /Users/sotech117/Documents/final/adv/ocean-simulation/resources/shaders/anchorPoint.frag /Users/sotech117/Documents/final/adv/ocean-simulation/resources/shaders/texture.vert /Users/sotech117/Documents/final/adv/ocean-simulation/resources/shaders/texture.frag .rcc/Resources.qrc /Users/sotech117/Qt/6.5.2/macos/./libexec/rcc || StaticGLEW_autogen StaticGLEW_autogen_timestamp_deps libStaticGLEW.a ocean_autogen ocean_autogen_timestamp_deps
+build .rcc/qrc_Resources.cpp | ${cmake_ninja_workdir}.rcc/qrc_Resources.cpp: CUSTOM_COMMAND /Users/sotech117/Documents/final/adv/ocean-simulation/resources/images/uv1.png /Users/sotech117/Documents/final/adv/ocean-simulation/resources/images/kitten.png /Users/sotech117/Documents/final/adv/ocean-simulation/resources/images/hello.png /Users/sotech117/Documents/final/adv/ocean-simulation/resources/images/sand_text.jpg /Users/sotech117/Documents/final/adv/ocean-simulation/resources/images/caustic_sample.jpg /Users/sotech117/Documents/final/adv/ocean-simulation/resources/images/anamorphic.jpg /Users/sotech117/Documents/final/adv/ocean-simulation/resources/images/daniel.jpg /Users/sotech117/Documents/final/adv/ocean-simulation/resources/images/sky_clouds.png /Users/sotech117/Documents/final/adv/ocean-simulation/resources/shaders/shader.frag /Users/sotech117/Documents/final/adv/ocean-simulation/resources/shaders/shader.vert /Users/sotech117/Documents/final/adv/ocean-simulation/resources/shaders/anchorPoint.vert /Users/sotech117/Documents/final/adv/ocean-simulation/resources/shaders/anchorPoint.geom /Users/sotech117/Documents/final/adv/ocean-simulation/resources/shaders/anchorPoint.frag /Users/sotech117/Documents/final/adv/ocean-simulation/resources/shaders/texture.vert /Users/sotech117/Documents/final/adv/ocean-simulation/resources/shaders/texture.frag /Users/sotech117/Documents/final/adv/ocean-simulation/resources/shaders/color.vert /Users/sotech117/Documents/final/adv/ocean-simulation/resources/shaders/color.frag .rcc/Resources.qrc /Users/sotech117/Qt/6.5.2/macos/./libexec/rcc || StaticGLEW_autogen StaticGLEW_autogen_timestamp_deps libStaticGLEW.a ocean_autogen ocean_autogen_timestamp_deps
COMMAND = cd /Users/sotech117/Documents/final/adv/ocean-simulation/cmake-build-debug && /Users/sotech117/Qt/6.5.2/macos/./libexec/rcc --output /Users/sotech117/Documents/final/adv/ocean-simulation/cmake-build-debug/.rcc/qrc_Resources.cpp --name Resources /Users/sotech117/Documents/final/adv/ocean-simulation/cmake-build-debug/.rcc/Resources.qrc --no-zstd
DESC = Running rcc for resource Resources
restat = 1
@@ -297,7 +297,7 @@ build StaticGLEW_autogen/timestamp StaticGLEW_autogen/mocs_compilation.cpp | ${c
#############################################
# Phony custom command for CMakeFiles/ocean_autogen_timestamp_deps
-build CMakeFiles/ocean_autogen_timestamp_deps | ${cmake_ninja_workdir}CMakeFiles/ocean_autogen_timestamp_deps: phony /Users/sotech117/Qt/6.5.2/macos/./libexec/moc /Users/sotech117/Qt/6.5.2/macos/./libexec/uic libStaticGLEW.a || StaticGLEW_autogen StaticGLEW_autogen_timestamp_deps libStaticGLEW.a
+build CMakeFiles/ocean_autogen_timestamp_deps | ${cmake_ninja_workdir}CMakeFiles/ocean_autogen_timestamp_deps: phony libStaticGLEW.a /Users/sotech117/Qt/6.5.2/macos/./libexec/moc /Users/sotech117/Qt/6.5.2/macos/./libexec/uic || StaticGLEW_autogen StaticGLEW_autogen_timestamp_deps libStaticGLEW.a
#############################################
diff --git a/cmake-build-debug/ocean b/cmake-build-debug/ocean
index ff53975..552319e 100755
--- a/cmake-build-debug/ocean
+++ b/cmake-build-debug/ocean
Binary files differ
diff --git a/src/arap.cpp b/src/arap.cpp
index 2f10849..729de07 100644
--- a/src/arap.cpp
+++ b/src/arap.cpp
@@ -34,7 +34,7 @@ void ARAP::init
// if (MeshLoader::loadTriMesh(m_mesh_path, vertices, triangles)) {
// m_shape.init(vertices, triangles);
// }
-
+ m_ocean.update_ocean();
vertices = m_ocean.get_vertices();
triangles = m_ocean.get_faces();
m_shape.init(vertices, triangles);
@@ -102,10 +102,16 @@ void ARAP::update(double seconds)
// Note that the "seconds" parameter represents the amount of time that has passed since
// the last update
-
- m_ocean.fft_prime(m_time);
- // m_shape.setVertices_and_Normals(m_ocean.get_vertices(), m_ocean.getNormals());
- m_shape.setVertices(m_ocean.get_vertices());
+ m_ocean.fft_prime(m_time);
+ m_ocean.update_ocean();
+ // std::cout << "updating ocean" << std::endl;
+ auto tmp = m_ocean.get_vertices();
+ // print the vertex
+// std::cout << "faces\t" << m_ocean.get_faces().size() << std::endl;
+// std::cout << "noormals\t" << m_ocean.getNormals().size() << std::endl;
+// std::cout << "vertices\t" << tmp.size() << std::endl;
+ m_shape.setVertices_and_Normals(m_ocean.get_vertices(), m_ocean.getNormals());
+ // m_shape.setVertices(m_ocean.get_vertices());
m_time += m_timestep;
diff --git a/src/ocean/ocean_alt.cpp b/src/ocean/ocean_alt.cpp
index ca080cd..6355abd 100644
--- a/src/ocean/ocean_alt.cpp
+++ b/src/ocean/ocean_alt.cpp
@@ -45,10 +45,17 @@ void ocean_alt::init_wave_index_constants(){
// initialize m_current_h to be h0 for now
// m_current_h.push_back(h0_prime);
m_current_h.push_back(Eigen::Vector2d(0.0, 0.0));
- m_displacements.push_back(Eigen::Vector2d(0.0, 0.0));
- m_slopes.push_back(Eigen::Vector2d(0.0, 0.0));
+ // m_displacements.push_back(Eigen::Vector2d(0.0, 0.0));
+ // m_slopes.push_back(Eigen::Vector2d(0.0, 0.0));
m_normals.push_back(Eigen::Vector3f(0.0, 1.0, 0.0));
+ m_slopes_x.push_back(Eigen::Vector2d(0.0, 0.0));
+ m_slopes_z.push_back(Eigen::Vector2d(0.0, 0.0));
+
+ m_displacements_x.push_back(Eigen::Vector2d(0.0, 0.0));
+ m_displacements_z.push_back(Eigen::Vector2d(0.0, 0.0));
+
+ m_vertices.push_back(Eigen::Vector3f(0.0, 0.0, 0.0));
}
}
@@ -57,8 +64,14 @@ void ocean_alt::fft_prime(double t){
// FFT
std::vector<Eigen::Vector2d> h_tildas = std::vector<Eigen::Vector2d>();
- std::vector<Eigen::Vector2d> ikh = std::vector<Eigen::Vector2d>();
- std::vector<Eigen::Vector2d> neg_ik_hat_h = std::vector<Eigen::Vector2d>();
+ // std::vector<Eigen::Vector2d> ikh = std::vector<Eigen::Vector2d>();
+// std::vector<Eigen::Vector2d> neg_ik_hat_h = std::vector<Eigen::Vector2d>();
+
+ std::vector<Eigen::Vector2d> ikhx = std::vector<Eigen::Vector2d>();
+ std::vector<Eigen::Vector2d> ikhz = std::vector<Eigen::Vector2d>();
+
+ std::vector<Eigen::Vector2d> neg_ik_hat_h_x = std::vector<Eigen::Vector2d>();
+ std::vector<Eigen::Vector2d> neg_ik_hat_h_z = std::vector<Eigen::Vector2d>();
// find each h_tilda at each index, to be used for next for loop
for (int i=0; i<N; i++){
@@ -67,25 +80,47 @@ void ocean_alt::fft_prime(double t){
h_tildas.emplace_back(h_t_prime);
Eigen::Vector2d k_vector = m_waveIndexConstants[i].k_vector;
- ikh.emplace_back(-h_t_prime[1] * k_vector[0], -h_t_prime[1] * k_vector[1]);
+ // ikh.emplace_back(-h_t_prime[1] * k_vector[0], -h_t_prime[1] * k_vector[1]);
+ ikhx.emplace_back(-h_t_prime[1] * k_vector[0], -h_t_prime[1] * k_vector[0]);
+ ikhz.emplace_back(-h_t_prime[1] * k_vector[1], -h_t_prime[1] * k_vector[1]);
+
- Eigen::Vector2d k_normalized = k_vector.normalized();
- Eigen::Vector2d neg_ik_hat_h_val =
- Eigen::Vector2d(k_normalized[1] * h_t_prime[1], k_normalized[0] * h_t_prime[1]);
- neg_ik_hat_h.emplace_back(neg_ik_hat_h_val);
+// Eigen::Vector2d neg_ik_hat_h_val =
+// Eigen::Vector2d(k_normalized[1] * h_t_prime[1], k_normalized[0] * h_t_prime[1]);
+// neg_ik_hat_h.emplace_back(neg_ik_hat_h_val);
+ double len = k_vector.norm();
+ if (len < .000001)
+ {
+ neg_ik_hat_h_x.emplace_back(0.0, 0.0);
+ neg_ik_hat_h_z.emplace_back(0.0, 0.0);
+ }
+ else
+ {
+ Eigen::Vector2d k_normalized = k_vector.normalized();
+ neg_ik_hat_h_x.emplace_back(k_normalized[0] * h_t_prime[1], k_normalized[0] * h_t_prime[1]);
+ neg_ik_hat_h_z.emplace_back(k_normalized[1] * h_t_prime[1], k_normalized[1] * h_t_prime[1]);
+ }
}
bool fast = true;
if (fast)
{
std::vector<Eigen::Vector2d> tmp = fast_fft(h_tildas);
- std::vector<Eigen::Vector2d> tmp2 = fast_fft(ikh);
- std::vector<Eigen::Vector2d> tmp3 = fast_fft(neg_ik_hat_h);
+// std::vector<Eigen::Vector2d> tmp2 = fast_fft(ikh);
+ // std::vector<Eigen::Vector2d> tmp3 = fast_fft(neg_ik_hat_h);
+ std::vector<Eigen::Vector2d> tmp4 = fast_fft(ikhx);
+ std::vector<Eigen::Vector2d> tmp5 = fast_fft(ikhz);
+ std::vector<Eigen::Vector2d> tmp6 = fast_fft(neg_ik_hat_h_x);
+ std::vector<Eigen::Vector2d> tmp7 = fast_fft(neg_ik_hat_h_z);
for (int i = 0; i < N; i++)
{
m_current_h[i] = tmp[i];
- m_slopes[i] = tmp2[i];
- m_displacements[i] = tmp3[i];
+ // m_slopes[i] = tmp2[i];
+ // m_displacements[i] = tmp3[i];
+ m_slopes_x[i] = tmp4[i];
+ m_slopes_z[i] = tmp5[i];
+ m_displacements_x[i] = tmp6[i];
+ m_displacements_z[i] = tmp7[i];
}
return;
@@ -95,8 +130,8 @@ void ocean_alt::fft_prime(double t){
for (int i=0; i<N; i++){
Eigen::Vector2d x_vector = m_waveIndexConstants[i].base_horiz_pos;
m_current_h[i] = Eigen::Vector2d(0.0, 0.0);
- m_displacements[i] = Eigen::Vector2d(0.0, 0.0);
- m_slopes[i] = Eigen::Vector2d(0.0, 0.0);
+ // m_displacements[i] = Eigen::Vector2d(0.0, 0.0);
+ // m_slopes[i] = Eigen::Vector2d(0.0, 0.0);
@@ -116,8 +151,8 @@ void ocean_alt::fft_prime(double t){
Eigen::Vector2d k_normalized = k_vector.normalized();
- m_displacements[i] += k_normalized*imag_comp;
- m_slopes[i] += -k_vector*imag_comp;
+ // m_displacements[i] += k_normalized*imag_comp;
+ // m_slopes[i] += -k_vector*imag_comp;
}
}
@@ -254,78 +289,136 @@ Eigen::Vector2d ocean_alt::complex_exp(double exponent){
return Eigen::Vector2d(real, imag);
}
-std::vector<Eigen::Vector3f> ocean_alt::get_vertices()
+void ocean_alt::update_ocean()
{
- std::vector<Eigen::Vector3f> vertices = std::vector<Eigen::Vector3f>();
+ // reset normals & vertices arrays for the single tile
+ m_vertices = std::vector<Eigen::Vector3f>(N);
+ m_normals = std::vector<Eigen::Vector3f>(N);
for (int i = 0; i < N; i++){
Eigen::Vector2d horiz_pos = spacing*m_waveIndexConstants[i].base_horiz_pos;
Eigen::Vector2d amplitude = m_current_h[i];
float height = amplitude[0];
- Eigen::Vector2d slope = m_slopes[i] * .3f;
- Eigen::Vector3f s = Eigen::Vector3f(-slope[0], 0.0, -slope[1]);
- Eigen::Vector3f y = Eigen::Vector3f(0.0, 1.0, 0.0);
+ // Eigen::Vector2d slope = m_slopes[i] * .3f;
+ // Eigen::Vector3f s = Eigen::Vector3f(-slope[0], 0.0, -slope[1]);
+ // Eigen::Vector3f y = Eigen::Vector3f(0.0, 1.0, 0.0);
- float xs = 1.f + s[0]*s[0];
- float ys = 1.f + s[1]*s[1];
- float zs = 1.f + s[2]*s[2];
-
- Eigen::Vector3f diff = y - s;
- Eigen::Vector3f norm = Eigen::Vector3f(diff[0]/ sqrt(xs), diff[1]/ sqrt(ys), diff[2]/sqrt(zs));
+// float xs = 1.f + s[0]*s[0];
+// float ys = 1.f + s[1]*s[1];
+// float zs = 1.f + s[2]*s[2];
+//
+// Eigen::Vector3f diff = y - s;
+// Eigen::Vector3f Eigen::Vector3f(diff[0]/ sqrt(xs), diff[1]/ sqrt(ys), diff[2]/sqrt(zs));
// NEW
-// Eigen::Vector3f norm = Eigen::Vector3f(-slope[0], 1.0, -slope[1]);
- norm.normalize();
- //NEW
-
-
-
-
+ Eigen::Vector3f norm = Eigen::Vector3f(-m_slopes_x[i][0], 1.0, -m_slopes_z[i][0]);
+ norm = -norm.normalized(); // FIXME: why do I have to be inverted?
//if (i==6) std::cout << amplitude[0] << std::endl;
// calculate displacement
- Eigen::Vector2d disp = lambda*m_displacements[i];
-
- //
+ // Eigen::Vector2d disp = lambda*m_displacements[i];
+ Eigen::Vector2d disp = lambda*Eigen::Vector2d(m_displacements_x[i][0], m_displacements_z[i][0])
+ + Eigen::Vector2d(vertex_displacement, vertex_displacement); // set corner at 0,0 for retiling
// for final vertex position, use the real number component of amplitude vector
- vertices.push_back(Eigen::Vector3f(horiz_pos[0] + disp[0], height, horiz_pos[1] + disp[1]));
+ m_vertices[i] = {horiz_pos[0] + disp[0], height, horiz_pos[1] + disp[1]};
m_normals[i] = norm.normalized();//Eigen::Vector3f(-slope[0], 1.0, -slope[1]).normalized();
//std::cout << "normal: " << m_normals[i] << std::endl
}
- return vertices;
+}
+
+std::vector<Eigen::Vector3f> ocean_alt::get_vertices(){
+ // extend the returned array based on the tilecount
+ std::vector<Eigen::Vector3f> vertices = std::vector<Eigen::Vector3f>();
+ for (int i = 0; i < num_tiles_x; i++)
+ {
+ for (int j = 0; j < num_tiles_z; j++)
+ {
+ for (int k = 0; k < N; k++)
+ {
+ double c = Lx - 2 / (num_rows / Lx);
+ Eigen::Vector3f vertex = m_vertices[k] + Eigen::Vector3f(i*(c), 0.0, (j)*(c));
+ vertices.push_back(vertex);
+ }
+ }
+ }
+
+ return vertices;
}
std::vector<Eigen::Vector3f> ocean_alt::getNormals(){
- return m_normals;
+ // based on the tile count, add more to the normals
+ std::vector<Eigen::Vector3f> normals = std::vector<Eigen::Vector3f>();
+ // do the x 1D direction first
+ for (int i = 0; i < num_tiles_x; i++)
+ {
+ for (int j = 0; j < num_tiles_z; j++)
+ {
+ for (int k = 0; k < N; k++)
+ {
+ normals.push_back(m_normals[k]);
+ }
+ }
+ }
+
+
+ return normals;
}
std::vector<Eigen::Vector3i> ocean_alt::get_faces()
{
// connect the vertices into faces
std::vector<Eigen::Vector3i> faces = std::vector<Eigen::Vector3i>();
- for (int i = 0; i < N; i++)
- {
- int x = i / num_rows;
- int z = i % num_rows;
+ for (int i = 0; i < num_tiles_x; i++)
+ {
+ for (int j = 0; j < num_tiles_z; j++)
+ {
+ for (int k = 0; k < N; k++)
+ {
+ int x = k % num_rows;
+ int z = k / num_rows;
- // connect the vertices into faces
- if (x < num_rows - 1 && z < num_cols - 1)
- {
- int i1 = i;
- int i2 = i + 1;
- int i3 = i + num_rows;
- int i4 = i + num_rows + 1;
+ // connect the vertices into faces
+ if (x < num_rows - 1 && z < num_cols - 1)
+ {
+ int tile_index_offset = (j + num_tiles_z * i) * N;
+ int i1 = k + tile_index_offset;
+ int i2 = k + 1 + tile_index_offset;
+ int i3 = k + num_rows + tile_index_offset;
+ int i4 = k + num_rows + 1 + tile_index_offset;
+
+ faces.emplace_back(i2, i1, i3);
+ faces.emplace_back(i2, i3, i4);
+ }
+ }
+ }
+ }
+ return faces;
+
+
+// for (int i = 0; i < N; i++)
+// {
+// int x = i / num_rows;
+// int z = i % num_rows;
+//
+// // connect the vertices into faces
+// if (x < num_rows - 1 && z < num_cols - 1)
+// {
+// int i1 = i;
+// int i2 = i + 1;
+// int i3 = i + num_rows;
+// int i4 = i + num_rows + 1;
+//
// faces.emplace_back(i2, i1, i3);
// faces.emplace_back(i2, i3, i4);
- faces.emplace_back(i1, i2, i3);
- faces.emplace_back(i3, i2, i4);
- }
- }
- return faces;
+// faces.emplace_back(i1, i2, i3);
+// faces.emplace_back(i3, i2, i4);
+// }
+// }
+// return faces;
}
Eigen::Vector2d muliply_complex(Eigen::Vector2d a, Eigen::Vector2d b)
@@ -442,11 +535,11 @@ std::vector<Eigen::Vector2d> ocean_alt::fast_fft
}
// divide by N*N and add the signs based on the indices
- double sign[] = {1, -1};
+ double sign[] = {1.0, -1.0};
for (int i = 0; i < N; i++)
{
- // h[i] /= N;
- h[i] /= sqrt(N);
+ h[i] /= N;
+ // h[i] /= sqrt(N);
h[i] *= sign[(i / num_rows + i % num_cols) % 2];
}
diff --git a/src/ocean/ocean_alt.h b/src/ocean/ocean_alt.h
index 4bb1d54..13f0d0d 100644
--- a/src/ocean/ocean_alt.h
+++ b/src/ocean/ocean_alt.h
@@ -25,6 +25,7 @@ class ocean_alt
public:
ocean_alt();
void updateVertexAmplitudes(double t);
+ void update_ocean();
std::vector<Eigen::Vector3f> get_vertices();
std::vector<Eigen::Vector3i> get_faces();
void fft_prime(double t);
@@ -66,26 +67,33 @@ private:
const int num_rows = 256;
const int num_cols = 256;
+ const int num_tiles_x = 5;
+ const int num_tiles_z = 1;
+
+ const double vertex_displacement = Lx / 2;
+
const int N = num_rows*num_cols; // total number of grid points
- const double lambda = 0; // how much displacement matters
- const double spacing = 35.0; // spacing between grid points
+ const double lambda = .5; // how much displacement matters
+ const double spacing = 1.0; // spacing between grid points
- const double A = 100; // numeric constant for the Phillips spectrum
- const double V = 50; // wind speed
+ const double A = 15000; // numeric constant for the Phillips spectrum
+ const double V = 1000; // wind speed
const double gravity = 9.81;
const double L = V*V/gravity;
const Eigen::Vector2d omega_wind = Eigen::Vector2d(1.0, 0.0); // wind direction, used in Phillips equation
std::vector<Eigen::Vector2d> m_current_h; // current height fields for each K
- std::vector<Eigen::Vector2d> m_displacements; // current displacement vector for each K
- std::vector<Eigen::Vector2d> m_slopes; // current displacement vector for each K
+ // std::vector<Eigen::Vector2d> m_displacements; // current displacement vector for each K
+ // std::vector<Eigen::Vector2d> m_slopes; // current displacement vector for each K
+ std::vector<Eigen::Vector2d> m_slopes_x;
+ std::vector<Eigen::Vector2d> m_slopes_z;
+ std::vector<Eigen::Vector2d> m_displacements_x;
+ std::vector<Eigen::Vector2d> m_displacements_z;
//std::vector<Eigen::Vector3f> m_slope_vectors; // current displacement vector for each K
std::vector<Eigen::Vector3f> m_normals; // current displacement vector for each K
-
-
-
+ std::vector<Eigen::Vector3f> m_vertices; // current displacement vector for each K
const double D = 1.0; // Depth below mean water level (for dispersion relation)