#pragma once

#include "notes.h"

#define song_length(song_arr)  sizeof(song_arr)/sizeof(song_arr[0])

static const Note_t Polyphia_OD_Notes[] = {
	//1 ТАКТ
	{FA1s, NOTE_SIXTEENTH},
	{LA1, NOTE_SIXTEENTH},
	{DO2s, NOTE_SIXTEENTH},
	{FA2s, NOTE_SIXTEENTH},
	{NOTE_REST, NOTE_QUARTER},

	{FA1s, NOTE_SIXTEENTH},
	{LA1, NOTE_SIXTEENTH},
	{DO2s, NOTE_SIXTEENTH},
	{RE2, NOTE_SIXTEENTH},
	{FA1, NOTE_SIXTEENTH},
	{SOL1s, NOTE_SIXTEENTH},
	{SI1, NOTE_SIXTEENTH},
	{FA2s, NOTE_EIGHTH},
	
	//2 ТАКТ
	{SOL2s, NOTE_SIXTEENTH},
	{RE2, NOTE_SIXTEENTH},
	{SI1, NOTE_SIXTEENTH},
	{DO1s, NOTE_SIXTEENTH},
	{FA1, NOTE_SIXTEENTH},
	{SOL1s, NOTE_SIXTEENTH},
	{DO2s, NOTE_SIXTEENTH},
	{FA2, NOTE_THIRTYSECOND},
	{FA2s, NOTE_THIRTYSECOND},
	{FA2, NOTE_SIXTEENTH},
	{DO2s, NOTE_SIXTEENTH},
	{SI1, NOTE_SIXTEENTH},
	{SOL1s, NOTE_SIXTEENTH},
	{FA1, NOTE_SIXTEENTH},
	{DO3s, NOTE_SIXTEENTH},

	//3 ТАКТ
	{FA1s, NOTE_SIXTEENTH},
	{LA1, NOTE_SIXTEENTH},
	{DO2s, NOTE_SIXTEENTH},
	{FA2s, NOTE_SIXTEENTH},
	{NOTE_REST, NOTE_QUARTER},

	{FA1s, NOTE_SIXTEENTH},
	{LA1, NOTE_SIXTEENTH},
	{DO2s, NOTE_SIXTEENTH},
	{RE2, NOTE_SIXTEENTH},
	{FA1, NOTE_SIXTEENTH},
	{SOL1s, NOTE_SIXTEENTH},
	{SI1, NOTE_SIXTEENTH},
	{FA2s, NOTE_EIGHTH},
	
	//4 ТАКТ
	{SOL2s, NOTE_SIXTEENTH},
	{RE2, NOTE_SIXTEENTH},
	{SI1, NOTE_SIXTEENTH},
	{LA1, NOTE_SIXTEENTH},
	{DO2s, NOTE_SIXTEENTH},
	{FA2s, NOTE_SIXTEENTH},
	{LA2, NOTE_SIXTEENTH},
	
	{SI1, NOTE_SIXTEENTH},
	{SI0, NOTE_SIXTEENTH},
	{RE2, NOTE_SIXTEENTH},
	{SOL2s, NOTE_SIXTEENTH},
	{LA1, NOTE_SIXTEENTH},
	{LA2, NOTE_SIXTEENTH},
	{FA2s, NOTE_SIXTEENTH},
	
	//5 ТАКТ
	{SI1, NOTE_SIXTEENTH},
	{RE2, NOTE_SIXTEENTH},
	{FA2s, NOTE_SIXTEENTH},
	{SI2, NOTE_SIXTEENTH}
};
static Melody_t Polyphia_OD = {song_length(Polyphia_OD_Notes), Polyphia_OD_Notes};



static const Note_t Polyphia_PlayingGod_Notes[] = {
	//1 ТАКТ
	{SOL2, NOTE_QUARTER},
	{MI3, NOTE_EIGHTH},
	{SI3, NOTE_EIGHTH},
	{MI4, NOTE_EIGHTH},
	{SI3, NOTE_EIGHTH},
	{SOL3, NOTE_EIGHTH},
	{SI3, NOTE_EIGHTH},
	{DO4, NOTE_EIGHTH_DOT},
	{LA3, NOTE_SIXTEENTH},
	{SI3, NOTE_EIGHTH},
	{SI2, NOTE_EIGHTH_DOT},
	{DO2, NOTE_SIXTEENTH},
	{SI3, NOTE_EIGHTH},
	{MI3, NOTE_QUARTER},
	
	//2 ТАКТ
	{RE3s, NOTE_QUARTER},
	{SI2, NOTE_EIGHTH},
	{LA2, NOTE_EIGHTH},
	{LA3, NOTE_EIGHTH},
	{SI3, NOTE_SIXTEENTH},
	{LA3, NOTE_EIGHTH},
	{RE3, NOTE_SIXTEENTH},
	{FA4s, NOTE_SIXTEENTH},
	{LA4, NOTE_SIXTEENTH},
	{RE3s, NOTE_EIGHTH},
	{LA3, NOTE_SIXTEENTH},
	{RE3s, NOTE_EIGHTH},
	
	{SI4, NOTE_SIXTEENTH},
	{FA4s, NOTE_SIXTEENTH},
	{RE3s, NOTE_THIRTYSECOND},
	{NOTE_REST, NOTE_THIRTYSECOND},
	{RE3s, NOTE_EIGHTH},
	{MI3, NOTE_EIGHTH},
	
	{DO3, NOTE_SIXTEENTH},
	{SI2, NOTE_SIXTEENTH},
	{MI3, NOTE_SIXTEENTH},
};
static Melody_t Polyphia_PlayingGod = {song_length(Polyphia_PlayingGod_Notes), Polyphia_PlayingGod_Notes};
