commit 1d840b7c2d99a1ec845c1fe4ff024f113856f486
Author: thing1 <thing1@seacrossedlovers.xyz>
Date: Sun, 3 May 2026 09:57:07 +0100
init
Diffstat:
| A | bad-apple.c | | | 151 | ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ |
| A | bad-apple/bad-apple.ino | | | 447 | +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ |
| A | bad-apple/tones.h | | | 95 | +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ |
| A | convert.py | | | 294 | +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ |
| A | tones.h | | | 95 | +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ |
5 files changed, 1082 insertions(+), 0 deletions(-)
diff --git a/bad-apple.c b/bad-apple.c
@@ -0,0 +1,151 @@
+#include <ctype.h>
+#include <stdio.h>
+#include "tones.h"
+
+#define SIZE(arr) (sizeof(arr)/sizeof(arr[0]))
+
+typedef struct block {
+ int notes[4][26];
+} block;
+
+static const char song[][4][28] = {
+ {"4D--D-D--DC-dD--D-D--DC-dD-"},
+ {"4-D-D--DC-dD--D-FG--F-GD--D"},
+ {"4-D--DC-dD--D-D--DC-dD--D-D"},
+ {"4--DC-dG--F-GF--D-FD--D-D--"},
+ {"4DC-dD--D-D--DC-dD--D-D--DC"},
+ {"4-dD--D-FG--F-GD--D-D--DC-d"},
+ {"4D--D-D--DC-dD--D-D--DC-dG-"},
+ {"4F-G-F-D-F-D--f--F--G--A---"},
+ {"5--D--C--------------------","4--------A-----D-----A--G--"},
+ {"4F--f--D--f--F--G--A-----G-"},
+ {"4-F--f--D--f--F--f--D--d--f"},
+ {"5--------------------D--C--","4--D--f--F--G--A-----------"},
+ {"4A-----D-----A--G--F--f--D-"},
+ {"4-f--F--G--A-----G--F--f---"},
+ {"4--F-----G-----A-----D--f--"},
+ {"5------------D--C----------","4D--f--D-----F--A--F-----D-","4F--G--A-----------A-------","3------------------------A-"},
+ {"4----F--G--F--f--D--f--F--G","4----A---------------------"},
+ {"4--A-----G--F--f--D--f--F--"},
+ {"4f--D--d--f--D--f--D--f--D-","4------------------F--G--A-"},
+ {"5----D--C------------------","4----F--A--F-----D-----F--G","4----------A-----------A---","3----------------A---------"},
+ {"4--F--f--D--f--F--G--A-----"},
+ {"4G--F--f-----F-----G-----A-"},
+ {"5----C--D------------------","4----------A--G--A-----G--A"},
+ {"5--C--D--------------------","4--------A--G--A-----G--A--"},
+ {"4G--F--f--C--D-----C--D--f-"},
+ {"5-------------------C--C--D","4-F--G--A--D-----A---------"},
+ {"5--------------------C--D--","4--A--G--A-----G--A--------"},
+ {"4a--g--A-----G--A--G--F--f-"},
+ {"4-C--D-----C--D--f--F--G--A"},
+ {"5-----------C--C--D--------","4--D-----A-----------A--G--"},
+ {"5------------C--D----------","4A-----G--A--------A--G--A-"},
+ {"4----G--A--G--F--f--C--D---"},
+ {"4--C--D--f--F--G--A--D-----"},
+ {"5---C--C--D----------------","4A-----------A--G--A-----G-"},
+ {"5----C--D--------------D--f","4-A--------A--G--A---------"},
+ {"5--F--f--D--C--------------","4--------------A-----G--A--"},
+ {"6---------------------C--C-","5------------------A-------","4G--F--f--C--D-------------"},
+ {"6-D--------------------C--D","5----A--G--A-----G--A------"},
+ {"5--A--G--A-----G--A--G--F--"},
+ {"5f--C--D-----C--D--f--F--G-"},
+ {"6-------------C--C--D------","5-A--D-----A-----------A--G"},
+ {"6--------------C--D--------","5--A-----G--A--------A--G--"},
+ {"5A-----G--A--G--F--f--C--D-"},
+ {"5----C--D--f--F--G--A--D---"},
+ {"6-----C--C--D--------------","5--A-----------A--G--A-----"},
+ {"6------C--D----------------","5G--A--------A--G--A-----G-"},
+ {"5-A--G--F--f--C--D-----C--D"},
+ {"6-----------------------C--","5--f--F--G--A--D-----A-----"},
+ {"6C--D--------------------C-","5------A--G--A-----G--A----"},
+ {"6-D--------------D--f--F--f","5----A--G--A---------------"},
+ {"6--D--C--------------------","5--------A-----G--A--G--F--"},
+ {"5f--C--D-------------------","4------------------D--D-D--"},
+ {"4DC-dD--D-D--DC-dD--D-D--DC"},
+ {"4-dD--D-FG--F-GD--D-D--DC-d"},
+ {"4D--D-D--DC-dD--D-D--DC-dG-"},
+ {"4-F-GF--D-FD--D-D--DC-dD--D"},
+ {"4-D--DC-dD--D-D--DC-dD--D-F"},
+ {"4G--F-GD--D-D--DC-dD--D-D--"},
+ {"5--------------------C-D-F-","4DC-dD--D-D--DC-dG-A-------"},
+ {"5A-G-----------------A-GF--"},
+ {"5G-Ff--F-fD--f-DC--D-------","4------------------------A-"},
+ {"5----C---------------------","4-------A--G--a--G-----F---"},
+ {"6--------------------C-----","5--------C--D--F--A--------","4--G--A--------------------"},
+ {"6---D-----D-----F--------f-","5A-------------------------"},
+ {"6-f--f--F--f--D--C--D------","5---------------------AA---"},
+ {"6-C-----------------C------","5-------G--A--G--A--------A"},
+ {"5GG-A--G--F--------FfDf--bA","4------------fDCD----------"},
+ {"6----DC-C------------------","5GA----b---bAGA--FfDf------","4----------------------FfDf"},
+ {"5-----------C-C---------C-C","4--DC-C--A-A---b-bA-Ab-b---","3----b---------------------"},
+ {"5D-Df--G-----F--------f----"},
+ {"5-G-----F--f--G--F--f--G--F"},
+ {"5--f-G-F-f-G-F-f-G-F-f-G-F-"},
+ {"6-------C----D-----f-----F-","5A-----A-------------------"},
+ {"6-f--f-----D-----C-----C-dD"},
+ {"6--------------------C--D--","5--A--G--A-----G--A--------"},
+ {"5A--G--A-----G--A--G--F--f-"},
+ {"5-C--D-----C--D--f--F--G--A"},
+ {"6-----------C--C--D--------","5--D-----A-----------A--G--"},
+ {"6------------C--D----------","5A-----G--A--------A--G--A-"},
+ {"5----G--A--G--F--f--C--D---"},
+ {"5--C--D--f--F--G--A--D-----"},
+ {"6---C--C--D----------------","5A-----------A--G--A-----G-"},
+ {"6----C--D------------------","5-A--------A--G--A-----G--A"},
+ {"5--G--F--f--C--D-----C--D--"},
+ {"6---------------------C--C-","5f--F--G--A--D-----A-------"},
+ {"6-D--------------------C--D","5----A--G--A-----G--A------"},
+ {"6--------------D--f--F--f--","5--A--G--A-----------------"},
+ {"6D--C----------------------","5------A-----G--A--G--F--f-"},
+ {"6-------------d--d--e------","5-C--D-----b-----------b--a"},
+ {"6--------------d--e--------","5--b-----a--b--------b--a--"},
+ {"5b-----a--b--a--g--F--d--e-"},
+ {"5----d--e--F--g--a--b--e---"},
+ {"6-----d--d--e--------------","5--b-----------b--a--b-----"},
+ {"6------d--e----------------","5a--b--------b--a--b-----a-"},
+ {"5-b--a--g--F--d--e-----d--e"},
+ {"6-----------------------d--","5--F--g--a--b--e-----b-----"},
+ {"6d--e--------------------d-","5------b--a--b-----a--b----"},
+ {"6-e------------------------","5----b--a--b-----a--b--a--g"},
+ {"5--F--d--e-----d--e--F--g--"},
+ {"6---------------d--d--e----","5a--b--e-----b-----------b-"},
+ {"6----------------d--e------","5-a--b-----a--b--------b--a"},
+ {"6--------e--F--g--F--e--d--","5--b-----------------------"},
+ {"5b-----a--b--a--g--F--d--e-"}
+};
+
+
+
+void makeBlock(const char blk[28]) {
+ if (blk[0] == 0) {
+ printf("{");
+ for (int n = 0; n < 26; n++)
+ printf("0, ");
+ printf("},\n");
+ return;
+ }
+
+ int oc = blk[0] - 48;
+ printf("{");
+ for (int n = 1; n < 27; n++) {
+ if (blk[n] == '-')
+ printf("0, ");
+ else if (isupper(blk[n]))
+ printf("NOTE_%cS%d, ", toupper(blk[n]), oc);
+ else
+ printf("NOTE_%c%d, ", toupper(blk[n]), oc);
+ }
+ printf("},\n");
+}
+
+int main() {
+ for (int ch = 0; ch < 4; ch++) {
+ printf("int ch%d[][26] = {\n", ch);
+ for (int i = 0; i < SIZE(song); i++) {
+ makeBlock(song[i][ch]);
+ }
+ printf("}\n");
+ }
+}
+
+
diff --git a/bad-apple/bad-apple.ino b/bad-apple/bad-apple.ino
@@ -0,0 +1,447 @@
+#include "tones.h"
+
+#define SIZE(arr) (sizeof(arr)/sizeof(arr[0]))
+int ch0[][26] = {
+ {NOTE_DS4, 0, 0, NOTE_DS4, 0, NOTE_DS4, 0, 0, NOTE_DS4, NOTE_CS4, 0, NOTE_D4, NOTE_DS4, 0, 0, NOTE_DS4, 0, NOTE_DS4, 0, 0, NOTE_DS4, NOTE_CS4, 0, NOTE_D4, NOTE_DS4, 0, },
+ {0, NOTE_DS4, 0, NOTE_DS4, 0, 0, NOTE_DS4, NOTE_CS4, 0, NOTE_D4, NOTE_DS4, 0, 0, NOTE_DS4, 0, NOTE_FS4, NOTE_GS4, 0, 0, NOTE_FS4, 0, NOTE_GS4, NOTE_DS4, 0, 0, NOTE_DS4, },
+ {0, NOTE_DS4, 0, 0, NOTE_DS4, NOTE_CS4, 0, NOTE_D4, NOTE_DS4, 0, 0, NOTE_DS4, 0, NOTE_DS4, 0, 0, NOTE_DS4, NOTE_CS4, 0, NOTE_D4, NOTE_DS4, 0, 0, NOTE_DS4, 0, NOTE_DS4, },
+ {0, 0, NOTE_DS4, NOTE_CS4, 0, NOTE_D4, NOTE_GS4, 0, 0, NOTE_FS4, 0, NOTE_GS4, NOTE_FS4, 0, 0, NOTE_DS4, 0, NOTE_FS4, NOTE_DS4, 0, 0, NOTE_DS4, 0, NOTE_DS4, 0, 0, },
+ {NOTE_DS4, NOTE_CS4, 0, NOTE_D4, NOTE_DS4, 0, 0, NOTE_DS4, 0, NOTE_DS4, 0, 0, NOTE_DS4, NOTE_CS4, 0, NOTE_D4, NOTE_DS4, 0, 0, NOTE_DS4, 0, NOTE_DS4, 0, 0, NOTE_DS4, NOTE_CS4, },
+ {0, NOTE_D4, NOTE_DS4, 0, 0, NOTE_DS4, 0, NOTE_FS4, NOTE_GS4, 0, 0, NOTE_FS4, 0, NOTE_GS4, NOTE_DS4, 0, 0, NOTE_DS4, 0, NOTE_DS4, 0, 0, NOTE_DS4, NOTE_CS4, 0, NOTE_D4, },
+ {NOTE_DS4, 0, 0, NOTE_DS4, 0, NOTE_DS4, 0, 0, NOTE_DS4, NOTE_CS4, 0, NOTE_D4, NOTE_DS4, 0, 0, NOTE_DS4, 0, NOTE_DS4, 0, 0, NOTE_DS4, NOTE_CS4, 0, NOTE_D4, NOTE_GS4, 0, },
+ {NOTE_FS4, 0, NOTE_GS4, 0, NOTE_FS4, 0, NOTE_DS4, 0, NOTE_FS4, 0, NOTE_DS4, 0, 0, NOTE_F4, 0, 0, NOTE_FS4, 0, 0, NOTE_GS4, 0, 0, NOTE_AS4, 0, 0, 0, },
+ {0, 0, NOTE_DS5, 0, 0, NOTE_CS5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {NOTE_FS4, 0, 0, NOTE_F4, 0, 0, NOTE_DS4, 0, 0, NOTE_F4, 0, 0, NOTE_FS4, 0, 0, NOTE_GS4, 0, 0, NOTE_AS4, 0, 0, 0, 0, 0, NOTE_GS4, 0, },
+ {0, NOTE_FS4, 0, 0, NOTE_F4, 0, 0, NOTE_DS4, 0, 0, NOTE_F4, 0, 0, NOTE_FS4, 0, 0, NOTE_F4, 0, 0, NOTE_DS4, 0, 0, NOTE_D4, 0, 0, NOTE_F4, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, NOTE_DS5, 0, 0, NOTE_CS5, 0, 0, },
+ {NOTE_AS4, 0, 0, 0, 0, 0, NOTE_DS4, 0, 0, 0, 0, 0, NOTE_AS4, 0, 0, NOTE_GS4, 0, 0, NOTE_FS4, 0, 0, NOTE_F4, 0, 0, NOTE_DS4, 0, },
+ {0, NOTE_F4, 0, 0, NOTE_FS4, 0, 0, NOTE_GS4, 0, 0, NOTE_AS4, 0, 0, 0, 0, 0, NOTE_GS4, 0, 0, NOTE_FS4, 0, 0, NOTE_F4, 0, 0, 0, },
+ {0, 0, NOTE_FS4, 0, 0, 0, 0, 0, NOTE_GS4, 0, 0, 0, 0, 0, NOTE_AS4, 0, 0, 0, 0, 0, NOTE_DS4, 0, 0, NOTE_F4, 0, 0, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, NOTE_DS5, 0, 0, NOTE_CS5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {0, 0, 0, 0, NOTE_FS4, 0, 0, NOTE_GS4, 0, 0, NOTE_FS4, 0, 0, NOTE_F4, 0, 0, NOTE_DS4, 0, 0, NOTE_F4, 0, 0, NOTE_FS4, 0, 0, NOTE_GS4, },
+ {0, 0, NOTE_AS4, 0, 0, 0, 0, 0, NOTE_GS4, 0, 0, NOTE_FS4, 0, 0, NOTE_F4, 0, 0, NOTE_DS4, 0, 0, NOTE_F4, 0, 0, NOTE_FS4, 0, 0, },
+ {NOTE_F4, 0, 0, NOTE_DS4, 0, 0, NOTE_D4, 0, 0, NOTE_F4, 0, 0, NOTE_DS4, 0, 0, NOTE_F4, 0, 0, NOTE_DS4, 0, 0, NOTE_F4, 0, 0, NOTE_DS4, 0, },
+ {0, 0, 0, 0, NOTE_DS5, 0, 0, NOTE_CS5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {0, 0, NOTE_FS4, 0, 0, NOTE_F4, 0, 0, NOTE_DS4, 0, 0, NOTE_F4, 0, 0, NOTE_FS4, 0, 0, NOTE_GS4, 0, 0, NOTE_AS4, 0, 0, 0, 0, 0, },
+ {NOTE_GS4, 0, 0, NOTE_FS4, 0, 0, NOTE_F4, 0, 0, 0, 0, 0, NOTE_FS4, 0, 0, 0, 0, 0, NOTE_GS4, 0, 0, 0, 0, 0, NOTE_AS4, 0, },
+ {0, 0, 0, 0, NOTE_CS5, 0, 0, NOTE_DS5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {0, 0, NOTE_CS5, 0, 0, NOTE_DS5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {NOTE_GS4, 0, 0, NOTE_FS4, 0, 0, NOTE_F4, 0, 0, NOTE_CS4, 0, 0, NOTE_DS4, 0, 0, 0, 0, 0, NOTE_CS4, 0, 0, NOTE_DS4, 0, 0, NOTE_F4, 0, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, NOTE_CS5, 0, 0, NOTE_CS5, 0, 0, NOTE_DS5, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, NOTE_CS5, 0, 0, NOTE_DS5, 0, 0, },
+ {NOTE_A4, 0, 0, NOTE_G4, 0, 0, NOTE_AS4, 0, 0, 0, 0, 0, NOTE_GS4, 0, 0, NOTE_AS4, 0, 0, NOTE_GS4, 0, 0, NOTE_FS4, 0, 0, NOTE_F4, 0, },
+ {0, NOTE_CS4, 0, 0, NOTE_DS4, 0, 0, 0, 0, 0, NOTE_CS4, 0, 0, NOTE_DS4, 0, 0, NOTE_F4, 0, 0, NOTE_FS4, 0, 0, NOTE_GS4, 0, 0, NOTE_AS4, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, NOTE_CS5, 0, 0, NOTE_CS5, 0, 0, NOTE_DS5, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, NOTE_CS5, 0, 0, NOTE_DS5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {0, 0, 0, 0, NOTE_GS4, 0, 0, NOTE_AS4, 0, 0, NOTE_GS4, 0, 0, NOTE_FS4, 0, 0, NOTE_F4, 0, 0, NOTE_CS4, 0, 0, NOTE_DS4, 0, 0, 0, },
+ {0, 0, NOTE_CS4, 0, 0, NOTE_DS4, 0, 0, NOTE_F4, 0, 0, NOTE_FS4, 0, 0, NOTE_GS4, 0, 0, NOTE_AS4, 0, 0, NOTE_DS4, 0, 0, 0, 0, 0, },
+ {0, 0, 0, NOTE_CS5, 0, 0, NOTE_CS5, 0, 0, NOTE_DS5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {0, 0, 0, 0, NOTE_CS5, 0, 0, NOTE_DS5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, NOTE_DS5, 0, 0, NOTE_F5, },
+ {0, 0, NOTE_FS5, 0, 0, NOTE_F5, 0, 0, NOTE_DS5, 0, 0, NOTE_CS5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, NOTE_CS6, 0, 0, NOTE_CS6, 0, },
+ {0, NOTE_DS6, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, NOTE_CS6, 0, 0, NOTE_DS6, },
+ {0, 0, NOTE_AS5, 0, 0, NOTE_GS5, 0, 0, NOTE_AS5, 0, 0, 0, 0, 0, NOTE_GS5, 0, 0, NOTE_AS5, 0, 0, NOTE_GS5, 0, 0, NOTE_FS5, 0, 0, },
+ {NOTE_F5, 0, 0, NOTE_CS5, 0, 0, NOTE_DS5, 0, 0, 0, 0, 0, NOTE_CS5, 0, 0, NOTE_DS5, 0, 0, NOTE_F5, 0, 0, NOTE_FS5, 0, 0, NOTE_GS5, 0, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, NOTE_CS6, 0, 0, NOTE_CS6, 0, 0, NOTE_DS6, 0, 0, 0, 0, 0, 0, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, NOTE_CS6, 0, 0, NOTE_DS6, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {NOTE_AS5, 0, 0, 0, 0, 0, NOTE_GS5, 0, 0, NOTE_AS5, 0, 0, NOTE_GS5, 0, 0, NOTE_FS5, 0, 0, NOTE_F5, 0, 0, NOTE_CS5, 0, 0, NOTE_DS5, 0, },
+ {0, 0, 0, 0, NOTE_CS5, 0, 0, NOTE_DS5, 0, 0, NOTE_F5, 0, 0, NOTE_FS5, 0, 0, NOTE_GS5, 0, 0, NOTE_AS5, 0, 0, NOTE_DS5, 0, 0, 0, },
+ {0, 0, 0, 0, 0, NOTE_CS6, 0, 0, NOTE_CS6, 0, 0, NOTE_DS6, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {0, 0, 0, 0, 0, 0, NOTE_CS6, 0, 0, NOTE_DS6, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {0, NOTE_AS5, 0, 0, NOTE_GS5, 0, 0, NOTE_FS5, 0, 0, NOTE_F5, 0, 0, NOTE_CS5, 0, 0, NOTE_DS5, 0, 0, 0, 0, 0, NOTE_CS5, 0, 0, NOTE_DS5, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, NOTE_CS6, 0, 0, },
+ {NOTE_CS6, 0, 0, NOTE_DS6, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, NOTE_CS6, 0, },
+ {0, NOTE_DS6, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, NOTE_DS6, 0, 0, NOTE_F6, 0, 0, NOTE_FS6, 0, 0, NOTE_F6, },
+ {0, 0, NOTE_DS6, 0, 0, NOTE_CS6, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {NOTE_F5, 0, 0, NOTE_CS5, 0, 0, NOTE_DS5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {NOTE_DS4, NOTE_CS4, 0, NOTE_D4, NOTE_DS4, 0, 0, NOTE_DS4, 0, NOTE_DS4, 0, 0, NOTE_DS4, NOTE_CS4, 0, NOTE_D4, NOTE_DS4, 0, 0, NOTE_DS4, 0, NOTE_DS4, 0, 0, NOTE_DS4, NOTE_CS4, },
+ {0, NOTE_D4, NOTE_DS4, 0, 0, NOTE_DS4, 0, NOTE_FS4, NOTE_GS4, 0, 0, NOTE_FS4, 0, NOTE_GS4, NOTE_DS4, 0, 0, NOTE_DS4, 0, NOTE_DS4, 0, 0, NOTE_DS4, NOTE_CS4, 0, NOTE_D4, },
+ {NOTE_DS4, 0, 0, NOTE_DS4, 0, NOTE_DS4, 0, 0, NOTE_DS4, NOTE_CS4, 0, NOTE_D4, NOTE_DS4, 0, 0, NOTE_DS4, 0, NOTE_DS4, 0, 0, NOTE_DS4, NOTE_CS4, 0, NOTE_D4, NOTE_GS4, 0, },
+ {0, NOTE_FS4, 0, NOTE_GS4, NOTE_FS4, 0, 0, NOTE_DS4, 0, NOTE_FS4, NOTE_DS4, 0, 0, NOTE_DS4, 0, NOTE_DS4, 0, 0, NOTE_DS4, NOTE_CS4, 0, NOTE_D4, NOTE_DS4, 0, 0, NOTE_DS4, },
+ {0, NOTE_DS4, 0, 0, NOTE_DS4, NOTE_CS4, 0, NOTE_D4, NOTE_DS4, 0, 0, NOTE_DS4, 0, NOTE_DS4, 0, 0, NOTE_DS4, NOTE_CS4, 0, NOTE_D4, NOTE_DS4, 0, 0, NOTE_DS4, 0, NOTE_FS4, },
+ {NOTE_GS4, 0, 0, NOTE_FS4, 0, NOTE_GS4, NOTE_DS4, 0, 0, NOTE_DS4, 0, NOTE_DS4, 0, 0, NOTE_DS4, NOTE_CS4, 0, NOTE_D4, NOTE_DS4, 0, 0, NOTE_DS4, 0, NOTE_DS4, 0, 0, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, NOTE_CS5, 0, NOTE_DS5, 0, NOTE_FS5, 0, },
+ {NOTE_AS5, 0, NOTE_GS5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, NOTE_AS5, 0, NOTE_GS5, NOTE_FS5, 0, 0, },
+ {NOTE_GS5, 0, NOTE_FS5, NOTE_F5, 0, 0, NOTE_FS5, 0, NOTE_F5, NOTE_DS5, 0, 0, NOTE_F5, 0, NOTE_DS5, NOTE_CS5, 0, 0, NOTE_DS5, 0, 0, 0, 0, 0, 0, 0, },
+ {0, 0, 0, 0, NOTE_CS5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, NOTE_CS6, 0, 0, 0, 0, 0, },
+ {0, 0, 0, NOTE_DS6, 0, 0, 0, 0, 0, NOTE_DS6, 0, 0, 0, 0, 0, NOTE_FS6, 0, 0, 0, 0, 0, 0, 0, 0, NOTE_F6, 0, },
+ {0, NOTE_F6, 0, 0, NOTE_F6, 0, 0, NOTE_FS6, 0, 0, NOTE_F6, 0, 0, NOTE_DS6, 0, 0, NOTE_CS6, 0, 0, NOTE_DS6, 0, 0, 0, 0, 0, 0, },
+ {0, NOTE_CS6, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, NOTE_CS6, 0, 0, 0, 0, 0, 0, },
+ {NOTE_GS5, NOTE_GS5, 0, NOTE_AS5, 0, 0, NOTE_GS5, 0, 0, NOTE_FS5, 0, 0, 0, 0, 0, 0, 0, 0, NOTE_FS5, NOTE_F5, NOTE_DS5, NOTE_F5, 0, 0, NOTE_B5, NOTE_AS5, },
+ {0, 0, 0, 0, NOTE_DS6, NOTE_CS6, 0, NOTE_CS6, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, NOTE_CS5, 0, NOTE_CS5, 0, 0, 0, 0, 0, 0, 0, 0, 0, NOTE_CS5, 0, NOTE_CS5, },
+ {NOTE_DS5, 0, NOTE_DS5, NOTE_F5, 0, 0, NOTE_GS5, 0, 0, 0, 0, 0, NOTE_FS5, 0, 0, 0, 0, 0, 0, 0, 0, NOTE_F5, 0, 0, 0, 0, },
+ {0, NOTE_GS5, 0, 0, 0, 0, 0, NOTE_FS5, 0, 0, NOTE_F5, 0, 0, NOTE_GS5, 0, 0, NOTE_FS5, 0, 0, NOTE_F5, 0, 0, NOTE_GS5, 0, 0, NOTE_FS5, },
+ {0, 0, NOTE_F5, 0, NOTE_GS5, 0, NOTE_FS5, 0, NOTE_F5, 0, NOTE_GS5, 0, NOTE_FS5, 0, NOTE_F5, 0, NOTE_GS5, 0, NOTE_FS5, 0, NOTE_F5, 0, NOTE_GS5, 0, NOTE_FS5, 0, },
+ {0, 0, 0, 0, 0, 0, 0, NOTE_CS6, 0, 0, 0, 0, NOTE_DS6, 0, 0, 0, 0, 0, NOTE_F6, 0, 0, 0, 0, 0, NOTE_FS6, 0, },
+ {0, NOTE_F6, 0, 0, NOTE_F6, 0, 0, 0, 0, 0, NOTE_DS6, 0, 0, 0, 0, 0, NOTE_CS6, 0, 0, 0, 0, 0, NOTE_CS6, 0, NOTE_D6, NOTE_DS6, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, NOTE_CS6, 0, 0, NOTE_DS6, 0, 0, },
+ {NOTE_AS5, 0, 0, NOTE_GS5, 0, 0, NOTE_AS5, 0, 0, 0, 0, 0, NOTE_GS5, 0, 0, NOTE_AS5, 0, 0, NOTE_GS5, 0, 0, NOTE_FS5, 0, 0, NOTE_F5, 0, },
+ {0, NOTE_CS5, 0, 0, NOTE_DS5, 0, 0, 0, 0, 0, NOTE_CS5, 0, 0, NOTE_DS5, 0, 0, NOTE_F5, 0, 0, NOTE_FS5, 0, 0, NOTE_GS5, 0, 0, NOTE_AS5, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, NOTE_CS6, 0, 0, NOTE_CS6, 0, 0, NOTE_DS6, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, NOTE_CS6, 0, 0, NOTE_DS6, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {0, 0, 0, 0, NOTE_GS5, 0, 0, NOTE_AS5, 0, 0, NOTE_GS5, 0, 0, NOTE_FS5, 0, 0, NOTE_F5, 0, 0, NOTE_CS5, 0, 0, NOTE_DS5, 0, 0, 0, },
+ {0, 0, NOTE_CS5, 0, 0, NOTE_DS5, 0, 0, NOTE_F5, 0, 0, NOTE_FS5, 0, 0, NOTE_GS5, 0, 0, NOTE_AS5, 0, 0, NOTE_DS5, 0, 0, 0, 0, 0, },
+ {0, 0, 0, NOTE_CS6, 0, 0, NOTE_CS6, 0, 0, NOTE_DS6, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {0, 0, 0, 0, NOTE_CS6, 0, 0, NOTE_DS6, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {0, 0, NOTE_GS5, 0, 0, NOTE_FS5, 0, 0, NOTE_F5, 0, 0, NOTE_CS5, 0, 0, NOTE_DS5, 0, 0, 0, 0, 0, NOTE_CS5, 0, 0, NOTE_DS5, 0, 0, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, NOTE_CS6, 0, 0, NOTE_CS6, 0, },
+ {0, NOTE_DS6, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, NOTE_CS6, 0, 0, NOTE_DS6, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, NOTE_DS6, 0, 0, NOTE_F6, 0, 0, NOTE_FS6, 0, 0, NOTE_F6, 0, 0, },
+ {NOTE_DS6, 0, 0, NOTE_CS6, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, NOTE_D6, 0, 0, NOTE_D6, 0, 0, NOTE_E6, 0, 0, 0, 0, 0, 0, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, NOTE_D6, 0, 0, NOTE_E6, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {NOTE_B5, 0, 0, 0, 0, 0, NOTE_A5, 0, 0, NOTE_B5, 0, 0, NOTE_A5, 0, 0, NOTE_G5, 0, 0, NOTE_FS5, 0, 0, NOTE_D5, 0, 0, NOTE_E5, 0, },
+ {0, 0, 0, 0, NOTE_D5, 0, 0, NOTE_E5, 0, 0, NOTE_FS5, 0, 0, NOTE_G5, 0, 0, NOTE_A5, 0, 0, NOTE_B5, 0, 0, NOTE_E5, 0, 0, 0, },
+ {0, 0, 0, 0, 0, NOTE_D6, 0, 0, NOTE_D6, 0, 0, NOTE_E6, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {0, 0, 0, 0, 0, 0, NOTE_D6, 0, 0, NOTE_E6, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {0, NOTE_B5, 0, 0, NOTE_A5, 0, 0, NOTE_G5, 0, 0, NOTE_FS5, 0, 0, NOTE_D5, 0, 0, NOTE_E5, 0, 0, 0, 0, 0, NOTE_D5, 0, 0, NOTE_E5, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, NOTE_D6, 0, 0, },
+ {NOTE_D6, 0, 0, NOTE_E6, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, NOTE_D6, 0, },
+ {0, NOTE_E6, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {0, 0, NOTE_FS5, 0, 0, NOTE_D5, 0, 0, NOTE_E5, 0, 0, 0, 0, 0, NOTE_D5, 0, 0, NOTE_E5, 0, 0, NOTE_FS5, 0, 0, NOTE_G5, 0, 0, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, NOTE_D6, 0, 0, NOTE_D6, 0, 0, NOTE_E6, 0, 0, 0, 0, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, NOTE_D6, 0, 0, NOTE_E6, 0, 0, 0, 0, 0, 0, },
+ {0, 0, 0, 0, 0, 0, 0, 0, NOTE_E6, 0, 0, NOTE_FS6, 0, 0, NOTE_G6, 0, 0, NOTE_FS6, 0, 0, NOTE_E6, 0, 0, NOTE_D6, 0, 0, },
+ {NOTE_B5, 0, 0, 0, 0, 0, NOTE_A5, 0, 0, NOTE_B5, 0, 0, NOTE_A5, 0, 0, NOTE_G5, 0, 0, NOTE_FS5, 0, 0, NOTE_D5, 0, 0, NOTE_E5, 0, },
+};
+int ch1[][26] = {
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {0, 0, 0, 0, 0, 0, 0, 0, NOTE_AS4, 0, 0, 0, 0, 0, NOTE_DS4, 0, 0, 0, 0, 0, NOTE_AS4, 0, 0, NOTE_GS4, 0, 0, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {0, 0, NOTE_DS4, 0, 0, NOTE_F4, 0, 0, NOTE_FS4, 0, 0, NOTE_GS4, 0, 0, NOTE_AS4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {NOTE_DS4, 0, 0, NOTE_F4, 0, 0, NOTE_DS4, 0, 0, 0, 0, 0, NOTE_FS4, 0, 0, NOTE_AS4, 0, 0, NOTE_FS4, 0, 0, 0, 0, 0, NOTE_DS4, 0, },
+ {0, 0, 0, 0, NOTE_AS4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, NOTE_FS4, 0, 0, NOTE_GS4, 0, 0, NOTE_AS4, 0, },
+ {0, 0, 0, 0, NOTE_FS4, 0, 0, NOTE_AS4, 0, 0, NOTE_FS4, 0, 0, 0, 0, 0, NOTE_DS4, 0, 0, 0, 0, 0, NOTE_FS4, 0, 0, NOTE_GS4, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, NOTE_AS4, 0, 0, NOTE_GS4, 0, 0, NOTE_AS4, 0, 0, 0, 0, 0, NOTE_GS4, 0, 0, NOTE_AS4, },
+ {0, 0, 0, 0, 0, 0, 0, 0, NOTE_AS4, 0, 0, NOTE_GS4, 0, 0, NOTE_AS4, 0, 0, 0, 0, 0, NOTE_GS4, 0, 0, NOTE_AS4, 0, 0, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {0, NOTE_FS4, 0, 0, NOTE_GS4, 0, 0, NOTE_AS4, 0, 0, NOTE_DS4, 0, 0, 0, 0, 0, NOTE_AS4, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {0, 0, NOTE_AS4, 0, 0, NOTE_GS4, 0, 0, NOTE_AS4, 0, 0, 0, 0, 0, NOTE_GS4, 0, 0, NOTE_AS4, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {0, 0, NOTE_DS4, 0, 0, 0, 0, 0, NOTE_AS4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, NOTE_AS4, 0, 0, NOTE_GS4, 0, 0, },
+ {NOTE_AS4, 0, 0, 0, 0, 0, NOTE_GS4, 0, 0, NOTE_AS4, 0, 0, 0, 0, 0, 0, 0, 0, NOTE_AS4, 0, 0, NOTE_GS4, 0, 0, NOTE_AS4, 0, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {NOTE_AS4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, NOTE_AS4, 0, 0, NOTE_GS4, 0, 0, NOTE_AS4, 0, 0, 0, 0, 0, NOTE_GS4, 0, },
+ {0, NOTE_AS4, 0, 0, 0, 0, 0, 0, 0, 0, NOTE_AS4, 0, 0, NOTE_GS4, 0, 0, NOTE_AS4, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, NOTE_AS4, 0, 0, 0, 0, 0, NOTE_GS4, 0, 0, NOTE_AS4, 0, 0, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, NOTE_AS5, 0, 0, 0, 0, 0, 0, 0, },
+ {0, 0, 0, 0, NOTE_AS5, 0, 0, NOTE_GS5, 0, 0, NOTE_AS5, 0, 0, 0, 0, 0, NOTE_GS5, 0, 0, NOTE_AS5, 0, 0, 0, 0, 0, 0, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {0, NOTE_AS5, 0, 0, NOTE_DS5, 0, 0, 0, 0, 0, NOTE_AS5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, NOTE_AS5, 0, 0, NOTE_GS5, },
+ {0, 0, NOTE_AS5, 0, 0, 0, 0, 0, NOTE_GS5, 0, 0, NOTE_AS5, 0, 0, 0, 0, 0, 0, 0, 0, NOTE_AS5, 0, 0, NOTE_GS5, 0, 0, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {0, 0, NOTE_AS5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, NOTE_AS5, 0, 0, NOTE_GS5, 0, 0, NOTE_AS5, 0, 0, 0, 0, 0, },
+ {NOTE_GS5, 0, 0, NOTE_AS5, 0, 0, 0, 0, 0, 0, 0, 0, NOTE_AS5, 0, 0, NOTE_GS5, 0, 0, NOTE_AS5, 0, 0, 0, 0, 0, NOTE_GS5, 0, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {0, 0, NOTE_F5, 0, 0, NOTE_FS5, 0, 0, NOTE_GS5, 0, 0, NOTE_AS5, 0, 0, NOTE_DS5, 0, 0, 0, 0, 0, NOTE_AS5, 0, 0, 0, 0, 0, },
+ {0, 0, 0, 0, 0, 0, NOTE_AS5, 0, 0, NOTE_GS5, 0, 0, NOTE_AS5, 0, 0, 0, 0, 0, NOTE_GS5, 0, 0, NOTE_AS5, 0, 0, 0, 0, },
+ {0, 0, 0, 0, NOTE_AS5, 0, 0, NOTE_GS5, 0, 0, NOTE_AS5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {0, 0, 0, 0, 0, 0, 0, 0, NOTE_AS5, 0, 0, 0, 0, 0, NOTE_GS5, 0, 0, NOTE_AS5, 0, 0, NOTE_GS5, 0, 0, NOTE_FS5, 0, 0, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, NOTE_DS4, 0, 0, NOTE_DS4, 0, NOTE_DS4, 0, 0, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {NOTE_DS4, NOTE_CS4, 0, NOTE_D4, NOTE_DS4, 0, 0, NOTE_DS4, 0, NOTE_DS4, 0, 0, NOTE_DS4, NOTE_CS4, 0, NOTE_D4, NOTE_GS4, 0, NOTE_AS4, 0, 0, 0, 0, 0, 0, 0, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, NOTE_AS4, 0, },
+ {0, 0, 0, 0, 0, 0, 0, NOTE_AS4, 0, 0, NOTE_GS4, 0, 0, NOTE_A4, 0, 0, NOTE_GS4, 0, 0, 0, 0, 0, NOTE_FS4, 0, 0, 0, },
+ {0, 0, 0, 0, 0, 0, 0, 0, NOTE_CS5, 0, 0, NOTE_DS5, 0, 0, NOTE_FS5, 0, 0, NOTE_AS5, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {NOTE_AS5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, NOTE_AS5, NOTE_AS5, 0, 0, 0, },
+ {0, 0, 0, 0, 0, 0, 0, NOTE_GS5, 0, 0, NOTE_AS5, 0, 0, NOTE_GS5, 0, 0, NOTE_AS5, 0, 0, 0, 0, 0, 0, 0, 0, NOTE_AS5, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, NOTE_F4, NOTE_DS4, NOTE_CS4, NOTE_DS4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {NOTE_GS5, NOTE_AS5, 0, 0, 0, 0, NOTE_B5, 0, 0, 0, NOTE_B5, NOTE_AS5, NOTE_GS5, NOTE_AS5, 0, 0, NOTE_FS5, NOTE_F5, NOTE_DS5, NOTE_F5, 0, 0, 0, 0, 0, 0, },
+ {0, 0, NOTE_DS4, NOTE_CS4, 0, NOTE_CS4, 0, 0, NOTE_AS4, 0, NOTE_AS4, 0, 0, 0, NOTE_B4, 0, NOTE_B4, NOTE_AS4, 0, NOTE_AS4, NOTE_B4, 0, NOTE_B4, 0, 0, 0, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {NOTE_AS5, 0, 0, 0, 0, 0, NOTE_AS5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {0, 0, NOTE_AS5, 0, 0, NOTE_GS5, 0, 0, NOTE_AS5, 0, 0, 0, 0, 0, NOTE_GS5, 0, 0, NOTE_AS5, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {0, 0, NOTE_DS5, 0, 0, 0, 0, 0, NOTE_AS5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, NOTE_AS5, 0, 0, NOTE_GS5, 0, 0, },
+ {NOTE_AS5, 0, 0, 0, 0, 0, NOTE_GS5, 0, 0, NOTE_AS5, 0, 0, 0, 0, 0, 0, 0, 0, NOTE_AS5, 0, 0, NOTE_GS5, 0, 0, NOTE_AS5, 0, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {NOTE_AS5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, NOTE_AS5, 0, 0, NOTE_GS5, 0, 0, NOTE_AS5, 0, 0, 0, 0, 0, NOTE_GS5, 0, },
+ {0, NOTE_AS5, 0, 0, 0, 0, 0, 0, 0, 0, NOTE_AS5, 0, 0, NOTE_GS5, 0, 0, NOTE_AS5, 0, 0, 0, 0, 0, NOTE_GS5, 0, 0, NOTE_AS5, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {NOTE_F5, 0, 0, NOTE_FS5, 0, 0, NOTE_GS5, 0, 0, NOTE_AS5, 0, 0, NOTE_DS5, 0, 0, 0, 0, 0, NOTE_AS5, 0, 0, 0, 0, 0, 0, 0, },
+ {0, 0, 0, 0, NOTE_AS5, 0, 0, NOTE_GS5, 0, 0, NOTE_AS5, 0, 0, 0, 0, 0, NOTE_GS5, 0, 0, NOTE_AS5, 0, 0, 0, 0, 0, 0, },
+ {0, 0, NOTE_AS5, 0, 0, NOTE_GS5, 0, 0, NOTE_AS5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {0, 0, 0, 0, 0, 0, NOTE_AS5, 0, 0, 0, 0, 0, NOTE_GS5, 0, 0, NOTE_AS5, 0, 0, NOTE_GS5, 0, 0, NOTE_FS5, 0, 0, NOTE_F5, 0, },
+ {0, NOTE_CS5, 0, 0, NOTE_DS5, 0, 0, 0, 0, 0, NOTE_B5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, NOTE_B5, 0, 0, NOTE_A5, },
+ {0, 0, NOTE_B5, 0, 0, 0, 0, 0, NOTE_A5, 0, 0, NOTE_B5, 0, 0, 0, 0, 0, 0, 0, 0, NOTE_B5, 0, 0, NOTE_A5, 0, 0, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {0, 0, NOTE_B5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, NOTE_B5, 0, 0, NOTE_A5, 0, 0, NOTE_B5, 0, 0, 0, 0, 0, },
+ {NOTE_A5, 0, 0, NOTE_B5, 0, 0, 0, 0, 0, 0, 0, 0, NOTE_B5, 0, 0, NOTE_A5, 0, 0, NOTE_B5, 0, 0, 0, 0, 0, NOTE_A5, 0, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {0, 0, NOTE_FS5, 0, 0, NOTE_G5, 0, 0, NOTE_A5, 0, 0, NOTE_B5, 0, 0, NOTE_E5, 0, 0, 0, 0, 0, NOTE_B5, 0, 0, 0, 0, 0, },
+ {0, 0, 0, 0, 0, 0, NOTE_B5, 0, 0, NOTE_A5, 0, 0, NOTE_B5, 0, 0, 0, 0, 0, NOTE_A5, 0, 0, NOTE_B5, 0, 0, 0, 0, },
+ {0, 0, 0, 0, NOTE_B5, 0, 0, NOTE_A5, 0, 0, NOTE_B5, 0, 0, 0, 0, 0, NOTE_A5, 0, 0, NOTE_B5, 0, 0, NOTE_A5, 0, 0, NOTE_G5, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {NOTE_A5, 0, 0, NOTE_B5, 0, 0, NOTE_E5, 0, 0, 0, 0, 0, NOTE_B5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, NOTE_B5, 0, },
+ {0, NOTE_A5, 0, 0, NOTE_B5, 0, 0, 0, 0, 0, NOTE_A5, 0, 0, NOTE_B5, 0, 0, 0, 0, 0, 0, 0, 0, NOTE_B5, 0, 0, NOTE_A5, },
+ {0, 0, NOTE_B5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+};
+int ch2[][26] = {
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {NOTE_FS4, 0, 0, NOTE_GS4, 0, 0, NOTE_AS4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, NOTE_AS4, 0, 0, 0, 0, 0, 0, 0, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, NOTE_AS4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, NOTE_AS4, 0, 0, 0, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {NOTE_GS4, 0, 0, NOTE_FS4, 0, 0, NOTE_F4, 0, 0, NOTE_CS4, 0, 0, NOTE_DS4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {0, 0, NOTE_GS4, 0, 0, NOTE_AS4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, NOTE_FS4, NOTE_F4, NOTE_DS4, NOTE_F4, },
+ {0, 0, 0, 0, NOTE_B3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+};
+int ch3[][26] = {
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, NOTE_AS3, 0, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, NOTE_AS3, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+ {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, },
+};
+
+
+void setup() {
+ delay(1000);
+ pinMode(4, OUTPUT);
+ pinMode(26, OUTPUT);
+ digitalWrite(4, LOW);
+
+ for (int i = 0; i < SIZE(ch0); i++) {
+ for (int j = 0; j < 26; j++) {
+ tone(26, ch0[i][j], 50);
+ tone(26, ch1[i][j], 50);
+ tone(26, ch2[i][j], 50);
+ tone(26, ch3[i][j], 50);
+ delay(60);
+ noTone(26);
+ }
+ }
+
+}
+
+
+void loop() {
+}
diff --git a/bad-apple/tones.h b/bad-apple/tones.h
@@ -0,0 +1,95 @@
+/*************************************************
+
+ * Public Constants
+
+ *************************************************/
+
+#define NOTE_B0 31
+#define NOTE_C1 33
+#define NOTE_CS1 35
+#define NOTE_D1 37
+#define NOTE_DS1 39
+#define NOTE_E1 41
+#define NOTE_F1 44
+#define NOTE_FS1 46
+#define NOTE_G1 49
+#define NOTE_GS1 52
+#define NOTE_A1 55
+#define NOTE_AS1 58
+#define NOTE_B1 62
+#define NOTE_C2 65
+#define NOTE_CS2 69
+#define NOTE_D2 73
+#define NOTE_DS2 78
+#define NOTE_E2 82
+#define NOTE_F2 87
+#define NOTE_FS2 93
+#define NOTE_G2 98
+#define NOTE_GS2 104
+#define NOTE_A2 110
+#define NOTE_AS2 117
+#define NOTE_B2 123
+#define NOTE_C3 131
+#define NOTE_CS3 139
+#define NOTE_D3 147
+#define NOTE_DS3 156
+#define NOTE_E3 165
+#define NOTE_F3 175
+#define NOTE_FS3 185
+#define NOTE_G3 196
+#define NOTE_GS3 208
+#define NOTE_A3 220
+#define NOTE_AS3 233
+#define NOTE_B3 247
+#define NOTE_C4 262
+#define NOTE_CS4 277
+#define NOTE_D4 294
+#define NOTE_DS4 311
+#define NOTE_E4 330
+#define NOTE_F4 349
+#define NOTE_FS4 370
+#define NOTE_G4 392
+#define NOTE_GS4 415
+#define NOTE_A4 440
+#define NOTE_AS4 466
+#define NOTE_B4 494
+#define NOTE_C5 523
+#define NOTE_CS5 554
+#define NOTE_D5 587
+#define NOTE_DS5 622
+#define NOTE_E5 659
+#define NOTE_F5 698
+#define NOTE_FS5 740
+#define NOTE_G5 784
+#define NOTE_GS5 831
+#define NOTE_A5 880
+#define NOTE_AS5 932
+#define NOTE_B5 988
+#define NOTE_C6 1047
+#define NOTE_CS6 1109
+#define NOTE_D6 1175
+#define NOTE_DS6 1245
+#define NOTE_E6 1319
+#define NOTE_F6 1397
+#define NOTE_FS6 1480
+#define NOTE_G6 1568
+#define NOTE_GS6 1661
+#define NOTE_A6 1760
+#define NOTE_AS6 1865
+#define NOTE_B6 1976
+#define NOTE_C7 2093
+#define NOTE_CS7 2217
+#define NOTE_D7 2349
+#define NOTE_DS7 2489
+#define NOTE_E7 2637
+#define NOTE_F7 2794
+#define NOTE_FS7 2960
+#define NOTE_G7 3136
+#define NOTE_GS7 3322
+#define NOTE_A7 3520
+#define NOTE_AS7 3729
+#define NOTE_B7 3951
+#define NOTE_C8 4186
+#define NOTE_CS8 4435
+#define NOTE_D8 4699
+#define NOTE_DS8 4978
diff --git a/convert.py b/convert.py
@@ -0,0 +1,294 @@
+song = """\n
+4D--D-D--DC-dD--D-D--DC-dD-
+\n
+4-D-D--DC-dD--D-FG--F-GD--D
+\n
+4-D--DC-dD--D-D--DC-dD--D-D
+\n
+4--DC-dG--F-GF--D-FD--D-D--
+\n
+4DC-dD--D-D--DC-dD--D-D--DC
+\n
+4-dD--D-FG--F-GD--D-D--DC-d
+\n
+4D--D-D--DC-dD--D-D--DC-dG-
+\n
+4F-G-F-D-F-D--f--F--G--A---
+\n
+5--D--C--------------------
+4--------A-----D-----A--G--
+\n
+4F--f--D--f--F--G--A-----G-
+\n
+4-F--f--D--f--F--f--D--d--f
+\n
+5--------------------D--C--
+4--D--f--F--G--A-----------
+\n
+4A-----D-----A--G--F--f--D-
+\n
+4-f--F--G--A-----G--F--f---
+\n
+4--F-----G-----A-----D--f--
+\n
+5------------D--C----------
+4D--f--D-----F--A--F-----D-
+4F--G--A-----------A-------
+3------------------------A-
+\n
+4----F--G--F--f--D--f--F--G
+4----A---------------------
+\n
+4--A-----G--F--f--D--f--F--
+\n
+4f--D--d--f--D--f--D--f--D-
+4------------------F--G--A-
+\n
+5----D--C------------------
+4----F--A--F-----D-----F--G
+4----------A-----------A---
+3----------------A---------
+\n
+4--F--f--D--f--F--G--A-----
+\n
+4G--F--f-----F-----G-----A-
+\n
+5----C--D------------------
+4----------A--G--A-----G--A
+\n
+5--C--D--------------------
+4--------A--G--A-----G--A--
+\n
+4G--F--f--C--D-----C--D--f-
+\n
+5-------------------C--C--D
+4-F--G--A--D-----A---------
+\n
+5--------------------C--D--
+4--A--G--A-----G--A--------
+\n
+4A--G--A-----G--A--G--F--f-
+\n
+4-C--D-----C--D--f--F--G--A
+\n
+5-----------C--C--D--------
+4--D-----A-----------A--G--
+\n
+5------------C--D----------
+4A-----G--A--------A--G--A-
+\n
+4----G--A--G--F--f--C--D---
+\n
+4--C--D--f--F--G--A--D-----
+\n
+5---C--C--D----------------
+4A-----------A--G--A-----G-
+\n
+5----C--D--------------D--f
+4-A--------A--G--A---------
+\n
+5--F--f--D--C--------------
+4--------------A-----G--A--
+\n
+6---------------------C--C-
+5------------------A-------
+4G--F--f--C--D-------------
+\n
+6-D--------------------C--D
+5----A--G--A-----G--A------
+\n
+5--A--G--A-----G--A--G--F--
+\n
+5f--C--D-----C--D--f--F--G-
+\n
+6-------------C--C--D------
+5-A--D-----A-----------A--G
+\n
+6--------------C--D--------
+5--A-----G--A--------A--G--
+\n
+5A-----G--A--G--F--f--C--D-
+\n
+5----C--D--f--F--G--A--D---
+\n
+6-----C--C--D--------------
+5--A-----------A--G--A-----
+\n
+6------C--D----------------
+5G--A--------A--G--A-----G-
+\n
+5-A--G--F--f--C--D-----C--D
+\n
+6-----------------------C--
+5--f--F--G--A--D-----A-----
+\n
+6C--D--------------------C-
+5------A--G--A-----G--A----
+\n
+6-D--------------D--f--F--f
+5----A--G--A---------------
+\n
+6--D--C--------------------
+5--------A-----G--A--G--F--
+\n
+5f--C--D-------------------
+4------------------D--D-D--
+\n
+4DC-dD--D-D--DC-dD--D-D--DC
+\n
+4-dD--D-FG--F-GD--D-D--DC-d
+\n
+4D--D-D--DC-dD--D-D--DC-dG-
+\n
+4-F-GF--D-FD--D-D--DC-dD--D
+\n
+4-D--DC-dD--D-D--DC-dD--D-F
+\n
+4G--F-GD--D-D--DC-dD--D-D--
+\n
+5--------------------C-D-F-
+4DC-dD--D-D--DC-dG-A-------
+\n
+5A-G-----------------A-GF--
+\n
+5G-Ff--F-fD--f-DC--D-------
+4------------------------A-
+\n
+5----C---------------------
+4-------A--G--a--G-----F---
+\n
+6--------------------C-----
+5--------C--D--F--A--------
+4--G--A--------------------
+\n
+6---D-----D-----F--------f-
+5A-------------------------
+\n
+6-f--f--F--f--D--C--D------
+5---------------------AA---
+\n
+6-C-----------------C------
+5-------G--A--G--A--------A
+\n
+5GG-A--G--F--------FfDf--bA
+4------------fDCD----------
+\n
+6----DC-C------------------
+5GA----b---bAGA--FfDf------
+4----------------------FfDf
+\n
+5-----------C-C---------C-C
+4--DC-C--A-A---b-bA-Ab-b---
+3----b---------------------
+\n
+5D-Df--G-----F--------f----
+\n
+5-G-----F--f--G--F--f--G--F
+\n
+5--f-G-F-f-G-F-f-G-F-f-G-F-
+\n
+6-------C----D-----f-----F-
+5A-----A-------------------
+\n
+6-f--f-----D-----C-----C-dD
+\n
+6--------------------C--D--
+5--A--G--A-----G--A--------
+\n
+5A--G--A-----G--A--G--F--f-
+\n
+5-C--D-----C--D--f--F--G--A
+\n
+6-----------C--C--D--------
+5--D-----A-----------A--G--
+\n
+6------------C--D----------
+5A-----G--A--------A--G--A-
+\n
+5----G--A--G--F--f--C--D---
+\n
+5--C--D--f--F--G--A--D-----
+\n
+6---C--C--D----------------
+5A-----------A--G--A-----G-
+\n
+6----C--D------------------
+5-A--------A--G--A-----G--A
+\n
+5--G--F--f--C--D-----C--D--
+\n
+6---------------------C--C-
+5f--F--G--A--D-----A-------
+\n
+6-D--------------------C--D
+5----A--G--A-----G--A------
+\n
+6--------------D--f--F--f--
+5--A--G--A-----------------
+\n
+6D--C----------------------
+5------A-----G--A--G--F--f-
+\n
+6-------------d--d--e------
+5-C--D-----b-----------b--a
+\n
+6--------------d--e--------
+5--b-----a--b--------b--a--
+\n
+5b-----a--b--a--g--F--d--e-
+\n
+5----d--e--F--g--a--b--e---
+\n
+6-----d--d--e--------------
+5--b-----------b--a--b-----
+\n
+6------d--e----------------
+5a--b--------b--a--b-----a-
+\n
+5-b--a--g--F--d--e-----d--e
+\n
+6-----------------------d--
+5--F--g--a--b--e-----b-----
+\n
+6d--e--------------------d-
+5------b--a--b-----a--b----
+\n
+6-e------------------------
+5----b--a--b-----a--b--a--g
+\n
+5--F--d--e-----d--e--F--g--
+\n
+6---------------d--d--e----
+5a--b--e-----b-----------b-
+\n
+6----------------d--e------
+5-a--b-----a--b--------b--a
+\n
+6--------e--F--g--F--e--d--
+5--b-----------------------
+\n
+5b-----a--b--a--g--F--d--e-
+"""
+
+
+def printblock(block):
+ print("{", end='')
+ first = True
+ for row in block:
+ if not first:
+ print(",", end='')
+ print(f"\"{row}\"", end='')
+ first = False
+
+ print("},")
+
+
+block = []
+for line in song.split('\n'):
+ if line != "":
+ block.append(line)
+ else:
+ if block != []:
+ printblock(block)
+ block = []
+
diff --git a/tones.h b/tones.h
@@ -0,0 +1,95 @@
+/*************************************************
+
+ * Public Constants
+
+ *************************************************/
+
+#define NOTE_B0 31
+#define NOTE_C1 33
+#define NOTE_CS1 35
+#define NOTE_D1 37
+#define NOTE_DS1 39
+#define NOTE_E1 41
+#define NOTE_F1 44
+#define NOTE_FS1 46
+#define NOTE_G1 49
+#define NOTE_GS1 52
+#define NOTE_A1 55
+#define NOTE_AS1 58
+#define NOTE_B1 62
+#define NOTE_C2 65
+#define NOTE_CS2 69
+#define NOTE_D2 73
+#define NOTE_DS2 78
+#define NOTE_E2 82
+#define NOTE_F2 87
+#define NOTE_FS2 93
+#define NOTE_G2 98
+#define NOTE_GS2 104
+#define NOTE_A2 110
+#define NOTE_AS2 117
+#define NOTE_B2 123
+#define NOTE_C3 131
+#define NOTE_CS3 139
+#define NOTE_D3 147
+#define NOTE_DS3 156
+#define NOTE_E3 165
+#define NOTE_F3 175
+#define NOTE_FS3 185
+#define NOTE_G3 196
+#define NOTE_GS3 208
+#define NOTE_A3 220
+#define NOTE_AS3 233
+#define NOTE_B3 247
+#define NOTE_C4 262
+#define NOTE_CS4 277
+#define NOTE_D4 294
+#define NOTE_DS4 311
+#define NOTE_E4 330
+#define NOTE_F4 349
+#define NOTE_FS4 370
+#define NOTE_G4 392
+#define NOTE_GS4 415
+#define NOTE_A4 440
+#define NOTE_AS4 466
+#define NOTE_B4 494
+#define NOTE_C5 523
+#define NOTE_CS5 554
+#define NOTE_D5 587
+#define NOTE_DS5 622
+#define NOTE_E5 659
+#define NOTE_F5 698
+#define NOTE_FS5 740
+#define NOTE_G5 784
+#define NOTE_GS5 831
+#define NOTE_A5 880
+#define NOTE_AS5 932
+#define NOTE_B5 988
+#define NOTE_C6 1047
+#define NOTE_CS6 1109
+#define NOTE_D6 1175
+#define NOTE_DS6 1245
+#define NOTE_E6 1319
+#define NOTE_F6 1397
+#define NOTE_FS6 1480
+#define NOTE_G6 1568
+#define NOTE_GS6 1661
+#define NOTE_A6 1760
+#define NOTE_AS6 1865
+#define NOTE_B6 1976
+#define NOTE_C7 2093
+#define NOTE_CS7 2217
+#define NOTE_D7 2349
+#define NOTE_DS7 2489
+#define NOTE_E7 2637
+#define NOTE_F7 2794
+#define NOTE_FS7 2960
+#define NOTE_G7 3136
+#define NOTE_GS7 3322
+#define NOTE_A7 3520
+#define NOTE_AS7 3729
+#define NOTE_B7 3951
+#define NOTE_C8 4186
+#define NOTE_CS8 4435
+#define NOTE_D8 4699
+#define NOTE_DS8 4978