//-----------------------------------------------
// wish in a vast mist
// (C)Yax
//-----------------------------------------------

TrackName     = {"wish in a vast mist"}
Copyright     = {"Yax"}

ResetGM();
r4
TrackSync;


//------------------------------------------------
// アルペジオ関数
//  D - 1音あたりのずらし幅
//  L - 全体の長さ
//  S - 鳴らす音、{}内に音階を記述(>と<は利用可能)
//------------------------------------------------
Function ARP(Int D, Int L, Str S) {
  Int LNG = L
  Int STP = 0
  Int TEMP = 0
  Str X = ""
  Str RS = ""
  Str NS = ""
  Int J = 0
  Array NAR = ()

  For(Int I = 1; I <= 100; I++ ){
    X = MID(S,I,1)
    J = ASC(X)

    IF (X == "") {
      EXIT
    }

    IF ( J >= 97 ) {
      IF ( J <= 103 ) {
        IF ( NS != "" ) {
	    NS = Replace(NS,{@-},{-@},off)
	    NS = Replace(NS,{@+},{+@},off)
	    NS = Replace(NS,{@#},{#@},off)
	    NS = Replace(NS,{@*},{*@},off)
          NAR = (NAR,NS)
	    NS = ""
        }
	  X = X + "@"
	}
    }
    NS = NS + X
  }
  IF ( NS != "" ) {
    NS = Replace(NS,{@-},{-@},off)
    NS = Replace(NS,{@+},{+@},off)
    NS = Replace(NS,{@#},{#@},off)
    NS = Replace(NS,{@+},{*@},off)
    NAR = (NAR,NS)
    NS = ""
  }

  For(Int I=0;I<SizeOf(NAR);I++){
    TEMP = L - STP
    RS = "r%" + #STR(STP)
    NS = Replace(NAR(I), {@}, {%}+#STR(TEMP),off)
    Sub{ RS NS }
    STP = STP+D
  }
  r%(L)
}

//------------------------------------------------
// ××ダンド関数
// (B>Eでリタルダンド、B>Eでアッチェラダンド)
//  B   - 開始時のテンポ(bpm)
//  E   - 終了時のテンポ(bpm)
//  LEN - 開始から終了までの長さ
//  STP - 切り替えのステップ幅
//------------------------------------------------
Function DANDO(B, E, LEN, STP) {
  Int _STEP = 24
  Int _DIFF = 0
  Int _CNT = 0
  Int _TMP = 0
  Int _LAP = 0

  IF( STP != 0 ) {
    _STEP = STP
  }

  _CNT = LEN/_STEP
  _DIFF = (E - B)/_CNT

  _TMP = B
  Tempo = %(B)

  For(Int I = 1; I < _CNT; I++ ){
    r%(_STEP)
    _TMP = _TMP + _DIFF
    Tempo = %(_TMP)
    _LAP = _LAP + _STEP
  }

  r%(LEN-_LAP)
  Tempo = %(E)
  r-%(LEN)
}


//------------------------------------------------
// 全体の調整
//------------------------------------------------
TR(1)  V(110) REV(50) CHO(10)
TR(2)  V(120) REV(35) CHO(10)
TR(3)  V(108) REV(32) CHO(40)
TR(4)  V(105) REV(50) CHO(30)
TR(5)  V(105) REV(38) CHO(40)
TR(6)  V(50)  REV(90) CHO(50)
TR(7)  V(110) REV(20) CHO(0)
TR(8)  V(110) REV(20) CHO(0)
TR(9)  V(110) REV(20) CHO(0)
TR(10) V(125) REV(30) CHO(20)


//------------------------------------------------
// テンポ
//------------------------------------------------
INT T = 132
INT T2 = 100
INT T3 = 90
Tempo=(T)


//------------------------------------------------
// キー
//------------------------------------------------
INT KEY=0

Key(KEY)                    // 全体のキー
TR(10) TrackKey(KEY * -1)   // リズムトラックの調整用、Keyの符号を逆にしたものをセットしておく



//------------------------------------------------
// MML
//------------------------------------------------

//------------------------------------
// Track 1 : 
//------------------------------------
TR(1) CH(1) P(48)
@5,8,0 v90

 o4 l8

  [2
   y64,1; 'e<e>'f+b >d4f+4.^1< y64,0;
   y64,1; 'd<d>'f+a >d4f+4.^1< y64,0;
   y64,1; 'c<c>'eg  >d4f+4.^1< y64,0;
   :
   y64,1; 'd<d>'f+b >d4f+^2.d2 <y64,0;
  ]
  y64,1; 'd+<d+>'f+b >d+4f+^2.a2< y64,0;

  [2
   y64,1; 'e<e>'f+b >d4f+4.^1< r-1^1 v(MML(v)-10) a>ega4b4.^1<  v(MML(v)+10) y64,0;
   y64,1; 'd<d>'f+a >d4f+4.^1< r-1^1 v(MML(v)-10) a>df+a4b4.^1< v(MML(v)+10) y64,0;
   y64,1; 'c<c>'eg  >d4f+4.^1< r-1^1 v(MML(v)-10) gb>ea4b4.^1<  v(MML(v)+10) y64,0;
   :
   y64,1; 'd<d>'f+b >d4f+^2.d2 < r-1^1 v(MML(v)-10) a>df+a4b^2.f+2< v(MML(v)+10) y64,0;
  ]
  y64,1; 'd+<d+>'f+b >d+4f+^2.a2< r-1^1 v(MML(v)-10) a>d+f+a4b^2.>d+2<< v(MML(v)+10) y64,0;

 [2
  [2
   y64,1; [2 'e<e>'f+b >'f+4d4'd<bf+]
   y64,1; [2 'd<d>'f+a >'f+4d4' d<af+] 
   y64,1; ['c<c>'eg  >'c4e4' c<ge ]
   :
   y64,1; [2 'd<d>'f+a >'f+4d4' d : <af+] f+a< 
  ]
  y64,1; [2 'd+<d+>'f+b >'f+4d+4' d+ : <bf+] f+<b 

  [4
   r-32 ARP(!32,!1^32,{gb>df+<})
   r-32 ARP(!32,!1^32,{gb>d<})r-2>g2<
   r-32 ARP(!32,!1^32,{f+a>c+e<})
   r-32 ARP(!32,!1^32,{f+a>c+f+<}) r-2 >a2<
  ]

  y64,1; ARP(1,!2,{gb>de<}) b>dg<b y64,0;
  y64,1; ARP(1,!4.,{a>c+f+<}) f+ >c+f+ac+< y64,0;
  y64,1; ARP(1,!2,{a>df+<}) f+a>df+< y64,0;
  y64,1; ARP(1,!4.,{b>deg<}) >d bged< y64,0;
  y64,1; ARP(1,!2,{gb>de<}) b>de<g y64,0;
  y64,1; ARP(1,!4.,{a>c+f+<}) f+ a>c+f+<a y64,0;
  y64,1; ARP(1,!2,{f+a>d<}) f+a>d<a y64,0;
  y64,1; ARP(!32,!1,{f+a>df+a<}) y64,0;
 ]

  [2
   y64,1; 'e<e>'f+b >d4f+4.^1< y64,0;
   y64,1; 'd<d>'f+a >d4f+4.^1< y64,0;
   y64,1; 'c<c>'eg  >d4f+4.^1< y64,0;
   :
   y64,1; 'd<d>'f+b >d4f+^2.d2 <y64,0;
  ]
  y64,1; 'd+<d+>'f+b >d+4f+^2.a2< y64,0;

  [2
   y64,1; 'e<e>'f+b >d4f+4.^1< r-1^1 v(MML(v)-10) a>ega4b4.^1<  v(MML(v)+10) y64,0;
   y64,1; 'd<d>'f+a >d4f+4.^1< r-1^1 v(MML(v)-10) a>df+a4b4.^1< v(MML(v)+10) y64,0;
   y64,1; 'c<c>'eg  >d4f+4.^1< r-1^1 v(MML(v)-10) gb>ea4b4.^1<  v(MML(v)+10) y64,0;
   :
   y64,1; 'd<d>'f+b >d4f+^2.d2 < r-1^1 v(MML(v)-10) a>df+a4b^2.f+2< v(MML(v)+10) y64,0;
  ]
  y64,1; 'd+<d+>'f+b >d+4f+^2.a2< r-1^1 v(MML(v)-10) a>d+f+a4b^2.>d+2<< v(MML(v)+10) y64,0;


  [4
   r-32 ARP(!32,!1^32,{gb>df+<})
   r-32 ARP(!32,!1^32,{gb>d<})r-2>g2<
   r-32 ARP(!32,!1^32,{f+a>c+e<})
   r-32 ARP(!32,!1^32,{f+a>c+f+<}) r-2 >a2<
  ]

  [2
   y64,1; ARP(1,!2,{gb>de<}) b>dg<b y64,0;
   y64,1; ARP(1,!4.,{a>c+f+<}) f+ >c+f+ac+< y64,0;
   y64,1; ARP(1,!2,{a>df+<}) f+a>df+< y64,0;
   y64,1; ARP(1,!4.,{b>deg<}) >d bged< y64,0;
   y64,1; ARP(1,!2,{gb>de<}) b>de<g y64,0;
   y64,1; ARP(1,!4.,{a>c+f+<}) f+ a>c+f+<a y64,0;
   y64,1; ARP(1,!2,{f+a>d<}) f+a>d<a y64,0;
   :
   y64,1; ARP(!32,!1,{f+a>df+<}) y64,0;
  ]
  y64,1; ARP(!32,!1,{f+a>df+a<}) y64,0;


  [2
   y64,1; 'e<e>'f+b >d4f+4.^1< y64,0;
   y64,1; 'd<d>'f+a >d4f+4.^1< y64,0;
   :
   y64,1; 'c<c>'eg  >d4f+4.^1< y64,0;
   y64,1; 'd<d>'f+b >d4f+^2.d2 <y64,0;
  ]
  y64,1; 'c<c>'eg  >d4f+4.^1< y64,0;
  DANDO(T,T2,!1^1,!8)
  y64,1; 'd+<d+>'f+b >d+4f+^2.v(MML(v)-15) a2< y64,0; v(MML(v)+15)
  DANDO(T2,T3,!2.,!8)
  v(MML(v)-5)
  EP.onTime(127,30,!1^1^1)
  r-32 ARP(!24,!1^1^1,{<e>egb>df+})
  r2




//------------------------------------
// Track 2 : 
//------------------------------------
TR(2) CH(2) P(80)
@1 v95

 o6 l8 q90
 [8 r1]

 v(MML(v)-20)
 y64,1; r2...g32g+32 'a.f+.'g.f+ 'e.<b.>'d.f+ y64,0;
 y64,1; r1 'e.<b.>'d.e 'f+.d.'g.a y64,0;
 y64,1; r2...a32a+32 'b.g.'a.b '>d.<a.'b.a y64,0;
 y64,1; r1 '>d+4..<b4..>' d32c+32 <'b2f+2' y64,0;

 v(MML(v)+5)
 y64,1; r4..e48f48f+48 'g.e.'f+.g 'a.e.'g.f+ 'g.e.'f+.e y64,0;
 y64,1; 'f+.d.'e.d< 'b2^1f+2^1' y64,0;
 y64,1; '>d4.<a4.>' 'e4.<b4.>' 'g4d4' 'f+.d.'e.f+ 'g2d2' y64,0;
 y64,1; 'a2..e2..'a24g+24g24 'f+1d1' y64,0;

 y64,1; r4..e48f48f+48 'g.e.'f+.b 'a.e.'b.a 'g.e.'f+.e y64,0;
 y64,1; 'f+.d.'e.f+  'a2d2' r'b2..f+2..' y64,0;
 y64,1; '>d4.<a4.' 'b4.g4.' 'g4d4' 'a4.f+4.' 'b^2g^2' y64,0;
 y64,1; 'a2d+2' a.g.a 'b1f+1' y64,0;

 v(MML(v)+15)

 [2
  'e.<b.>''d.<b.>''e<b>' 'f+.d.''g.d.''ae' 'b.g.''b.g.''bg' 'b.g.''a.e.''gd'
  'a.f+.''g.e.''f+d' 'd1<a1>' 'd.<b.>''c.<a.>''d<b>'
  'e.c.''e.c.''ec' 'e.c.''f+.d.''ge' 'a.e.''g.e.''f+d''d2<b2>'
  'a.f+.''g.e.''f+d' 'd1<b1>' 'f+2d2'

  'e.<b.>''d.<b.>''e<b>' 'f+.d.''g.d.''ae' 'b.g.''b.g.''bg' 'b.g.''a.e.''bg'
  '>d.<b.''b.g.''af+' 'd2^8<a2^8>''f+4.d4.' 'd.<b.>''c.<a.>''d<b>'
  'e.c.''e.c.''ec' 'e.c.''f+.d.''ge' 'a.e.''g.e.''f+d''d2<b2>'
  'a.f+.''g.e.''af+' 'b2f+2' r'>d+2..<f+2..d+2..'

  l16
  v(MML(v)+5)
  [2
   y64,1; 'e2^8<b2^8>'<b>e gegb 'e8<b8'gb g>ege be<bg 'b4>e4' y64,0;
   y64,1; 'c+4.<a4.'f+a >c+<a>c+f+ c+f+af+ '>c+<f+'af+c+ af+c+<a> 'f+<a>'c+f+a >c+'f+c+8'<a y64,0;
   y64,1;  'e8<b8'f+b> e<b>ef+ 'b8e8'gf+ 'gf+'f+e<b  f+b>ef+ 'b8f+8'e<b g>e<bf+ '>e<b'<b>ef+  y64,0;
   :
   y64,1; '>c+4<a4'c+ef+a >c+<a>c+f+ c+f+af+ '>c+<f+'af+c+ af+c+<a> 'f+<a>'c+f+a >c+'f+c+8'<a y64,0;
  ]
  y64,1; '>c+4<a4'c+ef+a >c+<a>c+f+ c+f+af+ '>c+2f+2<a2' 'f+8c+8<a8>'c+f+ 'f+8a8'f+c+ y64,0;
  l8
  v(MML(v)-5)

  y64,1; 'g.d.''d.<b.>''gd' 'a2e2' y64,0;
  y64,1; 'f+2c+2'e2 y64,0;
  y64,1; 'f+.d.''d.<a.>''f+d' 'a2f+2' y64,0;
  y64,1; 'b2f+2'f+2 y64,0;
  y64,1; 'e.<b.>''<b.g.>''e<b>'  'a2f+2' y64,0;
  y64,1; 'f+.c+.''c+.<a.>''af+' '>c+2<f+2' y64,0;
  y64,1; ARP(2,!1,{f+a>d<})
  v(MML(v)-20) >ARP(!32,!1,{af+d<af+d}) v(MML(v)+20) y64,0;
 ]

 l16
 y64,1; r4.e24f24f+24g4.e8 'a4.e4.'ag f+4.d8 y64,0;
 y64,1; 'b2f+2'b8.a8.g8 'f+2<a2>'d2 y64,0;
 y64,1; 'e.<b.>'d.e f+.g.a 'b.e.''b.e.''be''b.e.''b.e.'[2 'b32e32'] 'b2e2'rr '>d4<b4'>c<b y64,0;
 y64,1; 'a2f+2' 'a8.f+8.'g8.a8 'f+4.d4.' f+24g24g+24a2 y64,0;

 v(MML(v)+5)
 y64,1; r'e<g>'<b>e gb>e<g bgeg e<bg>e '>g8<b8'>e<b '>e<b'bg8 b12g12e12< bgb>e y64,0;
 y64,1; 'f+d'<a>df+ 'a12d12'f+12d12 '>d4.<a4.'>df+ 'ad'f+d<a 'f+<a>'d<af+ 'd<a>'f+af+ a12f+12>d12< y64,0;
 y64,1; r'gc'ce 'g8c8'eg '>c<g'bge >cegb '>c8<g8'bg 'be'gec <b12g12e12 'e4<b4>' y64,0;
 y64,1;  'd+8<a8>'<a>d+ 'f+8d+8'd+<a> 'a12f+12'f+12d+12 >d+<af+d+ '>f+2<a2' '>d+2<f+2' y64,0;
 v(MML(v)-5)

 [16 r1]

  l16 >
  [2
   y64,1; 'e2^8<b2^8>'<b>e gegb 'e8<b8'gb g>ege be<bg 'b4>e4' y64,0;
   y64,1; 'c+4.<a4.'f+a >c+<a>c+f+ c+f+af+ '>c+<f+'af+c+ af+c+<a> 'f+<a>'c+f+a >c+'f+c+8'<a y64,0;
   y64,1;  'e8<b8'f+b> e<b>ef+ 'b8e8'gf+ 'gf+'f+e<b  f+b>ef+ 'b8f+8'e<b g>e<bf+ '>e<b'<b>ef+  y64,0;
   :
   y64,1; '>c+4<a4'c+ef+a >c+<a>c+f+ c+f+af+ '>c+<f+'af+c+ af+c+<a> 'f+<a>'c+f+a >c+'f+c+8'<a y64,0;
  ]
  y64,1; '>c+4<a4'c+ef+a >c+<a>c+f+ c+f+af+ '>c+2f+2<a2' 'f+8c+8<a8>'c+f+ 'f+8a8'f+c+ y64,0;
  l8

  [2
   y64,1; 'g.d.''d.<b.>''gd' 'a2e2' y64,0;
   y64,1; 'f+2c+2'e2 y64,0;
   y64,1; 'f+.d.''d.<a.>''f+d' 'a2f+2' y64,0;
   y64,1; 'b2f+2'f+2 y64,0;
   y64,1; 'e.<b.>''<b.g.>''e<b>'  'a2f+2' y64,0;
   y64,1; 'f+.c+.''c+.<a.>''af+' '>c+2<f+2' y64,0;
   :
   y64,1; 'f+.a.''f+.d.''f+a' 'f+2a2>c+2<' y64,0;
   y64,1; 'b2d2'f+2 y64,0;
  ]
  y64,1; ARP(2,!1,{f+a>d<})
  v(MML(v)-20) >ARP(!32,!1,{af+d<af+d}) v(MML(v)+20) y64,0;

  v(MML(v)-5)
  y64,1; r4..e48f48f+48 'g.e.'f+.g 'a.e.'g.f+ 'g.e.'f+.e y64,0;
  y64,1; 'f+.d.'e.d< 'b2^1f+2^1' y64,0;
  y64,1; '>d4.<a4.>' 'e4.<b4.>' 'g4d4' 'f+.d.'e.f+ 'g2d2' y64,0;
  y64,1; 'a2..e2..'a24g+24g24 'f+1d1' y64,0;

  y64,1; r4..e48f48f+48 'g.e.'f+.b 'a.e.'b.a 'g.e.'f+.e y64,0;
  y64,1; 'f+.d.'e.f+  'a2d2' r'b2..f+2..' y64,0;
  y64,1; '>d4.<a4.' 'b4.g4.' 'g4d4' 'a4.f+4.' 'b^2g^2' y64,0;
  y64,1; 'a2d+2' a.g.a 'b1f+1' y64,0;

  v(MML(v)-5)
  <
  y64,1; ARP(!24,!1^1^2,{g>e<f+b>b}) y64,0;



//------------------------------------
// Track 3 : 
//------------------------------------
TR(3) CH(3) P(54)
@37,90,1 v95

 [16 r1]
 [15 r1]
 o3 l16 q70
 r2..cd

 [2
  [2
   [4 e8ee : ge8e] be8e
   [4 d8dd : f+d8d] ad8d
   [4 c8cc : ec8c] gc8c
   :
   [4 d8dd : f+d8d] af+>d<a
  ]
  [3 d+8d+d+ f+d+8d+] d+8f+a d+d+af+

  <
  [4
   g4g4g8.g8.gb g4g4g8.g8.g>g<
   f+4f+4f+8.f+8.f+a f+4f+4f+8.f+8.f>f+<
  ]

  l8
  eeee16e.eee
  aaaa16a.aaa
  f+f+f+f+16f+.f+f+f+
  bbbb16b.bbg
  >eeee16e.eee
  f+f+f+f+16f+.f+f+f+
  dddd16d.ddd
  <a2.f+f+16>f+16<
  l16 >
 ]
 
  @36,0,0 q95
  v(MML(v)-10)
  e1^2.. g+&!16a
  f+2.....&!8.e64 d2..f+a
  g1&!8.b2.^16..&!8g64 f+&!16e
  f+2.....&!8.d64 a2.^16..&!8.e64 df+
  e8.f+8.a8 b4....&!8g64 f+2e8.d8.e8
  f+4....&!16.d64 e8.f+8.g8 a4....&!8.g64 f+2
  g4....&!8f+64e4.a&!16a+ b4....&!8.g+64 g4....&!18.e64
  a2.....&!4e64 f+4....&!8e64 d+4....&!8.<b64>
  v(MML(v)+10)

  @37,90,1 q70
  [2 e8rre8rre8rre8e>e<]
  [2 d8rrd8rrd8rrd8d>d<]
  [2 c8rrc8rrc8rrc8c>c<]
  d8rrd8rrd8rrd8d>d< d8rrd8rrdrd>d< dbc>d<

  [4 e8ee : ge8e] be8e
  [4 d8dd : f+d8d] ad8d
  [4 c8cc : ec8c] gc8c
  [2 d8dd : f+d8d] af+>d<a
  d+2<b4>d+d+f+a

  <
  [4
   g4g4g8.g8.gb g4g4g8.g8.g>g<
   f+4f+4f+8.f+8.f+a f+4f+4f+8.f+8.f>f+<
  ]

  l8
  [2
   eeee16e.eee
   aaaa16a.aaa
   f+f+f+f+16f+.f+f+f+
   bbbb16b.bbg
   >eeee16e.eee
   f+f+f+f+16f+.f+f+f+
   dddd16d.ddd
   :
   <aaaa16a.aa c16d16
  ]
  <a2.f+f+16>f+16<
  l16 >



//------------------------------------
// Track 4 : 
//------------------------------------
TR(4) CH(4) P(74)
@103 v80
M.onNoteWave(5,50,!1)

 [16 r1]
 [16 r1]

 [2
  o4 l16 q90
  [2
   'b2..g2..e2..' 'bge''bge' '>d4..<b4..g4..'r 'b2g2e2'
   'a2..f+2..d2..' 'af+d''af+d' 'b4..g4..d4..'r'a2f+2d2'
   'b2..g2..e2..' 'bge''bge' '>c4..<g4..e4..'r 'b2g2e2'
   :
   '>d2..<b2..f+2..' 'f+d''d<b>' 'b1f+1d1'
  ]
  'b2..f+2..d+2..' 'f+d+''bf+' '>d+1<b1f+1' r-2>f+2<

  [2
   [2
    'g2>d2<' > [3 'df+' r: r] < '>d4..<b4..'r '>g2<b2'
    '>c+2e2<' > [3 'c+e' r: r] < : '>c+4..<a4..'r '>f+2c+2<'
   ]
   '>f+4..a4..<'r '>g2e2<'
  ]

  v(MML(v)-10) q50
  [4 debg]
  [4 ef+>c+<a]
  [4 <a>daf+]
  [4 eg>d<b]
  [4 debg]
  [4 ef+>c+<a]
  <a>df+a >df+d<a >d<af+d af+d<a>
  v(MML(v)+10) q90
  > EP.onTime(127,40,!2..) [5 'f+8d8<a8>'r] r EP(127) <
 ]


 [2
  g1 e1
  a1 f+1
  b1 >d1<
  a1 f+1
 ]

  [2
   'b2..g2..e2..' 'bge''bge' '>d4..<b4..g4..'r 'b2g2e2'
   'a2..f+2..d2..' 'af+d''af+d' 'b4..g4..d4..'r'a2f+2d2'
   'b2..g2..e2..' 'bge''bge' '>c4..<g4..e4..'r 'b2g2e2'
   :
   '>d2..<b2..f+2..' 'f+d''d<b>' 'b1f+1d1'
  ]
  'b2..f+2..d+2..' 'f+d+''bf+' '>d+1<b1f+1' r-2>f+2<

  [2
   [2
    'g2>d2<' > [3 'df+' r: r] < '>d4..<b4..'r '>g2<b2'
    '>c+2e2<' > [3 'c+e' r: r] < : '>c+4..<a4..'r '>f+2c+2<'
   ]
   '>f+4..a4..<'r '>g2e2<'
  ]

 v(MML(v)-10) q50
 [2
  [4 debg]
  [4 ef+>c+<a]
  [4 <a>daf+]
  [4 eg>d<b]
  [4 debg]
  [4 ef+>c+<a]
  :
  [4 df+>d<a]
  <a>df+a >df+d<a >d<af+d af+d<a>
 ]
 <a>df+a >df+d<a >d<af+d af+d<a>
 v(MML(v)+10) q90
 > EP.onTime(127,40,!2..) [5 'f+8d8<a8>'r] r EP(127) <

  [2
   g1 e1
   f+1 d1
   g1 e1
   a1 f+1
   :
   EP.onTime(127,40,!1^1^1^1^1^1^1^1)
  ]

  EP.onTime(100,1,!1^1^2.)
  ARP(0,!1^1^1,{ef+b})
  r1


//------------------------------------
// Track 5 : 
//------------------------------------
TR(5) CH(5) P(64)
@58 v100
M.onNoteWave(12,110,!2..)
PitchBend(0)
BR(2)

 o5 l16 q92

 [8 r1]
 [8 r1]

 v(MML(v)-10)
 r4.q60ee q80b4.q60 ab q80>c2.< q70 b.a.g
 q80 f+4.a4.f+4 b4.a8^2
 g2..ga b2 b8ra8rg.r32
 a1 b2>c2

 d4.e4.g4 f+4.d8^2<
 b2..a8 b2 b8ra8rf+.r32
 g2..aa+ b4.>c4.d4
 d+2..^32.&!32d64r f64&f+2....&!32f64<
 v(MML(v)+10)

 [2
  [2
   r4.q50ee q80'b2g2' '>d4.<g4.'>c24<b24&a24 'g2d2'
   q85 'a2..d2..' q60 ga q90 'f+1d1'
   r4.q50ee q80'b2g2' '>d4.<g4.'>c24<b24&a24 'b2g2'
   :
   q85'>d2..<a2..' q80 >cd< q70 '>e2<b2' q80 'f+2b2'
  ]
  q85'>d+2..<a2..' q60>dc< q90 'b1f+1'

  v(MML(v)-5)
  [2
   r4 'e4g4'rr'b4f+4'rr 'f+1d1'
   r4 'c+4<a4>' rr'a4f+4'rr 'f+1c+1'
   r4 'e4g4'rr'b4f+4'rr 'f+4..d4..'r 'b2f+2'
   :
   r4 'a4f+4'rr 'b4f+4'rr '>c+4..<a4..'r 'a2f+2'
  ]
  r4 'a4f+4'rr 'b4f+4'rr '>c+1<a1'
  v(MML(v)+5)

  v(MML(v)+5)
  r8 q60'gd''bd' q80 '>d4<b4' q60 [3 'g8b8' : r]
  q80 '>c+1<a1'
  r8 q60'ea''>c+<a' q80 '>e4c+4<' q60 [3 'a8>c+8<' : r]
  q80 '>d1<b1'
  r8 q60'gd''bd' q80 '>d4<b4' q60 [3 'g8b8' : r]
  q80 '>c+2<a2' '>e2c+2<'
  q90 '>d1<a1'
  r1
  v(MML(v)-5)
 ]

 [8 r1]
 [7 r1]
 v(MML(v)+15)
 r2..>c24c+24d24

  e2e.d.eg.f+.e f+4.f+g a4.gf+
  b2.b.a.g f+2.e<b>cd
  e.f+.e f+.g.f+ a.a.a32a32 a4.a24g+24g24 b.b.b32b32 b.a.g f+.g.a
  f+2b4.a24g+24g24 f+1
 v(MML(v)-5)

  'e2g2' 'e.g.''f+.d.''ge' 'b2^8.g2^8.'r 'b8g8'r'a8f+8'r'ge'r
  'a4.f+4.'a24g+24g24 'f+2...d2...'r 'f+8d8'r 'e8<b8>'r 'f+d'r
  'e4.<b4.>'f+24g24g+24 'a2e2' 'f+4.d4.'g24a24a+24 'b2f+2'
  'f+2d+2' d+ef+d+ ef+ga r-2 <ab>c+<a b>c+de 'b1f+1'<
 v(MML(v)-10)

  v(MML(v)-5)
  [2
   r4 'e4g4'rr'b4f+4'rr 'f+1d1'
   r4 'c+4<a4>' rr'a4f+4'rr 'f+1c+1'
   r4 'e4g4'rr'b4f+4'rr 'f+4..d4..'r 'b2f+2'
   :
   r4 'a4f+4'rr 'b4f+4'rr '>c+4..<a4..'r 'a2f+2'
  ]
  r4 'a4f+4'rr 'b4f+4'rr '>c+1<a1'
  v(MML(v)+5)

  v(MML(v)+5)
  [2
   r8 q60'gd''bd' q80 '>d4<b4' q60 [3 'g8b8' : r]
   q80 '>c+1<a1'
   r8 q60'ea''>c+<a' q80 '>e4c+4<' q60 [3 'a8>c+8<' : r]
   q80 '>d1<b1'
   r8 q60'gd''bd' q80 '>d4<b4' q60 [3 'g8b8' : r]
   q80 '>c+2<a2' '>e2c+2<'
   :
   q90 '>d1<a1'
   'a2f+2' 'g.d.''f+.c+.''e<b>' 'd.<a.>''e.<b.>''f+c+'
  ]
  q90 '>d1<a1'
  r1
  v(MML(v)-10)

  r4g2^8 f+24g24&g+24 a2. d4
  b2..a24&g+24g24 f+1
  r4e2d8e8 f+2g4a8a24&g+24g24
  f+2.e12d12c12< b1>

  r4b2a8b8 >c2d2<
  a2..ab >c2 c8r<b8rar
  b2 a24g24f+24ed c2<b4>c8.d8.e8
  f+2..f+24g24g+24 a4...r32f+4...r32
  EP.onTime(114,2,!^1^1^1)
  r8a8&!8b2..^1^1



//------------------------------------
// Track 6 : 
//------------------------------------
TR(6) CH(6) P(60)
@103,2,0 
v90

  P.onNote(117,10,64,90,30)

  o7

  V(35)
  l16 q150
  [2
   [2
    y64,1; [8 rb>eb< v(MML(v)-9)] v(MML(v)+72) y64,0;
    y64,1; [8 ra>da< v(MML(v)-9)] v(MML(v)+72) y64,0;
    y64,1; [8 rg>cg< v(MML(v)-9)] v(MML(v)+72) y64,0;
    :
    y64,1; [8 ra>da< v(MML(v)-9)] v(MML(v)+72) y64,0;
   ]
   y64,1; [8 ra>d+a< v(MML(v)-9)] v(MML(v)+72) y64,0;
  ]

  [2
   V(45)
   l8 q110
   [2
    [2 r>e<gb>f+e<bg]
    [2 r>d<f+a>f+d<af+]
    [2 r>e<g>cgec<g]
    :
    [2 r>d<f+a>f+d<a : f+] >f+<
   ]
   r>d+<f+a>f+d+<af+ ra>d+f+d+af+<a

   V(51)
   q99
   [2
    [8 'eg'<b>]
    [8 'f+a'c+ ]
    [8 'bg'e]
    [8 'f+a'c+ ]
   ]

   l16
   r8 ARP(!16,!2.^8,{eb>d<}) r8 ARP(!16,!2.^8,{a>c+f+<})
   r8 ARP(!16,!2.^8,{f+a>d<}) r8 ARP(!16,!2.^8,{dgb})
   r8 ARP(!16,!2.^8,{eb>d<}) r8 ARP(!16,!2.^8,{a>c+f+<})
   r8 ARP(!16,!2.^8,{f+a>d<}) r1
  ]

  V(35)
  l16 q150
  [2
   [2
    y64,1; [8 rb>eb< v(MML(v)-9)] v(MML(v)+72) y64,0;
    y64,1; [8 ra>da< v(MML(v)-9)] v(MML(v)+72) y64,0;
    y64,1; [8 rg>cg< v(MML(v)-9)] v(MML(v)+72) y64,0;
    :
    y64,1; [8 ra>da< v(MML(v)-9)] v(MML(v)+72) y64,0;
   ]
   y64,1; [8 ra>d+a< v(MML(v)-9)] v(MML(v)+72) y64,0;
  ]

   V(51)
   q99 l8
   [2
    [8 'eg'<b>]
    [8 'f+a'c+ ]
    [8 'bg'e]
    [8 'f+a'c+ ]
   ]

   l16
   [2
    r8 ARP(!16,!2.^8,{eb>d<}) r8 ARP(!16,!2.^8,{a>c+f+<})
    r8 ARP(!16,!2.^8,{f+a>d<}) r8 ARP(!16,!2.^8,{dgb})
    r8 ARP(!16,!2.^8,{eb>d<}) r8 ARP(!16,!2.^8,{a>c+f+<})
    r8 ARP(!16,!2.^8,{f+a>d<}) : r8 ARP(!16,!2.^8,{a>f+a<})
   ]
   r1

  V(35)
  l16 q150
  [2
   y64,1; [8 rb>eb< v(MML(v)-9)] v(MML(v)+72) y64,0;
   y64,1; [8 ra>da< v(MML(v)-9)] v(MML(v)+72) y64,0;
   y64,1; [8 rg>cg< v(MML(v)-9)] v(MML(v)+72) y64,0;
   :
   y64,1; [8 ra>da< v(MML(v)-9)] v(MML(v)+72) y64,0;
  ]
  y64,1; [8 ra>d+a< v(MML(v)-9)] v(MML(v)+72) y64,0;

  y64,1; [8 rb>eb< v(MML(v)-9)] v(MML(v)+72) y64,0;



//------------------------------------
// Track 7 : 
//------------------------------------
TR(7) CH(7) P(64)



//------------------------------------
// Track 8 : 
//------------------------------------
TR(8) CH(8) P(64)



//------------------------------------
// Track 9 : 
//------------------------------------
TR(9) CH(9) P(64)



//------------------------------------
// Track 11 : 
//------------------------------------
TR(11) CH(11) P(64)



//------------------------------------
// Track 12 : 
//------------------------------------
TR(12) CH(12) P(64)



//------------------------------------
// Track 13 : 
//------------------------------------
TR(13) CH(13) P(64)



//------------------------------------
// Track 14 : 
//------------------------------------
TR(14) CH(14) P(64)



//------------------------------------
// Track 15 : 
//------------------------------------
TR(15) CH(15) P(64)



//------------------------------------
// Track 16 : 
//------------------------------------
TR(16) CH(16) P(64)




//------------------------------------
// Track 10 : ドラム系
//------------------------------------
TR(10) CH(10)
// マクロ定義
// b = bass / s = Snare / S = Rim
$b{n36,} $s{n38,} $S{n37,}
// h = HH Close / f = HH foot close / o = HH Open
$c{n42,} $f{n44,} $o{n46,}
// e = Crash / j = Ride / t = Ride Bell / d = China / i = Splash / y = Crash2 / u = Ride2
$e{n49,} $j{n51,} $t{n53,} $d{n52,} $i{n55,} $y{n57,} $u{n59,}
// q = High Tom / a = High-Middle / z = Low-Middle / w = Low / x = Floor high / g = Floor low
$q{n50,} $a{n48,} $z{n47,} $w{n45,} $x{n43,} $g{n41,}
// p = Crap / k = Cowbell / m = Tambourine / n = ? / j = ??
$p{n39,} $k{n56,} $m{n54,} $n{n75,}

@1,90,1
l16
Rhythm {

  [4
   r1 v80jrrr rr v60jv80jv80j4 rrrr                  r-1^1 v70 [4 r4f4]
   r2.v30jv40jv50jv60j v80jrrr rr v60jv80jv80j4 rrrr r-1^1 v70 [4 r4f4]
  ]
  r-4 b4 r-4 v80cv60cv80o8

  [4
   v90 r4b4r4b4 r-1 [4 v100cv60cv80cv60c]
   v90 r4b4r4b4 r-1 [4 v100cv60cv80cv60c]
   v90 r4b4r4b4 r-1 [4 v100cv60cv80cv60c]
   :
   v90 r4b4r4b4 r-1 [3 v100cv60cv80cv60c] v80cv60cv80o8
  ]
  v90 b4b4b4b4 r-1 v50s8v60s8v70s8v80s8 [2 v90s64v70s32.sss] r-1 v80 [2 o8f8] [4 f8]

 [2
  [2
   v80 brbr rbrr rrbr rbrb r-1 v80 r4s4r4s4      r-1 v127 e4 r-4 [4 v100cv60cv80cv60c]
   v80 brbr rbrr brbr rbrb r-1 v80 r4s4r4s8.v50s r-1 [4 v100cv60cv80cv60c]
   v80 brbr rbrr rrbb rbrb r-1 v80 r4s4r4s4      r-1 [4 v100cv60cv80cv60c]
   v80 brbb rbrb brbr rbrb r-1 v80 r4s4r4ss8.    r-1 [3 v100cv60cv80cv60c] v80cv60cv80o8
   v80 brbr rbrr rrbr rbrb r-1 v80 r4s4r4s4      r-1 [4 v100cv60cv80cv60c]
   v80 brbr rbrr brbr rbrb r-1 v80 r4s4r4s8.v50s r-1 [4 v100cv60cv80cv60c]
   v80 brbr rbrr rrbb rbrb r-1 v80 r4s4r4s4      r-1 [4 v100cv60cv80cv60c]
   :
   v80 brbb rbbb bbbb rbbb r-1 v80 r4ss8sr4ss8. r-1 [2 v100cv60cv80cv60c] [2 v80cv60cv80o8]
  ]
  v80 [3 br[3b24]] brbr r-1 v100 raz v80 s v100 qqaz v80 rs64s32.ss s64s32.szw r-1 v127 y2e2

  [2
   [2
    v90 b4b4b4b4 r-1 v127 e8 v80cv60c [3 v100cv60cv80cv60c]
    v90 b4b4b4b4 r-1 [4 v100cv60cv80cv60c] r-8 v105pp
    v90 b4b4b4b4 r-1 [4 v100cv60cv80cv60c]
    :
    v90 b4b4b4b4 r-1 r2 v80 r8.s8.r8 r-1 [3 v100cv60cv80cv60c] v80cv60cv80o8 r-8 v105pp
   ]
   v90 b4b4b4b4 r-1 v80r4 s8.v60s  rs8 v80s8v60s v70w8 r-1 [3 v100cv60cv80cv60c] v80cv60cv80o8 r-8 v120pp
  ]

  [2
   v80 brrr rrrr rrbr rrrr r-1 v80 r4s8.v60s rs8r v80 s4       r-1 v127 e4 r-4 [4 v100cv60cv80cv60c]
   v80 brrr rrbr rrbr rrrr r-1 v80 r4s8.v60s rs8r v80 s8. v50s r-1 [4 v100cv60cv80cv60c]
   :
   v80 brrr rrrr rrbr rrrr r-1 v80 r4s8.v60s rs8r v80 s4       r-1 [4 v100cv60cv80cv60c]
   v80 brrr rrbr rrbb rrbr r-1 v80 r4s8.v60s rs8r v80 s8 v70ss r-1 [4 v100cv60cv80cv60c]
  ]
  v80 brrr brrr brbr brbr r-1 v80rrss v100 rqaz v80ss v100 aa zz v80ss r-1 v80f4f4f4f4
  :
  v80 brrr brrr brrr bv80s64s32.v70ss r-1 v127 e2 r2
 ]
 v80 brrr rrrr rrrr rrv70bb r-1 v127 'e2y2' r2

 [4
  v80 brrr rrrr rrrr rrv70br r-1 v100 d4 r-4 v70 [2 r4f4]
  v80 brrr rrbr rrrr rrrr    r-1 v80jrrr rr v60jv80jv80j4 rrrr  r-1 v70 [2 r4f4]
  v80 brrr rrrr rrrr rrv70br r-1 v90 t4 r2v30jv40jv50jv60j r-1 v70 [2 r4f4]
  :
  v80 brrr rrbr rrrr brrr    r-1 v80jrrr rr v60jv80jv80j4 rrrr r-1 v70 [2 r4f4]
 ]
 v80 brrr rrbr rrrr brv70ss    r-1 v80jrrr rr v60jv80jv80j4 rrrr r-1 v70 [2 r4f4]

  v90 b4b4b4b4 r-1 v80 r2.s8.v60s        r-1 [4 v100cv60cv80cv60c]
  v90 b4b4b4b4 r-1 v80 r2r8s8v90z8 v80wg r-1 [4 v100cv60cv80cv60c]
  v90 b4b4b4b4 r-1 v80 r2.s8.v60s        r-1 [4 v100cv60cv80cv60c]
  v90 b4b4b4b4 r-1 v80 r2r8sv60s  v90aqaz  r-1 [3 v100cv60cv80cv60c] v80cv60cv80o8
  v90 b4b4b4b4 r-1 v80 r2.s8.v60s        r-1 [4 v100cv60cv80cv60c]
  v90 b4b4b4b4 r-1 v80 r2r8s8v90qqaa     r-1 [4 v100cv60cv80cv60c]
  v90 b4b4b4b4 r-1 v80 r2.s8.v60s        r-1 [4 v100cv60cv80cv60c]
  v90 b4b4b4b4 r-1 r v70s8v50s v70s8v50ss v90azsz asaz r-1 [3 v100cv60cv80cv60c] v80cv60cv80o8

  v80 brrr rrrr rrbr rbrb r-1 v80 r4s4r4s4      r-1 v127 y4 r-4 [4 v100cv60cv80cv60c]
  v80 brbr rbrr brbr rbrb r-1 v80 r4s4r4s8.v50s r-1 [4 v100cv60cv80cv60c]
  v80 brbr rrrr rrbb rbrb r-1 v80 r4s4r4s4      r-1 [4 v100cv60cv80cv60c]
  v80 brbb rbrb brbr rbrb r-1 v80 r4s4r4ss8.    r-1 [3 v100cv60cv80cv60c] v80cv60cv80o8
  v80 brbr rrrr rrbr rbrb r-1 v80 r4s4r4s4      r-1 [4 v100cv60cv80cv60c]
  v80 brbr rbrr brbr rbrb r-1 v80 r4s4r4s8.v50s r-1 [4 v100cv60cv80cv60c]
  v80 brbb rbrb rrbb rbrb r-1 v80 r4s4r8ss aazz r-1 [4 v100cv60cv80cv60c]
  v90 b4r4r4b4 r-1 r2. v90s64v70s32.sv80sv50s r-1 v120 e2 y2 r-2 v70 f4f4


  [2
   [2
    v90 b4b4b4b4 r-1 v127 e8 v80cv60c [3 v100cv60cv80cv60c]
    v90 b4b4b4b4 r-1 [4 v100cv60cv80cv60c] r-8 v105pp
    v90 b4b4b4b4 r-1 [4 v100cv60cv80cv60c]
    :
    v90 b4b4b4b4 r-1 r2 v80 r8.s8.r8 r-1 [3 v100cv60cv80cv60c] v80cv60cv80o8 r-8 v105pp
   ]
   v90 b4b4b4b4 r-1 v80r4 s8.v60s  rs8 v80s8v60s v70w8 r-1 [3 v100cv60cv80cv60c] v80cv60cv80o8 r-8 v120pp
  ]

 [2
  [2
   v80 brrr rrrr rrbr rrrr r-1 v80 r4s8.v60s rs8r v80 s4       r-1 v127 e4 r-4 [4 v100cv60cv80cv60c]
   v80 brrr rrbr rrbr rrrr r-1 v80 r4s8.v60s rs8r v80 s8. v50s r-1 [4 v100cv60cv80cv60c]
   :
   v80 brrr rrrr rrbr rrrr r-1 v80 r4s8.v60s rs8r v80 s4       r-1 [4 v100cv60cv80cv60c]
   v80 brrr rrbr rrbb rrbr r-1 v80 r4s8.v60s rs8r v80 s8 v70ss r-1 [4 v100cv60cv80cv60c]
  ]
  v80 brrr brrr brbr brbr r-1 v80rrss v100 rqaz v80ss v100 aa zz v80ss r-1 v80f4f4f4f4
  :
  v80 brbr brbr brbb brbb r-1 v100 azsz asaz szas azss r-1 v80f4f4f4f4
 ]
 v80 brrr brrr brrr bv80s64s32.v70ss r-1 v127 e2 r2
 
 v80 b1 r-1 v127 'e1y1'
}

