diff --git a/assets/NotoSans-Regular.ttf b/assets/NotoSans-Regular.ttf
new file mode 100644
index 0000000..a1b8994
Binary files /dev/null and b/assets/NotoSans-Regular.ttf differ
diff --git a/assets/NotoSansCJK-Bold.ttc b/assets/NotoSansCJK-Bold.ttc
new file mode 100644
index 0000000..22ea5a3
Binary files /dev/null and b/assets/NotoSansCJK-Bold.ttc differ
diff --git a/assets/NotoSansCJK-Regular.ttc b/assets/NotoSansCJK-Regular.ttc
new file mode 100644
index 0000000..38b534a
Binary files /dev/null and b/assets/NotoSansCJK-Regular.ttc differ
diff --git a/assets/NotoSansJP-Black.otf b/assets/NotoSansJP-Black.otf
new file mode 100644
index 0000000..4a344f2
Binary files /dev/null and b/assets/NotoSansJP-Black.otf differ
diff --git a/assets/NotoSansJP-Bold.otf b/assets/NotoSansJP-Bold.otf
new file mode 100644
index 0000000..a0a3214
Binary files /dev/null and b/assets/NotoSansJP-Bold.otf differ
diff --git a/assets/NotoSansJP-Regular.otf b/assets/NotoSansJP-Regular.otf
new file mode 100644
index 0000000..61b62f2
Binary files /dev/null and b/assets/NotoSansJP-Regular.otf differ
diff --git a/assets/ball.png b/assets/ball.png
new file mode 100755
index 0000000..d745258
Binary files /dev/null and b/assets/ball.png differ
diff --git a/assets/ball.png.import b/assets/ball.png.import
new file mode 100644
index 0000000..ebc0544
--- /dev/null
+++ b/assets/ball.png.import
@@ -0,0 +1,34 @@
+[remap]
+
+importer="texture"
+type="StreamTexture"
+path="res://.import/ball.png-ca93c4f2e7b7f8325cbd933673092ff4.stex"
+metadata={
+"vram_texture": false
+}
+
+[deps]
+
+source_file="res://assets/ball.png"
+dest_files=[ "res://.import/ball.png-ca93c4f2e7b7f8325cbd933673092ff4.stex" ]
+
+[params]
+
+compress/mode=0
+compress/lossy_quality=0.7
+compress/hdr_mode=0
+compress/bptc_ldr=0
+compress/normal_map=0
+flags/repeat=0
+flags/filter=true
+flags/mipmaps=false
+flags/anisotropic=false
+flags/srgb=2
+process/fix_alpha_border=true
+process/premult_alpha=false
+process/HDR_as_SRGB=false
+process/invert_color=false
+stream=false
+size_limit=0
+detect_3d=true
+svg/scale=1.0
diff --git a/assets/miss.wav.import b/assets/miss.wav.import
new file mode 100644
index 0000000..899b24f
--- /dev/null
+++ b/assets/miss.wav.import
@@ -0,0 +1,21 @@
+[remap]
+
+importer="wav"
+type="AudioStreamSample"
+path="res://.import/miss.wav-227376b3a42a02fb20d4279954cdc829.sample"
+
+[deps]
+
+source_file="res://assets/miss.wav"
+dest_files=[ "res://.import/miss.wav-227376b3a42a02fb20d4279954cdc829.sample" ]
+
+[params]
+
+force/8_bit=false
+force/mono=false
+force/max_rate=false
+force/max_rate_hz=44100
+edit/trim=false
+edit/normalize=false
+edit/loop=false
+compress/mode=0
diff --git a/assets/slide-arrow-4k.png b/assets/slide-arrow-4k.png
new file mode 100644
index 0000000..738ecf9
Binary files /dev/null and b/assets/slide-arrow-4k.png differ
diff --git a/assets/slide-arrow-4k.png.import b/assets/slide-arrow-4k.png.import
new file mode 100644
index 0000000..acde2ba
--- /dev/null
+++ b/assets/slide-arrow-4k.png.import
@@ -0,0 +1,34 @@
+[remap]
+
+importer="texture"
+type="StreamTexture"
+path="res://.import/slide-arrow-4k.png-c2dbd68c1771bc65d830f9a8893c2ae7.stex"
+metadata={
+"vram_texture": false
+}
+
+[deps]
+
+source_file="res://assets/slide-arrow-4k.png"
+dest_files=[ "res://.import/slide-arrow-4k.png-c2dbd68c1771bc65d830f9a8893c2ae7.stex" ]
+
+[params]
+
+compress/mode=0
+compress/lossy_quality=0.7
+compress/hdr_mode=0
+compress/bptc_ldr=0
+compress/normal_map=0
+flags/repeat=0
+flags/filter=true
+flags/mipmaps=true
+flags/anisotropic=false
+flags/srgb=2
+process/fix_alpha_border=true
+process/premult_alpha=false
+process/HDR_as_SRGB=false
+process/invert_color=false
+stream=false
+size_limit=0
+detect_3d=true
+svg/scale=1.0
diff --git a/assets/slide-arrow.png b/assets/slide-arrow.png
new file mode 100644
index 0000000..1b0db19
Binary files /dev/null and b/assets/slide-arrow.png differ
diff --git a/assets/slide-arrow.png.import b/assets/slide-arrow.png.import
new file mode 100644
index 0000000..20f85f0
--- /dev/null
+++ b/assets/slide-arrow.png.import
@@ -0,0 +1,34 @@
+[remap]
+
+importer="texture"
+type="StreamTexture"
+path="res://.import/slide-arrow.png-163ea58eaa90b9f37d3c93449a94c611.stex"
+metadata={
+"vram_texture": false
+}
+
+[deps]
+
+source_file="res://assets/slide-arrow.png"
+dest_files=[ "res://.import/slide-arrow.png-163ea58eaa90b9f37d3c93449a94c611.stex" ]
+
+[params]
+
+compress/mode=0
+compress/lossy_quality=0.7
+compress/hdr_mode=0
+compress/bptc_ldr=0
+compress/normal_map=0
+flags/repeat=0
+flags/filter=true
+flags/mipmaps=false
+flags/anisotropic=false
+flags/srgb=2
+process/fix_alpha_border=true
+process/premult_alpha=false
+process/HDR_as_SRGB=false
+process/invert_color=false
+stream=false
+size_limit=0
+detect_3d=true
+svg/scale=1.0
diff --git a/assets/slide-arrow.svg b/assets/slide-arrow.svg
new file mode 100644
index 0000000..5b9c513
--- /dev/null
+++ b/assets/slide-arrow.svg
@@ -0,0 +1,172 @@
+
+
+
+
diff --git a/assets/slide-arrow.svg.import b/assets/slide-arrow.svg.import
new file mode 100644
index 0000000..603fb4b
--- /dev/null
+++ b/assets/slide-arrow.svg.import
@@ -0,0 +1,34 @@
+[remap]
+
+importer="texture"
+type="StreamTexture"
+path="res://.import/slide-arrow.svg-621e478b6645d3328a288155388c3002.stex"
+metadata={
+"vram_texture": false
+}
+
+[deps]
+
+source_file="res://assets/slide-arrow.svg"
+dest_files=[ "res://.import/slide-arrow.svg-621e478b6645d3328a288155388c3002.stex" ]
+
+[params]
+
+compress/mode=0
+compress/lossy_quality=0.7
+compress/hdr_mode=0
+compress/bptc_ldr=0
+compress/normal_map=0
+flags/repeat=0
+flags/filter=true
+flags/mipmaps=false
+flags/anisotropic=false
+flags/srgb=2
+process/fix_alpha_border=true
+process/premult_alpha=false
+process/HDR_as_SRGB=false
+process/invert_color=false
+stream=false
+size_limit=0
+detect_3d=true
+svg/scale=1.0
diff --git a/assets/softclap.wav b/assets/softclap.wav
new file mode 100644
index 0000000..72882cc
Binary files /dev/null and b/assets/softclap.wav differ
diff --git a/assets/softclap.wav.import b/assets/softclap.wav.import
new file mode 100644
index 0000000..e17b819
--- /dev/null
+++ b/assets/softclap.wav.import
@@ -0,0 +1,21 @@
+[remap]
+
+importer="wav"
+type="AudioStreamSample"
+path="res://.import/softclap.wav-f50d776ddb9a428fea735ca74e0f2488.sample"
+
+[deps]
+
+source_file="res://assets/softclap.wav"
+dest_files=[ "res://.import/softclap.wav-f50d776ddb9a428fea735ca74e0f2488.sample" ]
+
+[params]
+
+force/8_bit=false
+force/mono=false
+force/max_rate=false
+force/max_rate_hz=44100
+edit/trim=false
+edit/normalize=false
+edit/loop=false
+compress/mode=0
diff --git a/assets/spritesheet-4k.png b/assets/spritesheet-4k.png
new file mode 100644
index 0000000..cb6fc02
Binary files /dev/null and b/assets/spritesheet-4k.png differ
diff --git a/assets/spritesheet-4k.png.import b/assets/spritesheet-4k.png.import
new file mode 100644
index 0000000..c0ae206
--- /dev/null
+++ b/assets/spritesheet-4k.png.import
@@ -0,0 +1,34 @@
+[remap]
+
+importer="texture"
+type="StreamTexture"
+path="res://.import/spritesheet-4k.png-fdc84040adc0dcc813c587dcdbf74b55.stex"
+metadata={
+"vram_texture": false
+}
+
+[deps]
+
+source_file="res://assets/spritesheet-4k.png"
+dest_files=[ "res://.import/spritesheet-4k.png-fdc84040adc0dcc813c587dcdbf74b55.stex" ]
+
+[params]
+
+compress/mode=0
+compress/lossy_quality=0.7
+compress/hdr_mode=0
+compress/bptc_ldr=0
+compress/normal_map=0
+flags/repeat=0
+flags/filter=true
+flags/mipmaps=true
+flags/anisotropic=false
+flags/srgb=2
+process/fix_alpha_border=true
+process/premult_alpha=false
+process/HDR_as_SRGB=false
+process/invert_color=false
+stream=false
+size_limit=0
+detect_3d=true
+svg/scale=1.0
diff --git a/assets/spritesheet.png b/assets/spritesheet.png
new file mode 100644
index 0000000..8d58179
Binary files /dev/null and b/assets/spritesheet.png differ
diff --git a/assets/spritesheet.png.import b/assets/spritesheet.png.import
new file mode 100644
index 0000000..64a67f8
--- /dev/null
+++ b/assets/spritesheet.png.import
@@ -0,0 +1,34 @@
+[remap]
+
+importer="texture"
+type="StreamTexture"
+path="res://.import/spritesheet.png-76e0b916bc20d45ac6900db6e21d8a9e.stex"
+metadata={
+"vram_texture": false
+}
+
+[deps]
+
+source_file="res://assets/spritesheet.png"
+dest_files=[ "res://.import/spritesheet.png-76e0b916bc20d45ac6900db6e21d8a9e.stex" ]
+
+[params]
+
+compress/mode=0
+compress/lossy_quality=0.7
+compress/hdr_mode=0
+compress/bptc_ldr=0
+compress/normal_map=0
+flags/repeat=0
+flags/filter=true
+flags/mipmaps=false
+flags/anisotropic=false
+flags/srgb=2
+process/fix_alpha_border=true
+process/premult_alpha=false
+process/HDR_as_SRGB=false
+process/invert_color=false
+stream=false
+size_limit=0
+detect_3d=true
+svg/scale=1.0
diff --git a/assets/spritesheet.svg b/assets/spritesheet.svg
new file mode 100644
index 0000000..1088da9
--- /dev/null
+++ b/assets/spritesheet.svg
@@ -0,0 +1,267 @@
+
+
+
+
diff --git a/assets/spritesheet.svg.import b/assets/spritesheet.svg.import
new file mode 100644
index 0000000..24f4358
--- /dev/null
+++ b/assets/spritesheet.svg.import
@@ -0,0 +1,34 @@
+[remap]
+
+importer="texture"
+type="StreamTexture"
+path="res://.import/spritesheet.svg-8dd3a9856197e408bad66877e1339058.stex"
+metadata={
+"vram_texture": false
+}
+
+[deps]
+
+source_file="res://assets/spritesheet.svg"
+dest_files=[ "res://.import/spritesheet.svg-8dd3a9856197e408bad66877e1339058.stex" ]
+
+[params]
+
+compress/mode=0
+compress/lossy_quality=0.7
+compress/hdr_mode=0
+compress/bptc_ldr=0
+compress/normal_map=0
+flags/repeat=0
+flags/filter=true
+flags/mipmaps=false
+flags/anisotropic=false
+flags/srgb=2
+process/fix_alpha_border=true
+process/premult_alpha=false
+process/HDR_as_SRGB=false
+process/invert_color=false
+stream=false
+size_limit=0
+detect_3d=true
+svg/scale=1.0
diff --git a/assets/text-4k.png b/assets/text-4k.png
new file mode 100644
index 0000000..da50453
Binary files /dev/null and b/assets/text-4k.png differ
diff --git a/assets/text-4k.png.import b/assets/text-4k.png.import
new file mode 100644
index 0000000..473642d
--- /dev/null
+++ b/assets/text-4k.png.import
@@ -0,0 +1,34 @@
+[remap]
+
+importer="texture"
+type="StreamTexture"
+path="res://.import/text-4k.png-263d23d8ea85adf8e5f851be4f741ccf.stex"
+metadata={
+"vram_texture": false
+}
+
+[deps]
+
+source_file="res://assets/text-4k.png"
+dest_files=[ "res://.import/text-4k.png-263d23d8ea85adf8e5f851be4f741ccf.stex" ]
+
+[params]
+
+compress/mode=0
+compress/lossy_quality=0.7
+compress/hdr_mode=0
+compress/bptc_ldr=0
+compress/normal_map=0
+flags/repeat=0
+flags/filter=true
+flags/mipmaps=true
+flags/anisotropic=false
+flags/srgb=2
+process/fix_alpha_border=true
+process/premult_alpha=false
+process/HDR_as_SRGB=false
+process/invert_color=false
+stream=false
+size_limit=0
+detect_3d=false
+svg/scale=1.0
diff --git a/assets/text.png b/assets/text.png
new file mode 100644
index 0000000..608550f
Binary files /dev/null and b/assets/text.png differ
diff --git a/assets/text.png.import b/assets/text.png.import
new file mode 100644
index 0000000..fab2bc7
--- /dev/null
+++ b/assets/text.png.import
@@ -0,0 +1,34 @@
+[remap]
+
+importer="texture"
+type="StreamTexture"
+path="res://.import/text.png-e3ddd9f9b1b7d9168ee5ca3d96c1bf48.stex"
+metadata={
+"vram_texture": false
+}
+
+[deps]
+
+source_file="res://assets/text.png"
+dest_files=[ "res://.import/text.png-e3ddd9f9b1b7d9168ee5ca3d96c1bf48.stex" ]
+
+[params]
+
+compress/mode=0
+compress/lossy_quality=0.7
+compress/hdr_mode=0
+compress/bptc_ldr=0
+compress/normal_map=0
+flags/repeat=0
+flags/filter=true
+flags/mipmaps=false
+flags/anisotropic=false
+flags/srgb=2
+process/fix_alpha_border=true
+process/premult_alpha=false
+process/HDR_as_SRGB=false
+process/invert_color=false
+stream=false
+size_limit=0
+detect_3d=true
+svg/scale=1.0
diff --git a/assets/text.svg b/assets/text.svg
new file mode 100644
index 0000000..4c409f3
--- /dev/null
+++ b/assets/text.svg
@@ -0,0 +1,518 @@
+
+
+
+
diff --git a/assets/text.svg.import b/assets/text.svg.import
new file mode 100644
index 0000000..b7b91c2
--- /dev/null
+++ b/assets/text.svg.import
@@ -0,0 +1,34 @@
+[remap]
+
+importer="texture"
+type="StreamTexture"
+path="res://.import/text.svg-c393d3ca5bcbee5b1856427aa76f5ae1.stex"
+metadata={
+"vram_texture": false
+}
+
+[deps]
+
+source_file="res://assets/text.svg"
+dest_files=[ "res://.import/text.svg-c393d3ca5bcbee5b1856427aa76f5ae1.stex" ]
+
+[params]
+
+compress/mode=0
+compress/lossy_quality=0.7
+compress/hdr_mode=0
+compress/bptc_ldr=0
+compress/normal_map=0
+flags/repeat=0
+flags/filter=true
+flags/mipmaps=false
+flags/anisotropic=false
+flags/srgb=2
+process/fix_alpha_border=true
+process/premult_alpha=false
+process/HDR_as_SRGB=false
+process/invert_color=false
+stream=false
+size_limit=0
+detect_3d=true
+svg/scale=1.0