diff --git a/.idea/artifacts/Project1_jar.xml b/.idea/artifacts/Project1_jar.xml
new file mode 100644
index 0000000..6951159
--- /dev/null
+++ b/.idea/artifacts/Project1_jar.xml
@@ -0,0 +1,38 @@
+
+
+ $PROJECT_DIR$/classes/artifacts/Project1_jar
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/Project1.iml b/Project1.iml
index 5beb944..27bca16 100644
--- a/Project1.iml
+++ b/Project1.iml
@@ -26,8 +26,8 @@
-
+
diff --git a/bin/META-INF/MANIFEST.MF b/bin/META-INF/MANIFEST.MF
new file mode 100644
index 0000000..ec5448b
--- /dev/null
+++ b/bin/META-INF/MANIFEST.MF
@@ -0,0 +1,3 @@
+Manifest-Version: 1.0
+Main-Class: main.Main
+
diff --git a/bin/Scene/Objects/AInterestingVideo.class b/bin/Scene/Objects/AInterestingVideo.class
new file mode 100644
index 0000000..7db0a0a
Binary files /dev/null and b/bin/Scene/Objects/AInterestingVideo.class differ
diff --git a/bin/Scene/Objects/Book$1.class b/bin/Scene/Objects/Book$1.class
index 1e14e78..181178a 100644
Binary files a/bin/Scene/Objects/Book$1.class and b/bin/Scene/Objects/Book$1.class differ
diff --git a/bin/Scene/Objects/Book.class b/bin/Scene/Objects/Book.class
index 6ab0824..e43f597 100644
Binary files a/bin/Scene/Objects/Book.class and b/bin/Scene/Objects/Book.class differ
diff --git a/bin/Scene/Objects/BookShelf.class b/bin/Scene/Objects/BookShelf.class
index 5897568..2d118d8 100644
Binary files a/bin/Scene/Objects/BookShelf.class and b/bin/Scene/Objects/BookShelf.class differ
diff --git a/bin/Scene/Objects/BunnyTestObject.class b/bin/Scene/Objects/BunnyTestObject.class
index 6bc0940..75e6781 100644
Binary files a/bin/Scene/Objects/BunnyTestObject.class and b/bin/Scene/Objects/BunnyTestObject.class differ
diff --git a/bin/Scene/Objects/BunnyTestObject2$1.class b/bin/Scene/Objects/BunnyTestObject2$1.class
deleted file mode 100644
index 0646fcb..0000000
Binary files a/bin/Scene/Objects/BunnyTestObject2$1.class and /dev/null differ
diff --git a/bin/Scene/Objects/BunnyTestObject2.class b/bin/Scene/Objects/BunnyTestObject2.class
index 58745cb..42d63d9 100644
Binary files a/bin/Scene/Objects/BunnyTestObject2.class and b/bin/Scene/Objects/BunnyTestObject2.class differ
diff --git a/bin/Scene/Objects/CarportObject.class b/bin/Scene/Objects/CarportObject.class
index 42debb9..3dac78d 100644
Binary files a/bin/Scene/Objects/CarportObject.class and b/bin/Scene/Objects/CarportObject.class differ
diff --git a/bin/Scene/Objects/Copyleft.class b/bin/Scene/Objects/Copyleft.class
index 0d34152..45ad76d 100644
Binary files a/bin/Scene/Objects/Copyleft.class and b/bin/Scene/Objects/Copyleft.class differ
diff --git a/bin/Scene/Objects/Cube.class b/bin/Scene/Objects/Cube.class
index 3993aaa..3da7804 100644
Binary files a/bin/Scene/Objects/Cube.class and b/bin/Scene/Objects/Cube.class differ
diff --git a/bin/Scene/Objects/Ground.class b/bin/Scene/Objects/Ground.class
index 02a8c57..007df05 100644
Binary files a/bin/Scene/Objects/Ground.class and b/bin/Scene/Objects/Ground.class differ
diff --git a/bin/Scene/Objects/LAVA_Door.class b/bin/Scene/Objects/LAVA_Door.class
index 73ac79a..afb3b6e 100644
Binary files a/bin/Scene/Objects/LAVA_Door.class and b/bin/Scene/Objects/LAVA_Door.class differ
diff --git a/bin/Scene/Objects/NPC$1.class b/bin/Scene/Objects/NPC$1.class
index 8dc84b6..16ea2ad 100644
Binary files a/bin/Scene/Objects/NPC$1.class and b/bin/Scene/Objects/NPC$1.class differ
diff --git a/bin/Scene/Objects/NPC$2.class b/bin/Scene/Objects/NPC$2.class
deleted file mode 100644
index d03e258..0000000
Binary files a/bin/Scene/Objects/NPC$2.class and /dev/null differ
diff --git a/bin/Scene/Objects/NPC.class b/bin/Scene/Objects/NPC.class
index 16924ab..81013b2 100644
Binary files a/bin/Scene/Objects/NPC.class and b/bin/Scene/Objects/NPC.class differ
diff --git a/bin/Scene/Objects/Player$1.class b/bin/Scene/Objects/Player$1.class
index 826f7a8..38a1049 100644
Binary files a/bin/Scene/Objects/Player$1.class and b/bin/Scene/Objects/Player$1.class differ
diff --git a/bin/Scene/Objects/Player$2.class b/bin/Scene/Objects/Player$2.class
index 7e9304b..624f0fc 100644
Binary files a/bin/Scene/Objects/Player$2.class and b/bin/Scene/Objects/Player$2.class differ
diff --git a/bin/Scene/Objects/Player.class b/bin/Scene/Objects/Player.class
index ce88735..bb2346a 100644
Binary files a/bin/Scene/Objects/Player.class and b/bin/Scene/Objects/Player.class differ
diff --git a/bin/Scene/Objects/TNT_Door.class b/bin/Scene/Objects/TNT_Door.class
index c9c0817..b440ad6 100644
Binary files a/bin/Scene/Objects/TNT_Door.class and b/bin/Scene/Objects/TNT_Door.class differ
diff --git a/bin/Scene/Objects/Table.class b/bin/Scene/Objects/Table.class
index fe34308..860e77d 100644
Binary files a/bin/Scene/Objects/Table.class and b/bin/Scene/Objects/Table.class differ
diff --git a/bin/Scene/Objects/TheMostImportantImage.class b/bin/Scene/Objects/TheMostImportantImage.class
new file mode 100644
index 0000000..72c6016
Binary files /dev/null and b/bin/Scene/Objects/TheMostImportantImage.class differ
diff --git a/bin/Scene/Objects/Wall.class b/bin/Scene/Objects/Wall.class
index 515e168..358722d 100644
Binary files a/bin/Scene/Objects/Wall.class and b/bin/Scene/Objects/Wall.class differ
diff --git a/bin/Scene/Scene$1.class b/bin/Scene/Scene$1.class
index ade95b5..fe9dfda 100644
Binary files a/bin/Scene/Scene$1.class and b/bin/Scene/Scene$1.class differ
diff --git a/bin/Scene/Scene$2.class b/bin/Scene/Scene$2.class
index 5ce56ff..fbb834d 100644
Binary files a/bin/Scene/Scene$2.class and b/bin/Scene/Scene$2.class differ
diff --git a/bin/Scene/Scene$3.class b/bin/Scene/Scene$3.class
new file mode 100644
index 0000000..4aca60d
Binary files /dev/null and b/bin/Scene/Scene$3.class differ
diff --git a/bin/Scene/Scene$4.class b/bin/Scene/Scene$4.class
new file mode 100644
index 0000000..4099fb7
Binary files /dev/null and b/bin/Scene/Scene$4.class differ
diff --git a/bin/Scene/Scene$5.class b/bin/Scene/Scene$5.class
new file mode 100644
index 0000000..34d59c9
Binary files /dev/null and b/bin/Scene/Scene$5.class differ
diff --git a/bin/Scene/Scene.class b/bin/Scene/Scene.class
index e24e133..f1ac20b 100644
Binary files a/bin/Scene/Scene.class and b/bin/Scene/Scene.class differ
diff --git a/bin/Scene/base/IDrawable.class b/bin/Scene/base/IDrawable.class
index 64730da..5b4e141 100644
Binary files a/bin/Scene/base/IDrawable.class and b/bin/Scene/base/IDrawable.class differ
diff --git a/bin/Scene/base/SceneObject.class b/bin/Scene/base/SceneObject.class
index bc939c1..6d84ad3 100644
Binary files a/bin/Scene/base/SceneObject.class and b/bin/Scene/base/SceneObject.class differ
diff --git a/bin/Scene/skybox/Skybox.class b/bin/Scene/skybox/Skybox.class
index 59b96db..beca713 100644
Binary files a/bin/Scene/skybox/Skybox.class and b/bin/Scene/skybox/Skybox.class differ
diff --git a/bin/base/objects3D/DisplayListOval.class b/bin/base/objects3D/DisplayListOval.class
new file mode 100644
index 0000000..1ec8bdf
Binary files /dev/null and b/bin/base/objects3D/DisplayListOval.class differ
diff --git a/bin/base/objects3D/Oval.class b/bin/base/objects3D/Oval.class
deleted file mode 100644
index 1b2073c..0000000
Binary files a/bin/base/objects3D/Oval.class and /dev/null differ
diff --git a/bin/main/Camera.class b/bin/main/Camera.class
index 5ddef9b..4a4d4f2 100644
Binary files a/bin/main/Camera.class and b/bin/main/Camera.class differ
diff --git a/bin/main/Engine.class b/bin/main/Engine.class
index 207dee0..7a3f330 100644
Binary files a/bin/main/Engine.class and b/bin/main/Engine.class differ
diff --git a/bin/main/Main$1.class b/bin/main/Main$1.class
index 12cb08c..ae6bc22 100644
Binary files a/bin/main/Main$1.class and b/bin/main/Main$1.class differ
diff --git a/bin/main/Main$2.class b/bin/main/Main$2.class
index f9f6a02..ce01aa0 100644
Binary files a/bin/main/Main$2.class and b/bin/main/Main$2.class differ
diff --git a/bin/main/Main$3.class b/bin/main/Main$3.class
index 4e5db76..113ccf5 100644
Binary files a/bin/main/Main$3.class and b/bin/main/Main$3.class differ
diff --git a/bin/main/Main.class b/bin/main/Main.class
index 9da459b..7729378 100644
Binary files a/bin/main/Main.class and b/bin/main/Main.class differ
diff --git a/bin/main/TextureLoader.class b/bin/main/TextureLoader.class
index 0bdcb93..a269dcd 100644
Binary files a/bin/main/TextureLoader.class and b/bin/main/TextureLoader.class differ
diff --git a/hs_err_pid81244.log b/hs_err_pid81244.log
new file mode 100644
index 0000000..34604c0
--- /dev/null
+++ b/hs_err_pid81244.log
@@ -0,0 +1,609 @@
+#
+# A fatal error has been detected by the Java Runtime Environment:
+#
+# SIGSEGV (0xb) at pc=0x00007fff202734af, pid=81244, tid=0x0000000000000f03
+#
+# JRE version: Java(TM) SE Runtime Environment (8.0_271-b09) (build 1.8.0_271-b09)
+# Java VM: Java HotSpot(TM) 64-Bit Server VM (25.271-b09 mixed mode bsd-amd64 compressed oops)
+# Problematic frame:
+# C [libobjc.A.dylib+0x84af] objc_release+0x1f
+#
+# Failed to write core dump. Core dumps have been disabled. To enable core dumping, try "ulimit -c unlimited" before starting Java again
+#
+# If you would like to submit a bug report, please visit:
+# http://bugreport.java.com/bugreport/crash.jsp
+# The crash happened outside the Java Virtual Machine in native code.
+# See problematic frame for where to report the bug.
+#
+
+--------------- T H R E A D ---------------
+
+Current thread (0x00007f91bd009000): JavaThread "main" [_thread_in_native, id=3843, stack(0x00007000041be000,0x00007000042be000)]
+
+siginfo: si_signo: 11 (SIGSEGV), si_code: 1 (SEGV_MAPERR), si_addr: 0x0000000000000020
+
+Registers:
+RAX=0xe000000000000000, RBX=0x0000000000000001, RCX=0x0000000000000000, RDX=0x0000000000000007
+RSP=0x00007000042bd4c8, RBP=0x00007000042bd500, RSI=0x00007f91bac3ace0, RDI=0x00007f91b9755520
+R8 =0x00007f91c0867cc8, R9 =0x0000000000000000, R10=0x00007f91b9747060, R11=0x00007fff22c9eb3a
+R12=0x00007f91b9755520, R13=0xa3a3a3a3a3a3a3a3, R14=0x00007f91bc813090, R15=0x00007f91bc813000
+RIP=0x00007fff202734af, EFLAGS=0x0000000000010246, ERR=0x0000000000000004
+ TRAPNO=0x000000000000000e
+
+Top of Stack: (sp=0x00007000042bd4c8)
+0x00007000042bd4c8: 00007fff2029120f 455bea9158a20000
+0x00007000042bd4d8: 00007f91bc813000 00007f91b973b7d0
+0x00007000042bd4e8: 00000001170775a0 00007fff7bacafbf
+0x00007000042bd4f8: 00007f91bd0091f8 00007000042bd520
+0x00007000042bd508: 00007fff20273e30 455bea9158a20061
+0x00007000042bd518: 00007f91bc813090 00007000042bd540
+0x00007000042bd528: 00007fff2048da66 455bea9158a20061
+0x00007000042bd538: 00007f91b973b7d0 00007000042bd580
+0x00007000042bd548: 00007fff21219123 00007fff872e50d8
+0x00007000042bd558: 0000000000000000 00007f91c0706ea0
+0x00007000042bd568: 455bea9158a20061 00007f91bac3db90
+0x00007000042bd578: 00007f91bac39a50 00007000042bd5b0
+0x00007000042bd588: 0000000135b73cce 00000001170775a8
+0x00007000042bd598: 0000000000000000 00007000042bd640
+0x00007000042bd5a8: 00007f91bd009000 00007000042bd618
+0x00007000042bd5b8: 00000001179e56c7 00007000042bd618
+0x00007000042bd5c8: 00000001179e5427 00000001179e53e2
+0x00007000042bd5d8: 00007000042bd5d8 00000001170775a0
+0x00007000042bd5e8: 00007000042bd640 0000000117077b08
+0x00007000042bd5f8: 0000000000000000 00000001170775a8
+0x00007000042bd608: 0000000000000000 00007000042bd638
+0x00007000042bd618: 00007000042bd688 00000001179d52bd
+0x00007000042bd628: 000000076b970970 00000001179ded18
+0x00007000042bd638: 000000076b985cd0 000000076b884468
+0x00007000042bd648: 00007000042bd648 00000001170774a7
+0x00007000042bd658: 00007000042bd6b8 0000000117077b08
+0x00007000042bd668: 0000000000000000 0000000117077518
+0x00007000042bd678: 00007000042bd638 00007000042bd6a8
+0x00007000042bd688: 00007000042bd710 00000001179d5302
+0x00007000042bd698: 0000000000000000 000000076b884468
+0x00007000042bd6a8: 000000076b985cd0 000000076b8843b0
+0x00007000042bd6b8: 000000076b970a00 0000000000000001
+
+Instructions: (pc=0x00007fff202734af)
+0x00007fff2027348f: 90 48 85 ff 74 76 89 f8 83 e0 01 48 85 c0 75 6c
+0x00007fff2027349f: 48 8b 07 48 b9 f8 ff ff ff ff 7f 00 00 48 21 c1
+0x00007fff202734af: 48 8b 51 20 f6 c2 04 74 54 a8 01 74 6f 48 b9 00
+0x00007fff202734bf: 00 00 00 00 00 80 00 48 ba 00 00 00 00 00 00 00
+
+Register to memory mapping:
+
+RAX=0xe000000000000000 is an unknown value
+RBX=0x0000000000000001 is an unknown value
+RCX=0x0000000000000000 is an unknown value
+RDX=0x0000000000000007 is an unknown value
+RSP=0x00007000042bd4c8 is pointing into the stack for thread: 0x00007f91bd009000
+RBP=0x00007000042bd500 is pointing into the stack for thread: 0x00007f91bd009000
+RSI=0x00007f91bac3ace0 is an unknown value
+RDI=0x00007f91b9755520 is an unknown value
+R8 =0x00007f91c0867cc8 is an unknown value
+R9 =0x0000000000000000 is an unknown value
+R10=0x00007f91b9747060 is an unknown value
+R11=0x00007fff22c9eb3a: -[NSResponder release]+0 in /System/Library/Frameworks/AppKit.framework/Versions/C/AppKit at 0x00007fff22c93000
+R12=0x00007f91b9755520 is an unknown value
+R13=0xa3a3a3a3a3a3a3a3 is an unknown value
+R14=0x00007f91bc813090 is an unknown value
+R15=0x00007f91bc813000 is an unknown value
+
+
+Stack: [0x00007000041be000,0x00007000042be000], sp=0x00007000042bd4c8, free space=1021k
+Native frames: (J=compiled Java code, j=interpreted, Vv=VM code, C=native code)
+C [libobjc.A.dylib+0x84af] objc_release+0x1f
+C [libobjc.A.dylib+0x8e30] objc_autoreleasePoolPop+0xa1
+C [CoreFoundation+0x42a66] _CFAutoreleasePoolPop+0x16
+C [Foundation+0x1f123] -[NSAutoreleasePool release]+0x83
+C [liblwjgl.dylib+0x16cce] Java_org_lwjgl_opengl_MacOSXContextImplementation_setView+0x10e
+j org.lwjgl.opengl.MacOSXContextImplementation.setView(Ljava/nio/ByteBuffer;Ljava/nio/ByteBuffer;)V+0
+j org.lwjgl.opengl.MacOSXContextImplementation.makeCurrent(Lorg/lwjgl/opengl/PeerInfo;Ljava/nio/ByteBuffer;)V+7
+j org.lwjgl.opengl.ContextGL.makeCurrent()V+46
+j org.lwjgl.opengl.DrawableGL.makeCurrent()V+14
+j org.lwjgl.opengl.Display.makeCurrent()V+3
+j org.lwjgl.opengl.Display.makeCurrentAndSetSwapInterval()V+0
+j org.lwjgl.opengl.Display.create(Lorg/lwjgl/opengl/PixelFormat;Lorg/lwjgl/opengl/Drawable;Lorg/lwjgl/opengl/ContextAttribs;)V+108
+j org.lwjgl.opengl.Display.create(Lorg/lwjgl/opengl/PixelFormat;)V+12
+j main.Engine.(II)V+23
+j main.Main.main([Ljava/lang/String;)V+10
+v ~StubRoutines::call_stub
+V [libjvm.dylib+0x2d4795]
+V [libjvm.dylib+0x30582b]
+V [libjvm.dylib+0x308edb]
+C [java+0x316c] JavaMain+0x9dc
+C [libsystem_pthread.dylib+0x68fc] _pthread_start+0xe0
+C [libsystem_pthread.dylib+0x2443] thread_start+0xf
+C 0x0000000000000000
+
+Java frames: (J=compiled Java code, j=interpreted, Vv=VM code)
+j org.lwjgl.opengl.MacOSXContextImplementation.setView(Ljava/nio/ByteBuffer;Ljava/nio/ByteBuffer;)V+0
+j org.lwjgl.opengl.MacOSXContextImplementation.makeCurrent(Lorg/lwjgl/opengl/PeerInfo;Ljava/nio/ByteBuffer;)V+7
+j org.lwjgl.opengl.ContextGL.makeCurrent()V+46
+j org.lwjgl.opengl.DrawableGL.makeCurrent()V+14
+j org.lwjgl.opengl.Display.makeCurrent()V+3
+j org.lwjgl.opengl.Display.makeCurrentAndSetSwapInterval()V+0
+j org.lwjgl.opengl.Display.create(Lorg/lwjgl/opengl/PixelFormat;Lorg/lwjgl/opengl/Drawable;Lorg/lwjgl/opengl/ContextAttribs;)V+108
+j org.lwjgl.opengl.Display.create(Lorg/lwjgl/opengl/PixelFormat;)V+12
+j main.Engine.(II)V+23
+j main.Main.main([Ljava/lang/String;)V+10
+v ~StubRoutines::call_stub
+
+--------------- P R O C E S S ---------------
+
+Java Threads: ( => current thread )
+ 0x00007f91c1048800 JavaThread "AWT-Shutdown" [_thread_blocked, id=31771, stack(0x0000700006427000,0x0000700006527000)]
+ 0x00007f91bb8d1000 JavaThread "AppKit Thread" daemon [_thread_in_native, id=259, stack(0x00007ffee31cd000,0x00007ffee39cd000)]
+ 0x00007f91c100a800 JavaThread "Service Thread" daemon [_thread_blocked, id=23811, stack(0x0000700006221000,0x0000700006321000)]
+ 0x00007f91bc84b000 JavaThread "C1 CompilerThread11" daemon [_thread_blocked, id=23555, stack(0x000070000611e000,0x000070000621e000)]
+ 0x00007f91b9809000 JavaThread "C1 CompilerThread10" daemon [_thread_blocked, id=39683, stack(0x000070000601b000,0x000070000611b000)]
+ 0x00007f91ba086000 JavaThread "C1 CompilerThread9" daemon [_thread_blocked, id=40195, stack(0x0000700005f18000,0x0000700006018000)]
+ 0x00007f91bc80d000 JavaThread "C1 CompilerThread8" daemon [_thread_blocked, id=23043, stack(0x0000700005e15000,0x0000700005f15000)]
+ 0x00007f91c0832800 JavaThread "C2 CompilerThread7" daemon [_thread_blocked, id=22787, stack(0x0000700005d12000,0x0000700005e12000)]
+ 0x00007f91bd050800 JavaThread "C2 CompilerThread6" daemon [_thread_blocked, id=40963, stack(0x0000700005c0f000,0x0000700005d0f000)]
+ 0x00007f91bb879800 JavaThread "C2 CompilerThread5" daemon [_thread_blocked, id=41475, stack(0x0000700005b0c000,0x0000700005c0c000)]
+ 0x00007f91bd04f800 JavaThread "C2 CompilerThread4" daemon [_thread_blocked, id=41731, stack(0x0000700005a09000,0x0000700005b09000)]
+ 0x00007f91bb025800 JavaThread "C2 CompilerThread3" daemon [_thread_blocked, id=42243, stack(0x0000700005906000,0x0000700005a06000)]
+ 0x00007f91c380a000 JavaThread "C2 CompilerThread2" daemon [_thread_blocked, id=42755, stack(0x0000700005803000,0x0000700005903000)]
+ 0x00007f91ba073800 JavaThread "C2 CompilerThread1" daemon [_thread_blocked, id=22019, stack(0x0000700005700000,0x0000700005800000)]
+ 0x00007f91bb009000 JavaThread "C2 CompilerThread0" daemon [_thread_blocked, id=21763, stack(0x00007000055fd000,0x00007000056fd000)]
+ 0x00007f91c100a000 JavaThread "Monitor Ctrl-Break" daemon [_thread_in_native, id=16131, stack(0x00007000054fa000,0x00007000055fa000)]
+ 0x00007f91bb83c000 JavaThread "Signal Dispatcher" daemon [_thread_blocked, id=16899, stack(0x00007000053f7000,0x00007000054f7000)]
+ 0x00007f91bb838000 JavaThread "Finalizer" daemon [_thread_blocked, id=14083, stack(0x00007000051ee000,0x00007000052ee000)]
+ 0x00007f91ba028800 JavaThread "Reference Handler" daemon [_thread_blocked, id=13571, stack(0x00007000050eb000,0x00007000051eb000)]
+=>0x00007f91bd009000 JavaThread "main" [_thread_in_native, id=3843, stack(0x00007000041be000,0x00007000042be000)]
+
+Other Threads:
+ 0x00007f91bb835800 VMThread [stack: 0x0000700004fe8000,0x00007000050e8000] [id=13315]
+ 0x00007f91bb02e800 WatcherThread [stack: 0x0000700006324000,0x0000700006424000] [id=24067]
+
+VM state:not at safepoint (normal execution)
+
+VM Mutex/Monitor currently owned by a thread: None
+
+heap address: 0x00000006c0000000, size: 4096 MB, Compressed Oops mode: Zero based, Oop shift amount: 3
+Narrow klass base: 0x0000000000000000, Narrow klass shift: 3
+Compressed class space size: 1073741824 Address: 0x00000007c0000000
+
+Heap:
+ PSYoungGen total 76288K, used 15740K [0x000000076ab00000, 0x0000000770000000, 0x00000007c0000000)
+ eden space 65536K, 24% used [0x000000076ab00000,0x000000076ba5f020,0x000000076eb00000)
+ from space 10752K, 0% used [0x000000076f580000,0x000000076f580000,0x0000000770000000)
+ to space 10752K, 0% used [0x000000076eb00000,0x000000076eb00000,0x000000076f580000)
+ ParOldGen total 175104K, used 0K [0x00000006c0000000, 0x00000006cab00000, 0x000000076ab00000)
+ object space 175104K, 0% used [0x00000006c0000000,0x00000006c0000000,0x00000006cab00000)
+ Metaspace used 5824K, capacity 5954K, committed 6144K, reserved 1056768K
+ class space used 644K, capacity 729K, committed 768K, reserved 1048576K
+
+Card table byte_map: [0x000000011560e000,0x0000000115e0f000] byte_map_base: 0x000000011200e000
+
+Marking Bits: (ParMarkBitMap*) 0x0000000114f29768
+ Begin Bits: [0x00000001269cd000, 0x000000012a9cd000)
+ End Bits: [0x000000012a9cd000, 0x000000012e9cd000)
+
+Polling page: 0x000000010c2b5000
+
+CodeCache: size=245760Kb used=3732Kb max_used=3743Kb free=242027Kb
+ bounds [0x00000001179cd000, 0x0000000117d7d000, 0x00000001269cd000]
+ total_blobs=732 nmethods=426 adapters=217
+ compilation: enabled
+
+Compilation events (10 events):
+Event: 0.721 Thread 0x00007f91b9809000 nmethod 423 0x0000000117d68f90 code [0x0000000117d69100, 0x0000000117d692c8]
+Event: 0.721 Thread 0x00007f91bc84b000 nmethod 421 0x0000000117d693d0 code [0x0000000117d695c0, 0x0000000117d6a118]
+Event: 0.721 Thread 0x00007f91ba086000 nmethod 420 0x0000000117d6a750 code [0x0000000117d6a980, 0x0000000117d6b7f8]
+Event: 0.722 Thread 0x00007f91b9809000 425 3 java.nio.Buffer::remaining (10 bytes)
+Event: 0.722 Thread 0x00007f91bc84b000 424 3 java.lang.Integer::valueOf (32 bytes)
+Event: 0.722 Thread 0x00007f91b9809000 nmethod 425 0x0000000117d6c290 code [0x0000000117d6c3e0, 0x0000000117d6c530]
+Event: 0.722 Thread 0x00007f91bc84b000 nmethod 424 0x0000000117d6c590 code [0x0000000117d6c720, 0x0000000117d6ca70]
+Event: 0.724 Thread 0x00007f91bc80d000 nmethod 419 0x0000000117d6cc10 code [0x0000000117d6d0c0, 0x0000000117d70208]
+Event: 0.727 Thread 0x00007f91bd04f800 426 4 java.util.concurrent.ConcurrentHashMap::setTabAt (19 bytes)
+Event: 0.727 Thread 0x00007f91bd04f800 nmethod 426 0x0000000117d75250 code [0x0000000117d75380, 0x0000000117d753f8]
+
+GC Heap History (0 events):
+No events
+
+Deoptimization events (0 events):
+No events
+
+Classes redefined (0 events):
+No events
+
+Internal exceptions (10 events):
+Event: 0.043 Thread 0x00007f91bd009000 Exception (0x000000076ab07cc0) thrown at [/jenkins/workspace/8-2-build-macosx-x86_64/jdk8u271/605/hotspot/src/s
+Event: 0.043 Thread 0x00007f91bd009000 Exception (0x000000076ab07fa8) thrown at [/jenkins/workspace/8-2-build-macosx-x86_64/jdk8u271/605/hotspot/src/share/vm/prims/jni.
+Event: 0.192 Thread 0x00007f91bd009000 Exception (0x000000076b32ef30) thrown at [/jenkins/workspace/8-2-build-macosx-x86_64/jdk8u271/605/hotspot/src/share/vm/prims/jvm.cpp, line 1512]
+Event: 0.192 Thread 0x00007f91bd009000 Exception (0x000000076b32f140) thrown at [/jenkins/workspace/8-2-build-macosx-x86_64/jdk8u271/605/hotspot/src/share/vm/prims/jvm.cpp, line 1512]
+Event: 0.193 Thread 0x00007f91bd009000 Exception (0x000000076b332658) thrown at [/jenkins/workspace/8-2-build-macosx-x86_64/jdk8u271/605/hotspot/src/share/vm/prims/jvm.cpp, line 1512]
+Event: 0.193 Thread 0x00007f91bd009000 Exception (0x000000076b332868) thrown at [/jenkins/workspace/8-2-build-macosx-x86_64/jdk8u271/605/hotspot/src/share/vm/prims/jvm.cpp, line 1512]
+Event: 0.241 Thread 0x00007f91bd009000 Exception (0x000000076b470bb0) thrown at [/jenkins/workspace/8-2-build-macosx-x86_64/jdk8u271/605/hotspot/src/share/vm/prims/methodHandles.cpp, line 1169]
+Event: 0.243 Thread 0x00007f91bd009000 Exception (0x000000076b47ee48) thrown at [/jenkins/workspace/8-2-build-macosx-x86_64/jdk8u271/605/hotspot/src/share/vm/prims/methodHandles.cpp, line 1169]
+Event: 0.633 Thread 0x00007f91bd009000 Exception (0x000000076b524078) thrown at [/jenkins/workspace/8-2-build-macosx-x86_64/jdk8u271/605/hotspot/src/share/vm/prims/jni.cpp, line 710]
+Event: 0.633 Thread 0x00007f91bd009000 Exception (0x000000076b524c00) thrown at [/jenkins/workspace/8-2-build-macosx-x86_64/jdk8u271/605/hotspot/src/share/vm/prims/jni.cpp, line 710]
+
+Events (10 events):
+Event: 0.723 loading class org/lwjgl/opengl/ContextImplementation
+Event: 0.723 loading class org/lwjgl/opengl/ContextImplementation done
+Event: 0.724 loading class org/lwjgl/opengl/MacOSXContextImplementation
+Event: 0.724 loading class org/lwjgl/opengl/MacOSXContextImplementation done
+Event: 0.725 loading class org/lwjgl/opengl/GLContext
+Event: 0.725 loading class org/lwjgl/opengl/GLContext done
+Event: 0.726 loading class java/lang/NumberFormatException
+Event: 0.726 loading class java/lang/NumberFormatException done
+Event: 0.726 loading class org/lwjgl/opengl/GLContext$CapabilitiesCacheEntry
+Event: 0.726 loading class org/lwjgl/opengl/GLContext$CapabilitiesCacheEntry done
+
+
+Dynamic libraries:
+0x00007fff34f1d000 /System/Library/Frameworks/Cocoa.framework/Versions/A/Cocoa
+0x00007fff22262000 /System/Library/Frameworks/Security.framework/Versions/A/Security
+0x00007fff33125000 /System/Library/Frameworks/ApplicationServices.framework/Versions/A/ApplicationServices
+0x00007fff2a4e4000 /usr/lib/libz.1.dylib
+0x00007fff2a5ac000 /usr/lib/libSystem.B.dylib
+0x00007fff2044b000 /System/Library/Frameworks/CoreFoundation.framework/Versions/A/CoreFoundation
+0x00007fff211fa000 /System/Library/Frameworks/Foundation.framework/Versions/C/Foundation
+0x00007fff2026b000 /usr/lib/libobjc.A.dylib
+0x00007fff22c93000 /System/Library/Frameworks/AppKit.framework/Versions/C/AppKit
+0x00007fff25b57000 /System/Library/Frameworks/CoreData.framework/Versions/A/CoreData
+0x00007fff239df000 /System/Library/PrivateFrameworks/UIFoundation.framework/Versions/A/UIFoundation
+0x00007fff2fbdf000 /System/Library/PrivateFrameworks/RemoteViewServices.framework/Versions/A/RemoteViewServices
+0x00007fff289f0000 /System/Library/PrivateFrameworks/XCTTargetBootstrap.framework/Versions/A/XCTTargetBootstrap
+0x00007fff2b6d5000 /usr/lib/libspindump.dylib
+0x00007fff23c2e000 /System/Library/Frameworks/UniformTypeIdentifiers.framework/Versions/A/UniformTypeIdentifiers
+0x00007fff271f4000 /usr/lib/libapp_launch_measurement.dylib
+0x00007fff271f7000 /System/Library/PrivateFrameworks/CoreAutoLayout.framework/Versions/A/CoreAutoLayout
+0x00007fff28357000 /System/Library/Frameworks/Metal.framework/Versions/A/Metal
+0x00007fff2904d000 /usr/lib/liblangid.dylib
+0x00007fff289f4000 /System/Library/PrivateFrameworks/CoreSVG.framework/Versions/A/CoreSVG
+0x00007fff24c6e000 /System/Library/PrivateFrameworks/SkyLight.framework/Versions/A/SkyLight
+0x00007fff24fd4000 /System/Library/Frameworks/CoreGraphics.framework/Versions/A/CoreGraphics
+0x00007fff30106000 /System/Library/Frameworks/Accelerate.framework/Versions/A/Accelerate
+0x00007fff2b113000 /System/Library/PrivateFrameworks/IconServices.framework/Versions/A/IconServices
+0x00007fff2833b000 /System/Library/Frameworks/IOSurface.framework/Versions/A/IOSurface
+0x00007fff264df000 /usr/lib/libDiagnosticMessagesClient.dylib
+0x00007fff289dc000 /System/Library/PrivateFrameworks/DFRFoundation.framework/Versions/A/DFRFoundation
+0x00007fff225ba000 /usr/lib/libicucore.A.dylib
+0x00007fff2cc1e000 /System/Library/Frameworks/AudioToolbox.framework/Versions/A/AudioToolbox
+0x00007fff2bea6000 /System/Library/PrivateFrameworks/DataDetectorsCore.framework/Versions/A/DataDetectorsCore
+0x00007fff24be1000 /usr/lib/libMobileGestalt.dylib
+0x00007fff286e0000 /System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/HIToolbox.framework/Versions/A/HIToolbox
+0x00007fff26c39000 /System/Library/Frameworks/QuartzCore.framework/Versions/A/QuartzCore
+0x00007fff2fc17000 /System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/SpeechRecognition.framework/Versions/A/SpeechRecognition
+0x00007fff26f59000 /System/Library/PrivateFrameworks/CoreUI.framework/Versions/A/CoreUI
+0x00007fff21bd0000 /System/Library/Frameworks/CoreAudio.framework/Versions/A/CoreAudio
+0x00007fff265ca000 /System/Library/Frameworks/DiskArbitration.framework/Versions/A/DiskArbitration
+0x00007fff2baa3000 /System/Library/PrivateFrameworks/MultitouchSupport.framework/Versions/A/MultitouchSupport
+0x00007fff2be9d000 /System/Library/PrivateFrameworks/InternationalSupport.framework/Versions/A/InternationalSupport
+0x00007fff24be0000 /usr/lib/libenergytrace.dylib
+0x00007fff22b8a000 /System/Library/Frameworks/IOKit.framework/Versions/A/IOKit
+0x00007fff2ff4a000 /System/Library/Frameworks/CoreServices.framework/Versions/A/CoreServices
+0x00007fff27186000 /System/Library/PrivateFrameworks/PerformanceAnalysis.framework/Versions/A/PerformanceAnalysis
+0x00007fff6bab5000 /System/Library/Frameworks/OpenGL.framework/Versions/A/OpenGL
+0x00007fff2bf21000 /System/Library/PrivateFrameworks/UserActivity.framework/Versions/A/UserActivity
+0x00007fff2565e000 /System/Library/Frameworks/ColorSync.framework/Versions/A/ColorSync
+0x00007fff28c5b000 /System/Library/Frameworks/CoreImage.framework/Versions/A/CoreImage
+0x00007fff219ea000 /System/Library/Frameworks/CoreText.framework/Versions/A/CoreText
+0x00007fff28a1e000 /System/Library/Frameworks/ImageIO.framework/Versions/A/ImageIO
+0x00007fff2a5b2000 /System/Library/PrivateFrameworks/SoftLinking.framework/Versions/A/SoftLinking
+0x00007fff2723f000 /usr/lib/libxml2.2.dylib
+0x00007fff20331000 /usr/lib/libc++.1.dylib
+0x00007fff2a823000 /usr/lib/libcompression.dylib
+0x00007fff2bdcf000 /System/Library/PrivateFrameworks/TextureIO.framework/Versions/A/TextureIO
+0x00007fff2ae52000 /usr/lib/libate.dylib
+0x00007fff2a5a6000 /usr/lib/system/libcache.dylib
+0x00007fff2a562000 /usr/lib/system/libcommonCrypto.dylib
+0x00007fff2a58c000 /usr/lib/system/libcompiler_rt.dylib
+0x00007fff2a581000 /usr/lib/system/libcopyfile.dylib
+0x00007fff2015b000 /usr/lib/system/libcorecrypto.dylib
+0x00007fff20226000 /usr/lib/system/libdispatch.dylib
+0x00007fff203d9000 /usr/lib/system/libdyld.dylib
+0x00007fff2a59d000 /usr/lib/system/libkeymgr.dylib
+0x00007fff2d9b5000 /usr/lib/system/liblaunch.dylib
+0x00007fff2a540000 /usr/lib/system/libmacho.dylib
+0x00007fff29d38000 /usr/lib/system/libquarantine.dylib
+0x00007fff2a59a000 /usr/lib/system/libremovefile.dylib
+0x00007fff24c3e000 /usr/lib/system/libsystem_asl.dylib
+0x00007fff2010b000 /usr/lib/system/libsystem_blocks.dylib
+0x00007fff202a8000 /usr/lib/system/libsystem_c.dylib
+0x00007fff2a594000 /usr/lib/system/libsystem_collections.dylib
+0x00007fff2903e000 /usr/lib/system/libsystem_configuration.dylib
+0x00007fff2832a000 /usr/lib/system/libsystem_containermanager.dylib
+0x00007fff2a2e3000 /usr/lib/system/libsystem_coreservices.dylib
+0x00007fff2281a000 /usr/lib/system/libsystem_darwin.dylib
+0x00007fff2a59e000 /usr/lib/system/libsystem_dnssd.dylib
+0x00007fff202a5000 /usr/lib/system/libsystem_featureflags.dylib
+0x00007fff2041f000 /usr/lib/system/libsystem_info.dylib
+0x00007fff2a4f7000 /usr/lib/system/libsystem_m.dylib
+0x00007fff201f9000 /usr/lib/system/libsystem_malloc.dylib
+0x00007fff24bd1000 /usr/lib/system/libsystem_networkextension.dylib
+0x00007fff22c39000 /usr/lib/system/libsystem_notify.dylib
+0x00007fff2fe4c000 /usr/lib/system/libsystem_product_info_filter.dylib
+0x00007fff29042000 /usr/lib/system/libsystem_sandbox.dylib
+0x00007fff2a597000 /usr/lib/system/libsystem_secinit.dylib
+0x00007fff2039d000 /usr/lib/system/libsystem_kernel.dylib
+0x00007fff20415000 /usr/lib/system/libsystem_platform.dylib
+0x00007fff203cd000 /usr/lib/system/libsystem_pthread.dylib
+0x00007fff2631b000 /usr/lib/system/libsystem_symptoms.dylib
+0x00007fff20143000 /usr/lib/system/libsystem_trace.dylib
+0x00007fff2a56e000 /usr/lib/system/libunwind.dylib
+0x00007fff2010d000 /usr/lib/system/libxpc.dylib
+0x00007fff20387000 /usr/lib/libc++abi.dylib
+0x00007fff2a579000 /usr/lib/liboah.dylib
+0x00007fff2ac37000 /usr/lib/liblzma.5.dylib
+0x00007fff20f0e000 /System/Library/Frameworks/SystemConfiguration.framework/Versions/A/SystemConfiguration
+0x00007fff2a5ae000 /usr/lib/libfakelink.dylib
+0x00007fff24732000 /System/Library/Frameworks/CFNetwork.framework/Versions/A/CFNetwork
+0x00007fff2a6ee000 /usr/lib/libarchive.2.dylib
+0x00007fff20f8c000 /usr/lib/libCRFSuite.dylib
+0x00007fff29d5f000 /usr/lib/libbsm.0.dylib
+0x00007fff240ab000 /usr/lib/libnetwork.dylib
+0x00007fff2a5b3000 /usr/lib/libpcap.A.dylib
+0x00007fff26314000 /usr/lib/libdns_services.dylib
+0x00007fff2ac50000 /usr/lib/libcoretls_cfhelpers.dylib
+0x00007fff2a7ed000 /usr/lib/libapple_nghttp2.dylib
+0x00007fff2a546000 /usr/lib/system/libkxld.dylib
+0x00007fff25f8d000 /usr/lib/libsqlite3.dylib
+0x00007fff2a2c6000 /System/Library/PrivateFrameworks/AppleFSCompression.framework/Versions/A/AppleFSCompression
+0x00007fff29d47000 /usr/lib/libcoretls.dylib
+0x00007fff2a81e000 /usr/lib/libpam.2.dylib
+0x00007fff2ad4e000 /usr/lib/libxar.1.dylib
+0x00007fff29049000 /System/Library/PrivateFrameworks/AppleSystemInfo.framework/Versions/A/AppleSystemInfo
+0x00007fff29989000 /System/Library/PrivateFrameworks/IOMobileFramebuffer.framework/Versions/A/IOMobileFramebuffer
+0x00007fff2a2d6000 /usr/lib/libbz2.1.0.dylib
+0x00007fff2a5eb000 /usr/lib/libiconv.2.dylib
+0x00007fff2a53f000 /usr/lib/libcharset.1.dylib
+0x00007fff271c2000 /System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/FSEvents.framework/Versions/A/FSEvents
+0x00007fff22824000 /System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/CarbonCore.framework/Versions/A/CarbonCore
+0x00007fff2652f000 /System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/Metadata.framework/Versions/A/Metadata
+0x00007fff2a2e8000 /System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/OSServices.framework/Versions/A/OSServices
+0x00007fff2a760000 /System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/SearchKit.framework/Versions/A/SearchKit
+0x00007fff2629f000 /System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/AE.framework/Versions/A/AE
+0x00007fff208e9000 /System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/LaunchServices.framework/Versions/A/LaunchServices
+0x00007fff2abe7000 /System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/DictionaryServices.framework/Versions/A/DictionaryServices
+0x00007fff271cf000 /System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/SharedFileList.framework/Versions/A/SharedFileList
+0x00007fff29d3b000 /usr/lib/libCheckFix.dylib
+0x00007fff24c55000 /System/Library/PrivateFrameworks/TCC.framework/Versions/A/TCC
+0x00007fff2904f000 /System/Library/PrivateFrameworks/CoreNLP.framework/Versions/A/CoreNLP
+0x00007fff264e2000 /System/Library/PrivateFrameworks/MetadataUtilities.framework/Versions/A/MetadataUtilities
+0x00007fff20fc1000 /usr/lib/libmecabra.dylib
+0x00007fff2a045000 /System/Library/Frameworks/MLCompute.framework/Versions/A/MLCompute
+0x00007fff29d70000 /usr/lib/libmecab.dylib
+0x00007fff29dba000 /usr/lib/libgermantok.dylib
+0x00007fff2a7c8000 /usr/lib/libThaiTokenizer.dylib
+0x00007fff2ad89000 /usr/lib/libChineseTokenizer.dylib
+0x00007fff2a81c000 /System/Library/Frameworks/MetalPerformanceShaders.framework/Versions/A/MetalPerformanceShaders
+0x00007fff265d1000 /System/Library/Frameworks/Accelerate.framework/Versions/A/Frameworks/vImage.framework/Versions/A/vImage
+0x00007fff2ff24000 /System/Library/Frameworks/Accelerate.framework/Versions/A/Frameworks/vecLib.framework/Versions/A/vecLib
+0x00007fff2ad94000 /System/Library/Frameworks/Accelerate.framework/Versions/A/Frameworks/vecLib.framework/Versions/A/libvMisc.dylib
+0x00007fff297a4000 /System/Library/Frameworks/Accelerate.framework/Versions/A/Frameworks/vecLib.framework/Versions/A/libvDSP.dylib
+0x00007fff20bf4000 /System/Library/Frameworks/Accelerate.framework/Versions/A/Frameworks/vecLib.framework/Versions/A/libBLAS.dylib
+0x00007fff2a849000 /System/Library/Frameworks/Accelerate.framework/Versions/A/Frameworks/vecLib.framework/Versions/A/libLAPACK.dylib
+0x00007fff29dc0000 /System/Library/Frameworks/Accelerate.framework/Versions/A/Frameworks/vecLib.framework/Versions/A/libLinearAlgebra.dylib
+0x00007fff2a805000 /System/Library/Frameworks/Accelerate.framework/Versions/A/Frameworks/vecLib.framework/Versions/A/libSparseBLAS.dylib
+0x00007fff2a843000 /System/Library/Frameworks/Accelerate.framework/Versions/A/Frameworks/vecLib.framework/Versions/A/libQuadrature.dylib
+0x00007fff290fb000 /System/Library/Frameworks/Accelerate.framework/Versions/A/Frameworks/vecLib.framework/Versions/A/libBNNS.dylib
+0x00007fff20e9f000 /System/Library/Frameworks/Accelerate.framework/Versions/A/Frameworks/vecLib.framework/Versions/A/libSparse.dylib
+0x00007fff28fd7000 /System/Library/Frameworks/MetalPerformanceShaders.framework/Versions/A/Frameworks/MPSCore.framework/Versions/A/MPSCore
+0x00007fff2a235000 /System/Library/Frameworks/MetalPerformanceShaders.framework/Versions/A/Frameworks/MPSImage.framework/Versions/A/MPSImage
+0x00007fff29dd6000 /System/Library/Frameworks/MetalPerformanceShaders.framework/Versions/A/Frameworks/MPSNeuralNetwork.framework/Versions/A/MPSNeuralNetwork
+0x00007fff2a1a7000 /System/Library/Frameworks/MetalPerformanceShaders.framework/Versions/A/Frameworks/MPSMatrix.framework/Versions/A/MPSMatrix
+0x00007fff29ff5000 /System/Library/Frameworks/MetalPerformanceShaders.framework/Versions/A/Frameworks/MPSRayIntersector.framework/Versions/A/MPSRayIntersector
+0x00007fff2a1de000 /System/Library/Frameworks/MetalPerformanceShaders.framework/Versions/A/Frameworks/MPSNDArray.framework/Versions/A/MPSNDArray
+0x00007fff20b1f000 /System/Library/PrivateFrameworks/MetalTools.framework/Versions/A/MetalTools
+0x00007fff29047000 /System/Library/PrivateFrameworks/AggregateDictionary.framework/Versions/A/AggregateDictionary
+0x00007fff264af000 /System/Library/PrivateFrameworks/CoreAnalytics.framework/Versions/A/CoreAnalytics
+0x00007fff2a7ca000 /System/Library/PrivateFrameworks/AppleSauce.framework/Versions/A/AppleSauce
+0x00007fff2834d000 /System/Library/PrivateFrameworks/IOAccelerator.framework/Versions/A/IOAccelerator
+0x00007fff6baa9000 /System/Library/Frameworks/OpenGL.framework/Versions/A/Libraries/libCoreFSCache.dylib
+0x00007fff21559000 /System/Library/PrivateFrameworks/LanguageModeling.framework/Versions/A/LanguageModeling
+0x00007fff29977000 /System/Library/PrivateFrameworks/CoreEmoji.framework/Versions/A/CoreEmoji
+0x00007fff290f4000 /System/Library/PrivateFrameworks/LinguisticData.framework/Versions/A/LinguisticData
+0x00007fff20e51000 /System/Library/PrivateFrameworks/Lexicon.framework/Versions/A/Lexicon
+0x00007fff2a6dc000 /usr/lib/libcmph.dylib
+0x00007fff271a2000 /System/Library/Frameworks/OpenDirectory.framework/Versions/A/Frameworks/CFOpenDirectory.framework/Versions/A/CFOpenDirectory
+0x00007fff27192000 /System/Library/Frameworks/OpenDirectory.framework/Versions/A/OpenDirectory
+0x00007fff2ac52000 /System/Library/PrivateFrameworks/APFS.framework/Versions/A/APFS
+0x00007fff29c9d000 /System/Library/Frameworks/SecurityFoundation.framework/Versions/A/SecurityFoundation
+0x00007fff2ad5c000 /usr/lib/libutil.dylib
+0x00007fff22b4f000 /System/Library/PrivateFrameworks/CoreServicesStore.framework/Versions/A/CoreServicesStore
+0x00007fff29d33000 /System/Library/Frameworks/ServiceManagement.framework/Versions/A/ServiceManagement
+0x00007fff2ad60000 /usr/lib/libxslt.1.dylib
+0x00007fff29d29000 /System/Library/PrivateFrameworks/BackgroundTaskManagement.framework/Versions/A/BackgroundTaskManagement
+0x00007fff2bd19000 /System/Library/Frameworks/ImageIO.framework/Versions/A/Resources/libRadiance.dylib
+0x00007fff2bd23000 /System/Library/Frameworks/ImageIO.framework/Versions/A/Resources/libJPEG.dylib
+0x00007fff2bc6d000 /System/Library/Frameworks/ImageIO.framework/Versions/A/Resources/libPng.dylib
+0x00007fff2bc94000 /System/Library/Frameworks/ImageIO.framework/Versions/A/Resources/libTIFF.dylib
+0x00007fff2bd78000 /System/Library/Frameworks/ImageIO.framework/Versions/A/Resources/libGIF.dylib
+0x00007fff2b9bf000 /System/Library/Frameworks/ImageIO.framework/Versions/A/Resources/libJP2.dylib
+0x00007fff2b0db000 /usr/lib/libexpat.1.dylib
+0x00007fff2b975000 /System/Library/PrivateFrameworks/AppleJPEG.framework/Versions/A/AppleJPEG
+0x00007fff28583000 /System/Library/PrivateFrameworks/FontServices.framework/libFontParser.dylib
+0x00007fff26256000 /System/Library/PrivateFrameworks/RunningBoardServices.framework/Versions/A/RunningBoardServices
+0x00007fff2ba9f000 /System/Library/PrivateFrameworks/WatchdogClient.framework/Versions/A/WatchdogClient
+0x00007fff21642000 /System/Library/Frameworks/CoreDisplay.framework/Versions/A/CoreDisplay
+0x00007fff28498000 /System/Library/Frameworks/CoreMedia.framework/Versions/A/CoreMedia
+0x00007fff27322000 /System/Library/Frameworks/CoreVideo.framework/Versions/A/CoreVideo
+0x00007fff2bada000 /System/Library/Frameworks/VideoToolbox.framework/Versions/A/VideoToolbox
+0x00007fff261d6000 /System/Library/PrivateFrameworks/BaseBoard.framework/Versions/A/BaseBoard
+0x00007fff2b21f000 /System/Library/PrivateFrameworks/PersistentConnection.framework/Versions/A/PersistentConnection
+0x00007fff25f77000 /System/Library/PrivateFrameworks/ProtocolBuffer.framework/Versions/A/ProtocolBuffer
+0x00007fff261be000 /System/Library/PrivateFrameworks/CommonUtilities.framework/Versions/A/CommonUtilities
+0x00007fff2b938000 /System/Library/PrivateFrameworks/Bom.framework/Versions/A/Bom
+0x00007fff2bd11000 /System/Library/PrivateFrameworks/GPUWrangler.framework/Versions/A/GPUWrangler
+0x00007fff2bcf4000 /System/Library/PrivateFrameworks/IOPresentment.framework/Versions/A/IOPresentment
+0x00007fff2bd1d000 /System/Library/PrivateFrameworks/DSExternalDisplay.framework/Versions/A/DSExternalDisplay
+0x00007fff2bd7d000 /System/Library/PrivateFrameworks/CMCaptureCore.framework/Versions/A/CMCaptureCore
+0x00007fff2b6bb000 /System/Library/PrivateFrameworks/AppServerSupport.framework/Versions/A/AppServerSupport
+0x00007fff2d758000 /System/Library/PrivateFrameworks/perfdata.framework/Versions/A/perfdata
+0x00007fff29c8c000 /System/Library/PrivateFrameworks/AssertionServices.framework/Versions/A/AssertionServices
+0x00007fff21779000 /System/Library/PrivateFrameworks/AudioToolboxCore.framework/Versions/A/AudioToolboxCore
+0x00007fff2847b000 /System/Library/PrivateFrameworks/caulk.framework/Versions/A/caulk
+0x00007fff3cc04000 /System/Library/PrivateFrameworks/SystemPolicy.framework/Versions/A/SystemPolicy
+0x00007fff2aeea000 /usr/lib/libIOReport.dylib
+0x00007fff2cf94000 /usr/lib/libSMC.dylib
+0x00007fff2bc39000 /usr/lib/libAudioToolboxUtility.dylib
+0x00007fff3d561000 /usr/lib/libmis.dylib
+0x00007fff6bb05000 /System/Library/Frameworks/OpenGL.framework/Versions/A/Libraries/libGLU.dylib
+0x00007fff6bac8000 /System/Library/Frameworks/OpenGL.framework/Versions/A/Libraries/libGFXShared.dylib
+0x00007fff6bcd6000 /System/Library/Frameworks/OpenGL.framework/Versions/A/Libraries/libGL.dylib
+0x00007fff6bad1000 /System/Library/Frameworks/OpenGL.framework/Versions/A/Libraries/libGLImage.dylib
+0x00007fff6bac5000 /System/Library/Frameworks/OpenGL.framework/Versions/A/Libraries/libCVMSPluginSupport.dylib
+0x00007fff6bab0000 /System/Library/Frameworks/OpenGL.framework/Versions/A/Libraries/libCoreVMClient.dylib
+0x00007fff6d120000 /System/Library/Frameworks/OpenCL.framework/Versions/A/OpenCL
+0x00007fff2b248000 /System/Library/PrivateFrameworks/GraphVisualizer.framework/Versions/A/GraphVisualizer
+0x00007fff2b257000 /System/Library/PrivateFrameworks/FaceCore.framework/Versions/A/FaceCore
+0x00007fff2b673000 /System/Library/PrivateFrameworks/OTSVG.framework/Versions/A/OTSVG
+0x00007fff26f17000 /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/ATS.framework/Versions/A/Resources/libFontRegistry.dylib
+0x00007fff2b6c2000 /System/Library/PrivateFrameworks/FontServices.framework/libhvf.dylib
+0x00007fff2b087000 /System/Library/PrivateFrameworks/AppleVA.framework/Versions/A/AppleVA
+0x00007fff2cddc000 /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/ATS.framework/Versions/A/ATS
+0x00007fff2d0ef000 /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/ColorSyncLegacy.framework/Versions/A/ColorSyncLegacy
+0x00007fff25755000 /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/HIServices.framework/Versions/A/HIServices
+0x00007fff2d0d4000 /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/LangAnalysis.framework/Versions/A/LangAnalysis
+0x00007fff2bd87000 /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/PrintCore.framework/Versions/A/PrintCore
+0x00007fff2d0f7000 /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/QD.framework/Versions/A/QD
+0x00007fff2cdcc000 /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/SpeechSynthesis.framework/Versions/A/SpeechSynthesis
+0x00007fff2bd48000 /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/ATSUI.framework/Versions/A/ATSUI
+0x00007fff2d074000 /usr/lib/libcups.2.dylib
+0x00007fff2d0e4000 /System/Library/PrivateFrameworks/NetAuth.framework/Versions/A/NetAuth
+0x00007fff2d773000 /System/Library/Frameworks/Kerberos.framework/Versions/A/Kerberos
+0x00007fff2d783000 /System/Library/Frameworks/GSS.framework/Versions/A/GSS
+0x00007fff2ce49000 /usr/lib/libresolv.9.dylib
+0x00007fff2b6d8000 /System/Library/PrivateFrameworks/Heimdal.framework/Versions/A/Heimdal
+0x00007fff3343a000 /System/Library/Frameworks/Kerberos.framework/Versions/A/Libraries/libHeimdalProxy.dylib
+0x00007fff26323000 /System/Library/Frameworks/Network.framework/Versions/A/Network
+0x00007fff2b0f4000 /usr/lib/libheimdal-asn1.dylib
+0x00007fff2d7d4000 /System/Library/PrivateFrameworks/CommonAuth.framework/Versions/A/CommonAuth
+0x00007fff27370000 /System/Library/PrivateFrameworks/login.framework/Versions/A/Frameworks/loginsupport.framework/Versions/A/loginsupport
+0x00007fff2cd53000 /System/Library/PrivateFrameworks/AudioSession.framework/Versions/A/AudioSession
+0x00007fff2cdb9000 /usr/lib/libAudioStatistics.dylib
+0x00007fff2b180000 /System/Library/PrivateFrameworks/MediaExperience.framework/Versions/A/MediaExperience
+0x00007fff2cbec000 /System/Library/PrivateFrameworks/AudioSession.framework/libSessionUtility.dylib
+0x00007fff2d764000 /usr/lib/libperfcheck.dylib
+0x00007fff2d103000 /System/Library/PrivateFrameworks/AudioResourceArbitration.framework/Versions/A/AudioResourceArbitration
+0x00007fff2b0fe000 /System/Library/PrivateFrameworks/IconFoundation.framework/Versions/A/IconFoundation
+0x00007fff2fc07000 /System/Library/PrivateFrameworks/SpeechRecognitionCore.framework/Versions/A/SpeechRecognitionCore
+0x0000000114800000 /Library/Java/JavaVirtualMachines/jdk1.8.0_271.jdk/Contents/Home/jre/lib/server/libjvm.dylib
+0x000000010c271000 /Library/Java/JavaVirtualMachines/jdk1.8.0_271.jdk/Contents/Home/jre/lib/libverify.dylib
+0x000000010c282000 /Library/Java/JavaVirtualMachines/jdk1.8.0_271.jdk/Contents/Home/jre/lib/libjava.dylib
+0x000000010c2b6000 /Library/Java/JavaVirtualMachines/jdk1.8.0_271.jdk/Contents/Home/jre/lib/libinstrument.dylib
+0x000000010c325000 /Library/Java/JavaVirtualMachines/jdk1.8.0_271.jdk/Contents/Home/jre/lib/libzip.dylib
+0x0000000117635000 /Library/Java/JavaVirtualMachines/jdk1.8.0_271.jdk/Contents/Home/jre/lib/libnet.dylib
+0x0000000117654000 /Library/Java/JavaVirtualMachines/jdk1.8.0_271.jdk/Contents/Home/jre/lib/libawt.dylib
+0x00000001176f4000 /Library/Java/JavaVirtualMachines/jdk1.8.0_271.jdk/Contents/Home/jre/lib/libmlib_image.dylib
+0x00007fff6ea55000 /System/Library/Frameworks/JavaNativeFoundation.framework/Versions/A/JavaNativeFoundation
+0x00007fff6ea61000 /System/Library/Frameworks/JavaRuntimeSupport.framework/Versions/A/JavaRuntimeSupport
+0x00007fff3c94e000 /System/Library/Frameworks/Carbon.framework/Versions/A/Carbon
+0x00007fff31a78000 /System/Library/PrivateFrameworks/CoreSymbolication.framework/Versions/A/CoreSymbolication
+0x00007fff363e5000 /System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/CommonPanels.framework/Versions/A/CommonPanels
+0x00007fff32ecf000 /System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/Help.framework/Versions/A/Help
+0x00007fff363e9000 /System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/ImageCapture.framework/Versions/A/ImageCapture
+0x00007fff363b9000 /System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/OpenScripting.framework/Versions/A/OpenScripting
+0x00007fff363e1000 /System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/Ink.framework/Versions/A/Ink
+0x00007fff3c94a000 /System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/Print.framework/Versions/A/Print
+0x00007fff363dd000 /System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/SecurityHI.framework/Versions/A/SecurityHI
+0x00007fff31a3c000 /System/Library/PrivateFrameworks/DebugSymbols.framework/Versions/A/DebugSymbols
+0x00000001177b3000 /Library/Java/JavaVirtualMachines/jdk1.8.0_271.jdk/Contents/Home/jre/lib/libawt_lwawt.dylib
+0x0000000117862000 /Library/Java/JavaVirtualMachines/jdk1.8.0_271.jdk/Contents/Home/jre/lib/libosxapp.dylib
+0x00007fff3bf65000 /System/Library/Frameworks/ExceptionHandling.framework/Versions/A/ExceptionHandling
+0x00007fff22b10000 /System/Library/PrivateFrameworks/CoreServicesInternal.framework/Versions/A/CoreServicesInternal
+0x00007fff30f8e000 /System/Library/Frameworks/FileProvider.framework/Versions/A/FileProvider
+0x00007fff26141000 /System/Library/Frameworks/Accounts.framework/Versions/A/Accounts
+0x00007fff310de000 /System/Library/PrivateFrameworks/GenerationalStorage.framework/Versions/A/GenerationalStorage
+0x00007fff309ae000 /System/Library/PrivateFrameworks/SymptomDiagnosticReporter.framework/Versions/A/SymptomDiagnosticReporter
+0x00007fff23c41000 /System/Library/PrivateFrameworks/DesktopServicesPriv.framework/Versions/A/DesktopServicesPriv
+0x00007fff22c45000 /usr/lib/libsandbox.1.dylib
+0x00007fff2739b000 /System/Library/PrivateFrameworks/UserManagement.framework/Versions/A/UserManagement
+0x00007fff29c69000 /System/Library/PrivateFrameworks/MobileKeyBag.framework/Versions/A/MobileKeyBag
+0x00007fff344bd000 /System/Library/PrivateFrameworks/ChunkingLibrary.framework/Versions/A/ChunkingLibrary
+0x00007fff2e197000 /System/Library/PrivateFrameworks/Sharing.framework/Versions/A/Sharing
+0x00007fff32a3c000 /System/Library/PrivateFrameworks/Apple80211.framework/Versions/A/Apple80211
+0x00007fff2a316000 /System/Library/PrivateFrameworks/AuthKit.framework/Versions/A/AuthKit
+0x00007fff29a67000 /System/Library/PrivateFrameworks/CoreUtils.framework/Versions/A/CoreUtils
+0x00007fff29994000 /System/Library/Frameworks/CoreWLAN.framework/Versions/A/CoreWLAN
+0x00007fff2e2e3000 /System/Library/Frameworks/IOBluetooth.framework/Versions/A/IOBluetooth
+0x00007fff32aa0000 /System/Library/PrivateFrameworks/CoreWiFi.framework/Versions/A/CoreWiFi
+0x00007fff2d85a000 /System/Library/PrivateFrameworks/CorePhoneNumbers.framework/Versions/A/CorePhoneNumbers
+0x00007fff30ab5000 /System/Library/PrivateFrameworks/DiskManagement.framework/Versions/A/DiskManagement
+0x00007fff309cb000 /System/Library/PrivateFrameworks/AppleIDAuthSupport.framework/Versions/A/AppleIDAuthSupport
+0x00007fff2d83a000 /System/Library/PrivateFrameworks/KeychainCircle.framework/Versions/A/KeychainCircle
+0x00007fff30a81000 /System/Library/PrivateFrameworks/MediaKit.framework/Versions/A/MediaKit
+0x00007fff309d8000 /System/Library/Frameworks/DiscRecording.framework/Versions/A/DiscRecording
+0x00007fff2affb000 /usr/lib/libCoreStorage.dylib
+0x00007fff32edb000 /usr/lib/libcsfde.dylib
+0x00007fff2e41e000 /System/Library/PrivateFrameworks/ProtectedCloudStorage.framework/Versions/A/ProtectedCloudStorage
+0x00007fff32ed3000 /System/Library/PrivateFrameworks/EFILogin.framework/Versions/A/EFILogin
+0x00007fff334ed000 /System/Library/Frameworks/AudioUnit.framework/Versions/A/AudioUnit
+0x00007fff30948000 /System/Library/Frameworks/CoreBluetooth.framework/Versions/A/CoreBluetooth
+0x00007fff2aff3000 /usr/lib/libMatch.1.dylib
+0x00007fff437d5000 /System/Library/CoreServices/RawCamera.bundle/Contents/MacOS/RawCamera
+0x00007fff2d7e5000 /System/Library/PrivateFrameworks/MobileAsset.framework/Versions/A/MobileAsset
+0x00007fff33511000 /System/Library/PrivateFrameworks/StreamingZip.framework/Versions/A/StreamingZip
+0x00007fff2bf7f000 /System/Library/Frameworks/MediaToolbox.framework/Versions/A/MediaToolbox
+0x00007fff30f60000 /System/Library/PrivateFrameworks/CoreAVCHD.framework/Versions/A/CoreAVCHD
+0x00007fff30147000 /System/Library/Frameworks/MediaAccessibility.framework/Versions/A/MediaAccessibility
+0x00007fff30f5c000 /System/Library/PrivateFrameworks/Mangrove.framework/Versions/A/Mangrove
+0x00007fff30153000 /System/Library/PrivateFrameworks/AlgosScoreFramework.framework/Versions/A/AlgosScoreFramework
+0x00007fff3194a000 /System/Library/PrivateFrameworks/AppleVPA.framework/Versions/A/AppleVPA
+0x00007fff30ba1000 /System/Library/PrivateFrameworks/CoreAUC.framework/Versions/A/CoreAUC
+0x00007fff41228000 /System/Library/Frameworks/Accelerate.framework/Versions/A/Frameworks/vImage.framework/Versions/A/Libraries/libCGInterfaces.dylib
+0x0000000133271000 /usr/lib/libobjc-trampolines.dylib
+0x00007fff2709a000 /System/Library/PrivateFrameworks/ViewBridge.framework/Versions/A/ViewBridge
+0x00007fff2b799000 /System/Library/PrivateFrameworks/login.framework/Versions/A/login
+0x0000000135afc000 /Library/Java/JavaVirtualMachines/jdk1.8.0_271.jdk/Contents/Home/jre/lib/libfontmanager.dylib
+0x0000000135b5d000 /Users/yuyangwang/Desktop/Programs_In_BDIC/Stage 3 Semester 1/Computer Graphic/project1/liblwjgl.dylib
+0x00000001340af000 /Library/Java/JavaVirtualMachines/jdk1.8.0_271.jdk/Contents/Home/jre/lib/libjawt.dylib
+0x00007fff6bce1000 /System/Library/Frameworks/OpenGL.framework/Versions/A/Resources/GLEngine.bundle/GLEngine
+0x00007fff6bb42000 /System/Library/Frameworks/OpenGL.framework/Versions/A/Libraries/libGLProgrammability.dylib
+0x00007fff5eec5000 /System/Library/Extensions/AppleIntelKBLGraphicsGLDriver.bundle/Contents/MacOS/AppleIntelKBLGraphicsGLDriver
+0x00007fff4631b000 /System/Library/PrivateFrameworks/GPUSupport.framework/Versions/A/Libraries/libGPUSupportMercury.dylib
+0x0000000135bdf000 /System/Library/Extensions/AMDRadeonX4000GLDriver.bundle/Contents/MacOS/AMDRadeonX4000GLDriver
+0x00007fff6e022000 /System/Library/Extensions/AMDRadeonX4000GLDriver.bundle/Contents/MacOS/ATIRadeonX4000SCLib.dylib
+0x00007fff5e12d000 /System/Library/Extensions/AMDShared.bundle/Contents/PlugIns/libSC.dylib
+0x00007fff6be5f000 /System/Library/Frameworks/OpenGL.framework/Versions/A/Resources/GLRendererFloat.bundle/GLRendererFloat
+
+VM Arguments:
+jvm_args: -Dvisualvm.id=129610430660085 -javaagent:/Applications/IntelliJ IDEA.app/Contents/lib/idea_rt.jar=49243:/Applications/IntelliJ IDEA.app/Contents/bin -Dfile.encoding=UTF-8
+java_command: main.Main
+java_class_path (initial): /Users/yuyangwang/Desktop/Programs_In_BDIC/Stage 3 Semester 1/Computer Graphic/project1/bin:/Library/Java/JavaVirtualMachines/jdk1.8.0_271.jdk/Contents/Home/jre/lib/charsets.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_271.jdk/Contents/Home/jre/lib/deploy.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_271.jdk/Contents/Home/jre/lib/ext/cldrdata.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_271.jdk/Contents/Home/jre/lib/ext/dnsns.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_271.jdk/Contents/Home/jre/lib/ext/jaccess.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_271.jdk/Contents/Home/jre/lib/ext/jfxrt.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_271.jdk/Contents/Home/jre/lib/ext/localedata.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_271.jdk/Contents/Home/jre/lib/ext/nashorn.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_271.jdk/Contents/Home/jre/lib/ext/sunec.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_271.jdk/Contents/Home/jre/lib/ext/sunjce_provider.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_271.jdk/Contents/Home/jre/lib/ext/sunpkcs11.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_271.jdk/Contents/Home/jre/lib/ext/zipfs.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_271.jdk/Contents/Home/jre/lib/javaws.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_271.jdk/Contents/Home/jre/lib/jce.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_271.jdk/Contents/Home/jre/lib/jfr.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_271.jdk/Contents/Home/jre/lib/jfxswt.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_271.jdk/Contents/Home/jre/lib/jsse.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_271.jdk/Contents/Home/jre/lib/management-agent.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_271.jdk/Contents/Home/jre/lib/plugin.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_271.jdk/Contents/Home/jre/lib/resources.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_271.jdk/Contents/Home/jre/lib/rt.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_271.jdk/Conte
+Launcher Type: SUN_STANDARD
+
+Environment Variables:
+JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk1.8.0_271.jdk/Contents/Home
+PATH=/opt/MonkeyDev/bin:/Users/yuyangwang/opt/anaconda3/bin:/Users/yuyangwang/opt/anaconda3/condabin:/Users/yuyangwang/.autojump/bin:/Users/yuyangwang/bin:/usr/local/bin:/usr/local/sbin:/usr/bin:/bin:/usr/sbin:/sbin:/Applications/VMware Fusion.app/Contents/Public:/Library/TeX/texbin:/usr/local/share/dotnet:/opt/X11/bin:~/.dotnet/tools:/Library/Apple/usr/bin:/Library/Frameworks/Mono.framework/Versions/Current/Commands:/Applications/Wireshark.app/Contents/MacOS:/Users/yuyangwang/flutter/bin
+SHELL=/bin/zsh
+
+Signal Handlers:
+SIGSEGV: [libjvm.dylib+0x5a0dcb], sa_mask[0]=11111111011111110111111111111111, sa_flags=SA_ONSTACK|SA_RESTART|SA_SIGINFO
+SIGBUS: [libjvm.dylib+0x5a0dcb], sa_mask[0]=11111111011111110111111111111111, sa_flags=SA_RESTART|SA_SIGINFO
+SIGFPE: [libjvm.dylib+0x491731], sa_mask[0]=11111111011111110111111111111111, sa_flags=SA_RESTART|SA_SIGINFO
+SIGPIPE: [libjvm.dylib+0x491731], sa_mask[0]=11111111011111110111111111111111, sa_flags=SA_RESTART|SA_SIGINFO
+SIGXFSZ: [libjvm.dylib+0x491731], sa_mask[0]=11111111011111110111111111111111, sa_flags=SA_RESTART|SA_SIGINFO
+SIGILL: [libjvm.dylib+0x491731], sa_mask[0]=11111111011111110111111111111111, sa_flags=SA_RESTART|SA_SIGINFO
+SIGUSR1: SIG_DFL, sa_mask[0]=00000000000000000000000000000000, sa_flags=none
+SIGUSR2: [libjvm.dylib+0x49202a], sa_mask[0]=00100000000000000000000000000000, sa_flags=SA_RESTART|SA_SIGINFO
+SIGHUP: [libjvm.dylib+0x490239], sa_mask[0]=11111111011111110111111111111111, sa_flags=SA_RESTART|SA_SIGINFO
+SIGINT: [libjvm.dylib+0x490239], sa_mask[0]=11111111011111110111111111111111, sa_flags=SA_RESTART|SA_SIGINFO
+SIGTERM: [libjvm.dylib+0x490239], sa_mask[0]=11111111011111110111111111111111, sa_flags=SA_RESTART|SA_SIGINFO
+SIGQUIT: [libjvm.dylib+0x490239], sa_mask[0]=11111111011111110111111111111111, sa_flags=SA_RESTART|SA_SIGINFO
+
+
+--------------- S Y S T E M ---------------
+
+OS:Bsduname:Darwin 20.6.0 Darwin Kernel Version 20.6.0: Wed Jun 23 00:26:31 PDT 2021; root:xnu-7195.141.2~5/RELEASE_X86_64 x86_64
+rlimit: STACK 8192k, CORE 0k, NPROC 2784, NOFILE 10240, AS infinity
+load average:1.78 1.99 2.07
+
+CPU:total 16 (initial active 16) (8 cores per cpu, 2 threads per core) family 6 model 158 stepping 13, cmov, cx8, fxsr, mmx, sse, sse2, sse3, ssse3, sse4.1, sse4.2, popcnt, avx, avx2, aes, clmul, erms, 3dnowpref, lzcnt, ht, tsc, tscinvbit, bmi1, bmi2, adx
+
+Memory: 4k page, physical 16777216k(601056k free)
+
+/proc/meminfo:
+
+
+vm_info: Java HotSpot(TM) 64-Bit Server VM (25.271-b09) for bsd-amd64 JRE (1.8.0_271-b09), built on Sep 16 2020 16:54:38 by "java_re" with gcc 4.2.1 Compatible Apple LLVM 10.0.0 (clang-1000.11.45.5)
+
+time: Sun Nov 7 21:43:40 2021
+timezone: CST
+elapsed time: 0.754520 seconds (0d 0h 0m 0s)
+
diff --git a/res/2021.png b/res/2021.png
new file mode 100644
index 0000000..36fbd36
Binary files /dev/null and b/res/2021.png differ
diff --git a/res/video/video1.png b/res/video/video1.png
new file mode 100644
index 0000000..fe4e9ca
Binary files /dev/null and b/res/video/video1.png differ
diff --git a/res/video/video10.png b/res/video/video10.png
new file mode 100644
index 0000000..fe4e9ca
Binary files /dev/null and b/res/video/video10.png differ
diff --git a/res/video/video100.png b/res/video/video100.png
new file mode 100644
index 0000000..6cbe6ac
Binary files /dev/null and b/res/video/video100.png differ
diff --git a/res/video/video101.png b/res/video/video101.png
new file mode 100644
index 0000000..e37177d
Binary files /dev/null and b/res/video/video101.png differ
diff --git a/res/video/video102.png b/res/video/video102.png
new file mode 100644
index 0000000..67d65d8
Binary files /dev/null and b/res/video/video102.png differ
diff --git a/res/video/video103.png b/res/video/video103.png
new file mode 100644
index 0000000..f318183
Binary files /dev/null and b/res/video/video103.png differ
diff --git a/res/video/video104.png b/res/video/video104.png
new file mode 100644
index 0000000..ba980cc
Binary files /dev/null and b/res/video/video104.png differ
diff --git a/res/video/video105.png b/res/video/video105.png
new file mode 100644
index 0000000..55ef015
Binary files /dev/null and b/res/video/video105.png differ
diff --git a/res/video/video106.png b/res/video/video106.png
new file mode 100644
index 0000000..e5a8007
Binary files /dev/null and b/res/video/video106.png differ
diff --git a/res/video/video107.png b/res/video/video107.png
new file mode 100644
index 0000000..a286432
Binary files /dev/null and b/res/video/video107.png differ
diff --git a/res/video/video108.png b/res/video/video108.png
new file mode 100644
index 0000000..4ed9581
Binary files /dev/null and b/res/video/video108.png differ
diff --git a/res/video/video109.png b/res/video/video109.png
new file mode 100644
index 0000000..aeb9127
Binary files /dev/null and b/res/video/video109.png differ
diff --git a/res/video/video11.png b/res/video/video11.png
new file mode 100644
index 0000000..fe4e9ca
Binary files /dev/null and b/res/video/video11.png differ
diff --git a/res/video/video110.png b/res/video/video110.png
new file mode 100644
index 0000000..0988bb3
Binary files /dev/null and b/res/video/video110.png differ
diff --git a/res/video/video111.png b/res/video/video111.png
new file mode 100644
index 0000000..54c8f8d
Binary files /dev/null and b/res/video/video111.png differ
diff --git a/res/video/video112.png b/res/video/video112.png
new file mode 100644
index 0000000..99a0a24
Binary files /dev/null and b/res/video/video112.png differ
diff --git a/res/video/video113.png b/res/video/video113.png
new file mode 100644
index 0000000..374000f
Binary files /dev/null and b/res/video/video113.png differ
diff --git a/res/video/video114.png b/res/video/video114.png
new file mode 100644
index 0000000..b094242
Binary files /dev/null and b/res/video/video114.png differ
diff --git a/res/video/video115.png b/res/video/video115.png
new file mode 100644
index 0000000..8323807
Binary files /dev/null and b/res/video/video115.png differ
diff --git a/res/video/video116.png b/res/video/video116.png
new file mode 100644
index 0000000..b8ac590
Binary files /dev/null and b/res/video/video116.png differ
diff --git a/res/video/video117.png b/res/video/video117.png
new file mode 100644
index 0000000..b1fc35b
Binary files /dev/null and b/res/video/video117.png differ
diff --git a/res/video/video118.png b/res/video/video118.png
new file mode 100644
index 0000000..71ff2c1
Binary files /dev/null and b/res/video/video118.png differ
diff --git a/res/video/video119.png b/res/video/video119.png
new file mode 100644
index 0000000..7ba7410
Binary files /dev/null and b/res/video/video119.png differ
diff --git a/res/video/video12.png b/res/video/video12.png
new file mode 100644
index 0000000..fe4e9ca
Binary files /dev/null and b/res/video/video12.png differ
diff --git a/res/video/video120.png b/res/video/video120.png
new file mode 100644
index 0000000..5b4be9b
Binary files /dev/null and b/res/video/video120.png differ
diff --git a/res/video/video121.png b/res/video/video121.png
new file mode 100644
index 0000000..d15049d
Binary files /dev/null and b/res/video/video121.png differ
diff --git a/res/video/video122.png b/res/video/video122.png
new file mode 100644
index 0000000..871cf63
Binary files /dev/null and b/res/video/video122.png differ
diff --git a/res/video/video123.png b/res/video/video123.png
new file mode 100644
index 0000000..d4ba35f
Binary files /dev/null and b/res/video/video123.png differ
diff --git a/res/video/video124.png b/res/video/video124.png
new file mode 100644
index 0000000..e0f0d58
Binary files /dev/null and b/res/video/video124.png differ
diff --git a/res/video/video125.png b/res/video/video125.png
new file mode 100644
index 0000000..2c66566
Binary files /dev/null and b/res/video/video125.png differ
diff --git a/res/video/video126.png b/res/video/video126.png
new file mode 100644
index 0000000..efc1915
Binary files /dev/null and b/res/video/video126.png differ
diff --git a/res/video/video127.png b/res/video/video127.png
new file mode 100644
index 0000000..55f4429
Binary files /dev/null and b/res/video/video127.png differ
diff --git a/res/video/video128.png b/res/video/video128.png
new file mode 100644
index 0000000..80cf187
Binary files /dev/null and b/res/video/video128.png differ
diff --git a/res/video/video129.png b/res/video/video129.png
new file mode 100644
index 0000000..d96a25d
Binary files /dev/null and b/res/video/video129.png differ
diff --git a/res/video/video13.png b/res/video/video13.png
new file mode 100644
index 0000000..fe4e9ca
Binary files /dev/null and b/res/video/video13.png differ
diff --git a/res/video/video130.png b/res/video/video130.png
new file mode 100644
index 0000000..5055656
Binary files /dev/null and b/res/video/video130.png differ
diff --git a/res/video/video131.png b/res/video/video131.png
new file mode 100644
index 0000000..c6fc720
Binary files /dev/null and b/res/video/video131.png differ
diff --git a/res/video/video132.png b/res/video/video132.png
new file mode 100644
index 0000000..0f4ef4f
Binary files /dev/null and b/res/video/video132.png differ
diff --git a/res/video/video133.png b/res/video/video133.png
new file mode 100644
index 0000000..7f4bd82
Binary files /dev/null and b/res/video/video133.png differ
diff --git a/res/video/video134.png b/res/video/video134.png
new file mode 100644
index 0000000..4837333
Binary files /dev/null and b/res/video/video134.png differ
diff --git a/res/video/video135.png b/res/video/video135.png
new file mode 100644
index 0000000..0a1c800
Binary files /dev/null and b/res/video/video135.png differ
diff --git a/res/video/video136.png b/res/video/video136.png
new file mode 100644
index 0000000..ade2962
Binary files /dev/null and b/res/video/video136.png differ
diff --git a/res/video/video137.png b/res/video/video137.png
new file mode 100644
index 0000000..12c135c
Binary files /dev/null and b/res/video/video137.png differ
diff --git a/res/video/video138.png b/res/video/video138.png
new file mode 100644
index 0000000..e5d3c19
Binary files /dev/null and b/res/video/video138.png differ
diff --git a/res/video/video139.png b/res/video/video139.png
new file mode 100644
index 0000000..8a38394
Binary files /dev/null and b/res/video/video139.png differ
diff --git a/res/video/video14.png b/res/video/video14.png
new file mode 100644
index 0000000..fe4e9ca
Binary files /dev/null and b/res/video/video14.png differ
diff --git a/res/video/video140.png b/res/video/video140.png
new file mode 100644
index 0000000..0763987
Binary files /dev/null and b/res/video/video140.png differ
diff --git a/res/video/video141.png b/res/video/video141.png
new file mode 100644
index 0000000..3543b5b
Binary files /dev/null and b/res/video/video141.png differ
diff --git a/res/video/video142.png b/res/video/video142.png
new file mode 100644
index 0000000..3e6d859
Binary files /dev/null and b/res/video/video142.png differ
diff --git a/res/video/video143.png b/res/video/video143.png
new file mode 100644
index 0000000..92abfe6
Binary files /dev/null and b/res/video/video143.png differ
diff --git a/res/video/video144.png b/res/video/video144.png
new file mode 100644
index 0000000..e7cfbf1
Binary files /dev/null and b/res/video/video144.png differ
diff --git a/res/video/video145.png b/res/video/video145.png
new file mode 100644
index 0000000..de4cc0e
Binary files /dev/null and b/res/video/video145.png differ
diff --git a/res/video/video146.png b/res/video/video146.png
new file mode 100644
index 0000000..e9c8c2a
Binary files /dev/null and b/res/video/video146.png differ
diff --git a/res/video/video147.png b/res/video/video147.png
new file mode 100644
index 0000000..c7c8663
Binary files /dev/null and b/res/video/video147.png differ
diff --git a/res/video/video148.png b/res/video/video148.png
new file mode 100644
index 0000000..43a3fcb
Binary files /dev/null and b/res/video/video148.png differ
diff --git a/res/video/video149.png b/res/video/video149.png
new file mode 100644
index 0000000..cb66038
Binary files /dev/null and b/res/video/video149.png differ
diff --git a/res/video/video15.png b/res/video/video15.png
new file mode 100644
index 0000000..fe4e9ca
Binary files /dev/null and b/res/video/video15.png differ
diff --git a/res/video/video150.png b/res/video/video150.png
new file mode 100644
index 0000000..93b5229
Binary files /dev/null and b/res/video/video150.png differ
diff --git a/res/video/video151.png b/res/video/video151.png
new file mode 100644
index 0000000..8602da1
Binary files /dev/null and b/res/video/video151.png differ
diff --git a/res/video/video152.png b/res/video/video152.png
new file mode 100644
index 0000000..f64add4
Binary files /dev/null and b/res/video/video152.png differ
diff --git a/res/video/video153.png b/res/video/video153.png
new file mode 100644
index 0000000..ad42062
Binary files /dev/null and b/res/video/video153.png differ
diff --git a/res/video/video154.png b/res/video/video154.png
new file mode 100644
index 0000000..5499505
Binary files /dev/null and b/res/video/video154.png differ
diff --git a/res/video/video155.png b/res/video/video155.png
new file mode 100644
index 0000000..a02c0b6
Binary files /dev/null and b/res/video/video155.png differ
diff --git a/res/video/video156.png b/res/video/video156.png
new file mode 100644
index 0000000..30bd5b7
Binary files /dev/null and b/res/video/video156.png differ
diff --git a/res/video/video157.png b/res/video/video157.png
new file mode 100644
index 0000000..8b29d15
Binary files /dev/null and b/res/video/video157.png differ
diff --git a/res/video/video158.png b/res/video/video158.png
new file mode 100644
index 0000000..ae4120f
Binary files /dev/null and b/res/video/video158.png differ
diff --git a/res/video/video159.png b/res/video/video159.png
new file mode 100644
index 0000000..40f61d0
Binary files /dev/null and b/res/video/video159.png differ
diff --git a/res/video/video16.png b/res/video/video16.png
new file mode 100644
index 0000000..fe4e9ca
Binary files /dev/null and b/res/video/video16.png differ
diff --git a/res/video/video160.png b/res/video/video160.png
new file mode 100644
index 0000000..efea186
Binary files /dev/null and b/res/video/video160.png differ
diff --git a/res/video/video161.png b/res/video/video161.png
new file mode 100644
index 0000000..3bd3d9a
Binary files /dev/null and b/res/video/video161.png differ
diff --git a/res/video/video162.png b/res/video/video162.png
new file mode 100644
index 0000000..d30a436
Binary files /dev/null and b/res/video/video162.png differ
diff --git a/res/video/video163.png b/res/video/video163.png
new file mode 100644
index 0000000..58f6cab
Binary files /dev/null and b/res/video/video163.png differ
diff --git a/res/video/video164.png b/res/video/video164.png
new file mode 100644
index 0000000..b0fe9ee
Binary files /dev/null and b/res/video/video164.png differ
diff --git a/res/video/video165.png b/res/video/video165.png
new file mode 100644
index 0000000..d2fc00e
Binary files /dev/null and b/res/video/video165.png differ
diff --git a/res/video/video166.png b/res/video/video166.png
new file mode 100644
index 0000000..1f3c8fb
Binary files /dev/null and b/res/video/video166.png differ
diff --git a/res/video/video167.png b/res/video/video167.png
new file mode 100644
index 0000000..3db09de
Binary files /dev/null and b/res/video/video167.png differ
diff --git a/res/video/video168.png b/res/video/video168.png
new file mode 100644
index 0000000..c515d7d
Binary files /dev/null and b/res/video/video168.png differ
diff --git a/res/video/video169.png b/res/video/video169.png
new file mode 100644
index 0000000..8f9d200
Binary files /dev/null and b/res/video/video169.png differ
diff --git a/res/video/video17.png b/res/video/video17.png
new file mode 100644
index 0000000..fe4e9ca
Binary files /dev/null and b/res/video/video17.png differ
diff --git a/res/video/video170.png b/res/video/video170.png
new file mode 100644
index 0000000..2f351be
Binary files /dev/null and b/res/video/video170.png differ
diff --git a/res/video/video171.png b/res/video/video171.png
new file mode 100644
index 0000000..b9d2251
Binary files /dev/null and b/res/video/video171.png differ
diff --git a/res/video/video172.png b/res/video/video172.png
new file mode 100644
index 0000000..44f0903
Binary files /dev/null and b/res/video/video172.png differ
diff --git a/res/video/video173.png b/res/video/video173.png
new file mode 100644
index 0000000..a131e7b
Binary files /dev/null and b/res/video/video173.png differ
diff --git a/res/video/video174.png b/res/video/video174.png
new file mode 100644
index 0000000..40f48ce
Binary files /dev/null and b/res/video/video174.png differ
diff --git a/res/video/video175.png b/res/video/video175.png
new file mode 100644
index 0000000..00b3be9
Binary files /dev/null and b/res/video/video175.png differ
diff --git a/res/video/video176.png b/res/video/video176.png
new file mode 100644
index 0000000..f9de64b
Binary files /dev/null and b/res/video/video176.png differ
diff --git a/res/video/video177.png b/res/video/video177.png
new file mode 100644
index 0000000..22ee786
Binary files /dev/null and b/res/video/video177.png differ
diff --git a/res/video/video178.png b/res/video/video178.png
new file mode 100644
index 0000000..3243713
Binary files /dev/null and b/res/video/video178.png differ
diff --git a/res/video/video179.png b/res/video/video179.png
new file mode 100644
index 0000000..c0e6fd3
Binary files /dev/null and b/res/video/video179.png differ
diff --git a/res/video/video18.png b/res/video/video18.png
new file mode 100644
index 0000000..fe4e9ca
Binary files /dev/null and b/res/video/video18.png differ
diff --git a/res/video/video180.png b/res/video/video180.png
new file mode 100644
index 0000000..91e52e9
Binary files /dev/null and b/res/video/video180.png differ
diff --git a/res/video/video181.png b/res/video/video181.png
new file mode 100644
index 0000000..3f5a645
Binary files /dev/null and b/res/video/video181.png differ
diff --git a/res/video/video182.png b/res/video/video182.png
new file mode 100644
index 0000000..3632d7f
Binary files /dev/null and b/res/video/video182.png differ
diff --git a/res/video/video183.png b/res/video/video183.png
new file mode 100644
index 0000000..98b7761
Binary files /dev/null and b/res/video/video183.png differ
diff --git a/res/video/video184.png b/res/video/video184.png
new file mode 100644
index 0000000..32252fa
Binary files /dev/null and b/res/video/video184.png differ
diff --git a/res/video/video185.png b/res/video/video185.png
new file mode 100644
index 0000000..7a70e3d
Binary files /dev/null and b/res/video/video185.png differ
diff --git a/res/video/video186.png b/res/video/video186.png
new file mode 100644
index 0000000..a5bb95f
Binary files /dev/null and b/res/video/video186.png differ
diff --git a/res/video/video187.png b/res/video/video187.png
new file mode 100644
index 0000000..aa0be53
Binary files /dev/null and b/res/video/video187.png differ
diff --git a/res/video/video188.png b/res/video/video188.png
new file mode 100644
index 0000000..30bc246
Binary files /dev/null and b/res/video/video188.png differ
diff --git a/res/video/video189.png b/res/video/video189.png
new file mode 100644
index 0000000..8d62aa6
Binary files /dev/null and b/res/video/video189.png differ
diff --git a/res/video/video19.png b/res/video/video19.png
new file mode 100644
index 0000000..fe4e9ca
Binary files /dev/null and b/res/video/video19.png differ
diff --git a/res/video/video190.png b/res/video/video190.png
new file mode 100644
index 0000000..39467da
Binary files /dev/null and b/res/video/video190.png differ
diff --git a/res/video/video191.png b/res/video/video191.png
new file mode 100644
index 0000000..007387b
Binary files /dev/null and b/res/video/video191.png differ
diff --git a/res/video/video192.png b/res/video/video192.png
new file mode 100644
index 0000000..facaf30
Binary files /dev/null and b/res/video/video192.png differ
diff --git a/res/video/video193.png b/res/video/video193.png
new file mode 100644
index 0000000..d89fe9f
Binary files /dev/null and b/res/video/video193.png differ
diff --git a/res/video/video194.png b/res/video/video194.png
new file mode 100644
index 0000000..eb5fdd5
Binary files /dev/null and b/res/video/video194.png differ
diff --git a/res/video/video195.png b/res/video/video195.png
new file mode 100644
index 0000000..7fcc45b
Binary files /dev/null and b/res/video/video195.png differ
diff --git a/res/video/video196.png b/res/video/video196.png
new file mode 100644
index 0000000..0a0554d
Binary files /dev/null and b/res/video/video196.png differ
diff --git a/res/video/video197.png b/res/video/video197.png
new file mode 100644
index 0000000..2208c80
Binary files /dev/null and b/res/video/video197.png differ
diff --git a/res/video/video198.png b/res/video/video198.png
new file mode 100644
index 0000000..10dfe8c
Binary files /dev/null and b/res/video/video198.png differ
diff --git a/res/video/video199.png b/res/video/video199.png
new file mode 100644
index 0000000..dc18bd8
Binary files /dev/null and b/res/video/video199.png differ
diff --git a/res/video/video2.png b/res/video/video2.png
new file mode 100644
index 0000000..fe4e9ca
Binary files /dev/null and b/res/video/video2.png differ
diff --git a/res/video/video20.png b/res/video/video20.png
new file mode 100644
index 0000000..fe4e9ca
Binary files /dev/null and b/res/video/video20.png differ
diff --git a/res/video/video200.png b/res/video/video200.png
new file mode 100644
index 0000000..c19eaee
Binary files /dev/null and b/res/video/video200.png differ
diff --git a/res/video/video201.png b/res/video/video201.png
new file mode 100644
index 0000000..a9f1926
Binary files /dev/null and b/res/video/video201.png differ
diff --git a/res/video/video202.png b/res/video/video202.png
new file mode 100644
index 0000000..0cefdfe
Binary files /dev/null and b/res/video/video202.png differ
diff --git a/res/video/video203.png b/res/video/video203.png
new file mode 100644
index 0000000..f88e866
Binary files /dev/null and b/res/video/video203.png differ
diff --git a/res/video/video204.png b/res/video/video204.png
new file mode 100644
index 0000000..09cbf24
Binary files /dev/null and b/res/video/video204.png differ
diff --git a/res/video/video205.png b/res/video/video205.png
new file mode 100644
index 0000000..f562008
Binary files /dev/null and b/res/video/video205.png differ
diff --git a/res/video/video206.png b/res/video/video206.png
new file mode 100644
index 0000000..c4176e2
Binary files /dev/null and b/res/video/video206.png differ
diff --git a/res/video/video207.png b/res/video/video207.png
new file mode 100644
index 0000000..0ba5d3e
Binary files /dev/null and b/res/video/video207.png differ
diff --git a/res/video/video208.png b/res/video/video208.png
new file mode 100644
index 0000000..1511052
Binary files /dev/null and b/res/video/video208.png differ
diff --git a/res/video/video209.png b/res/video/video209.png
new file mode 100644
index 0000000..2fb8cc1
Binary files /dev/null and b/res/video/video209.png differ
diff --git a/res/video/video21.png b/res/video/video21.png
new file mode 100644
index 0000000..fe4e9ca
Binary files /dev/null and b/res/video/video21.png differ
diff --git a/res/video/video210.png b/res/video/video210.png
new file mode 100644
index 0000000..8987013
Binary files /dev/null and b/res/video/video210.png differ
diff --git a/res/video/video211.png b/res/video/video211.png
new file mode 100644
index 0000000..7a598c1
Binary files /dev/null and b/res/video/video211.png differ
diff --git a/res/video/video212.png b/res/video/video212.png
new file mode 100644
index 0000000..c4ec482
Binary files /dev/null and b/res/video/video212.png differ
diff --git a/res/video/video213.png b/res/video/video213.png
new file mode 100644
index 0000000..ee48203
Binary files /dev/null and b/res/video/video213.png differ
diff --git a/res/video/video214.png b/res/video/video214.png
new file mode 100644
index 0000000..e8902b4
Binary files /dev/null and b/res/video/video214.png differ
diff --git a/res/video/video215.png b/res/video/video215.png
new file mode 100644
index 0000000..27b3b35
Binary files /dev/null and b/res/video/video215.png differ
diff --git a/res/video/video216.png b/res/video/video216.png
new file mode 100644
index 0000000..672bfae
Binary files /dev/null and b/res/video/video216.png differ
diff --git a/res/video/video217.png b/res/video/video217.png
new file mode 100644
index 0000000..4b2331a
Binary files /dev/null and b/res/video/video217.png differ
diff --git a/res/video/video218.png b/res/video/video218.png
new file mode 100644
index 0000000..9994b14
Binary files /dev/null and b/res/video/video218.png differ
diff --git a/res/video/video219.png b/res/video/video219.png
new file mode 100644
index 0000000..2cba755
Binary files /dev/null and b/res/video/video219.png differ
diff --git a/res/video/video22.png b/res/video/video22.png
new file mode 100644
index 0000000..fe4e9ca
Binary files /dev/null and b/res/video/video22.png differ
diff --git a/res/video/video220.png b/res/video/video220.png
new file mode 100644
index 0000000..39cc860
Binary files /dev/null and b/res/video/video220.png differ
diff --git a/res/video/video221.png b/res/video/video221.png
new file mode 100644
index 0000000..d2821ca
Binary files /dev/null and b/res/video/video221.png differ
diff --git a/res/video/video222.png b/res/video/video222.png
new file mode 100644
index 0000000..9a4fe2d
Binary files /dev/null and b/res/video/video222.png differ
diff --git a/res/video/video223.png b/res/video/video223.png
new file mode 100644
index 0000000..11aba5e
Binary files /dev/null and b/res/video/video223.png differ
diff --git a/res/video/video224.png b/res/video/video224.png
new file mode 100644
index 0000000..2af6626
Binary files /dev/null and b/res/video/video224.png differ
diff --git a/res/video/video225.png b/res/video/video225.png
new file mode 100644
index 0000000..ad88ef3
Binary files /dev/null and b/res/video/video225.png differ
diff --git a/res/video/video226.png b/res/video/video226.png
new file mode 100644
index 0000000..0a48780
Binary files /dev/null and b/res/video/video226.png differ
diff --git a/res/video/video227.png b/res/video/video227.png
new file mode 100644
index 0000000..164bc32
Binary files /dev/null and b/res/video/video227.png differ
diff --git a/res/video/video228.png b/res/video/video228.png
new file mode 100644
index 0000000..85ff3b4
Binary files /dev/null and b/res/video/video228.png differ
diff --git a/res/video/video229.png b/res/video/video229.png
new file mode 100644
index 0000000..804b3bd
Binary files /dev/null and b/res/video/video229.png differ
diff --git a/res/video/video23.png b/res/video/video23.png
new file mode 100644
index 0000000..fe4e9ca
Binary files /dev/null and b/res/video/video23.png differ
diff --git a/res/video/video230.png b/res/video/video230.png
new file mode 100644
index 0000000..22e56ba
Binary files /dev/null and b/res/video/video230.png differ
diff --git a/res/video/video231.png b/res/video/video231.png
new file mode 100644
index 0000000..a8dac2c
Binary files /dev/null and b/res/video/video231.png differ
diff --git a/res/video/video232.png b/res/video/video232.png
new file mode 100644
index 0000000..1841ca4
Binary files /dev/null and b/res/video/video232.png differ
diff --git a/res/video/video233.png b/res/video/video233.png
new file mode 100644
index 0000000..d9af2c3
Binary files /dev/null and b/res/video/video233.png differ
diff --git a/res/video/video234.png b/res/video/video234.png
new file mode 100644
index 0000000..bfe0305
Binary files /dev/null and b/res/video/video234.png differ
diff --git a/res/video/video235.png b/res/video/video235.png
new file mode 100644
index 0000000..8a8de7e
Binary files /dev/null and b/res/video/video235.png differ
diff --git a/res/video/video236.png b/res/video/video236.png
new file mode 100644
index 0000000..a5e2e39
Binary files /dev/null and b/res/video/video236.png differ
diff --git a/res/video/video237.png b/res/video/video237.png
new file mode 100644
index 0000000..91fa962
Binary files /dev/null and b/res/video/video237.png differ
diff --git a/res/video/video238.png b/res/video/video238.png
new file mode 100644
index 0000000..9106026
Binary files /dev/null and b/res/video/video238.png differ
diff --git a/res/video/video239.png b/res/video/video239.png
new file mode 100644
index 0000000..d39fdff
Binary files /dev/null and b/res/video/video239.png differ
diff --git a/res/video/video24.png b/res/video/video24.png
new file mode 100644
index 0000000..fe4e9ca
Binary files /dev/null and b/res/video/video24.png differ
diff --git a/res/video/video240.png b/res/video/video240.png
new file mode 100644
index 0000000..b36c21e
Binary files /dev/null and b/res/video/video240.png differ
diff --git a/res/video/video241.png b/res/video/video241.png
new file mode 100644
index 0000000..52e225c
Binary files /dev/null and b/res/video/video241.png differ
diff --git a/res/video/video242.png b/res/video/video242.png
new file mode 100644
index 0000000..b18ee55
Binary files /dev/null and b/res/video/video242.png differ
diff --git a/res/video/video243.png b/res/video/video243.png
new file mode 100644
index 0000000..55a55d9
Binary files /dev/null and b/res/video/video243.png differ
diff --git a/res/video/video244.png b/res/video/video244.png
new file mode 100644
index 0000000..08d1ef1
Binary files /dev/null and b/res/video/video244.png differ
diff --git a/res/video/video245.png b/res/video/video245.png
new file mode 100644
index 0000000..4685dea
Binary files /dev/null and b/res/video/video245.png differ
diff --git a/res/video/video246.png b/res/video/video246.png
new file mode 100644
index 0000000..09e4d33
Binary files /dev/null and b/res/video/video246.png differ
diff --git a/res/video/video247.png b/res/video/video247.png
new file mode 100644
index 0000000..f2fe81d
Binary files /dev/null and b/res/video/video247.png differ
diff --git a/res/video/video248.png b/res/video/video248.png
new file mode 100644
index 0000000..a945ff9
Binary files /dev/null and b/res/video/video248.png differ
diff --git a/res/video/video249.png b/res/video/video249.png
new file mode 100644
index 0000000..4b83736
Binary files /dev/null and b/res/video/video249.png differ
diff --git a/res/video/video25.png b/res/video/video25.png
new file mode 100644
index 0000000..fe4e9ca
Binary files /dev/null and b/res/video/video25.png differ
diff --git a/res/video/video250.png b/res/video/video250.png
new file mode 100644
index 0000000..a3136b2
Binary files /dev/null and b/res/video/video250.png differ
diff --git a/res/video/video251.png b/res/video/video251.png
new file mode 100644
index 0000000..4ab3a8e
Binary files /dev/null and b/res/video/video251.png differ
diff --git a/res/video/video252.png b/res/video/video252.png
new file mode 100644
index 0000000..6110f56
Binary files /dev/null and b/res/video/video252.png differ
diff --git a/res/video/video253.png b/res/video/video253.png
new file mode 100644
index 0000000..671a90b
Binary files /dev/null and b/res/video/video253.png differ
diff --git a/res/video/video254.png b/res/video/video254.png
new file mode 100644
index 0000000..c90f7f4
Binary files /dev/null and b/res/video/video254.png differ
diff --git a/res/video/video255.png b/res/video/video255.png
new file mode 100644
index 0000000..58ec5a6
Binary files /dev/null and b/res/video/video255.png differ
diff --git a/res/video/video256.png b/res/video/video256.png
new file mode 100644
index 0000000..f64b11e
Binary files /dev/null and b/res/video/video256.png differ
diff --git a/res/video/video257.png b/res/video/video257.png
new file mode 100644
index 0000000..3cb2a5d
Binary files /dev/null and b/res/video/video257.png differ
diff --git a/res/video/video258.png b/res/video/video258.png
new file mode 100644
index 0000000..7c1825b
Binary files /dev/null and b/res/video/video258.png differ
diff --git a/res/video/video259.png b/res/video/video259.png
new file mode 100644
index 0000000..494d743
Binary files /dev/null and b/res/video/video259.png differ
diff --git a/res/video/video26.png b/res/video/video26.png
new file mode 100644
index 0000000..fe4e9ca
Binary files /dev/null and b/res/video/video26.png differ
diff --git a/res/video/video260.png b/res/video/video260.png
new file mode 100644
index 0000000..d440873
Binary files /dev/null and b/res/video/video260.png differ
diff --git a/res/video/video261.png b/res/video/video261.png
new file mode 100644
index 0000000..617bcad
Binary files /dev/null and b/res/video/video261.png differ
diff --git a/res/video/video262.png b/res/video/video262.png
new file mode 100644
index 0000000..f57899c
Binary files /dev/null and b/res/video/video262.png differ
diff --git a/res/video/video263.png b/res/video/video263.png
new file mode 100644
index 0000000..de50f2f
Binary files /dev/null and b/res/video/video263.png differ
diff --git a/res/video/video264.png b/res/video/video264.png
new file mode 100644
index 0000000..ae0ee23
Binary files /dev/null and b/res/video/video264.png differ
diff --git a/res/video/video265.png b/res/video/video265.png
new file mode 100644
index 0000000..2cdaddf
Binary files /dev/null and b/res/video/video265.png differ
diff --git a/res/video/video266.png b/res/video/video266.png
new file mode 100644
index 0000000..486a2ed
Binary files /dev/null and b/res/video/video266.png differ
diff --git a/res/video/video267.png b/res/video/video267.png
new file mode 100644
index 0000000..1273584
Binary files /dev/null and b/res/video/video267.png differ
diff --git a/res/video/video268.png b/res/video/video268.png
new file mode 100644
index 0000000..eb42e5c
Binary files /dev/null and b/res/video/video268.png differ
diff --git a/res/video/video269.png b/res/video/video269.png
new file mode 100644
index 0000000..15f4a20
Binary files /dev/null and b/res/video/video269.png differ
diff --git a/res/video/video27.png b/res/video/video27.png
new file mode 100644
index 0000000..fe4e9ca
Binary files /dev/null and b/res/video/video27.png differ
diff --git a/res/video/video270.png b/res/video/video270.png
new file mode 100644
index 0000000..d8881c0
Binary files /dev/null and b/res/video/video270.png differ
diff --git a/res/video/video271.png b/res/video/video271.png
new file mode 100644
index 0000000..3d81f45
Binary files /dev/null and b/res/video/video271.png differ
diff --git a/res/video/video272.png b/res/video/video272.png
new file mode 100644
index 0000000..a531e44
Binary files /dev/null and b/res/video/video272.png differ
diff --git a/res/video/video273.png b/res/video/video273.png
new file mode 100644
index 0000000..03ef449
Binary files /dev/null and b/res/video/video273.png differ
diff --git a/res/video/video274.png b/res/video/video274.png
new file mode 100644
index 0000000..790db26
Binary files /dev/null and b/res/video/video274.png differ
diff --git a/res/video/video275.png b/res/video/video275.png
new file mode 100644
index 0000000..c1aa08f
Binary files /dev/null and b/res/video/video275.png differ
diff --git a/res/video/video276.png b/res/video/video276.png
new file mode 100644
index 0000000..3606431
Binary files /dev/null and b/res/video/video276.png differ
diff --git a/res/video/video277.png b/res/video/video277.png
new file mode 100644
index 0000000..19af129
Binary files /dev/null and b/res/video/video277.png differ
diff --git a/res/video/video278.png b/res/video/video278.png
new file mode 100644
index 0000000..4cb72cd
Binary files /dev/null and b/res/video/video278.png differ
diff --git a/res/video/video279.png b/res/video/video279.png
new file mode 100644
index 0000000..dc86533
Binary files /dev/null and b/res/video/video279.png differ
diff --git a/res/video/video28.png b/res/video/video28.png
new file mode 100644
index 0000000..fe4e9ca
Binary files /dev/null and b/res/video/video28.png differ
diff --git a/res/video/video280.png b/res/video/video280.png
new file mode 100644
index 0000000..d5f9aa5
Binary files /dev/null and b/res/video/video280.png differ
diff --git a/res/video/video281.png b/res/video/video281.png
new file mode 100644
index 0000000..f2fa6dc
Binary files /dev/null and b/res/video/video281.png differ
diff --git a/res/video/video282.png b/res/video/video282.png
new file mode 100644
index 0000000..ac6c27b
Binary files /dev/null and b/res/video/video282.png differ
diff --git a/res/video/video283.png b/res/video/video283.png
new file mode 100644
index 0000000..939e24f
Binary files /dev/null and b/res/video/video283.png differ
diff --git a/res/video/video284.png b/res/video/video284.png
new file mode 100644
index 0000000..c7f1132
Binary files /dev/null and b/res/video/video284.png differ
diff --git a/res/video/video285.png b/res/video/video285.png
new file mode 100644
index 0000000..a18963b
Binary files /dev/null and b/res/video/video285.png differ
diff --git a/res/video/video286.png b/res/video/video286.png
new file mode 100644
index 0000000..3cd0835
Binary files /dev/null and b/res/video/video286.png differ
diff --git a/res/video/video287.png b/res/video/video287.png
new file mode 100644
index 0000000..dd24965
Binary files /dev/null and b/res/video/video287.png differ
diff --git a/res/video/video288.png b/res/video/video288.png
new file mode 100644
index 0000000..beddc98
Binary files /dev/null and b/res/video/video288.png differ
diff --git a/res/video/video289.png b/res/video/video289.png
new file mode 100644
index 0000000..ceb3c6f
Binary files /dev/null and b/res/video/video289.png differ
diff --git a/res/video/video29.png b/res/video/video29.png
new file mode 100644
index 0000000..fe4e9ca
Binary files /dev/null and b/res/video/video29.png differ
diff --git a/res/video/video290.png b/res/video/video290.png
new file mode 100644
index 0000000..e23aa71
Binary files /dev/null and b/res/video/video290.png differ
diff --git a/res/video/video291.png b/res/video/video291.png
new file mode 100644
index 0000000..e46c389
Binary files /dev/null and b/res/video/video291.png differ
diff --git a/res/video/video292.png b/res/video/video292.png
new file mode 100644
index 0000000..71b50d9
Binary files /dev/null and b/res/video/video292.png differ
diff --git a/res/video/video293.png b/res/video/video293.png
new file mode 100644
index 0000000..d525c8f
Binary files /dev/null and b/res/video/video293.png differ
diff --git a/res/video/video294.png b/res/video/video294.png
new file mode 100644
index 0000000..6850e45
Binary files /dev/null and b/res/video/video294.png differ
diff --git a/res/video/video295.png b/res/video/video295.png
new file mode 100644
index 0000000..31b579e
Binary files /dev/null and b/res/video/video295.png differ
diff --git a/res/video/video296.png b/res/video/video296.png
new file mode 100644
index 0000000..905974a
Binary files /dev/null and b/res/video/video296.png differ
diff --git a/res/video/video297.png b/res/video/video297.png
new file mode 100644
index 0000000..995cf8e
Binary files /dev/null and b/res/video/video297.png differ
diff --git a/res/video/video298.png b/res/video/video298.png
new file mode 100644
index 0000000..345f5f4
Binary files /dev/null and b/res/video/video298.png differ
diff --git a/res/video/video299.png b/res/video/video299.png
new file mode 100644
index 0000000..30315bb
Binary files /dev/null and b/res/video/video299.png differ
diff --git a/res/video/video3.png b/res/video/video3.png
new file mode 100644
index 0000000..fe4e9ca
Binary files /dev/null and b/res/video/video3.png differ
diff --git a/res/video/video30.png b/res/video/video30.png
new file mode 100644
index 0000000..fe4e9ca
Binary files /dev/null and b/res/video/video30.png differ
diff --git a/res/video/video300.png b/res/video/video300.png
new file mode 100644
index 0000000..f3dbe6c
Binary files /dev/null and b/res/video/video300.png differ
diff --git a/res/video/video301.png b/res/video/video301.png
new file mode 100644
index 0000000..259e49a
Binary files /dev/null and b/res/video/video301.png differ
diff --git a/res/video/video302.png b/res/video/video302.png
new file mode 100644
index 0000000..e0c6406
Binary files /dev/null and b/res/video/video302.png differ
diff --git a/res/video/video303.png b/res/video/video303.png
new file mode 100644
index 0000000..0410287
Binary files /dev/null and b/res/video/video303.png differ
diff --git a/res/video/video304.png b/res/video/video304.png
new file mode 100644
index 0000000..ac56d26
Binary files /dev/null and b/res/video/video304.png differ
diff --git a/res/video/video305.png b/res/video/video305.png
new file mode 100644
index 0000000..4869db5
Binary files /dev/null and b/res/video/video305.png differ
diff --git a/res/video/video306.png b/res/video/video306.png
new file mode 100644
index 0000000..93db5c1
Binary files /dev/null and b/res/video/video306.png differ
diff --git a/res/video/video307.png b/res/video/video307.png
new file mode 100644
index 0000000..be49790
Binary files /dev/null and b/res/video/video307.png differ
diff --git a/res/video/video308.png b/res/video/video308.png
new file mode 100644
index 0000000..92e2eca
Binary files /dev/null and b/res/video/video308.png differ
diff --git a/res/video/video309.png b/res/video/video309.png
new file mode 100644
index 0000000..63dbf7e
Binary files /dev/null and b/res/video/video309.png differ
diff --git a/res/video/video31.png b/res/video/video31.png
new file mode 100644
index 0000000..fe4e9ca
Binary files /dev/null and b/res/video/video31.png differ
diff --git a/res/video/video310.png b/res/video/video310.png
new file mode 100644
index 0000000..ec8ba9a
Binary files /dev/null and b/res/video/video310.png differ
diff --git a/res/video/video311.png b/res/video/video311.png
new file mode 100644
index 0000000..0643f05
Binary files /dev/null and b/res/video/video311.png differ
diff --git a/res/video/video312.png b/res/video/video312.png
new file mode 100644
index 0000000..d6570cd
Binary files /dev/null and b/res/video/video312.png differ
diff --git a/res/video/video313.png b/res/video/video313.png
new file mode 100644
index 0000000..003c4f9
Binary files /dev/null and b/res/video/video313.png differ
diff --git a/res/video/video314.png b/res/video/video314.png
new file mode 100644
index 0000000..4872c96
Binary files /dev/null and b/res/video/video314.png differ
diff --git a/res/video/video315.png b/res/video/video315.png
new file mode 100644
index 0000000..dd9f743
Binary files /dev/null and b/res/video/video315.png differ
diff --git a/res/video/video316.png b/res/video/video316.png
new file mode 100644
index 0000000..1381ffc
Binary files /dev/null and b/res/video/video316.png differ
diff --git a/res/video/video317.png b/res/video/video317.png
new file mode 100644
index 0000000..8c1b6b4
Binary files /dev/null and b/res/video/video317.png differ
diff --git a/res/video/video318.png b/res/video/video318.png
new file mode 100644
index 0000000..370fa2d
Binary files /dev/null and b/res/video/video318.png differ
diff --git a/res/video/video319.png b/res/video/video319.png
new file mode 100644
index 0000000..903d47f
Binary files /dev/null and b/res/video/video319.png differ
diff --git a/res/video/video32.png b/res/video/video32.png
new file mode 100644
index 0000000..fe4e9ca
Binary files /dev/null and b/res/video/video32.png differ
diff --git a/res/video/video320.png b/res/video/video320.png
new file mode 100644
index 0000000..bc0b9f9
Binary files /dev/null and b/res/video/video320.png differ
diff --git a/res/video/video321.png b/res/video/video321.png
new file mode 100644
index 0000000..7a33683
Binary files /dev/null and b/res/video/video321.png differ
diff --git a/res/video/video322.png b/res/video/video322.png
new file mode 100644
index 0000000..e4bc8ef
Binary files /dev/null and b/res/video/video322.png differ
diff --git a/res/video/video323.png b/res/video/video323.png
new file mode 100644
index 0000000..29516e4
Binary files /dev/null and b/res/video/video323.png differ
diff --git a/res/video/video324.png b/res/video/video324.png
new file mode 100644
index 0000000..785b5d7
Binary files /dev/null and b/res/video/video324.png differ
diff --git a/res/video/video325.png b/res/video/video325.png
new file mode 100644
index 0000000..d0362ac
Binary files /dev/null and b/res/video/video325.png differ
diff --git a/res/video/video326.png b/res/video/video326.png
new file mode 100644
index 0000000..5cc8c1f
Binary files /dev/null and b/res/video/video326.png differ
diff --git a/res/video/video327.png b/res/video/video327.png
new file mode 100644
index 0000000..3598ed1
Binary files /dev/null and b/res/video/video327.png differ
diff --git a/res/video/video328.png b/res/video/video328.png
new file mode 100644
index 0000000..3101001
Binary files /dev/null and b/res/video/video328.png differ
diff --git a/res/video/video329.png b/res/video/video329.png
new file mode 100644
index 0000000..e46c0d7
Binary files /dev/null and b/res/video/video329.png differ
diff --git a/res/video/video33.png b/res/video/video33.png
new file mode 100644
index 0000000..fe4e9ca
Binary files /dev/null and b/res/video/video33.png differ
diff --git a/res/video/video330.png b/res/video/video330.png
new file mode 100644
index 0000000..cd2a0a1
Binary files /dev/null and b/res/video/video330.png differ
diff --git a/res/video/video331.png b/res/video/video331.png
new file mode 100644
index 0000000..a86fee1
Binary files /dev/null and b/res/video/video331.png differ
diff --git a/res/video/video332.png b/res/video/video332.png
new file mode 100644
index 0000000..75dca16
Binary files /dev/null and b/res/video/video332.png differ
diff --git a/res/video/video333.png b/res/video/video333.png
new file mode 100644
index 0000000..496114a
Binary files /dev/null and b/res/video/video333.png differ
diff --git a/res/video/video334.png b/res/video/video334.png
new file mode 100644
index 0000000..3c75d03
Binary files /dev/null and b/res/video/video334.png differ
diff --git a/res/video/video335.png b/res/video/video335.png
new file mode 100644
index 0000000..2b93727
Binary files /dev/null and b/res/video/video335.png differ
diff --git a/res/video/video336.png b/res/video/video336.png
new file mode 100644
index 0000000..902ba9f
Binary files /dev/null and b/res/video/video336.png differ
diff --git a/res/video/video337.png b/res/video/video337.png
new file mode 100644
index 0000000..4ed687a
Binary files /dev/null and b/res/video/video337.png differ
diff --git a/res/video/video338.png b/res/video/video338.png
new file mode 100644
index 0000000..dbf58b0
Binary files /dev/null and b/res/video/video338.png differ
diff --git a/res/video/video339.png b/res/video/video339.png
new file mode 100644
index 0000000..50bd36e
Binary files /dev/null and b/res/video/video339.png differ
diff --git a/res/video/video34.png b/res/video/video34.png
new file mode 100644
index 0000000..fe4e9ca
Binary files /dev/null and b/res/video/video34.png differ
diff --git a/res/video/video340.png b/res/video/video340.png
new file mode 100644
index 0000000..51ba575
Binary files /dev/null and b/res/video/video340.png differ
diff --git a/res/video/video341.png b/res/video/video341.png
new file mode 100644
index 0000000..e1a58e6
Binary files /dev/null and b/res/video/video341.png differ
diff --git a/res/video/video342.png b/res/video/video342.png
new file mode 100644
index 0000000..28e1130
Binary files /dev/null and b/res/video/video342.png differ
diff --git a/res/video/video343.png b/res/video/video343.png
new file mode 100644
index 0000000..0918fcd
Binary files /dev/null and b/res/video/video343.png differ
diff --git a/res/video/video344.png b/res/video/video344.png
new file mode 100644
index 0000000..8520aa2
Binary files /dev/null and b/res/video/video344.png differ
diff --git a/res/video/video345.png b/res/video/video345.png
new file mode 100644
index 0000000..41186fe
Binary files /dev/null and b/res/video/video345.png differ
diff --git a/res/video/video346.png b/res/video/video346.png
new file mode 100644
index 0000000..9ebb852
Binary files /dev/null and b/res/video/video346.png differ
diff --git a/res/video/video347.png b/res/video/video347.png
new file mode 100644
index 0000000..72f0ba9
Binary files /dev/null and b/res/video/video347.png differ
diff --git a/res/video/video348.png b/res/video/video348.png
new file mode 100644
index 0000000..373e16d
Binary files /dev/null and b/res/video/video348.png differ
diff --git a/res/video/video349.png b/res/video/video349.png
new file mode 100644
index 0000000..01ecea9
Binary files /dev/null and b/res/video/video349.png differ
diff --git a/res/video/video35.png b/res/video/video35.png
new file mode 100644
index 0000000..fe4e9ca
Binary files /dev/null and b/res/video/video35.png differ
diff --git a/res/video/video350.png b/res/video/video350.png
new file mode 100644
index 0000000..8912a59
Binary files /dev/null and b/res/video/video350.png differ
diff --git a/res/video/video351.png b/res/video/video351.png
new file mode 100644
index 0000000..07656cd
Binary files /dev/null and b/res/video/video351.png differ
diff --git a/res/video/video352.png b/res/video/video352.png
new file mode 100644
index 0000000..280858a
Binary files /dev/null and b/res/video/video352.png differ
diff --git a/res/video/video353.png b/res/video/video353.png
new file mode 100644
index 0000000..2537c21
Binary files /dev/null and b/res/video/video353.png differ
diff --git a/res/video/video354.png b/res/video/video354.png
new file mode 100644
index 0000000..b5db81b
Binary files /dev/null and b/res/video/video354.png differ
diff --git a/res/video/video355.png b/res/video/video355.png
new file mode 100644
index 0000000..2b90cf2
Binary files /dev/null and b/res/video/video355.png differ
diff --git a/res/video/video356.png b/res/video/video356.png
new file mode 100644
index 0000000..15ba010
Binary files /dev/null and b/res/video/video356.png differ
diff --git a/res/video/video357.png b/res/video/video357.png
new file mode 100644
index 0000000..c04e401
Binary files /dev/null and b/res/video/video357.png differ
diff --git a/res/video/video358.png b/res/video/video358.png
new file mode 100644
index 0000000..74ada39
Binary files /dev/null and b/res/video/video358.png differ
diff --git a/res/video/video359.png b/res/video/video359.png
new file mode 100644
index 0000000..b0d8c02
Binary files /dev/null and b/res/video/video359.png differ
diff --git a/res/video/video36.png b/res/video/video36.png
new file mode 100644
index 0000000..fe4e9ca
Binary files /dev/null and b/res/video/video36.png differ
diff --git a/res/video/video360.png b/res/video/video360.png
new file mode 100644
index 0000000..a40e9e3
Binary files /dev/null and b/res/video/video360.png differ
diff --git a/res/video/video361.png b/res/video/video361.png
new file mode 100644
index 0000000..f15d2ab
Binary files /dev/null and b/res/video/video361.png differ
diff --git a/res/video/video362.png b/res/video/video362.png
new file mode 100644
index 0000000..785f520
Binary files /dev/null and b/res/video/video362.png differ
diff --git a/res/video/video363.png b/res/video/video363.png
new file mode 100644
index 0000000..9a89097
Binary files /dev/null and b/res/video/video363.png differ
diff --git a/res/video/video364.png b/res/video/video364.png
new file mode 100644
index 0000000..02ac400
Binary files /dev/null and b/res/video/video364.png differ
diff --git a/res/video/video365.png b/res/video/video365.png
new file mode 100644
index 0000000..823ad31
Binary files /dev/null and b/res/video/video365.png differ
diff --git a/res/video/video366.png b/res/video/video366.png
new file mode 100644
index 0000000..0428378
Binary files /dev/null and b/res/video/video366.png differ
diff --git a/res/video/video367.png b/res/video/video367.png
new file mode 100644
index 0000000..ea479c8
Binary files /dev/null and b/res/video/video367.png differ
diff --git a/res/video/video368.png b/res/video/video368.png
new file mode 100644
index 0000000..66e2b3a
Binary files /dev/null and b/res/video/video368.png differ
diff --git a/res/video/video369.png b/res/video/video369.png
new file mode 100644
index 0000000..009dc58
Binary files /dev/null and b/res/video/video369.png differ
diff --git a/res/video/video37.png b/res/video/video37.png
new file mode 100644
index 0000000..fe4e9ca
Binary files /dev/null and b/res/video/video37.png differ
diff --git a/res/video/video370.png b/res/video/video370.png
new file mode 100644
index 0000000..f91c58d
Binary files /dev/null and b/res/video/video370.png differ
diff --git a/res/video/video371.png b/res/video/video371.png
new file mode 100644
index 0000000..2204a89
Binary files /dev/null and b/res/video/video371.png differ
diff --git a/res/video/video372.png b/res/video/video372.png
new file mode 100644
index 0000000..4d46fd4
Binary files /dev/null and b/res/video/video372.png differ
diff --git a/res/video/video373.png b/res/video/video373.png
new file mode 100644
index 0000000..24756df
Binary files /dev/null and b/res/video/video373.png differ
diff --git a/res/video/video374.png b/res/video/video374.png
new file mode 100644
index 0000000..4cf80b6
Binary files /dev/null and b/res/video/video374.png differ
diff --git a/res/video/video375.png b/res/video/video375.png
new file mode 100644
index 0000000..f2b2de8
Binary files /dev/null and b/res/video/video375.png differ
diff --git a/res/video/video376.png b/res/video/video376.png
new file mode 100644
index 0000000..7d58ce4
Binary files /dev/null and b/res/video/video376.png differ
diff --git a/res/video/video377.png b/res/video/video377.png
new file mode 100644
index 0000000..b1d61d2
Binary files /dev/null and b/res/video/video377.png differ
diff --git a/res/video/video378.png b/res/video/video378.png
new file mode 100644
index 0000000..2109765
Binary files /dev/null and b/res/video/video378.png differ
diff --git a/res/video/video379.png b/res/video/video379.png
new file mode 100644
index 0000000..0f44bcb
Binary files /dev/null and b/res/video/video379.png differ
diff --git a/res/video/video38.png b/res/video/video38.png
new file mode 100644
index 0000000..fe4e9ca
Binary files /dev/null and b/res/video/video38.png differ
diff --git a/res/video/video380.png b/res/video/video380.png
new file mode 100644
index 0000000..3fa0999
Binary files /dev/null and b/res/video/video380.png differ
diff --git a/res/video/video381.png b/res/video/video381.png
new file mode 100644
index 0000000..0b650af
Binary files /dev/null and b/res/video/video381.png differ
diff --git a/res/video/video382.png b/res/video/video382.png
new file mode 100644
index 0000000..ba728b6
Binary files /dev/null and b/res/video/video382.png differ
diff --git a/res/video/video383.png b/res/video/video383.png
new file mode 100644
index 0000000..88c536e
Binary files /dev/null and b/res/video/video383.png differ
diff --git a/res/video/video384.png b/res/video/video384.png
new file mode 100644
index 0000000..46bf803
Binary files /dev/null and b/res/video/video384.png differ
diff --git a/res/video/video385.png b/res/video/video385.png
new file mode 100644
index 0000000..1961dec
Binary files /dev/null and b/res/video/video385.png differ
diff --git a/res/video/video386.png b/res/video/video386.png
new file mode 100644
index 0000000..56b8bdd
Binary files /dev/null and b/res/video/video386.png differ
diff --git a/res/video/video387.png b/res/video/video387.png
new file mode 100644
index 0000000..2cd90e5
Binary files /dev/null and b/res/video/video387.png differ
diff --git a/res/video/video388.png b/res/video/video388.png
new file mode 100644
index 0000000..8bf3139
Binary files /dev/null and b/res/video/video388.png differ
diff --git a/res/video/video389.png b/res/video/video389.png
new file mode 100644
index 0000000..34fb539
Binary files /dev/null and b/res/video/video389.png differ
diff --git a/res/video/video39.png b/res/video/video39.png
new file mode 100644
index 0000000..fe4e9ca
Binary files /dev/null and b/res/video/video39.png differ
diff --git a/res/video/video390.png b/res/video/video390.png
new file mode 100644
index 0000000..25fdf06
Binary files /dev/null and b/res/video/video390.png differ
diff --git a/res/video/video391.png b/res/video/video391.png
new file mode 100644
index 0000000..0e83fc9
Binary files /dev/null and b/res/video/video391.png differ
diff --git a/res/video/video392.png b/res/video/video392.png
new file mode 100644
index 0000000..6f59ad2
Binary files /dev/null and b/res/video/video392.png differ
diff --git a/res/video/video393.png b/res/video/video393.png
new file mode 100644
index 0000000..c83bb39
Binary files /dev/null and b/res/video/video393.png differ
diff --git a/res/video/video394.png b/res/video/video394.png
new file mode 100644
index 0000000..ff00edc
Binary files /dev/null and b/res/video/video394.png differ
diff --git a/res/video/video395.png b/res/video/video395.png
new file mode 100644
index 0000000..30d1852
Binary files /dev/null and b/res/video/video395.png differ
diff --git a/res/video/video396.png b/res/video/video396.png
new file mode 100644
index 0000000..c3a4a3b
Binary files /dev/null and b/res/video/video396.png differ
diff --git a/res/video/video397.png b/res/video/video397.png
new file mode 100644
index 0000000..4c46c66
Binary files /dev/null and b/res/video/video397.png differ
diff --git a/res/video/video398.png b/res/video/video398.png
new file mode 100644
index 0000000..248eb6a
Binary files /dev/null and b/res/video/video398.png differ
diff --git a/res/video/video399.png b/res/video/video399.png
new file mode 100644
index 0000000..e20b09b
Binary files /dev/null and b/res/video/video399.png differ
diff --git a/res/video/video4.png b/res/video/video4.png
new file mode 100644
index 0000000..fe4e9ca
Binary files /dev/null and b/res/video/video4.png differ
diff --git a/res/video/video40.png b/res/video/video40.png
new file mode 100644
index 0000000..fe4e9ca
Binary files /dev/null and b/res/video/video40.png differ
diff --git a/res/video/video400.png b/res/video/video400.png
new file mode 100644
index 0000000..fb278b8
Binary files /dev/null and b/res/video/video400.png differ
diff --git a/res/video/video401.png b/res/video/video401.png
new file mode 100644
index 0000000..33a4e97
Binary files /dev/null and b/res/video/video401.png differ
diff --git a/res/video/video402.png b/res/video/video402.png
new file mode 100644
index 0000000..0c3a44e
Binary files /dev/null and b/res/video/video402.png differ
diff --git a/res/video/video403.png b/res/video/video403.png
new file mode 100644
index 0000000..76abe58
Binary files /dev/null and b/res/video/video403.png differ
diff --git a/res/video/video404.png b/res/video/video404.png
new file mode 100644
index 0000000..6ec58a9
Binary files /dev/null and b/res/video/video404.png differ
diff --git a/res/video/video405.png b/res/video/video405.png
new file mode 100644
index 0000000..088a5fd
Binary files /dev/null and b/res/video/video405.png differ
diff --git a/res/video/video406.png b/res/video/video406.png
new file mode 100644
index 0000000..5c8b91c
Binary files /dev/null and b/res/video/video406.png differ
diff --git a/res/video/video407.png b/res/video/video407.png
new file mode 100644
index 0000000..04dfd30
Binary files /dev/null and b/res/video/video407.png differ
diff --git a/res/video/video408.png b/res/video/video408.png
new file mode 100644
index 0000000..1ad7612
Binary files /dev/null and b/res/video/video408.png differ
diff --git a/res/video/video409.png b/res/video/video409.png
new file mode 100644
index 0000000..8f5d1e7
Binary files /dev/null and b/res/video/video409.png differ
diff --git a/res/video/video41.png b/res/video/video41.png
new file mode 100644
index 0000000..fe4e9ca
Binary files /dev/null and b/res/video/video41.png differ
diff --git a/res/video/video410.png b/res/video/video410.png
new file mode 100644
index 0000000..0a5f40a
Binary files /dev/null and b/res/video/video410.png differ
diff --git a/res/video/video411.png b/res/video/video411.png
new file mode 100644
index 0000000..a5dda56
Binary files /dev/null and b/res/video/video411.png differ
diff --git a/res/video/video412.png b/res/video/video412.png
new file mode 100644
index 0000000..c3a87bf
Binary files /dev/null and b/res/video/video412.png differ
diff --git a/res/video/video413.png b/res/video/video413.png
new file mode 100644
index 0000000..234cc3e
Binary files /dev/null and b/res/video/video413.png differ
diff --git a/res/video/video414.png b/res/video/video414.png
new file mode 100644
index 0000000..c077fba
Binary files /dev/null and b/res/video/video414.png differ
diff --git a/res/video/video415.png b/res/video/video415.png
new file mode 100644
index 0000000..9df19c1
Binary files /dev/null and b/res/video/video415.png differ
diff --git a/res/video/video416.png b/res/video/video416.png
new file mode 100644
index 0000000..90345b5
Binary files /dev/null and b/res/video/video416.png differ
diff --git a/res/video/video417.png b/res/video/video417.png
new file mode 100644
index 0000000..e8422d1
Binary files /dev/null and b/res/video/video417.png differ
diff --git a/res/video/video418.png b/res/video/video418.png
new file mode 100644
index 0000000..77fad3a
Binary files /dev/null and b/res/video/video418.png differ
diff --git a/res/video/video419.png b/res/video/video419.png
new file mode 100644
index 0000000..ede3f82
Binary files /dev/null and b/res/video/video419.png differ
diff --git a/res/video/video42.png b/res/video/video42.png
new file mode 100644
index 0000000..fe4e9ca
Binary files /dev/null and b/res/video/video42.png differ
diff --git a/res/video/video420.png b/res/video/video420.png
new file mode 100644
index 0000000..04081e4
Binary files /dev/null and b/res/video/video420.png differ
diff --git a/res/video/video421.png b/res/video/video421.png
new file mode 100644
index 0000000..0da9528
Binary files /dev/null and b/res/video/video421.png differ
diff --git a/res/video/video422.png b/res/video/video422.png
new file mode 100644
index 0000000..9d3b951
Binary files /dev/null and b/res/video/video422.png differ
diff --git a/res/video/video423.png b/res/video/video423.png
new file mode 100644
index 0000000..4990621
Binary files /dev/null and b/res/video/video423.png differ
diff --git a/res/video/video424.png b/res/video/video424.png
new file mode 100644
index 0000000..aff4fdd
Binary files /dev/null and b/res/video/video424.png differ
diff --git a/res/video/video425.png b/res/video/video425.png
new file mode 100644
index 0000000..77c18ef
Binary files /dev/null and b/res/video/video425.png differ
diff --git a/res/video/video426.png b/res/video/video426.png
new file mode 100644
index 0000000..0f01dac
Binary files /dev/null and b/res/video/video426.png differ
diff --git a/res/video/video427.png b/res/video/video427.png
new file mode 100644
index 0000000..f68b017
Binary files /dev/null and b/res/video/video427.png differ
diff --git a/res/video/video428.png b/res/video/video428.png
new file mode 100644
index 0000000..ac0a962
Binary files /dev/null and b/res/video/video428.png differ
diff --git a/res/video/video429.png b/res/video/video429.png
new file mode 100644
index 0000000..a6bd0ad
Binary files /dev/null and b/res/video/video429.png differ
diff --git a/res/video/video43.png b/res/video/video43.png
new file mode 100644
index 0000000..fe4e9ca
Binary files /dev/null and b/res/video/video43.png differ
diff --git a/res/video/video430.png b/res/video/video430.png
new file mode 100644
index 0000000..2b279a2
Binary files /dev/null and b/res/video/video430.png differ
diff --git a/res/video/video431.png b/res/video/video431.png
new file mode 100644
index 0000000..ef2c067
Binary files /dev/null and b/res/video/video431.png differ
diff --git a/res/video/video432.png b/res/video/video432.png
new file mode 100644
index 0000000..708e5b0
Binary files /dev/null and b/res/video/video432.png differ
diff --git a/res/video/video433.png b/res/video/video433.png
new file mode 100644
index 0000000..59778e8
Binary files /dev/null and b/res/video/video433.png differ
diff --git a/res/video/video434.png b/res/video/video434.png
new file mode 100644
index 0000000..33b645c
Binary files /dev/null and b/res/video/video434.png differ
diff --git a/res/video/video435.png b/res/video/video435.png
new file mode 100644
index 0000000..71ffa74
Binary files /dev/null and b/res/video/video435.png differ
diff --git a/res/video/video436.png b/res/video/video436.png
new file mode 100644
index 0000000..eb44bab
Binary files /dev/null and b/res/video/video436.png differ
diff --git a/res/video/video437.png b/res/video/video437.png
new file mode 100644
index 0000000..2ea4c27
Binary files /dev/null and b/res/video/video437.png differ
diff --git a/res/video/video438.png b/res/video/video438.png
new file mode 100644
index 0000000..6d9932a
Binary files /dev/null and b/res/video/video438.png differ
diff --git a/res/video/video439.png b/res/video/video439.png
new file mode 100644
index 0000000..42ca32f
Binary files /dev/null and b/res/video/video439.png differ
diff --git a/res/video/video44.png b/res/video/video44.png
new file mode 100644
index 0000000..8942082
Binary files /dev/null and b/res/video/video44.png differ
diff --git a/res/video/video440.png b/res/video/video440.png
new file mode 100644
index 0000000..c12cb23
Binary files /dev/null and b/res/video/video440.png differ
diff --git a/res/video/video441.png b/res/video/video441.png
new file mode 100644
index 0000000..0a0e085
Binary files /dev/null and b/res/video/video441.png differ
diff --git a/res/video/video442.png b/res/video/video442.png
new file mode 100644
index 0000000..020a6b1
Binary files /dev/null and b/res/video/video442.png differ
diff --git a/res/video/video443.png b/res/video/video443.png
new file mode 100644
index 0000000..1901150
Binary files /dev/null and b/res/video/video443.png differ
diff --git a/res/video/video444.png b/res/video/video444.png
new file mode 100644
index 0000000..1981200
Binary files /dev/null and b/res/video/video444.png differ
diff --git a/res/video/video445.png b/res/video/video445.png
new file mode 100644
index 0000000..8a7e434
Binary files /dev/null and b/res/video/video445.png differ
diff --git a/res/video/video446.png b/res/video/video446.png
new file mode 100644
index 0000000..d52e027
Binary files /dev/null and b/res/video/video446.png differ
diff --git a/res/video/video447.png b/res/video/video447.png
new file mode 100644
index 0000000..1058241
Binary files /dev/null and b/res/video/video447.png differ
diff --git a/res/video/video448.png b/res/video/video448.png
new file mode 100644
index 0000000..3c16524
Binary files /dev/null and b/res/video/video448.png differ
diff --git a/res/video/video449.png b/res/video/video449.png
new file mode 100644
index 0000000..81a9b00
Binary files /dev/null and b/res/video/video449.png differ
diff --git a/res/video/video45.png b/res/video/video45.png
new file mode 100644
index 0000000..966abeb
Binary files /dev/null and b/res/video/video45.png differ
diff --git a/res/video/video450.png b/res/video/video450.png
new file mode 100644
index 0000000..f443fc8
Binary files /dev/null and b/res/video/video450.png differ
diff --git a/res/video/video451.png b/res/video/video451.png
new file mode 100644
index 0000000..50eebd7
Binary files /dev/null and b/res/video/video451.png differ
diff --git a/res/video/video452.png b/res/video/video452.png
new file mode 100644
index 0000000..f443fc8
Binary files /dev/null and b/res/video/video452.png differ
diff --git a/res/video/video453.png b/res/video/video453.png
new file mode 100644
index 0000000..81a9b00
Binary files /dev/null and b/res/video/video453.png differ
diff --git a/res/video/video454.png b/res/video/video454.png
new file mode 100644
index 0000000..049a977
Binary files /dev/null and b/res/video/video454.png differ
diff --git a/res/video/video455.png b/res/video/video455.png
new file mode 100644
index 0000000..506b48f
Binary files /dev/null and b/res/video/video455.png differ
diff --git a/res/video/video456.png b/res/video/video456.png
new file mode 100644
index 0000000..049a977
Binary files /dev/null and b/res/video/video456.png differ
diff --git a/res/video/video457.png b/res/video/video457.png
new file mode 100644
index 0000000..81a9b00
Binary files /dev/null and b/res/video/video457.png differ
diff --git a/res/video/video458.png b/res/video/video458.png
new file mode 100644
index 0000000..6e3b3fc
Binary files /dev/null and b/res/video/video458.png differ
diff --git a/res/video/video459.png b/res/video/video459.png
new file mode 100644
index 0000000..d3a2a3e
Binary files /dev/null and b/res/video/video459.png differ
diff --git a/res/video/video46.png b/res/video/video46.png
new file mode 100644
index 0000000..92ed867
Binary files /dev/null and b/res/video/video46.png differ
diff --git a/res/video/video460.png b/res/video/video460.png
new file mode 100644
index 0000000..d68f618
Binary files /dev/null and b/res/video/video460.png differ
diff --git a/res/video/video461.png b/res/video/video461.png
new file mode 100644
index 0000000..73f1f98
Binary files /dev/null and b/res/video/video461.png differ
diff --git a/res/video/video462.png b/res/video/video462.png
new file mode 100644
index 0000000..cfcab7a
Binary files /dev/null and b/res/video/video462.png differ
diff --git a/res/video/video463.png b/res/video/video463.png
new file mode 100644
index 0000000..c359195
Binary files /dev/null and b/res/video/video463.png differ
diff --git a/res/video/video464.png b/res/video/video464.png
new file mode 100644
index 0000000..b452472
Binary files /dev/null and b/res/video/video464.png differ
diff --git a/res/video/video465.png b/res/video/video465.png
new file mode 100644
index 0000000..e4f6afb
Binary files /dev/null and b/res/video/video465.png differ
diff --git a/res/video/video466.png b/res/video/video466.png
new file mode 100644
index 0000000..0267d52
Binary files /dev/null and b/res/video/video466.png differ
diff --git a/res/video/video467.png b/res/video/video467.png
new file mode 100644
index 0000000..febfd60
Binary files /dev/null and b/res/video/video467.png differ
diff --git a/res/video/video468.png b/res/video/video468.png
new file mode 100644
index 0000000..cb9af82
Binary files /dev/null and b/res/video/video468.png differ
diff --git a/res/video/video469.png b/res/video/video469.png
new file mode 100644
index 0000000..bf544f1
Binary files /dev/null and b/res/video/video469.png differ
diff --git a/res/video/video47.png b/res/video/video47.png
new file mode 100644
index 0000000..aa621ce
Binary files /dev/null and b/res/video/video47.png differ
diff --git a/res/video/video470.png b/res/video/video470.png
new file mode 100644
index 0000000..c434a9a
Binary files /dev/null and b/res/video/video470.png differ
diff --git a/res/video/video471.png b/res/video/video471.png
new file mode 100644
index 0000000..a8a663b
Binary files /dev/null and b/res/video/video471.png differ
diff --git a/res/video/video472.png b/res/video/video472.png
new file mode 100644
index 0000000..e95a8ed
Binary files /dev/null and b/res/video/video472.png differ
diff --git a/res/video/video473.png b/res/video/video473.png
new file mode 100644
index 0000000..582f2e8
Binary files /dev/null and b/res/video/video473.png differ
diff --git a/res/video/video474.png b/res/video/video474.png
new file mode 100644
index 0000000..173f849
Binary files /dev/null and b/res/video/video474.png differ
diff --git a/res/video/video475.png b/res/video/video475.png
new file mode 100644
index 0000000..52cf037
Binary files /dev/null and b/res/video/video475.png differ
diff --git a/res/video/video476.png b/res/video/video476.png
new file mode 100644
index 0000000..69f08ea
Binary files /dev/null and b/res/video/video476.png differ
diff --git a/res/video/video477.png b/res/video/video477.png
new file mode 100644
index 0000000..c0487ca
Binary files /dev/null and b/res/video/video477.png differ
diff --git a/res/video/video478.png b/res/video/video478.png
new file mode 100644
index 0000000..8e36e6e
Binary files /dev/null and b/res/video/video478.png differ
diff --git a/res/video/video479.png b/res/video/video479.png
new file mode 100644
index 0000000..01994b2
Binary files /dev/null and b/res/video/video479.png differ
diff --git a/res/video/video48.png b/res/video/video48.png
new file mode 100644
index 0000000..debad5d
Binary files /dev/null and b/res/video/video48.png differ
diff --git a/res/video/video480.png b/res/video/video480.png
new file mode 100644
index 0000000..4d9eff9
Binary files /dev/null and b/res/video/video480.png differ
diff --git a/res/video/video481.png b/res/video/video481.png
new file mode 100644
index 0000000..9c56b0c
Binary files /dev/null and b/res/video/video481.png differ
diff --git a/res/video/video482.png b/res/video/video482.png
new file mode 100644
index 0000000..779436f
Binary files /dev/null and b/res/video/video482.png differ
diff --git a/res/video/video483.png b/res/video/video483.png
new file mode 100644
index 0000000..c640c36
Binary files /dev/null and b/res/video/video483.png differ
diff --git a/res/video/video484.png b/res/video/video484.png
new file mode 100644
index 0000000..e4a9bf3
Binary files /dev/null and b/res/video/video484.png differ
diff --git a/res/video/video485.png b/res/video/video485.png
new file mode 100644
index 0000000..3f41c90
Binary files /dev/null and b/res/video/video485.png differ
diff --git a/res/video/video486.png b/res/video/video486.png
new file mode 100644
index 0000000..17be3cd
Binary files /dev/null and b/res/video/video486.png differ
diff --git a/res/video/video487.png b/res/video/video487.png
new file mode 100644
index 0000000..e5f6880
Binary files /dev/null and b/res/video/video487.png differ
diff --git a/res/video/video488.png b/res/video/video488.png
new file mode 100644
index 0000000..d47acad
Binary files /dev/null and b/res/video/video488.png differ
diff --git a/res/video/video489.png b/res/video/video489.png
new file mode 100644
index 0000000..10386bc
Binary files /dev/null and b/res/video/video489.png differ
diff --git a/res/video/video49.png b/res/video/video49.png
new file mode 100644
index 0000000..a6a6e63
Binary files /dev/null and b/res/video/video49.png differ
diff --git a/res/video/video490.png b/res/video/video490.png
new file mode 100644
index 0000000..5852d4f
Binary files /dev/null and b/res/video/video490.png differ
diff --git a/res/video/video491.png b/res/video/video491.png
new file mode 100644
index 0000000..36e404d
Binary files /dev/null and b/res/video/video491.png differ
diff --git a/res/video/video492.png b/res/video/video492.png
new file mode 100644
index 0000000..ac29c73
Binary files /dev/null and b/res/video/video492.png differ
diff --git a/res/video/video493.png b/res/video/video493.png
new file mode 100644
index 0000000..5d7b110
Binary files /dev/null and b/res/video/video493.png differ
diff --git a/res/video/video494.png b/res/video/video494.png
new file mode 100644
index 0000000..8d68765
Binary files /dev/null and b/res/video/video494.png differ
diff --git a/res/video/video495.png b/res/video/video495.png
new file mode 100644
index 0000000..f75589f
Binary files /dev/null and b/res/video/video495.png differ
diff --git a/res/video/video496.png b/res/video/video496.png
new file mode 100644
index 0000000..800e67e
Binary files /dev/null and b/res/video/video496.png differ
diff --git a/res/video/video497.png b/res/video/video497.png
new file mode 100644
index 0000000..d07b8a8
Binary files /dev/null and b/res/video/video497.png differ
diff --git a/res/video/video498.png b/res/video/video498.png
new file mode 100644
index 0000000..318d8dc
Binary files /dev/null and b/res/video/video498.png differ
diff --git a/res/video/video499.png b/res/video/video499.png
new file mode 100644
index 0000000..5489a88
Binary files /dev/null and b/res/video/video499.png differ
diff --git a/res/video/video5.png b/res/video/video5.png
new file mode 100644
index 0000000..fe4e9ca
Binary files /dev/null and b/res/video/video5.png differ
diff --git a/res/video/video50.png b/res/video/video50.png
new file mode 100644
index 0000000..c4ab7ac
Binary files /dev/null and b/res/video/video50.png differ
diff --git a/res/video/video500.png b/res/video/video500.png
new file mode 100644
index 0000000..f381f5c
Binary files /dev/null and b/res/video/video500.png differ
diff --git a/res/video/video501.png b/res/video/video501.png
new file mode 100644
index 0000000..f7d797d
Binary files /dev/null and b/res/video/video501.png differ
diff --git a/res/video/video502.png b/res/video/video502.png
new file mode 100644
index 0000000..d73ebd7
Binary files /dev/null and b/res/video/video502.png differ
diff --git a/res/video/video503.png b/res/video/video503.png
new file mode 100644
index 0000000..f0300af
Binary files /dev/null and b/res/video/video503.png differ
diff --git a/res/video/video504.png b/res/video/video504.png
new file mode 100644
index 0000000..b68a411
Binary files /dev/null and b/res/video/video504.png differ
diff --git a/res/video/video505.png b/res/video/video505.png
new file mode 100644
index 0000000..da07d64
Binary files /dev/null and b/res/video/video505.png differ
diff --git a/res/video/video506.png b/res/video/video506.png
new file mode 100644
index 0000000..472794b
Binary files /dev/null and b/res/video/video506.png differ
diff --git a/res/video/video507.png b/res/video/video507.png
new file mode 100644
index 0000000..c9c8a95
Binary files /dev/null and b/res/video/video507.png differ
diff --git a/res/video/video508.png b/res/video/video508.png
new file mode 100644
index 0000000..40e0597
Binary files /dev/null and b/res/video/video508.png differ
diff --git a/res/video/video509.png b/res/video/video509.png
new file mode 100644
index 0000000..726205f
Binary files /dev/null and b/res/video/video509.png differ
diff --git a/res/video/video51.png b/res/video/video51.png
new file mode 100644
index 0000000..13084e6
Binary files /dev/null and b/res/video/video51.png differ
diff --git a/res/video/video510.png b/res/video/video510.png
new file mode 100644
index 0000000..5a058d4
Binary files /dev/null and b/res/video/video510.png differ
diff --git a/res/video/video511.png b/res/video/video511.png
new file mode 100644
index 0000000..96052d6
Binary files /dev/null and b/res/video/video511.png differ
diff --git a/res/video/video512.png b/res/video/video512.png
new file mode 100644
index 0000000..883ab19
Binary files /dev/null and b/res/video/video512.png differ
diff --git a/res/video/video513.png b/res/video/video513.png
new file mode 100644
index 0000000..bcc1be9
Binary files /dev/null and b/res/video/video513.png differ
diff --git a/res/video/video514.png b/res/video/video514.png
new file mode 100644
index 0000000..ef1753a
Binary files /dev/null and b/res/video/video514.png differ
diff --git a/res/video/video515.png b/res/video/video515.png
new file mode 100644
index 0000000..02d5668
Binary files /dev/null and b/res/video/video515.png differ
diff --git a/res/video/video516.png b/res/video/video516.png
new file mode 100644
index 0000000..4b82824
Binary files /dev/null and b/res/video/video516.png differ
diff --git a/res/video/video517.png b/res/video/video517.png
new file mode 100644
index 0000000..9c0f911
Binary files /dev/null and b/res/video/video517.png differ
diff --git a/res/video/video518.png b/res/video/video518.png
new file mode 100644
index 0000000..7710bdc
Binary files /dev/null and b/res/video/video518.png differ
diff --git a/res/video/video519.png b/res/video/video519.png
new file mode 100644
index 0000000..3a210c9
Binary files /dev/null and b/res/video/video519.png differ
diff --git a/res/video/video52.png b/res/video/video52.png
new file mode 100644
index 0000000..b736423
Binary files /dev/null and b/res/video/video52.png differ
diff --git a/res/video/video520.png b/res/video/video520.png
new file mode 100644
index 0000000..b465a60
Binary files /dev/null and b/res/video/video520.png differ
diff --git a/res/video/video521.png b/res/video/video521.png
new file mode 100644
index 0000000..f59bbc1
Binary files /dev/null and b/res/video/video521.png differ
diff --git a/res/video/video522.png b/res/video/video522.png
new file mode 100644
index 0000000..0ffa02d
Binary files /dev/null and b/res/video/video522.png differ
diff --git a/res/video/video523.png b/res/video/video523.png
new file mode 100644
index 0000000..1217c7f
Binary files /dev/null and b/res/video/video523.png differ
diff --git a/res/video/video524.png b/res/video/video524.png
new file mode 100644
index 0000000..478d3d2
Binary files /dev/null and b/res/video/video524.png differ
diff --git a/res/video/video525.png b/res/video/video525.png
new file mode 100644
index 0000000..e73e3ee
Binary files /dev/null and b/res/video/video525.png differ
diff --git a/res/video/video526.png b/res/video/video526.png
new file mode 100644
index 0000000..a00fd6b
Binary files /dev/null and b/res/video/video526.png differ
diff --git a/res/video/video527.png b/res/video/video527.png
new file mode 100644
index 0000000..0073d4b
Binary files /dev/null and b/res/video/video527.png differ
diff --git a/res/video/video528.png b/res/video/video528.png
new file mode 100644
index 0000000..ab56436
Binary files /dev/null and b/res/video/video528.png differ
diff --git a/res/video/video529.png b/res/video/video529.png
new file mode 100644
index 0000000..0ffc8d6
Binary files /dev/null and b/res/video/video529.png differ
diff --git a/res/video/video53.png b/res/video/video53.png
new file mode 100644
index 0000000..182c827
Binary files /dev/null and b/res/video/video53.png differ
diff --git a/res/video/video530.png b/res/video/video530.png
new file mode 100644
index 0000000..a85a0df
Binary files /dev/null and b/res/video/video530.png differ
diff --git a/res/video/video531.png b/res/video/video531.png
new file mode 100644
index 0000000..fcfae90
Binary files /dev/null and b/res/video/video531.png differ
diff --git a/res/video/video532.png b/res/video/video532.png
new file mode 100644
index 0000000..c655abc
Binary files /dev/null and b/res/video/video532.png differ
diff --git a/res/video/video533.png b/res/video/video533.png
new file mode 100644
index 0000000..e399148
Binary files /dev/null and b/res/video/video533.png differ
diff --git a/res/video/video534.png b/res/video/video534.png
new file mode 100644
index 0000000..7bb0bfb
Binary files /dev/null and b/res/video/video534.png differ
diff --git a/res/video/video535.png b/res/video/video535.png
new file mode 100644
index 0000000..b0c00bd
Binary files /dev/null and b/res/video/video535.png differ
diff --git a/res/video/video536.png b/res/video/video536.png
new file mode 100644
index 0000000..1a8d09b
Binary files /dev/null and b/res/video/video536.png differ
diff --git a/res/video/video537.png b/res/video/video537.png
new file mode 100644
index 0000000..eab9393
Binary files /dev/null and b/res/video/video537.png differ
diff --git a/res/video/video538.png b/res/video/video538.png
new file mode 100644
index 0000000..872b89d
Binary files /dev/null and b/res/video/video538.png differ
diff --git a/res/video/video539.png b/res/video/video539.png
new file mode 100644
index 0000000..bbc9f95
Binary files /dev/null and b/res/video/video539.png differ
diff --git a/res/video/video54.png b/res/video/video54.png
new file mode 100644
index 0000000..d85b090
Binary files /dev/null and b/res/video/video54.png differ
diff --git a/res/video/video540.png b/res/video/video540.png
new file mode 100644
index 0000000..2454f72
Binary files /dev/null and b/res/video/video540.png differ
diff --git a/res/video/video541.png b/res/video/video541.png
new file mode 100644
index 0000000..e62f9ce
Binary files /dev/null and b/res/video/video541.png differ
diff --git a/res/video/video542.png b/res/video/video542.png
new file mode 100644
index 0000000..fc01849
Binary files /dev/null and b/res/video/video542.png differ
diff --git a/res/video/video543.png b/res/video/video543.png
new file mode 100644
index 0000000..aacc215
Binary files /dev/null and b/res/video/video543.png differ
diff --git a/res/video/video544.png b/res/video/video544.png
new file mode 100644
index 0000000..1ff6309
Binary files /dev/null and b/res/video/video544.png differ
diff --git a/res/video/video545.png b/res/video/video545.png
new file mode 100644
index 0000000..5302852
Binary files /dev/null and b/res/video/video545.png differ
diff --git a/res/video/video546.png b/res/video/video546.png
new file mode 100644
index 0000000..3515886
Binary files /dev/null and b/res/video/video546.png differ
diff --git a/res/video/video547.png b/res/video/video547.png
new file mode 100644
index 0000000..8285fa7
Binary files /dev/null and b/res/video/video547.png differ
diff --git a/res/video/video548.png b/res/video/video548.png
new file mode 100644
index 0000000..14dafdb
Binary files /dev/null and b/res/video/video548.png differ
diff --git a/res/video/video549.png b/res/video/video549.png
new file mode 100644
index 0000000..367c57f
Binary files /dev/null and b/res/video/video549.png differ
diff --git a/res/video/video55.png b/res/video/video55.png
new file mode 100644
index 0000000..6712182
Binary files /dev/null and b/res/video/video55.png differ
diff --git a/res/video/video550.png b/res/video/video550.png
new file mode 100644
index 0000000..d46d81d
Binary files /dev/null and b/res/video/video550.png differ
diff --git a/res/video/video551.png b/res/video/video551.png
new file mode 100644
index 0000000..747bd9e
Binary files /dev/null and b/res/video/video551.png differ
diff --git a/res/video/video552.png b/res/video/video552.png
new file mode 100644
index 0000000..11519d3
Binary files /dev/null and b/res/video/video552.png differ
diff --git a/res/video/video553.png b/res/video/video553.png
new file mode 100644
index 0000000..45e022a
Binary files /dev/null and b/res/video/video553.png differ
diff --git a/res/video/video554.png b/res/video/video554.png
new file mode 100644
index 0000000..2c61c62
Binary files /dev/null and b/res/video/video554.png differ
diff --git a/res/video/video555.png b/res/video/video555.png
new file mode 100644
index 0000000..b3695f5
Binary files /dev/null and b/res/video/video555.png differ
diff --git a/res/video/video556.png b/res/video/video556.png
new file mode 100644
index 0000000..579e2a0
Binary files /dev/null and b/res/video/video556.png differ
diff --git a/res/video/video557.png b/res/video/video557.png
new file mode 100644
index 0000000..5b11dc3
Binary files /dev/null and b/res/video/video557.png differ
diff --git a/res/video/video558.png b/res/video/video558.png
new file mode 100644
index 0000000..a954d34
Binary files /dev/null and b/res/video/video558.png differ
diff --git a/res/video/video559.png b/res/video/video559.png
new file mode 100644
index 0000000..0b7f3f9
Binary files /dev/null and b/res/video/video559.png differ
diff --git a/res/video/video56.png b/res/video/video56.png
new file mode 100644
index 0000000..5192bfe
Binary files /dev/null and b/res/video/video56.png differ
diff --git a/res/video/video560.png b/res/video/video560.png
new file mode 100644
index 0000000..c941cad
Binary files /dev/null and b/res/video/video560.png differ
diff --git a/res/video/video561.png b/res/video/video561.png
new file mode 100644
index 0000000..1a6741f
Binary files /dev/null and b/res/video/video561.png differ
diff --git a/res/video/video562.png b/res/video/video562.png
new file mode 100644
index 0000000..fec0ab4
Binary files /dev/null and b/res/video/video562.png differ
diff --git a/res/video/video563.png b/res/video/video563.png
new file mode 100644
index 0000000..531e1df
Binary files /dev/null and b/res/video/video563.png differ
diff --git a/res/video/video564.png b/res/video/video564.png
new file mode 100644
index 0000000..bb535a7
Binary files /dev/null and b/res/video/video564.png differ
diff --git a/res/video/video565.png b/res/video/video565.png
new file mode 100644
index 0000000..7cd3f9f
Binary files /dev/null and b/res/video/video565.png differ
diff --git a/res/video/video566.png b/res/video/video566.png
new file mode 100644
index 0000000..ed80aad
Binary files /dev/null and b/res/video/video566.png differ
diff --git a/res/video/video567.png b/res/video/video567.png
new file mode 100644
index 0000000..25752c4
Binary files /dev/null and b/res/video/video567.png differ
diff --git a/res/video/video568.png b/res/video/video568.png
new file mode 100644
index 0000000..d19b16d
Binary files /dev/null and b/res/video/video568.png differ
diff --git a/res/video/video569.png b/res/video/video569.png
new file mode 100644
index 0000000..f6ed2ca
Binary files /dev/null and b/res/video/video569.png differ
diff --git a/res/video/video57.png b/res/video/video57.png
new file mode 100644
index 0000000..69fb7f2
Binary files /dev/null and b/res/video/video57.png differ
diff --git a/res/video/video570.png b/res/video/video570.png
new file mode 100644
index 0000000..dde1d4a
Binary files /dev/null and b/res/video/video570.png differ
diff --git a/res/video/video571.png b/res/video/video571.png
new file mode 100644
index 0000000..05d128a
Binary files /dev/null and b/res/video/video571.png differ
diff --git a/res/video/video572.png b/res/video/video572.png
new file mode 100644
index 0000000..d301bb5
Binary files /dev/null and b/res/video/video572.png differ
diff --git a/res/video/video573.png b/res/video/video573.png
new file mode 100644
index 0000000..ebbe28e
Binary files /dev/null and b/res/video/video573.png differ
diff --git a/res/video/video574.png b/res/video/video574.png
new file mode 100644
index 0000000..799e889
Binary files /dev/null and b/res/video/video574.png differ
diff --git a/res/video/video575.png b/res/video/video575.png
new file mode 100644
index 0000000..c655745
Binary files /dev/null and b/res/video/video575.png differ
diff --git a/res/video/video576.png b/res/video/video576.png
new file mode 100644
index 0000000..22c14c2
Binary files /dev/null and b/res/video/video576.png differ
diff --git a/res/video/video577.png b/res/video/video577.png
new file mode 100644
index 0000000..3b768bf
Binary files /dev/null and b/res/video/video577.png differ
diff --git a/res/video/video578.png b/res/video/video578.png
new file mode 100644
index 0000000..2f47e3a
Binary files /dev/null and b/res/video/video578.png differ
diff --git a/res/video/video579.png b/res/video/video579.png
new file mode 100644
index 0000000..c8246f6
Binary files /dev/null and b/res/video/video579.png differ
diff --git a/res/video/video58.png b/res/video/video58.png
new file mode 100644
index 0000000..2f08d63
Binary files /dev/null and b/res/video/video58.png differ
diff --git a/res/video/video580.png b/res/video/video580.png
new file mode 100644
index 0000000..e952de4
Binary files /dev/null and b/res/video/video580.png differ
diff --git a/res/video/video581.png b/res/video/video581.png
new file mode 100644
index 0000000..cb58562
Binary files /dev/null and b/res/video/video581.png differ
diff --git a/res/video/video582.png b/res/video/video582.png
new file mode 100644
index 0000000..a91d9d1
Binary files /dev/null and b/res/video/video582.png differ
diff --git a/res/video/video583.png b/res/video/video583.png
new file mode 100644
index 0000000..2b24dd4
Binary files /dev/null and b/res/video/video583.png differ
diff --git a/res/video/video584.png b/res/video/video584.png
new file mode 100644
index 0000000..b0945a4
Binary files /dev/null and b/res/video/video584.png differ
diff --git a/res/video/video585.png b/res/video/video585.png
new file mode 100644
index 0000000..8a3c652
Binary files /dev/null and b/res/video/video585.png differ
diff --git a/res/video/video586.png b/res/video/video586.png
new file mode 100644
index 0000000..8ed9a57
Binary files /dev/null and b/res/video/video586.png differ
diff --git a/res/video/video587.png b/res/video/video587.png
new file mode 100644
index 0000000..2585290
Binary files /dev/null and b/res/video/video587.png differ
diff --git a/res/video/video588.png b/res/video/video588.png
new file mode 100644
index 0000000..2c6c369
Binary files /dev/null and b/res/video/video588.png differ
diff --git a/res/video/video589.png b/res/video/video589.png
new file mode 100644
index 0000000..c6eae4e
Binary files /dev/null and b/res/video/video589.png differ
diff --git a/res/video/video59.png b/res/video/video59.png
new file mode 100644
index 0000000..ffd256f
Binary files /dev/null and b/res/video/video59.png differ
diff --git a/res/video/video590.png b/res/video/video590.png
new file mode 100644
index 0000000..c1d7e47
Binary files /dev/null and b/res/video/video590.png differ
diff --git a/res/video/video591.png b/res/video/video591.png
new file mode 100644
index 0000000..41e717d
Binary files /dev/null and b/res/video/video591.png differ
diff --git a/res/video/video592.png b/res/video/video592.png
new file mode 100644
index 0000000..dd6043f
Binary files /dev/null and b/res/video/video592.png differ
diff --git a/res/video/video593.png b/res/video/video593.png
new file mode 100644
index 0000000..0d3fbf0
Binary files /dev/null and b/res/video/video593.png differ
diff --git a/res/video/video594.png b/res/video/video594.png
new file mode 100644
index 0000000..3735235
Binary files /dev/null and b/res/video/video594.png differ
diff --git a/res/video/video595.png b/res/video/video595.png
new file mode 100644
index 0000000..efe5c32
Binary files /dev/null and b/res/video/video595.png differ
diff --git a/res/video/video596.png b/res/video/video596.png
new file mode 100644
index 0000000..387d41f
Binary files /dev/null and b/res/video/video596.png differ
diff --git a/res/video/video597.png b/res/video/video597.png
new file mode 100644
index 0000000..658ac12
Binary files /dev/null and b/res/video/video597.png differ
diff --git a/res/video/video598.png b/res/video/video598.png
new file mode 100644
index 0000000..fede81a
Binary files /dev/null and b/res/video/video598.png differ
diff --git a/res/video/video599.png b/res/video/video599.png
new file mode 100644
index 0000000..78a39ae
Binary files /dev/null and b/res/video/video599.png differ
diff --git a/res/video/video6.png b/res/video/video6.png
new file mode 100644
index 0000000..fe4e9ca
Binary files /dev/null and b/res/video/video6.png differ
diff --git a/res/video/video60.png b/res/video/video60.png
new file mode 100644
index 0000000..8a5edef
Binary files /dev/null and b/res/video/video60.png differ
diff --git a/res/video/video600.png b/res/video/video600.png
new file mode 100644
index 0000000..101fdce
Binary files /dev/null and b/res/video/video600.png differ
diff --git a/res/video/video601.png b/res/video/video601.png
new file mode 100644
index 0000000..3d0552b
Binary files /dev/null and b/res/video/video601.png differ
diff --git a/res/video/video602.png b/res/video/video602.png
new file mode 100644
index 0000000..50e8d0e
Binary files /dev/null and b/res/video/video602.png differ
diff --git a/res/video/video603.png b/res/video/video603.png
new file mode 100644
index 0000000..d2b16ae
Binary files /dev/null and b/res/video/video603.png differ
diff --git a/res/video/video604.png b/res/video/video604.png
new file mode 100644
index 0000000..4d93177
Binary files /dev/null and b/res/video/video604.png differ
diff --git a/res/video/video605.png b/res/video/video605.png
new file mode 100644
index 0000000..fe267fc
Binary files /dev/null and b/res/video/video605.png differ
diff --git a/res/video/video606.png b/res/video/video606.png
new file mode 100644
index 0000000..f6917fb
Binary files /dev/null and b/res/video/video606.png differ
diff --git a/res/video/video607.png b/res/video/video607.png
new file mode 100644
index 0000000..1dec7f4
Binary files /dev/null and b/res/video/video607.png differ
diff --git a/res/video/video608.png b/res/video/video608.png
new file mode 100644
index 0000000..653ad5f
Binary files /dev/null and b/res/video/video608.png differ
diff --git a/res/video/video609.png b/res/video/video609.png
new file mode 100644
index 0000000..f0a4a78
Binary files /dev/null and b/res/video/video609.png differ
diff --git a/res/video/video61.png b/res/video/video61.png
new file mode 100644
index 0000000..7ed72b9
Binary files /dev/null and b/res/video/video61.png differ
diff --git a/res/video/video610.png b/res/video/video610.png
new file mode 100644
index 0000000..c63562c
Binary files /dev/null and b/res/video/video610.png differ
diff --git a/res/video/video611.png b/res/video/video611.png
new file mode 100644
index 0000000..e2c588f
Binary files /dev/null and b/res/video/video611.png differ
diff --git a/res/video/video612.png b/res/video/video612.png
new file mode 100644
index 0000000..801e883
Binary files /dev/null and b/res/video/video612.png differ
diff --git a/res/video/video613.png b/res/video/video613.png
new file mode 100644
index 0000000..cdd07e2
Binary files /dev/null and b/res/video/video613.png differ
diff --git a/res/video/video614.png b/res/video/video614.png
new file mode 100644
index 0000000..ed2cca2
Binary files /dev/null and b/res/video/video614.png differ
diff --git a/res/video/video615.png b/res/video/video615.png
new file mode 100644
index 0000000..da16005
Binary files /dev/null and b/res/video/video615.png differ
diff --git a/res/video/video616.png b/res/video/video616.png
new file mode 100644
index 0000000..50637e5
Binary files /dev/null and b/res/video/video616.png differ
diff --git a/res/video/video617.png b/res/video/video617.png
new file mode 100644
index 0000000..14c269f
Binary files /dev/null and b/res/video/video617.png differ
diff --git a/res/video/video618.png b/res/video/video618.png
new file mode 100644
index 0000000..f09b6ad
Binary files /dev/null and b/res/video/video618.png differ
diff --git a/res/video/video619.png b/res/video/video619.png
new file mode 100644
index 0000000..8df2bd3
Binary files /dev/null and b/res/video/video619.png differ
diff --git a/res/video/video62.png b/res/video/video62.png
new file mode 100644
index 0000000..b91fb87
Binary files /dev/null and b/res/video/video62.png differ
diff --git a/res/video/video620.png b/res/video/video620.png
new file mode 100644
index 0000000..9414884
Binary files /dev/null and b/res/video/video620.png differ
diff --git a/res/video/video621.png b/res/video/video621.png
new file mode 100644
index 0000000..d361d63
Binary files /dev/null and b/res/video/video621.png differ
diff --git a/res/video/video622.png b/res/video/video622.png
new file mode 100644
index 0000000..83aa1f6
Binary files /dev/null and b/res/video/video622.png differ
diff --git a/res/video/video623.png b/res/video/video623.png
new file mode 100644
index 0000000..6ea87ca
Binary files /dev/null and b/res/video/video623.png differ
diff --git a/res/video/video624.png b/res/video/video624.png
new file mode 100644
index 0000000..891d169
Binary files /dev/null and b/res/video/video624.png differ
diff --git a/res/video/video625.png b/res/video/video625.png
new file mode 100644
index 0000000..9fd77d1
Binary files /dev/null and b/res/video/video625.png differ
diff --git a/res/video/video626.png b/res/video/video626.png
new file mode 100644
index 0000000..3efe9b2
Binary files /dev/null and b/res/video/video626.png differ
diff --git a/res/video/video627.png b/res/video/video627.png
new file mode 100644
index 0000000..f23b9af
Binary files /dev/null and b/res/video/video627.png differ
diff --git a/res/video/video628.png b/res/video/video628.png
new file mode 100644
index 0000000..dbee6cf
Binary files /dev/null and b/res/video/video628.png differ
diff --git a/res/video/video629.png b/res/video/video629.png
new file mode 100644
index 0000000..87faf17
Binary files /dev/null and b/res/video/video629.png differ
diff --git a/res/video/video63.png b/res/video/video63.png
new file mode 100644
index 0000000..d6a3824
Binary files /dev/null and b/res/video/video63.png differ
diff --git a/res/video/video630.png b/res/video/video630.png
new file mode 100644
index 0000000..d306b96
Binary files /dev/null and b/res/video/video630.png differ
diff --git a/res/video/video631.png b/res/video/video631.png
new file mode 100644
index 0000000..876aa31
Binary files /dev/null and b/res/video/video631.png differ
diff --git a/res/video/video632.png b/res/video/video632.png
new file mode 100644
index 0000000..a74aefc
Binary files /dev/null and b/res/video/video632.png differ
diff --git a/res/video/video633.png b/res/video/video633.png
new file mode 100644
index 0000000..5e28016
Binary files /dev/null and b/res/video/video633.png differ
diff --git a/res/video/video634.png b/res/video/video634.png
new file mode 100644
index 0000000..b5408f2
Binary files /dev/null and b/res/video/video634.png differ
diff --git a/res/video/video635.png b/res/video/video635.png
new file mode 100644
index 0000000..2fc7dd4
Binary files /dev/null and b/res/video/video635.png differ
diff --git a/res/video/video636.png b/res/video/video636.png
new file mode 100644
index 0000000..afe6122
Binary files /dev/null and b/res/video/video636.png differ
diff --git a/res/video/video637.png b/res/video/video637.png
new file mode 100644
index 0000000..f00b42c
Binary files /dev/null and b/res/video/video637.png differ
diff --git a/res/video/video638.png b/res/video/video638.png
new file mode 100644
index 0000000..8966183
Binary files /dev/null and b/res/video/video638.png differ
diff --git a/res/video/video639.png b/res/video/video639.png
new file mode 100644
index 0000000..b08f311
Binary files /dev/null and b/res/video/video639.png differ
diff --git a/res/video/video64.png b/res/video/video64.png
new file mode 100644
index 0000000..1830771
Binary files /dev/null and b/res/video/video64.png differ
diff --git a/res/video/video640.png b/res/video/video640.png
new file mode 100644
index 0000000..1407e00
Binary files /dev/null and b/res/video/video640.png differ
diff --git a/res/video/video641.png b/res/video/video641.png
new file mode 100644
index 0000000..256d683
Binary files /dev/null and b/res/video/video641.png differ
diff --git a/res/video/video642.png b/res/video/video642.png
new file mode 100644
index 0000000..dfaeb9f
Binary files /dev/null and b/res/video/video642.png differ
diff --git a/res/video/video643.png b/res/video/video643.png
new file mode 100644
index 0000000..ca9e94f
Binary files /dev/null and b/res/video/video643.png differ
diff --git a/res/video/video644.png b/res/video/video644.png
new file mode 100644
index 0000000..e63464d
Binary files /dev/null and b/res/video/video644.png differ
diff --git a/res/video/video645.png b/res/video/video645.png
new file mode 100644
index 0000000..ce7619e
Binary files /dev/null and b/res/video/video645.png differ
diff --git a/res/video/video646.png b/res/video/video646.png
new file mode 100644
index 0000000..aadbda2
Binary files /dev/null and b/res/video/video646.png differ
diff --git a/res/video/video647.png b/res/video/video647.png
new file mode 100644
index 0000000..86a3c7c
Binary files /dev/null and b/res/video/video647.png differ
diff --git a/res/video/video648.png b/res/video/video648.png
new file mode 100644
index 0000000..1cde94a
Binary files /dev/null and b/res/video/video648.png differ
diff --git a/res/video/video649.png b/res/video/video649.png
new file mode 100644
index 0000000..2c5be7f
Binary files /dev/null and b/res/video/video649.png differ
diff --git a/res/video/video65.png b/res/video/video65.png
new file mode 100644
index 0000000..e818e2f
Binary files /dev/null and b/res/video/video65.png differ
diff --git a/res/video/video650.png b/res/video/video650.png
new file mode 100644
index 0000000..91c5841
Binary files /dev/null and b/res/video/video650.png differ
diff --git a/res/video/video651.png b/res/video/video651.png
new file mode 100644
index 0000000..566389e
Binary files /dev/null and b/res/video/video651.png differ
diff --git a/res/video/video652.png b/res/video/video652.png
new file mode 100644
index 0000000..ab7954c
Binary files /dev/null and b/res/video/video652.png differ
diff --git a/res/video/video653.png b/res/video/video653.png
new file mode 100644
index 0000000..618827f
Binary files /dev/null and b/res/video/video653.png differ
diff --git a/res/video/video654.png b/res/video/video654.png
new file mode 100644
index 0000000..37e4003
Binary files /dev/null and b/res/video/video654.png differ
diff --git a/res/video/video655.png b/res/video/video655.png
new file mode 100644
index 0000000..6a06167
Binary files /dev/null and b/res/video/video655.png differ
diff --git a/res/video/video656.png b/res/video/video656.png
new file mode 100644
index 0000000..8c0b974
Binary files /dev/null and b/res/video/video656.png differ
diff --git a/res/video/video657.png b/res/video/video657.png
new file mode 100644
index 0000000..86521dc
Binary files /dev/null and b/res/video/video657.png differ
diff --git a/res/video/video658.png b/res/video/video658.png
new file mode 100644
index 0000000..b64220c
Binary files /dev/null and b/res/video/video658.png differ
diff --git a/res/video/video659.png b/res/video/video659.png
new file mode 100644
index 0000000..212794e
Binary files /dev/null and b/res/video/video659.png differ
diff --git a/res/video/video66.png b/res/video/video66.png
new file mode 100644
index 0000000..77d175c
Binary files /dev/null and b/res/video/video66.png differ
diff --git a/res/video/video660.png b/res/video/video660.png
new file mode 100644
index 0000000..3c65ec6
Binary files /dev/null and b/res/video/video660.png differ
diff --git a/res/video/video661.png b/res/video/video661.png
new file mode 100644
index 0000000..d65d62b
Binary files /dev/null and b/res/video/video661.png differ
diff --git a/res/video/video662.png b/res/video/video662.png
new file mode 100644
index 0000000..4d20507
Binary files /dev/null and b/res/video/video662.png differ
diff --git a/res/video/video663.png b/res/video/video663.png
new file mode 100644
index 0000000..dc4d8f2
Binary files /dev/null and b/res/video/video663.png differ
diff --git a/res/video/video664.png b/res/video/video664.png
new file mode 100644
index 0000000..3358827
Binary files /dev/null and b/res/video/video664.png differ
diff --git a/res/video/video665.png b/res/video/video665.png
new file mode 100644
index 0000000..86f34ab
Binary files /dev/null and b/res/video/video665.png differ
diff --git a/res/video/video666.png b/res/video/video666.png
new file mode 100644
index 0000000..5fc9bc1
Binary files /dev/null and b/res/video/video666.png differ
diff --git a/res/video/video667.png b/res/video/video667.png
new file mode 100644
index 0000000..f71206e
Binary files /dev/null and b/res/video/video667.png differ
diff --git a/res/video/video668.png b/res/video/video668.png
new file mode 100644
index 0000000..4b37d64
Binary files /dev/null and b/res/video/video668.png differ
diff --git a/res/video/video669.png b/res/video/video669.png
new file mode 100644
index 0000000..2cc973c
Binary files /dev/null and b/res/video/video669.png differ
diff --git a/res/video/video67.png b/res/video/video67.png
new file mode 100644
index 0000000..604e401
Binary files /dev/null and b/res/video/video67.png differ
diff --git a/res/video/video670.png b/res/video/video670.png
new file mode 100644
index 0000000..ce1bee1
Binary files /dev/null and b/res/video/video670.png differ
diff --git a/res/video/video671.png b/res/video/video671.png
new file mode 100644
index 0000000..599bb3e
Binary files /dev/null and b/res/video/video671.png differ
diff --git a/res/video/video672.png b/res/video/video672.png
new file mode 100644
index 0000000..aa2f08a
Binary files /dev/null and b/res/video/video672.png differ
diff --git a/res/video/video673.png b/res/video/video673.png
new file mode 100644
index 0000000..6dcee39
Binary files /dev/null and b/res/video/video673.png differ
diff --git a/res/video/video674.png b/res/video/video674.png
new file mode 100644
index 0000000..1ddfc44
Binary files /dev/null and b/res/video/video674.png differ
diff --git a/res/video/video675.png b/res/video/video675.png
new file mode 100644
index 0000000..0f81084
Binary files /dev/null and b/res/video/video675.png differ
diff --git a/res/video/video676.png b/res/video/video676.png
new file mode 100644
index 0000000..77f3d2c
Binary files /dev/null and b/res/video/video676.png differ
diff --git a/res/video/video677.png b/res/video/video677.png
new file mode 100644
index 0000000..87a8316
Binary files /dev/null and b/res/video/video677.png differ
diff --git a/res/video/video678.png b/res/video/video678.png
new file mode 100644
index 0000000..6ba8968
Binary files /dev/null and b/res/video/video678.png differ
diff --git a/res/video/video679.png b/res/video/video679.png
new file mode 100644
index 0000000..4e31cb4
Binary files /dev/null and b/res/video/video679.png differ
diff --git a/res/video/video68.png b/res/video/video68.png
new file mode 100644
index 0000000..cdd5fe2
Binary files /dev/null and b/res/video/video68.png differ
diff --git a/res/video/video680.png b/res/video/video680.png
new file mode 100644
index 0000000..bb2f6d4
Binary files /dev/null and b/res/video/video680.png differ
diff --git a/res/video/video681.png b/res/video/video681.png
new file mode 100644
index 0000000..cae3b81
Binary files /dev/null and b/res/video/video681.png differ
diff --git a/res/video/video682.png b/res/video/video682.png
new file mode 100644
index 0000000..aa26e36
Binary files /dev/null and b/res/video/video682.png differ
diff --git a/res/video/video683.png b/res/video/video683.png
new file mode 100644
index 0000000..dc288e2
Binary files /dev/null and b/res/video/video683.png differ
diff --git a/res/video/video684.png b/res/video/video684.png
new file mode 100644
index 0000000..90782c4
Binary files /dev/null and b/res/video/video684.png differ
diff --git a/res/video/video685.png b/res/video/video685.png
new file mode 100644
index 0000000..b0d1126
Binary files /dev/null and b/res/video/video685.png differ
diff --git a/res/video/video686.png b/res/video/video686.png
new file mode 100644
index 0000000..0e3c73e
Binary files /dev/null and b/res/video/video686.png differ
diff --git a/res/video/video687.png b/res/video/video687.png
new file mode 100644
index 0000000..7f2cba1
Binary files /dev/null and b/res/video/video687.png differ
diff --git a/res/video/video688.png b/res/video/video688.png
new file mode 100644
index 0000000..8871f04
Binary files /dev/null and b/res/video/video688.png differ
diff --git a/res/video/video689.png b/res/video/video689.png
new file mode 100644
index 0000000..17ce24f
Binary files /dev/null and b/res/video/video689.png differ
diff --git a/res/video/video69.png b/res/video/video69.png
new file mode 100644
index 0000000..aeb0470
Binary files /dev/null and b/res/video/video69.png differ
diff --git a/res/video/video690.png b/res/video/video690.png
new file mode 100644
index 0000000..dbc1190
Binary files /dev/null and b/res/video/video690.png differ
diff --git a/res/video/video691.png b/res/video/video691.png
new file mode 100644
index 0000000..a7f7d7f
Binary files /dev/null and b/res/video/video691.png differ
diff --git a/res/video/video692.png b/res/video/video692.png
new file mode 100644
index 0000000..31729bc
Binary files /dev/null and b/res/video/video692.png differ
diff --git a/res/video/video693.png b/res/video/video693.png
new file mode 100644
index 0000000..dd9c945
Binary files /dev/null and b/res/video/video693.png differ
diff --git a/res/video/video694.png b/res/video/video694.png
new file mode 100644
index 0000000..07c027b
Binary files /dev/null and b/res/video/video694.png differ
diff --git a/res/video/video695.png b/res/video/video695.png
new file mode 100644
index 0000000..0115f14
Binary files /dev/null and b/res/video/video695.png differ
diff --git a/res/video/video696.png b/res/video/video696.png
new file mode 100644
index 0000000..944be6c
Binary files /dev/null and b/res/video/video696.png differ
diff --git a/res/video/video697.png b/res/video/video697.png
new file mode 100644
index 0000000..e5c6388
Binary files /dev/null and b/res/video/video697.png differ
diff --git a/res/video/video698.png b/res/video/video698.png
new file mode 100644
index 0000000..a222d83
Binary files /dev/null and b/res/video/video698.png differ
diff --git a/res/video/video699.png b/res/video/video699.png
new file mode 100644
index 0000000..caef055
Binary files /dev/null and b/res/video/video699.png differ
diff --git a/res/video/video7.png b/res/video/video7.png
new file mode 100644
index 0000000..fe4e9ca
Binary files /dev/null and b/res/video/video7.png differ
diff --git a/res/video/video70.png b/res/video/video70.png
new file mode 100644
index 0000000..9a1d1c6
Binary files /dev/null and b/res/video/video70.png differ
diff --git a/res/video/video700.png b/res/video/video700.png
new file mode 100644
index 0000000..1e3017c
Binary files /dev/null and b/res/video/video700.png differ
diff --git a/res/video/video701.png b/res/video/video701.png
new file mode 100644
index 0000000..40c04e0
Binary files /dev/null and b/res/video/video701.png differ
diff --git a/res/video/video702.png b/res/video/video702.png
new file mode 100644
index 0000000..c045fa1
Binary files /dev/null and b/res/video/video702.png differ
diff --git a/res/video/video703.png b/res/video/video703.png
new file mode 100644
index 0000000..1fcefdd
Binary files /dev/null and b/res/video/video703.png differ
diff --git a/res/video/video704.png b/res/video/video704.png
new file mode 100644
index 0000000..1c6bc3c
Binary files /dev/null and b/res/video/video704.png differ
diff --git a/res/video/video705.png b/res/video/video705.png
new file mode 100644
index 0000000..cd2b9ba
Binary files /dev/null and b/res/video/video705.png differ
diff --git a/res/video/video706.png b/res/video/video706.png
new file mode 100644
index 0000000..05f8bc2
Binary files /dev/null and b/res/video/video706.png differ
diff --git a/res/video/video707.png b/res/video/video707.png
new file mode 100644
index 0000000..fe52c0c
Binary files /dev/null and b/res/video/video707.png differ
diff --git a/res/video/video708.png b/res/video/video708.png
new file mode 100644
index 0000000..4bff8a9
Binary files /dev/null and b/res/video/video708.png differ
diff --git a/res/video/video709.png b/res/video/video709.png
new file mode 100644
index 0000000..4742795
Binary files /dev/null and b/res/video/video709.png differ
diff --git a/res/video/video71.png b/res/video/video71.png
new file mode 100644
index 0000000..2bf5328
Binary files /dev/null and b/res/video/video71.png differ
diff --git a/res/video/video710.png b/res/video/video710.png
new file mode 100644
index 0000000..e05ab8b
Binary files /dev/null and b/res/video/video710.png differ
diff --git a/res/video/video711.png b/res/video/video711.png
new file mode 100644
index 0000000..9fc89db
Binary files /dev/null and b/res/video/video711.png differ
diff --git a/res/video/video712.png b/res/video/video712.png
new file mode 100644
index 0000000..213e70c
Binary files /dev/null and b/res/video/video712.png differ
diff --git a/res/video/video713.png b/res/video/video713.png
new file mode 100644
index 0000000..9fe4f44
Binary files /dev/null and b/res/video/video713.png differ
diff --git a/res/video/video714.png b/res/video/video714.png
new file mode 100644
index 0000000..1490b55
Binary files /dev/null and b/res/video/video714.png differ
diff --git a/res/video/video715.png b/res/video/video715.png
new file mode 100644
index 0000000..12daa54
Binary files /dev/null and b/res/video/video715.png differ
diff --git a/res/video/video716.png b/res/video/video716.png
new file mode 100644
index 0000000..dd0d65b
Binary files /dev/null and b/res/video/video716.png differ
diff --git a/res/video/video717.png b/res/video/video717.png
new file mode 100644
index 0000000..c87a25c
Binary files /dev/null and b/res/video/video717.png differ
diff --git a/res/video/video718.png b/res/video/video718.png
new file mode 100644
index 0000000..a99b31b
Binary files /dev/null and b/res/video/video718.png differ
diff --git a/res/video/video719.png b/res/video/video719.png
new file mode 100644
index 0000000..91dd7a2
Binary files /dev/null and b/res/video/video719.png differ
diff --git a/res/video/video72.png b/res/video/video72.png
new file mode 100644
index 0000000..8068989
Binary files /dev/null and b/res/video/video72.png differ
diff --git a/res/video/video720.png b/res/video/video720.png
new file mode 100644
index 0000000..f71b7f1
Binary files /dev/null and b/res/video/video720.png differ
diff --git a/res/video/video721.png b/res/video/video721.png
new file mode 100644
index 0000000..779e8d7
Binary files /dev/null and b/res/video/video721.png differ
diff --git a/res/video/video722.png b/res/video/video722.png
new file mode 100644
index 0000000..87da38d
Binary files /dev/null and b/res/video/video722.png differ
diff --git a/res/video/video723.png b/res/video/video723.png
new file mode 100644
index 0000000..9277722
Binary files /dev/null and b/res/video/video723.png differ
diff --git a/res/video/video724.png b/res/video/video724.png
new file mode 100644
index 0000000..63acbc7
Binary files /dev/null and b/res/video/video724.png differ
diff --git a/res/video/video725.png b/res/video/video725.png
new file mode 100644
index 0000000..54d74ae
Binary files /dev/null and b/res/video/video725.png differ
diff --git a/res/video/video726.png b/res/video/video726.png
new file mode 100644
index 0000000..c917a56
Binary files /dev/null and b/res/video/video726.png differ
diff --git a/res/video/video727.png b/res/video/video727.png
new file mode 100644
index 0000000..f03e1d6
Binary files /dev/null and b/res/video/video727.png differ
diff --git a/res/video/video728.png b/res/video/video728.png
new file mode 100644
index 0000000..7559cdf
Binary files /dev/null and b/res/video/video728.png differ
diff --git a/res/video/video729.png b/res/video/video729.png
new file mode 100644
index 0000000..4fdc063
Binary files /dev/null and b/res/video/video729.png differ
diff --git a/res/video/video73.png b/res/video/video73.png
new file mode 100644
index 0000000..6f05111
Binary files /dev/null and b/res/video/video73.png differ
diff --git a/res/video/video730.png b/res/video/video730.png
new file mode 100644
index 0000000..bd91070
Binary files /dev/null and b/res/video/video730.png differ
diff --git a/res/video/video731.png b/res/video/video731.png
new file mode 100644
index 0000000..87121b4
Binary files /dev/null and b/res/video/video731.png differ
diff --git a/res/video/video732.png b/res/video/video732.png
new file mode 100644
index 0000000..addd1e1
Binary files /dev/null and b/res/video/video732.png differ
diff --git a/res/video/video733.png b/res/video/video733.png
new file mode 100644
index 0000000..cfefdb6
Binary files /dev/null and b/res/video/video733.png differ
diff --git a/res/video/video734.png b/res/video/video734.png
new file mode 100644
index 0000000..8e82db0
Binary files /dev/null and b/res/video/video734.png differ
diff --git a/res/video/video735.png b/res/video/video735.png
new file mode 100644
index 0000000..53d2f1c
Binary files /dev/null and b/res/video/video735.png differ
diff --git a/res/video/video736.png b/res/video/video736.png
new file mode 100644
index 0000000..cb69249
Binary files /dev/null and b/res/video/video736.png differ
diff --git a/res/video/video737.png b/res/video/video737.png
new file mode 100644
index 0000000..ac0e266
Binary files /dev/null and b/res/video/video737.png differ
diff --git a/res/video/video738.png b/res/video/video738.png
new file mode 100644
index 0000000..a2a07cf
Binary files /dev/null and b/res/video/video738.png differ
diff --git a/res/video/video739.png b/res/video/video739.png
new file mode 100644
index 0000000..78b3096
Binary files /dev/null and b/res/video/video739.png differ
diff --git a/res/video/video74.png b/res/video/video74.png
new file mode 100644
index 0000000..b61a64f
Binary files /dev/null and b/res/video/video74.png differ
diff --git a/res/video/video740.png b/res/video/video740.png
new file mode 100644
index 0000000..8fbf75f
Binary files /dev/null and b/res/video/video740.png differ
diff --git a/res/video/video741.png b/res/video/video741.png
new file mode 100644
index 0000000..6515f80
Binary files /dev/null and b/res/video/video741.png differ
diff --git a/res/video/video742.png b/res/video/video742.png
new file mode 100644
index 0000000..1c9b74e
Binary files /dev/null and b/res/video/video742.png differ
diff --git a/res/video/video743.png b/res/video/video743.png
new file mode 100644
index 0000000..905fea3
Binary files /dev/null and b/res/video/video743.png differ
diff --git a/res/video/video744.png b/res/video/video744.png
new file mode 100644
index 0000000..0f1211c
Binary files /dev/null and b/res/video/video744.png differ
diff --git a/res/video/video745.png b/res/video/video745.png
new file mode 100644
index 0000000..cf1e92e
Binary files /dev/null and b/res/video/video745.png differ
diff --git a/res/video/video746.png b/res/video/video746.png
new file mode 100644
index 0000000..c6d886d
Binary files /dev/null and b/res/video/video746.png differ
diff --git a/res/video/video747.png b/res/video/video747.png
new file mode 100644
index 0000000..7193b7c
Binary files /dev/null and b/res/video/video747.png differ
diff --git a/res/video/video748.png b/res/video/video748.png
new file mode 100644
index 0000000..2536679
Binary files /dev/null and b/res/video/video748.png differ
diff --git a/res/video/video749.png b/res/video/video749.png
new file mode 100644
index 0000000..65db7ef
Binary files /dev/null and b/res/video/video749.png differ
diff --git a/res/video/video75.png b/res/video/video75.png
new file mode 100644
index 0000000..6085efa
Binary files /dev/null and b/res/video/video75.png differ
diff --git a/res/video/video750.png b/res/video/video750.png
new file mode 100644
index 0000000..64e726e
Binary files /dev/null and b/res/video/video750.png differ
diff --git a/res/video/video751.png b/res/video/video751.png
new file mode 100644
index 0000000..53939f1
Binary files /dev/null and b/res/video/video751.png differ
diff --git a/res/video/video752.png b/res/video/video752.png
new file mode 100644
index 0000000..acb0ad0
Binary files /dev/null and b/res/video/video752.png differ
diff --git a/res/video/video753.png b/res/video/video753.png
new file mode 100644
index 0000000..e0b4900
Binary files /dev/null and b/res/video/video753.png differ
diff --git a/res/video/video754.png b/res/video/video754.png
new file mode 100644
index 0000000..2a6df73
Binary files /dev/null and b/res/video/video754.png differ
diff --git a/res/video/video755.png b/res/video/video755.png
new file mode 100644
index 0000000..35cc930
Binary files /dev/null and b/res/video/video755.png differ
diff --git a/res/video/video756.png b/res/video/video756.png
new file mode 100644
index 0000000..aa1f6f1
Binary files /dev/null and b/res/video/video756.png differ
diff --git a/res/video/video757.png b/res/video/video757.png
new file mode 100644
index 0000000..0b2b6b5
Binary files /dev/null and b/res/video/video757.png differ
diff --git a/res/video/video758.png b/res/video/video758.png
new file mode 100644
index 0000000..3197065
Binary files /dev/null and b/res/video/video758.png differ
diff --git a/res/video/video759.png b/res/video/video759.png
new file mode 100644
index 0000000..dd40d82
Binary files /dev/null and b/res/video/video759.png differ
diff --git a/res/video/video76.png b/res/video/video76.png
new file mode 100644
index 0000000..93ca7c6
Binary files /dev/null and b/res/video/video76.png differ
diff --git a/res/video/video760.png b/res/video/video760.png
new file mode 100644
index 0000000..d2075f7
Binary files /dev/null and b/res/video/video760.png differ
diff --git a/res/video/video761.png b/res/video/video761.png
new file mode 100644
index 0000000..3bee5ff
Binary files /dev/null and b/res/video/video761.png differ
diff --git a/res/video/video762.png b/res/video/video762.png
new file mode 100644
index 0000000..713ad99
Binary files /dev/null and b/res/video/video762.png differ
diff --git a/res/video/video763.png b/res/video/video763.png
new file mode 100644
index 0000000..db6988f
Binary files /dev/null and b/res/video/video763.png differ
diff --git a/res/video/video764.png b/res/video/video764.png
new file mode 100644
index 0000000..891de27
Binary files /dev/null and b/res/video/video764.png differ
diff --git a/res/video/video765.png b/res/video/video765.png
new file mode 100644
index 0000000..7f13476
Binary files /dev/null and b/res/video/video765.png differ
diff --git a/res/video/video766.png b/res/video/video766.png
new file mode 100644
index 0000000..3731450
Binary files /dev/null and b/res/video/video766.png differ
diff --git a/res/video/video767.png b/res/video/video767.png
new file mode 100644
index 0000000..d6a4a8a
Binary files /dev/null and b/res/video/video767.png differ
diff --git a/res/video/video768.png b/res/video/video768.png
new file mode 100644
index 0000000..50e3769
Binary files /dev/null and b/res/video/video768.png differ
diff --git a/res/video/video769.png b/res/video/video769.png
new file mode 100644
index 0000000..62fe19a
Binary files /dev/null and b/res/video/video769.png differ
diff --git a/res/video/video77.png b/res/video/video77.png
new file mode 100644
index 0000000..b415876
Binary files /dev/null and b/res/video/video77.png differ
diff --git a/res/video/video770.png b/res/video/video770.png
new file mode 100644
index 0000000..7b0080f
Binary files /dev/null and b/res/video/video770.png differ
diff --git a/res/video/video771.png b/res/video/video771.png
new file mode 100644
index 0000000..ee37470
Binary files /dev/null and b/res/video/video771.png differ
diff --git a/res/video/video772.png b/res/video/video772.png
new file mode 100644
index 0000000..5bfac5c
Binary files /dev/null and b/res/video/video772.png differ
diff --git a/res/video/video773.png b/res/video/video773.png
new file mode 100644
index 0000000..2249fb0
Binary files /dev/null and b/res/video/video773.png differ
diff --git a/res/video/video774.png b/res/video/video774.png
new file mode 100644
index 0000000..26f5f03
Binary files /dev/null and b/res/video/video774.png differ
diff --git a/res/video/video775.png b/res/video/video775.png
new file mode 100644
index 0000000..c4b6efd
Binary files /dev/null and b/res/video/video775.png differ
diff --git a/res/video/video776.png b/res/video/video776.png
new file mode 100644
index 0000000..23cf26d
Binary files /dev/null and b/res/video/video776.png differ
diff --git a/res/video/video777.png b/res/video/video777.png
new file mode 100644
index 0000000..a09faee
Binary files /dev/null and b/res/video/video777.png differ
diff --git a/res/video/video778.png b/res/video/video778.png
new file mode 100644
index 0000000..d78d201
Binary files /dev/null and b/res/video/video778.png differ
diff --git a/res/video/video779.png b/res/video/video779.png
new file mode 100644
index 0000000..46104cc
Binary files /dev/null and b/res/video/video779.png differ
diff --git a/res/video/video78.png b/res/video/video78.png
new file mode 100644
index 0000000..950e36f
Binary files /dev/null and b/res/video/video78.png differ
diff --git a/res/video/video780.png b/res/video/video780.png
new file mode 100644
index 0000000..a2ba1a4
Binary files /dev/null and b/res/video/video780.png differ
diff --git a/res/video/video781.png b/res/video/video781.png
new file mode 100644
index 0000000..80d16e4
Binary files /dev/null and b/res/video/video781.png differ
diff --git a/res/video/video782.png b/res/video/video782.png
new file mode 100644
index 0000000..b3e45e4
Binary files /dev/null and b/res/video/video782.png differ
diff --git a/res/video/video783.png b/res/video/video783.png
new file mode 100644
index 0000000..82696b3
Binary files /dev/null and b/res/video/video783.png differ
diff --git a/res/video/video784.png b/res/video/video784.png
new file mode 100644
index 0000000..ef11598
Binary files /dev/null and b/res/video/video784.png differ
diff --git a/res/video/video785.png b/res/video/video785.png
new file mode 100644
index 0000000..4ded77a
Binary files /dev/null and b/res/video/video785.png differ
diff --git a/res/video/video786.png b/res/video/video786.png
new file mode 100644
index 0000000..2957468
Binary files /dev/null and b/res/video/video786.png differ
diff --git a/res/video/video787.png b/res/video/video787.png
new file mode 100644
index 0000000..be46f4f
Binary files /dev/null and b/res/video/video787.png differ
diff --git a/res/video/video788.png b/res/video/video788.png
new file mode 100644
index 0000000..cb738bb
Binary files /dev/null and b/res/video/video788.png differ
diff --git a/res/video/video789.png b/res/video/video789.png
new file mode 100644
index 0000000..2398280
Binary files /dev/null and b/res/video/video789.png differ
diff --git a/res/video/video79.png b/res/video/video79.png
new file mode 100644
index 0000000..7891c39
Binary files /dev/null and b/res/video/video79.png differ
diff --git a/res/video/video790.png b/res/video/video790.png
new file mode 100644
index 0000000..290bec9
Binary files /dev/null and b/res/video/video790.png differ
diff --git a/res/video/video791.png b/res/video/video791.png
new file mode 100644
index 0000000..62ce68b
Binary files /dev/null and b/res/video/video791.png differ
diff --git a/res/video/video792.png b/res/video/video792.png
new file mode 100644
index 0000000..27da7d5
Binary files /dev/null and b/res/video/video792.png differ
diff --git a/res/video/video793.png b/res/video/video793.png
new file mode 100644
index 0000000..1a25258
Binary files /dev/null and b/res/video/video793.png differ
diff --git a/res/video/video794.png b/res/video/video794.png
new file mode 100644
index 0000000..a759743
Binary files /dev/null and b/res/video/video794.png differ
diff --git a/res/video/video795.png b/res/video/video795.png
new file mode 100644
index 0000000..374103f
Binary files /dev/null and b/res/video/video795.png differ
diff --git a/res/video/video796.png b/res/video/video796.png
new file mode 100644
index 0000000..926202d
Binary files /dev/null and b/res/video/video796.png differ
diff --git a/res/video/video797.png b/res/video/video797.png
new file mode 100644
index 0000000..ef4b98c
Binary files /dev/null and b/res/video/video797.png differ
diff --git a/res/video/video798.png b/res/video/video798.png
new file mode 100644
index 0000000..796ca89
Binary files /dev/null and b/res/video/video798.png differ
diff --git a/res/video/video799.png b/res/video/video799.png
new file mode 100644
index 0000000..c0c79ce
Binary files /dev/null and b/res/video/video799.png differ
diff --git a/res/video/video8.png b/res/video/video8.png
new file mode 100644
index 0000000..fe4e9ca
Binary files /dev/null and b/res/video/video8.png differ
diff --git a/res/video/video80.png b/res/video/video80.png
new file mode 100644
index 0000000..627fd27
Binary files /dev/null and b/res/video/video80.png differ
diff --git a/res/video/video800.png b/res/video/video800.png
new file mode 100644
index 0000000..4470027
Binary files /dev/null and b/res/video/video800.png differ
diff --git a/res/video/video801.png b/res/video/video801.png
new file mode 100644
index 0000000..0f4c723
Binary files /dev/null and b/res/video/video801.png differ
diff --git a/res/video/video802.png b/res/video/video802.png
new file mode 100644
index 0000000..33f01b4
Binary files /dev/null and b/res/video/video802.png differ
diff --git a/res/video/video803.png b/res/video/video803.png
new file mode 100644
index 0000000..cf2d5e6
Binary files /dev/null and b/res/video/video803.png differ
diff --git a/res/video/video81.png b/res/video/video81.png
new file mode 100644
index 0000000..bfb1ac2
Binary files /dev/null and b/res/video/video81.png differ
diff --git a/res/video/video82.png b/res/video/video82.png
new file mode 100644
index 0000000..13d89ab
Binary files /dev/null and b/res/video/video82.png differ
diff --git a/res/video/video83.png b/res/video/video83.png
new file mode 100644
index 0000000..af7089f
Binary files /dev/null and b/res/video/video83.png differ
diff --git a/res/video/video84.png b/res/video/video84.png
new file mode 100644
index 0000000..7684f0e
Binary files /dev/null and b/res/video/video84.png differ
diff --git a/res/video/video85.png b/res/video/video85.png
new file mode 100644
index 0000000..4e9fe57
Binary files /dev/null and b/res/video/video85.png differ
diff --git a/res/video/video86.png b/res/video/video86.png
new file mode 100644
index 0000000..5252cd5
Binary files /dev/null and b/res/video/video86.png differ
diff --git a/res/video/video87.png b/res/video/video87.png
new file mode 100644
index 0000000..443d656
Binary files /dev/null and b/res/video/video87.png differ
diff --git a/res/video/video88.png b/res/video/video88.png
new file mode 100644
index 0000000..c5fa59c
Binary files /dev/null and b/res/video/video88.png differ
diff --git a/res/video/video89.png b/res/video/video89.png
new file mode 100644
index 0000000..6789dce
Binary files /dev/null and b/res/video/video89.png differ
diff --git a/res/video/video9.png b/res/video/video9.png
new file mode 100644
index 0000000..fe4e9ca
Binary files /dev/null and b/res/video/video9.png differ
diff --git a/res/video/video90.png b/res/video/video90.png
new file mode 100644
index 0000000..0af0a55
Binary files /dev/null and b/res/video/video90.png differ
diff --git a/res/video/video91.png b/res/video/video91.png
new file mode 100644
index 0000000..752a100
Binary files /dev/null and b/res/video/video91.png differ
diff --git a/res/video/video92.png b/res/video/video92.png
new file mode 100644
index 0000000..defa6dc
Binary files /dev/null and b/res/video/video92.png differ
diff --git a/res/video/video93.png b/res/video/video93.png
new file mode 100644
index 0000000..511e61c
Binary files /dev/null and b/res/video/video93.png differ
diff --git a/res/video/video94.png b/res/video/video94.png
new file mode 100644
index 0000000..1498df8
Binary files /dev/null and b/res/video/video94.png differ
diff --git a/res/video/video95.png b/res/video/video95.png
new file mode 100644
index 0000000..8017c8b
Binary files /dev/null and b/res/video/video95.png differ
diff --git a/res/video/video96.png b/res/video/video96.png
new file mode 100644
index 0000000..21cbef5
Binary files /dev/null and b/res/video/video96.png differ
diff --git a/res/video/video97.png b/res/video/video97.png
new file mode 100644
index 0000000..343f83c
Binary files /dev/null and b/res/video/video97.png differ
diff --git a/res/video/video98.png b/res/video/video98.png
new file mode 100644
index 0000000..2c20727
Binary files /dev/null and b/res/video/video98.png differ
diff --git a/res/video/video99.png b/res/video/video99.png
new file mode 100644
index 0000000..2dda1ce
Binary files /dev/null and b/res/video/video99.png differ
diff --git a/src/META-INF/MANIFEST.MF b/src/META-INF/MANIFEST.MF
new file mode 100644
index 0000000..ec5448b
--- /dev/null
+++ b/src/META-INF/MANIFEST.MF
@@ -0,0 +1,3 @@
+Manifest-Version: 1.0
+Main-Class: main.Main
+
diff --git a/src/Scene/Objects/AInterestingVideo.java b/src/Scene/Objects/AInterestingVideo.java
new file mode 100644
index 0000000..70119b2
--- /dev/null
+++ b/src/Scene/Objects/AInterestingVideo.java
@@ -0,0 +1,63 @@
+package Scene.Objects;
+
+import Scene.base.SceneObject;
+import base.GraphicsObjects.Point4f;
+import base.GraphicsObjects.Vector4f;
+import base.objects3D.DisplayListTexCube;
+import org.lwjgl.opengl.GL11;
+import org.newdawn.slick.Color;
+import org.newdawn.slick.opengl.Texture;
+
+import java.util.HashMap;
+
+/**
+ * @Author: WangYuyang
+ * @Date: 2021/11/5-23:09
+ * @Project: Assignment3
+ * @Package: Scene.Objects
+ * @Description:
+ **/
+public class AInterestingVideo extends SceneObject {
+ private DisplayListTexCube cube = new DisplayListTexCube();
+ private Integer counter = 1;
+ public AInterestingVideo(Point4f origin, Point4f position, Vector4f scale) {
+ super(origin, position, scale);
+ }
+
+ public AInterestingVideo(Point4f origin, Point4f position, Vector4f scale, HashMap textures) {
+ super(origin, position, scale, textures);
+ }
+
+ public AInterestingVideo(Point4f origin, Point4f position, Vector4f scale, Vector4f rotation, HashMap textures) {
+ super(origin, position, scale, rotation, textures);
+ }
+
+ @Override
+ public void draw(Integer frame_delta) {
+ GL11.glTexParameteri(
+ GL11.GL_TEXTURE_2D, GL11.GL_TEXTURE_WRAP_T,
+ GL11.GL_REPEAT);
+ GL11.glTexParameteri(
+ GL11.GL_TEXTURE_2D, GL11.GL_TEXTURE_WRAP_S,
+ GL11.GL_REPEAT);
+ Color.white.bind();
+
+ //bind texture
+ getTextures().get("video/video" + counter).bind();
+// GL11.glRotatef(90, 0,1,0);;
+ GL11.glDisable(GL11.GL_LIGHTING); // switch lighting off
+ GL11.glTexParameteri(GL11.GL_TEXTURE_2D, GL11.GL_TEXTURE_MAG_FILTER, GL11.GL_NEAREST);
+ cube.DrawTexCube();
+ GL11.glEnable(GL11.GL_LIGHTING); // switch lighting off
+ ;
+ counter += 1;
+ if (counter >= 300)
+ counter = 1;
+
+ }
+
+ @Override
+ public void drawShadow() {
+
+ }
+}
diff --git a/src/Scene/Objects/Book.java b/src/Scene/Objects/Book.java
index 105de32..a827fd0 100644
--- a/src/Scene/Objects/Book.java
+++ b/src/Scene/Objects/Book.java
@@ -1,18 +1,15 @@
package Scene.Objects;
-import Scene.base.ParticleEmitter;
-import Scene.base.ParticleEmitterBuilder;
+import Scene.Scene;
import Scene.base.SceneObject;
import base.GraphicsObjects.Point4f;
import base.GraphicsObjects.Vector4f;
import base.objects3D.DisplayListTexCube;
import org.lwjgl.opengl.GL11;
-import org.lwjgl.util.vector.Vector3f;
import org.newdawn.slick.Color;
import org.newdawn.slick.opengl.Texture;
import java.util.HashMap;
-import java.util.Random;
import static org.lwjgl.opengl.GL11.*;
@@ -24,8 +21,12 @@ import static org.lwjgl.opengl.GL11.*;
* @Description:
**/
public class Book extends SceneObject {
+ public static float yRotation = 0;
+ public static Boolean hasSomeJumpping = false;
DisplayListTexCube cube = new DisplayListTexCube();
- private float yRotation = 0;
+ private Boolean isJumping = false;
+ private float jump_height = 0f;
+ private Integer jump_count = 1;
public Book(Point4f origin, Point4f position, Vector4f scale) {
super(origin, position, scale);
@@ -33,21 +34,6 @@ public class Book extends SceneObject {
public Book(Point4f origin, Point4f position, Vector4f scale, HashMap textures) {
super(origin, position, scale, textures);
- new Thread(new Runnable() {
- @Override
- public void run() {
- while (true) {
-
- yRotation += 0.1f;
- try {
- Thread.sleep(1);
- } catch (InterruptedException e) {
- e.printStackTrace();
- }
- }
- }
- }).start();
-
}
@@ -55,9 +41,63 @@ public class Book extends SceneObject {
super(origin, position, scale, rotation, textures);
}
+ public void jump(int speed) {
+ float g = 9.8f;
+ if (!isJumping) {
+ isJumping = true;
+ long start_time = System.currentTimeMillis();
+ Thread thread = new Thread(new Runnable() {
+ @Override
+ public void run() {
+ double h = 0;
+ long t = 0;
+ while (h >= 0) {
+ long start = System.currentTimeMillis();
+ long current_time = System.currentTimeMillis();
+ t = (current_time - start_time) / 10;
+ h = (speed * t - 0.5 * g * t * t) / 10000;
+ jump_height = (float) h;
+ long end = System.currentTimeMillis();
+ while (end - start < 16) {
+ try {
+ Thread.sleep(1);
+ } catch (InterruptedException e) {
+ e.printStackTrace();
+ }
+ end = System.currentTimeMillis();
+ }
+ }
+ jump_height = 0;
+ isJumping = false;
+ hasSomeJumpping = false;
+ }
+ });
+ thread.start();
+ jump_count += 1;
+
+ }
+ }
@Override
public void draw(Integer frame_delta) {
+ if (getPlayerDistance() < 500) {
+ jump(500);
+ hasSomeJumpping = true;
+ } else {
+ jump_count = 1;
+// Scene.bookRotate_Speed = 0.2f;
+ }
+ if (hasSomeJumpping == false && Scene.bookRotate_Speed >= 0.2f) {
+ Scene.bookRotate_Speed -= 0.0001f;
+ }
+ if (Scene.bookRotate_Speed < 0.2f * jump_count && Scene.bookRotate_Speed < 2f) {
+ Scene.bookRotate_Speed = 0.2f * jump_count;
+ }
+// System.out.println(Scene.bookRotate_Speed);
+// if(jump_count > 3){
+//
+// }
+ GL11.glTranslatef(0, jump_height, 0);
Color.white.bind();
glRotatef(yRotation, 0, 1, 0);
getTextures().get("warped_door_bottom").bind();
@@ -86,4 +126,9 @@ public class Book extends SceneObject {
}
GL11.glPopMatrix();
}
+
+ @Override
+ public void drawShadow() {
+
+ }
}
diff --git a/src/Scene/Objects/BookShelf.java b/src/Scene/Objects/BookShelf.java
index 36efd46..9d3b220 100644
--- a/src/Scene/Objects/BookShelf.java
+++ b/src/Scene/Objects/BookShelf.java
@@ -166,4 +166,8 @@ public class BookShelf extends SceneObject {
}
GL11.glPopMatrix();
}
+ @Override
+ public void drawShadow() {
+
+ }
}
diff --git a/src/Scene/Objects/BunnyTestObject.java b/src/Scene/Objects/BunnyTestObject.java
index 02a5b78..d11137a 100644
--- a/src/Scene/Objects/BunnyTestObject.java
+++ b/src/Scene/Objects/BunnyTestObject.java
@@ -101,4 +101,8 @@ public class BunnyTestObject extends SceneObject {
Color.white.bind();
glCallList(BunnyObjTest.getBunnyDisplayList());
}
+ @Override
+ public void drawShadow() {
+
+ }
}
diff --git a/src/Scene/Objects/BunnyTestObject2.java b/src/Scene/Objects/BunnyTestObject2.java
index 38609e8..597fca6 100644
--- a/src/Scene/Objects/BunnyTestObject2.java
+++ b/src/Scene/Objects/BunnyTestObject2.java
@@ -27,7 +27,7 @@ public class BunnyTestObject2 extends SceneObject {
private Boolean isWalking = false;
private long walkStartTime;
private int stopCount = 0;
- private float angle = 0;
+ public static float angle = 0;
private Boolean isJumping = false;
private float jump_height = 0f;
private float timePassed = Engine.getTimePassed();
@@ -50,19 +50,7 @@ public class BunnyTestObject2 extends SceneObject {
super(origin, position, scale, textures);
Random random = new Random();
float a = 0.1f;
- new Thread(new Runnable() {
- @Override
- public void run() {
- while (true) {
- angle += a;
- try {
- Thread.sleep(1);
- } catch (InterruptedException e) {
- e.printStackTrace();
- }
- }
- }
- }).start();
+
}
public BunnyTestObject2(Point4f origin, Point4f position, Vector4f scale, Vector4f rotation, HashMap textures) {
@@ -81,4 +69,8 @@ public class BunnyTestObject2 extends SceneObject {
glCallList(BunnyObjTest.getBunnyDisplayList());
GL11.glEnable(GL_TEXTURE_2D);
}
+ @Override
+ public void drawShadow() {
+
+ }
}
diff --git a/src/Scene/Objects/CarportObject.java b/src/Scene/Objects/CarportObject.java
index 6a45c6d..fe68d97 100644
--- a/src/Scene/Objects/CarportObject.java
+++ b/src/Scene/Objects/CarportObject.java
@@ -44,4 +44,8 @@ public class CarportObject extends SceneObject {
glCallList(base.objects3D.CarportObject.getHouseDisplayList());
Color.white.bind();
}
+ @Override
+ public void drawShadow() {
+
+ }
}
diff --git a/src/Scene/Objects/Copyleft.java b/src/Scene/Objects/Copyleft.java
index d59c717..4442b9f 100644
--- a/src/Scene/Objects/Copyleft.java
+++ b/src/Scene/Objects/Copyleft.java
@@ -50,5 +50,9 @@ public class Copyleft extends SceneObject {
// GL11.glEnable(GL11.GL_LIGHTING); // switch lighting off
;
+ }
+ @Override
+ public void drawShadow() {
+
}
}
diff --git a/src/Scene/Objects/Cube.java b/src/Scene/Objects/Cube.java
index 3fca921..81ae4b3 100644
--- a/src/Scene/Objects/Cube.java
+++ b/src/Scene/Objects/Cube.java
@@ -3,6 +3,7 @@ package Scene.Objects;
import Scene.base.SceneObject;
import base.GraphicsObjects.Point4f;
import base.GraphicsObjects.Vector4f;
+import base.objects3D.DisplayListOval;
import base.objects3D.DisplayListTexCube;
import org.lwjgl.opengl.GL11;
@@ -20,11 +21,16 @@ import java.util.HashMap;
**/
public class Cube extends SceneObject {
private DisplayListTexCube cube = new DisplayListTexCube();
-
+ private DisplayListOval oval = new DisplayListOval(100f, 32);
public Cube(Point4f origin, Point4f position, Vector4f scale) {
super(origin, position, scale);
}
+ @Override
+ public Boolean isHit(SceneObject other) {
+ return false;
+ }
+
public Cube(Point4f origin, Point4f position, Vector4f scale, HashMap textures) {
super(origin, position, scale, textures);
}
@@ -33,6 +39,7 @@ public class Cube extends SceneObject {
super(origin, position, scale, rotation, textures);
}
+
@Override
public void draw(Integer frame_delta) {
GL11.glTexParameteri(
@@ -42,12 +49,20 @@ public class Cube extends SceneObject {
GL11.GL_TEXTURE_2D, GL11.GL_TEXTURE_WRAP_S,
GL11.GL_REPEAT);
Color.white.bind();
+ Color.black.bind();
//bind texture
getTextures().get("default_dirt").bind();
;
GL11.glTexParameteri(GL11.GL_TEXTURE_2D, GL11.GL_TEXTURE_MAG_FILTER, GL11.GL_NEAREST);
+// oval.DrawOval();
cube.DrawTexCube();
+
+ Color.white.bind();
;
}
+ @Override
+ public void drawShadow() {
+// oval.DrawOval();
+ }
}
diff --git a/src/Scene/Objects/Ground.java b/src/Scene/Objects/Ground.java
index 9cd0d21..aa0f0f6 100644
--- a/src/Scene/Objects/Ground.java
+++ b/src/Scene/Objects/Ground.java
@@ -55,5 +55,9 @@ public class Ground extends SceneObject {
// glBindTexture(GL11.GL_TEXTURE_2D, 0);
;
+ }
+ @Override
+ public void drawShadow() {
+
}
}
diff --git a/src/Scene/Objects/LAVA_Door.java b/src/Scene/Objects/LAVA_Door.java
index 81711db..b2578db 100644
--- a/src/Scene/Objects/LAVA_Door.java
+++ b/src/Scene/Objects/LAVA_Door.java
@@ -111,4 +111,8 @@ public class LAVA_Door extends SceneObject {
GL11.glPopMatrix();
;
}
+ @Override
+ public void drawShadow() {
+
+ }
}
diff --git a/src/Scene/Objects/NPC.java b/src/Scene/Objects/NPC.java
index 5c8e366..22b7b76 100644
--- a/src/Scene/Objects/NPC.java
+++ b/src/Scene/Objects/NPC.java
@@ -12,6 +12,8 @@ import org.newdawn.slick.opengl.Texture;
import java.util.HashMap;
+import static org.lwjgl.opengl.GL11.*;
+
/**
* @Author: WangYuyang
* @Date: 2021/11/6-19:33
@@ -42,12 +44,12 @@ public class NPC extends SceneObject {
static float brown[] = {0.5f, 0.25f, 0.0f, 1.0f, 1.0f};
static float dkgreen[] = {0.0f, 0.5f, 0.0f, 1.0f, 1.0f};
static float pink[] = {1.0f, 0.6f, 0.6f, 1.0f, 1.0f};
- public int angle_target = 0;
+ public static int angle_target = 0;
private float delta;
private Boolean isWalking = false;
private long walkStartTime;
private int stopCount = 0;
- private int angle = 0;
+ public static int angle = 0;
private Boolean isJumping = false;
private float jump_height = 0f;
public void walk() {
@@ -91,7 +93,7 @@ public class NPC extends SceneObject {
DisplayListCylinder c7 = new DisplayListCylinder(0.15f, 0.7f, 32);
DisplayListCylinder c8 = new DisplayListCylinder(0.15f, 0.7f, 32);
DisplayListCylinder c9 = new DisplayListCylinder(0.15f, 0.7f, 32);
-
+ DisplayListOval shadow = new DisplayListOval(3f, 32);
public NPC(Point4f origin, Point4f position, Vector4f scale) {
super(origin, position, scale);
@@ -99,27 +101,6 @@ public class NPC extends SceneObject {
public NPC(Point4f origin, Point4f position, Vector4f scale, HashMap textures) {
super(origin, position, scale, textures);
- new Thread(new Runnable() {
- @Override
- public void run() {
- while (true) {
- if (Math.abs(angle - angle_target) > 200) {
- angle = angle_target;
- }
-
- if (angle > angle_target) {
- angle -= 1f;
- } else if (angle < angle_target) {
- angle += 1f;
- }
- try {
- Thread.sleep(1);
- } catch (InterruptedException e) {
- e.printStackTrace();
- }
- }
- }
- }).start();
}
public void jump(int speed) {
@@ -509,6 +490,16 @@ public class NPC extends SceneObject {
// GL11.glRotatef((float) (LimbRotation * -0.2), 0.0f, 1.0f, 0.0f);
+// GL11.glPushMatrix();
+// GL11.glTranslatef(0,-1.8f,0);
+// glDisable(GL_LIGHTING);
+// glDisable(GL_TEXTURE_2D);
+// Color.black.bind();
+// shadow.DrawOval();
+// Color.white.bind();
+// glEnable(GL_TEXTURE_2D);
+// glEnable(GL_LIGHTING);
+// GL11.glPopMatrix();
// pelvis
// left hip
GL11.glColor3f(blue[0], blue[1], blue[2]);
@@ -704,4 +695,8 @@ public class NPC extends SceneObject {
}
}
+// @Override
+// public void drawShadow() {
+//
+// }
}
\ No newline at end of file
diff --git a/src/Scene/Objects/Player.java b/src/Scene/Objects/Player.java
index 33d31de..bda3600 100644
--- a/src/Scene/Objects/Player.java
+++ b/src/Scene/Objects/Player.java
@@ -50,6 +50,8 @@ public class Player extends SceneObject {
private Boolean isJumping = false;
private float jump_height = 0f;
public static Integer frame_delta = 0;
+ public static Point4f world_position;
+ public static Vector4f scale_vec;
DisplayListTexSphere s1 = new DisplayListTexSphere(0.5f, 32, 32, getTextures().get("wool_pink"));
@@ -180,6 +182,8 @@ public class Player extends SceneObject {
@Override
public void draw(Integer frame_delta) {
Player.frame_delta = frame_delta;
+ Player.world_position = getWorldPosition();
+ Player.scale_vec = getScale();
GL11.glTranslatef(0, jump_height, 0);
Boolean GoodAnimation = true;
float theta_face = (float) (delta * 2 * Math.PI);
@@ -778,6 +782,12 @@ public class Player extends SceneObject {
}
+// @Override
+// public void drawShadow() {
+//
+// }
+
+
}
/*
diff --git a/src/Scene/Objects/TNT_Door.java b/src/Scene/Objects/TNT_Door.java
index c2dcab6..518bf18 100644
--- a/src/Scene/Objects/TNT_Door.java
+++ b/src/Scene/Objects/TNT_Door.java
@@ -115,5 +115,9 @@ public class TNT_Door extends SceneObject {
GL11.glPopMatrix();
;
+ }
+ @Override
+ public void drawShadow() {
+
}
}
diff --git a/src/Scene/Objects/Table.java b/src/Scene/Objects/Table.java
index 41c188e..58a7dc9 100644
--- a/src/Scene/Objects/Table.java
+++ b/src/Scene/Objects/Table.java
@@ -3,6 +3,7 @@ package Scene.Objects;
import Scene.base.SceneObject;
import base.GraphicsObjects.Point4f;
import base.GraphicsObjects.Vector4f;
+import base.objects3D.DisplayListOval;
import base.objects3D.DisplayListTexCube;
import org.lwjgl.opengl.GL11;
import org.newdawn.slick.Color;
@@ -10,6 +11,8 @@ import org.newdawn.slick.opengl.Texture;
import java.util.HashMap;
+import static org.lwjgl.opengl.GL11.*;
+
/**
* @Author: WangYuyang
* @Date: 2021/11/7-13:40
@@ -19,6 +22,8 @@ import java.util.HashMap;
**/
public class Table extends SceneObject {
DisplayListTexCube cube = new DisplayListTexCube();
+ DisplayListOval displayListOval = new DisplayListOval(2f, 32);
+
public Table(Point4f origin, Point4f position, Vector4f scale) {
super(origin, position, scale);
}
@@ -48,5 +53,27 @@ public class Table extends SceneObject {
cube.DrawTexCube();
}
GL11.glPopMatrix();
+ GL11.glPushMatrix();
+ {
+ glScalef(1 / getScale().x, 1 / getScale().y, 1 / getScale().z);
+ glTranslatef(-240, -getOrigin().y + 2f, -240);
+ glScalef(getScale().x, getScale().y, getScale().z);
+ GL11.glRotatef(-45, 0,1,0);
+ GL11.glScalef(2f, 0f, 1f);
+ glDisable(GL_LIGHTING);
+ glDisable(GL_TEXTURE_2D);
+ Color.black.bind();
+ displayListOval.DrawOval();
+ Color.white.bind();
+ glEnable(GL_TEXTURE_2D);
+ glEnable(GL_LIGHTING);
+ }
+ GL11.glPopMatrix();
+ }
+
+ @Override
+ public void drawShadow() {
+
+
}
}
diff --git a/src/Scene/Objects/TheMostImportantImage.java b/src/Scene/Objects/TheMostImportantImage.java
new file mode 100644
index 0000000..0cdd549
--- /dev/null
+++ b/src/Scene/Objects/TheMostImportantImage.java
@@ -0,0 +1,81 @@
+package Scene.Objects;
+
+import Scene.base.SceneObject;
+import base.GraphicsObjects.Point4f;
+import base.GraphicsObjects.Vector4f;
+import base.objects3D.DisplayListTexCube;
+import main.Camera;
+import org.lwjgl.input.Keyboard;
+import org.lwjgl.opengl.GL11;
+import org.newdawn.slick.Color;
+import org.newdawn.slick.opengl.Texture;
+
+import java.util.HashMap;
+
+/**
+ * @Author: WangYuyang
+ * @Date: 2021/11/5-23:09
+ * @Project: Assignment3
+ * @Package: Scene.Objects
+ * @Description:
+ **/
+public class TheMostImportantImage extends SceneObject {
+ private DisplayListTexCube cube = new DisplayListTexCube();
+ private float counter = 1;
+ private Boolean isPlayVideo = false;
+
+ public TheMostImportantImage(Point4f origin, Point4f position, Vector4f scale) {
+ super(origin, position, scale);
+ }
+
+ public TheMostImportantImage(Point4f origin, Point4f position, Vector4f scale, HashMap textures) {
+ super(origin, position, scale, textures);
+ }
+
+ public TheMostImportantImage(Point4f origin, Point4f position, Vector4f scale, Vector4f rotation, HashMap textures) {
+ super(origin, position, scale, rotation, textures);
+ }
+
+ @Override
+ public void draw(Integer frame_delta) {
+ GL11.glTexParameteri(
+ GL11.GL_TEXTURE_2D, GL11.GL_TEXTURE_WRAP_T,
+ GL11.GL_REPEAT);
+ GL11.glTexParameteri(
+ GL11.GL_TEXTURE_2D, GL11.GL_TEXTURE_WRAP_S,
+ GL11.GL_REPEAT);
+ Color.white.bind();
+ //bind texture
+
+ if(Camera.position.z > 1700 && Camera.loading_finished){
+ isPlayVideo = true;
+ }
+ else {
+ isPlayVideo = false;
+ }
+
+ if (isPlayVideo) {
+ getTextures().get("video/video" + (int) counter).bind();
+ }
+ else {
+ getTextures().get("2021").bind();
+ counter = 1;
+ }
+// GL11.glRotatef(90, 0,1,0);
+ ;
+// GL11.glDisable(GL11.GL_LIGHTING); // switch lighting off
+ GL11.glRotatef(180, 0, 0, 1);
+ GL11.glTexParameteri(GL11.GL_TEXTURE_2D, GL11.GL_TEXTURE_MAG_FILTER, GL11.GL_NEAREST);
+ cube.DrawTexCube();
+// GL11.glEnable(GL11.GL_LIGHTING); // switch lighting off
+ ;
+ counter += 0.5f;
+ if (counter >= 803)
+ counter = 1.0f;
+
+ }
+ @Override
+ public void drawShadow() {
+
+ }
+}
diff --git a/src/Scene/Objects/Wall.java b/src/Scene/Objects/Wall.java
index f02f5d1..a9fc867 100644
--- a/src/Scene/Objects/Wall.java
+++ b/src/Scene/Objects/Wall.java
@@ -50,6 +50,9 @@ public class Wall extends SceneObject {
GL11.glTexParameteri(GL11.GL_TEXTURE_2D, GL11.GL_TEXTURE_MAG_FILTER, GL11.GL_NEAREST);
MyGrid.DrawTexCube();
;
+ }
+ @Override
+ public void drawShadow() {
}
}
diff --git a/src/Scene/Scene.java b/src/Scene/Scene.java
index b727504..0467237 100644
--- a/src/Scene/Scene.java
+++ b/src/Scene/Scene.java
@@ -28,7 +28,7 @@ public class Scene {
.setInitialVelocity(new Vector3f(0, 0, 0))
.setGravity(new Vector3f(0, -0.4f, 0))
.setSpawningRate(20)
- .setParticleLifeTime(300)
+ .setParticleLifeTime(270)
.createParticleEmitter();
private static ParticleEmitter bookParticleEmitter = new ParticleEmitterBuilder()
@@ -41,6 +41,7 @@ public class Scene {
.createParticleEmitter();
private static Random random = new Random();
+ public static float bookRotate_Speed = 0.1f;
// private static ParticleEmitter rightParticleEmitter = new ParticleEmitterBuilder()
@@ -61,14 +62,14 @@ public class Scene {
// .setParticleLifeTime(300)
// .createParticleEmitter();
//
- private static ParticleEmitter backParticleEmitter = new ParticleEmitterBuilder()
- .setLocation(new Vector3f(0,12900,-2.5f))
- .setEnable3D(true)
- .setInitialVelocity(new Vector3f(0, 0, 0))
- .setGravity(new Vector3f(0, -0.4f, 0))
- .setSpawningRate(10)
- .setParticleLifeTime(200)
- .createParticleEmitter();
+// private static ParticleEmitter backParticleEmitter = new ParticleEmitterBuilder()
+// .setLocation(new Vector3f(0,12900,-2.5f))
+// .setEnable3D(true)
+// .setInitialVelocity(new Vector3f(0, 0, 0))
+// .setGravity(new Vector3f(0, -0.4f, 0))
+// .setSpawningRate(10)
+// .setParticleLifeTime(200)
+// .createParticleEmitter();
public static void initScene(SceneManager sceneManager, HashMap textures) {
@@ -331,7 +332,7 @@ public class Scene {
textures
));
- for (int i = -10; i < 10; i++) {
+ for (int i = -9; i < 10; i++) {
sceneManager.addSceneObject(new Table(
new Point4f(500 * i, 90f, 4500, 0),
new Point4f(0, 0, 0, 0),
@@ -408,6 +409,71 @@ public class Scene {
textures
));
+ sceneManager.addSceneObject(new TheMostImportantImage(
+ new Point4f(0, 5500, -10000, 0),
+ new Point4f(0, 0, 0, 0),
+ new Vector4f(10, 4000, 6000, 0),
+ new Vector4f(0, 1, 0, 90),
+ textures
+ ));
+// sceneManager.addSceneObject(new Cube(
+// new Point4f(0, 300, 0, 0),
+// new Point4f(0, 0, 0, 0),
+// new Vector4f(1, 1, 1, 0),
+//// new Vector4f(0, 1, 0, 90),
+// textures
+// ));
+
+ new Thread(new Runnable() {
+ @Override
+ public void run() {
+ while (true) {
+
+ Book.yRotation += bookRotate_Speed;
+ try {
+ Thread.sleep(1);
+ } catch (InterruptedException e) {
+ e.printStackTrace();
+ }
+ }
+ }
+ }).start();
+
+ new Thread(new Runnable() {
+ @Override
+ public void run() {
+ while (true) {
+ BunnyTestObject2.angle += 0.1f;
+ try {
+ Thread.sleep(1);
+ } catch (InterruptedException e) {
+ e.printStackTrace();
+ }
+ }
+ }
+ }).start();
+ new Thread(new Runnable() {
+ @Override
+ public void run() {
+ while (true) {
+ if (Math.abs(NPC.angle - NPC.angle_target) > 200) {
+ NPC.angle = NPC.angle_target;
+ }
+
+ if (NPC.angle > NPC.angle_target) {
+ NPC.angle -= 1f;
+ } else if (NPC.angle < NPC.angle_target) {
+ NPC.angle += 1f;
+ }
+ try {
+ Thread.sleep(1);
+ } catch (InterruptedException e) {
+ e.printStackTrace();
+ }
+ }
+ }
+ }).start();
+
}
public static void initBackground(SceneManager backgroundManager, HashMap textures) {
@@ -439,7 +505,7 @@ public class Scene {
bookParticleEmitter.draw();
// rightParticleEmitter.draw();
// leftParticleEmitter.draw();
- backParticleEmitter.draw();
+// backParticleEmitter.draw();
GL11.glPopMatrix();
}
}, delta);
@@ -450,7 +516,7 @@ public class Scene {
bookParticleEmitter.colorVec = new Vector3f(random.nextFloat() + 0.5f, random.nextFloat() + 0.5f, random.nextFloat() + 0.5f);
// rightParticleEmitter.update();
// leftParticleEmitter.update();
- backParticleEmitter.update();
+// backParticleEmitter.update();
}
public static void drawScene(SceneManager sceneManager, Integer delta) {
diff --git a/src/Scene/base/IDrawable.java b/src/Scene/base/IDrawable.java
index 09891cf..8ec2bc1 100644
--- a/src/Scene/base/IDrawable.java
+++ b/src/Scene/base/IDrawable.java
@@ -10,4 +10,5 @@ package Scene.base;
public interface IDrawable {
void draw(IDrawListener listener, Integer delta);
void draw(Integer delta);
+ void drawShadow();
}
diff --git a/src/Scene/base/SceneObject.java b/src/Scene/base/SceneObject.java
index 9ca104a..7565261 100644
--- a/src/Scene/base/SceneObject.java
+++ b/src/Scene/base/SceneObject.java
@@ -1,8 +1,12 @@
package Scene.base;
+import Scene.Objects.Player;
import base.GraphicsObjects.Point4f;
import base.GraphicsObjects.Vector4f;
+import base.objects3D.DisplayListOval;
+import main.Engine;
import org.lwjgl.opengl.GL11;
+import org.newdawn.slick.Color;
import org.newdawn.slick.opengl.Texture;
import java.util.HashMap;
@@ -23,12 +27,13 @@ public abstract class SceneObject implements IDrawable, IMovable, IScalable, IHi
private Vector4f scale = new Vector4f();
private Vector4f rotation = new Vector4f();
private HashMap textures = new LinkedHashMap<>();
+ private DisplayListOval shadow;
public SceneObject(Point4f origin, Point4f position, Vector4f scale) {
this.origin = new Point4f(origin.x, origin.y, origin.z, 0);
this.position = new Point4f(position.x, position.y, position.z, 0);
this.scale = new Vector4f(scale.x, scale.y, scale.z, 0);
-
+ shadow = new DisplayListOval(scale.x, 32);
}
public SceneObject(Point4f origin, Point4f position, Vector4f scale, HashMap textures) {
@@ -36,6 +41,8 @@ public abstract class SceneObject implements IDrawable, IMovable, IScalable, IHi
this.position = new Point4f(position.x, position.y, position.z, 0);
this.textures = new LinkedHashMap<>(textures);
this.scale = new Vector4f(scale.x, scale.y, scale.z, 0);
+ shadow = new DisplayListOval(scale.x, 32);
+
}
public SceneObject(Point4f origin, Point4f position, Vector4f scale, Vector4f rotation, HashMap textures) {
@@ -44,6 +51,7 @@ public abstract class SceneObject implements IDrawable, IMovable, IScalable, IHi
this.scale = scale;
this.rotation = rotation;
this.textures = textures;
+ shadow = new DisplayListOval(scale.x, 32);
}
@Override
@@ -56,6 +64,12 @@ public abstract class SceneObject implements IDrawable, IMovable, IScalable, IHi
return false;
}
+ public float getPlayerDistance(){
+ Point4f o1 = getWorldPosition();
+ Point4f o2 = Player.world_position;
+ return o1.MinusPoint(o2).length() - this.scale.x - Player.scale_vec.x;
+ }
+
@Override
public void move(Vector4f vector) {
this.position = position.PlusVector(vector);
@@ -74,11 +88,18 @@ public abstract class SceneObject implements IDrawable, IMovable, IScalable, IHi
glDisable(GL_TEXTURE_GEN_R);
glDisable(GL_TEXTURE_GEN_Q);
+// glPushMatrix();
GL11.glTranslatef(origin.x, origin.y, origin.z);
+ this.drawShadow();
GL11.glRotatef(rotation.a, rotation.x, rotation.y, rotation.z);
GL11.glScalef(scale.x, scale.y, scale.z);
GL11.glTranslatef(position.x, position.y, position.z);
this.draw(delta);
+
+// glPopMatrix();
+
+// glPopMatrix();
+
listener.afterEachDraw(this);
//
glEnable(GL_TEXTURE_GEN_S);
@@ -88,6 +109,41 @@ public abstract class SceneObject implements IDrawable, IMovable, IScalable, IHi
}
+ @Override
+ public void drawShadow() {
+// Vector4f vector4f = new Vector4f(
+// Engine.lightPosition.get(0),
+// Engine.lightPosition.get(1),
+// Engine.lightPosition.get(2),
+// Engine.lightPosition.get(3)
+// );
+// Point4f tmp = position.MinusVector(vector4f);
+// Vector4f dir = tmp.MinusPoint(new Point4f(0,0,0,0)).Normal();
+// System.out.println();
+ glPushMatrix();
+// GL11.glTranslatef(-position.x, -position.y, -position.z);
+// GL11.glScalef(1/scale.x, 1/scale.y, 1/scale.z);
+// GL11.glRotatef(-rotation.a, -rotation.x, -rotation.y, -rotation.z);
+// GL11.glTranslatef(-origin.x, -origin.y, -origin.z);
+// GL11.glTranslatef(0, 2f, 0);
+ GL11.glScalef(scale.x, scale.y, scale.z);
+ GL11.glTranslatef(position.x, position.y, position.z);
+ GL11.glScalef(1 / scale.x, 1 / scale.y, 1 / scale.z);
+ GL11.glTranslatef(0, -origin.y, 0);
+ GL11.glTranslatef(-140f, 2f, -140f);
+ GL11.glRotatef(-45, 0,1,0);
+ GL11.glScalef(2f, 0f, 1f);
+
+ glDisable(GL_LIGHTING);
+ glDisable(GL_TEXTURE_2D);
+ Color.black.bind();
+ shadow.DrawOval();
+ Color.white.bind();
+ glEnable(GL_TEXTURE_2D);
+ glEnable(GL_LIGHTING);
+ glPopMatrix();
+ }
+
public Point4f getWorldPosition() {
Point4f point4f = new Point4f();
point4f.x = getOrigin().x + position.x * scale.x;
diff --git a/src/Scene/skybox/Skybox.java b/src/Scene/skybox/Skybox.java
index ba9bd4a..dbfdca4 100644
--- a/src/Scene/skybox/Skybox.java
+++ b/src/Scene/skybox/Skybox.java
@@ -162,4 +162,9 @@ public class Skybox extends SceneObject {
;
}
+
+ @Override
+ public void drawShadow() {
+
+ }
}
diff --git a/src/base/objects3D/Oval.java b/src/base/objects3D/DisplayListOval.java
similarity index 83%
rename from src/base/objects3D/Oval.java
rename to src/base/objects3D/DisplayListOval.java
index d4ef19b..c1de946 100644
--- a/src/base/objects3D/Oval.java
+++ b/src/base/objects3D/DisplayListOval.java
@@ -3,6 +3,8 @@ package base.objects3D;
import base.GraphicsObjects.Vector4f;
import org.lwjgl.opengl.GL11;
+import static org.lwjgl.opengl.GL11.*;
+
/**
* @Author: WangYuyang
* @Date: 2021/11/6-01:04
@@ -10,8 +12,10 @@ import org.lwjgl.opengl.GL11;
* @Package: base.objects3D
* @Description:
**/
-public class Oval {
- public void DrawOval(float radius, int nSegments) {
+public class DisplayListOval {
+ int displayListHandle = glGenLists(1);
+ public DisplayListOval(float radius, int nSegments) {
+ glNewList(displayListHandle, GL_COMPILE);
//INIT GL
GL11.glBegin(GL11.GL_TRIANGLES);
@@ -44,7 +48,11 @@ public class Oval {
}
//END GL
GL11.glEnd();
+ glEndList();
+ }
+ public void DrawOval() {
+ glCallList(displayListHandle);
}
}
diff --git a/src/main/Camera.java b/src/main/Camera.java
index fb48a2a..3432c3c 100644
--- a/src/main/Camera.java
+++ b/src/main/Camera.java
@@ -29,6 +29,7 @@ public class Camera {
private float rotationZ = 0;
private boolean MouseOnepressed = true;
private boolean dragMode = false;
+ public static Boolean loading_finished = false;
public Camera() {
diff --git a/src/main/Engine.java b/src/main/Engine.java
index 2d9d880..f2ad5d8 100644
--- a/src/main/Engine.java
+++ b/src/main/Engine.java
@@ -3,6 +3,7 @@ package main;
import Scene.Objects.Player;
import Scene.Scene;
import Scene.base.SceneObject;
+import base.GraphicsObjects.Utils;
import base.GraphicsObjects.Vector4f;
import base.RenderProgramStatement;
import org.lwjgl.BufferUtils;
@@ -15,12 +16,8 @@ import org.lwjgl.opengl.PixelFormat;
import org.lwjgl.util.vector.Matrix4f;
import org.lwjgl.util.vector.Vector3f;
import org.newdawn.slick.Color;
-import org.newdawn.slick.opengl.PNGDecoder;
import org.newdawn.slick.opengl.Texture;
-import java.io.FileInputStream;
-import java.io.IOException;
-import java.nio.ByteBuffer;
import java.nio.FloatBuffer;
import java.util.HashMap;
import java.util.LinkedHashMap;
@@ -32,7 +29,6 @@ import static org.lwjgl.opengl.GL11.*;
import static org.lwjgl.opengl.GL12.GL_CLAMP_TO_EDGE;
import static org.lwjgl.opengl.GL14.*;
import static org.lwjgl.util.glu.GLU.*;
-import static org.newdawn.slick.opengl.PNGDecoder.RGBA;
/**
* @Author: WangYuyang
@@ -50,6 +46,12 @@ public class Engine {
*/
private static final Color fogColor = new Color(0f, 0f, 0f, 1f);
public static HashMap textures = new LinkedHashMap();
+ public static FloatBuffer lightPosition;
+ public static FloatBuffer lightPos2;
+ public static FloatBuffer lightPos3;
+ public static FloatBuffer lightPos4;
+ public static int delta;
+ public static int shadowTexture;
// basic colours
static float black[] = {0.0f, 0.0f, 0.0f, 1.0f};
static float white[] = {1.0f, 1.0f, 1.0f, 1.0f};
@@ -68,7 +70,6 @@ public class Engine {
static float brown[] = {0.5f, 0.25f, 0.0f, 1.0f, 1.0f};
static float dkgreen[] = {0.0f, 0.5f, 0.0f, 1.0f, 1.0f};
static float pink[] = {1.0f, 0.6f, 0.6f, 1.0f, 1.0f};
- public static FloatBuffer lightPosition;
/**
* The width of the depth texture that is known as the shadow map. The higher the width, the more detailed the
* shadows.
@@ -84,7 +85,6 @@ public class Engine {
private static long lastFrameTime;
private static long startTime;
private static long timePassed;
- public static int delta;
private static float zNear = 100f;
/**
* The distance where fog starts appearing.
@@ -104,8 +104,6 @@ public class Engine {
*/
long lastFPS;
- public static int shadowTexture;
-
public Engine(int WIDTH, int HEIGHT) {
@@ -133,228 +131,24 @@ public class Engine {
return timePassed;
}
- /**
- * Sets up the OpenGL states.
- */
- private static void setUpFrameBufferObject() {
- final int MAX_RENDERBUFFER_SIZE = glGetInteger(GL_MAX_RENDERBUFFER_SIZE);
- final int MAX_TEXTURE_SIZE = glGetInteger(GL_MAX_TEXTURE_SIZE);
- /**
- * Cap the maximum shadow map size at 1024x1024 pixels or at the maximum render buffer size. If you have a good
- * graphics card, feel free to increase this value. The program will lag
- * if I record and run the program at the same time with higher values.
- */
- if (MAX_TEXTURE_SIZE > 1024) {
- if (MAX_RENDERBUFFER_SIZE < MAX_TEXTURE_SIZE) {
- shadowMapWidth = shadowMapHeight = MAX_RENDERBUFFER_SIZE;
- } else {
- shadowMapWidth = shadowMapHeight = 1024;
- }
- } else {
- shadowMapWidth = shadowMapHeight = MAX_TEXTURE_SIZE;
- }
- // Generate and bind a frame buffer.
- frameBuffer = glGenFramebuffers();
- glBindFramebuffer(GL_FRAMEBUFFER, frameBuffer);
- // Generate and bind a render buffer.
- renderBuffer = glGenRenderbuffers();
- glBindRenderbuffer(GL_RENDERBUFFER, renderBuffer);
- // Set the internal storage format of the render buffer to a depth component of 32 bits (4 bytes).
- glRenderbufferStorage(GL_RENDERBUFFER, GL_DEPTH_COMPONENT32, shadowMapWidth, shadowMapHeight);
- // Attach the render buffer to the frame buffer as a depth attachment. This means that, if the frame buffer is
- // bound, any depth texture values will be copied to the render buffer object.
- glFramebufferRenderbuffer(GL_FRAMEBUFFER, GL_DEPTH_ATTACHMENT, GL_RENDERBUFFER, renderBuffer);
- // OpenGL shall make no amendment to the colour or multisample buffer.
- glDrawBuffer(GL_NONE);
- // Disable the colour buffer for pixel read operations (such as glReadPixels or glCopyTexImage2D).
- glReadBuffer(GL_NONE);
- // Check for frame buffer errors.
- int FBOStatus = glCheckFramebufferStatus(GL_FRAMEBUFFER);
- if (FBOStatus != GL_FRAMEBUFFER_COMPLETE) {
- System.err.println("Framebuffer error: " + gluErrorString(glGetError()));
- }
- // Bind the default frame buffer, which is used for ordinary drawing.
- glBindFramebuffer(GL_FRAMEBUFFER, 0);
- }
-
- private static void generateTextureCoordinates() {
- glTexEnvi(GL_TEXTURE_ENV, GL_TEXTURE_ENV_MODE, GL_MODULATE);
- // Compare the texture coordinate 'r' (the distance from the light to the surface of the object) to the
- // value in the depth buffer.
- glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_COMPARE_MODE, GL_COMPARE_R_TO_TEXTURE);
- // Enable 's' texture coordinate generation.
- glEnable(GL_TEXTURE_GEN_S);
-// // Enable 't' texture coordinate generation.
- glEnable(GL_TEXTURE_GEN_T);
-// // Enable 'r' texture coordinate generation.
- glEnable(GL_TEXTURE_GEN_R);
-// // Enable 'q' texture coordinate generation.
- glEnable(GL_TEXTURE_GEN_Q);
- textureBuffer.clear();
- textureBuffer.put(0, depthModelViewProjection.m00);
- textureBuffer.put(1, depthModelViewProjection.m01);
- textureBuffer.put(2, depthModelViewProjection.m02);
- textureBuffer.put(3, depthModelViewProjection.m03);
-
- glTexGen(GL_S, GL_EYE_PLANE, textureBuffer);
-
- textureBuffer.put(0, depthModelViewProjection.m10);
- textureBuffer.put(1, depthModelViewProjection.m11);
- textureBuffer.put(2, depthModelViewProjection.m12);
- textureBuffer.put(3, depthModelViewProjection.m13);
-
- glTexGen(GL_T, GL_EYE_PLANE, textureBuffer);
-
- textureBuffer.put(0, depthModelViewProjection.m20);
- textureBuffer.put(1, depthModelViewProjection.m21);
- textureBuffer.put(2, depthModelViewProjection.m22);
- textureBuffer.put(3, depthModelViewProjection.m23);
-
- glTexGen(GL_R, GL_EYE_PLANE, textureBuffer);
-
- textureBuffer.put(0, depthModelViewProjection.m30);
- textureBuffer.put(1, depthModelViewProjection.m31);
- textureBuffer.put(2, depthModelViewProjection.m32);
- textureBuffer.put(3, depthModelViewProjection.m33);
-
- glTexGen(GL_Q, GL_EYE_PLANE, textureBuffer);
+ private static long getTime() {
+ return (Sys.getTime() * 1000) / Sys.getTimerResolution();
}
- /**
- * Generate the shadow map.
- *
- * @param renderProgram
- */
- private static void drawShadowMap(RenderProgramStatement renderProgram) {
- /**
- * The model-view matrix of the light.
- */
- FloatBuffer lightModelView = BufferUtils.createFloatBuffer(16);
- /**
- * The projection matrix of the light.
- */
- FloatBuffer lightProjection = BufferUtils.createFloatBuffer(16);
- Matrix4f lightProjectionTemp = new Matrix4f();
- Matrix4f lightModelViewTemp = new Matrix4f();
- /**
- * The radius that encompasses all the objects that cast shadows in the scene. There should
- * be no object farther away than 50 units from [0, 0, 0] in any direction.
- * If an object exceeds the radius, the object may cast shadows wrongly.
- */
- float sceneBoundingRadius = 1500;
- /**
- * The distance from the light to the scene, assuming that the scene is located
- * at [0, 0, 0]. Using the Pythagorean theorem, the distance is calculated by taking the square-root of the
- * sum of each of the components of the light position squared.
- */
- float lightToSceneDistance = (float) Math.sqrt(lightPosition.get(0) * lightPosition.get(0) +
- lightPosition.get(1) * lightPosition.get(1) +
- lightPosition.get(2) * lightPosition.get(2));
-
- /**
- * The distance to the object that is nearest to the camera. This excludes objects that do not cast shadows.
- * This will be used as the zNear parameter in gluPerspective.
- */
- float nearPlane = lightToSceneDistance - sceneBoundingRadius;
- if (nearPlane < 0) {
- System.err.println("Camera is too close to scene. A valid shadow map cannot be generated.");
- }
- /**
- * The field-of-view of the shadow frustum in degrees. Formula taken from the OpenGL SuperBible.
- */
- float fieldOfView = (float) Math.toDegrees(2.0F * Math.atan(sceneBoundingRadius / lightToSceneDistance));
- glMatrixMode(GL_PROJECTION);
- // Store the current projection matrix.
- glPushMatrix();
- glLoadIdentity();
- // Generate the 'shadow frustum', a perspective projection matrix that shows all the objects in the scene.
- gluPerspective(fieldOfView, 1, nearPlane, nearPlane + sceneBoundingRadius * 2);
- // Store the shadow frustum in 'lightProjection'.
- glGetFloat(GL_PROJECTION_MATRIX, lightProjection);
- glMatrixMode(GL_MODELVIEW);
- // Store the current model-view matrix.
- glPushMatrix();
- glLoadIdentity();
- // Have the 'shadow camera' look toward [0, 0, 0] and be location at the light's position.
- gluLookAt(lightPosition.get(0), lightPosition.get(1), lightPosition.get(2), 0, 0, 0, 0, 1, 0);
- glGetFloat(GL_MODELVIEW_MATRIX, lightModelView);
- // Set the view port to the shadow map dimensions so no part of the shadow is cut off.
- glViewport(0, 0, shadowMapWidth, shadowMapHeight);
- // Bind the extra frame buffer in which to store the shadow map in the form a depth texture.
- glBindFramebuffer(GL_FRAMEBUFFER, frameBuffer);
- // Clear only the depth buffer bit. Clearing the colour buffer is unnecessary, because it is disabled (we
- // only need depth components).
- glClear(GL_DEPTH_BUFFER_BIT);
- // Store the current attribute state.
- glPushAttrib(GL_ALL_ATTRIB_BITS);
- {
- // Disable smooth shading, because the shading in a shadow map is irrelevant. It only matters where the
- // shape
- // vertices are positioned, and not what colour they have.
- glShadeModel(GL_FLAT);
- // Enabling all these lighting states is unnecessary for reasons listed above.
- glDisable(GL_LIGHTING);
- glDisable(GL_COLOR_MATERIAL);
- glDisable(GL_NORMALIZE);
- // Disable the writing of the red, green, blue, and alpha colour components,
- // because we only need the depth component.
- glColorMask(false, false, false, false);
- // An offset is given to every depth value of every polygon fragment to prevent a visual quirk called
- // 'shadow
- // acne'.
- glEnable(GL_POLYGON_OFFSET_FILL);
- // Draw the objects that cast shadows.
- renderProgram.renderScene(16);
-
- /**
- * Copy the pixels of the shadow map to the frame buffer object depth attachment.
- * int target -> GL_TEXTURE_2D
- * int level -> 0, has to do with mip-mapping, which is not applicable to shadow maps
- * int internalformat -> GL_DEPTH_COMPONENT
- * int x, y -> 0, 0
- * int width, height -> shadowMapWidth, shadowMapHeight
- * int border -> 0
- */
-
- glBindTexture(GL_TEXTURE_2D, shadowTexture);
- glCopyTexImage2D(GL_TEXTURE_2D, 0, GL_DEPTH_COMPONENT, 0, 0, shadowMapWidth, shadowMapHeight, 0);
- glBindTexture(GL_TEXTURE_2D, 0);
-
-
- // Restore the previous model-view matrix.
- glPopMatrix();
- glMatrixMode(GL_PROJECTION);
- // Restore the previous projection matrix.
- glPopMatrix();
- glMatrixMode(GL_MODELVIEW);
- glBindFramebuffer(GL_FRAMEBUFFER, 0);
- }// Restore the previous attribute state.
- glPopAttrib();
- // Restore the view port.
- glViewport(0, 0, Display.getWidth(), Display.getHeight());
- lightProjectionTemp.load(lightProjection);
- lightModelViewTemp.load(lightModelView);
- lightProjection.flip();
- lightModelView.flip();
- depthModelViewProjection.setIdentity();
- // [-1,1] -> [-0.5,0.5] -> [0,1]
- depthModelViewProjection.translate(new Vector3f(0.5F, 0.5F, 0.5F));
- depthModelViewProjection.scale(new Vector3f(0.5F, 0.5F, 0.5F));
- // Multiply the texture matrix by the projection and model-view matrices of the light.
- Matrix4f.mul(depthModelViewProjection, lightProjectionTemp, depthModelViewProjection);
- Matrix4f.mul(depthModelViewProjection, lightModelViewTemp, depthModelViewProjection);
- // Transpose the texture matrix.
- Matrix4f.transpose(depthModelViewProjection, depthModelViewProjection);
+ public static int getDelta() {
+ long currentTime = getTime();
+ int delta = (int) (currentTime - lastFrameTime);
+ lastFrameTime = getTime();
+ return delta;
}
public void init() {
- Display.setVSyncEnabled(true);
+// Display.setVSyncEnabled(true);
// Display.setResizable(true);
glClear(GL_COLOR_BUFFER_BIT);
shadowTexture = glGenTextures();
-
// glEnable(GL_FOG);
// {
// FloatBuffer fogColours = BufferUtils.createFloatBuffer(4);
@@ -369,7 +163,7 @@ public class Engine {
// glFogf(GL_FOG_DENSITY, 0.005f);
// }
loadTexture();
- setUpFrameBufferObject();
+// setUpFrameBufferObject();
glEnable(GL_TEXTURE_2D);
GL11.glEnable(GL11.GL_LIGHTING); // switch lighting on
@@ -394,6 +188,15 @@ public class Engine {
lightPosition = BufferUtils.createFloatBuffer(4);
lightPosition.put(10000f).put(10000f).put(5000).put(0).flip();
+ lightPos2 = BufferUtils.createFloatBuffer(4);
+ lightPos2.put(0f).put(10000f).put(0).put(0).flip();
+
+ lightPos3 = BufferUtils.createFloatBuffer(4);
+ lightPos3.put(0).put(10000f).put(-5000).put(0).flip();
+
+ lightPos4 = BufferUtils.createFloatBuffer(4);
+ lightPos4.put(-10000f).put(10000f).put(-5000).put(0).flip();
+
}
public void enterModelView() {
@@ -409,44 +212,26 @@ public class Engine {
public void setLight() {
GL11.glMatrixMode(GL11.GL_MODELVIEW);
+ GL11.glLight(GL11.GL_LIGHT0, GL11.GL_POSITION, lightPosition); // specify the
+ GL11.glEnable(GL11.GL_LIGHT0); // SUN_light
+
-// FloatBuffer lightPos2 = BufferUtils.createFloatBuffer(4);
-// lightPos2.put(0f).put(1000f).put(0).put(-1000f).flip();
-//
-// FloatBuffer lightPos3 = BufferUtils.createFloatBuffer(4);
-// lightPos3.put(-10000f).put(1000f).put(1000).put(0).flip();
-//
-// FloatBuffer lightPos4 = BufferUtils.createFloatBuffer(4);
-// lightPos4.put(1000f).put(1000f).put(1000f).put(0).flip();
+ GL11.glLight(GL11.GL_LIGHT1, GL_POSITION, lightPos2);
+ float amb[] = {0.2f, 0.2f, 0.2f, 1.0f};
+ GL11.glLight(GL11.GL_LIGHT1, GL11.GL_DIFFUSE, Utils.ConvertForGL(spot));
+ GL11.glLight(GL11.GL_LIGHT1, GL_AMBIENT, Utils.ConvertForGL(amb));
+ GL11.glEnable(GL11.GL_LIGHT1);
- GL11.glLight(GL11.GL_LIGHT0, GL11.GL_POSITION, lightPosition); // specify the
- // position
- // of the
- // light
- GL11.glEnable(GL11.GL_LIGHT0); // switch light #0 on // I've setup specific materials so in real light it will look abit strange
+ float[] fLightSpecular = {1f, 1f, 1f, 1f};
+// GL11.glLight(GL11.GL_LIGHT2, GL_POSITION, lightPos3);
+// GL11.glEnable(GL11.GL_LIGHT2);
//
-// GL11.glLight(GL11.GL_LIGHT1, GL11.GL_POSITION, lightPos); // specify the
-// // position
-// // of the
-// // light
-// GL11.glEnable(GL11.GL_LIGHT1); // switch light #0 on
-// GL11.glLight(GL11.GL_LIGHT1, GL11.GL_DIFFUSE, Utils.ConvertForGL(spot));
//
-// GL11.glLight(GL11.GL_LIGHT2, GL11.GL_POSITION, lightPos3); // specify
-// // the
-// // position
-// // of the
-// // light
-// GL11.glEnable(GL11.GL_LIGHT2); // switch light #0 on
-// GL11.glLight(GL11.GL_LIGHT2, GL11.GL_DIFFUSE, Utils.ConvertForGL(grey));
//
-// GL11.glLight(GL11.GL_LIGHT3, GL11.GL_POSITION, lightPos4); // specify
-// // the
-// // position
-// // of the
-// // light
-// GL11.glEnable(GL11.GL_LIGHT3); // switch light #0 on
-// GL11.glLight(GL11.GL_LIGHT3, GL11.GL_DIFFUSE, Utils.ConvertForGL(grey));
+ GL11.glLight(GL11.GL_LIGHT3, GL_POSITION, lightPos4);
+ GL11.glLight(GL11.GL_LIGHT3, GL_SPECULAR, Utils.ConvertForGL(fLightSpecular));
+ GL11.glEnable(GL11.GL_LIGHT3);
+
}
public void close() {
@@ -500,7 +285,6 @@ public class Engine {
}
-
public void setOrtho(int OrthoNumber) {
// if (600 + OrthoNumber > 0 && 700 + OrthoNumber * 0.66 > 0) {
GL11.glMatrixMode(GL11.GL_PROJECTION);
@@ -516,17 +300,6 @@ public class Engine {
}
- private static long getTime() {
- return (Sys.getTime() * 1000) / Sys.getTimerResolution();
- }
-
- public static int getDelta() {
- long currentTime = getTime();
- int delta = (int) (currentTime - lastFrameTime);
- lastFrameTime = getTime();
- return delta;
- }
-
private void loadTexture() {
TextureLoader.loadTexture(textures);
System.out.println("Texture loaded okay ");
diff --git a/src/main/Main.java b/src/main/Main.java
index a519c76..1170802 100644
--- a/src/main/Main.java
+++ b/src/main/Main.java
@@ -70,6 +70,7 @@ public class Main {
e.printStackTrace();
}
}
+ Camera.loading_finished = true;
}
};
Runnable light_anmi = new Runnable() {
@@ -106,7 +107,7 @@ public class Main {
}
};
- new Thread(cameraRunnable).start();
+// new Thread(cameraRunnable).start();
// new Thread(light_anmi).start();
while (!Display.isCloseRequested()) {
diff --git a/src/main/TextureLoader.java b/src/main/TextureLoader.java
index 221688c..7f27eb3 100644
--- a/src/main/TextureLoader.java
+++ b/src/main/TextureLoader.java
@@ -36,6 +36,7 @@ public class TextureLoader {
loadTexture("enchanting_table_side.png");
loadTexture("enchanting_table_top.png");
loadTexture("copyleft.png");
+ loadTexture("2021.png");
//sky box
loadTexture("skybox/back.png");
@@ -45,6 +46,11 @@ public class TextureLoader {
loadTexture("skybox/right.png");
loadTexture("skybox/up.png");
+ //video
+ for (int i = 1; i <= 803; i++) {
+ loadTexture("video/video" + i + ".png");
+ }
+
} catch (IOException e) {
e.printStackTrace();
@@ -58,4 +64,12 @@ public class TextureLoader {
org.newdawn.slick.opengl.TextureLoader.getTexture("PNG", ResourceLoader.getResourceAsStream("res/" + filename))
);
}
+
+ private static void loadTexture(String filename, String fileType) throws IOException {
+ String key_name = filename.split("\\.")[0];
+ textures_map.put(
+ key_name,
+ org.newdawn.slick.opengl.TextureLoader.getTexture(fileType, ResourceLoader.getResourceAsStream("res/" + filename))
+ );
+ }
}