//-----------------------------------------------
// wandering in my mind
// (C)Yax
//-----------------------------------------------

Include(delay.h)

TrackName     = {"wandering in my mind"}
Copyright     = {"Yax"}

ResetGM();
r2
TrackSync;
r4



//------------------------------------------------
// アルペジオ関数
//  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(25) CHO(0)
TR(2)  V(110) REV(25) CHO(0)
TR(3)  V(110) REV(50) CHO(10)
TR(4)  V(110) REV(30) CHO(40)
TR(5)  V(110) REV(65) CHO(0)
TR(6)  V(110) REV(30) CHO(10)
TR(7)  V(100) REV(50) CHO(40)
TR(17) V(90)  REV(60) CHO(40)
TR(8)  V(110) REV(30) CHO(10)
TR(9)  V(110) REV(40) CHO(10)
TR(10) V(110) REV(50) CHO(30)


// テンポ
INT T  = 98
INT TE = 80
INT T2 = 50

Tempo=(T)


// キー
INT KEY=0

Key(KEY)                    // 全体のキー
TR(10) TrackKey(KEY * -1)   // リズムトラックの調整用、Keyの符号を逆にしたものをセットしておく



//------------------------------------
// Track 1 : 
//------------------------------------
TR(1) CH(1) P(50)
@1 v100

 o4 l8 q90
 [2
  ARP(0,!1,{gb>ce<})
  ARP(0,!1,{ga>ce<})
  ARP(0,!1,{ab>df+<})
  ARP(0,!1,{f+ab>d<})

  ARP(0,!1,{gb>ce<})
  ARP(0,!1,{a>cef+<})
  ARP(0,!1,{ab>df+<})
  :
  ARP(0,!2,{b>df+a<}) ARP(0,!2,{ab>df+<})
 ]
 ARP(0,!2,{b>df+a<}) ARP(0,!8,{ab>df+<})r4.

 [2
  v(MML(v)-8)
  [2
   ARP(0,!4.,{gb>ce<}) v(MML(v)-5) ARP(0,!8^2,{gb>ce<}) v(MML(v)+5)
   ARP(0,!8^2,{f+a>ce<}) v(MML(v)-10) ARP(0,!4.,{ea>ce<}) v(MML(v)+10)
   ARP(0,!4.,{ab>df+<}) v(MML(v)-5) ARP(0,!8^2,{ab>df+<}) v(MML(v)+5)
   ARP(0,!8^2,{gb>de<}) > v(MML(v)-30) ARP(3,!4.,{b>degb<<}) v(MML(v)+30)
   ARP(0,!4.,{gb>ce<}) v(MML(v)-5) ARP(0,!8^2,{gb>ce<}) v(MML(v)+5)
   ARP(0,!8^2,{a>cef+<}) v(MML(v)-10) ARP(0,!4.,{a>cef+<}) v(MML(v)+10)
   ARP(0,!4.,{ab>df+<}) v(MML(v)-5) ARP(0,!8^2,{ab>df+<}) v(MML(v)+5)
   :
   ARP(0,!4.,{b>deg<}) v(MML(v)-8) > ARP(!8,!8^2,{dg>dgb<}) < v(MML(v)+8)
  ]
  EP.onTime(95,127,!1,!8)
  [4 ARP(0,!4,{b>deg<})]
  v(MML(v)+8)

  v(MML(v)-5)
  [2
   [4 ARP(0,!4,{b>ceg<})]
   [4 ARP(0,!4,{b>cea<})]
   :
   [4 ARP(0,!4,{b>df+a<})]
   [2 ARP(0,!4,{b>egb<})] [2 ARP(0,!4,{a>df+a<})]
  ]
  [4 ARP(0,!4,{ab>df+<})]
  [2 ARP(0,!4,{b>deg<})] ARP(0,!8,{b>deg<}) r4.
  v(MML(v)+5)

  [2
   [2
    [4 ARP(0,!4,{>cega<})]
    [4 ARP(0,!4,{>cdf+a<})]
    :
    [4 ARP(0,!4,{b>deg<})]
    [4 ARP(0,!4,{b>ceg<})]
   ]
   :
   [4 ARP(0,!4,{>degb<})]
   [4 ARP(0,!4,{>deg+b<})]
  ]
  [4 ARP(0,!4,{b>deg<})]
  :
  ARP(2,!1,{b>deg<})
 ]
 ARP(0,!4,{b>deg<}) ARP(0,!4,{b>deg<}) ARP(0,!4,{>degb<}) ARP(0,!4,{>degb<})

  [3 ARP(0,!4,{>cega<})]  ARP(0,!4,{>cega<})  r-8 v(MML(v)-15) >c< v(MML(v)+15) 
  [3 ARP(0,!4,{>cdf+a<})] ARP(0,!4,{>cdf+a<}) r-8 v(MML(v)-15) >c< v(MML(v)+15) 
  [3 ARP(0,!4,{>degb<})]  ARP(0,!4,{>degb<})  r-8 v(MML(v)-15) >d< v(MML(v)+15) 
  [3 ARP(0,!4,{>df+gb<})] ARP(0,!4,{>df+gb<}) r-8 v(MML(v)-15) >d< v(MML(v)+15) 
  [3 ARP(0,!4,{>cega<})]  ARP(0,!4,{>cega<})  r-8 v(MML(v)-15) >c< v(MML(v)+15) 
  [3 ARP(0,!4,{>cdf+a<})] ARP(0,!4,{>cdf+a<}) r-8 v(MML(v)-15) >c< v(MML(v)+15) 
  [3 ARP(0,!4,{>degb<})]  ARP(0,!4,{>degb<})  r-8 v(MML(v)-15) >d< v(MML(v)+15) 
  ARP(!8,!1,{b>eg+b>e<bg+d<})

  [2
   ARP(0,!1,{gb>ce<})
   ARP(0,!1,{ga>ce<})
   ARP(0,!1,{ab>df+<})
   ARP(0,!1,{f+ab>d<})

   ARP(0,!1,{gb>ce<})
   ARP(0,!1,{a>cef+<})
   ARP(0,!1,{ab>df+<})
   :
   ARP(0,!2,{b>df+a<}) ARP(0,!2,{ab>df+<})
  ]
  ARP(0,!2,{b>df+a<}) ARP(0,!8,{ab>df+<})r4.

  v(MML(v)-5)
  [2
   [4 ARP(0,!4,{b>ceg<})]
   [4 ARP(0,!4,{b>cea<})]
   :
   [4 ARP(0,!4,{b>df+a<})]
   [2 ARP(0,!4,{b>egb<})] [2 ARP(0,!4,{a>df+a<})]
  ]
  [4 ARP(0,!4,{ab>df+<})]
  [2 ARP(0,!4,{b>deg<})] ARP(0,!8,{b>deg<}) r4.
  >> ARP(!24,!1,{ged<b ge<bg ed<b>})
  >>
  v(MML(v)-5)
  [2
   [2
    ARP(1,!1,{ceg>c<})
    ARP(1,!8^2,{<a>df+}) ARP(0,!4.,{<a>d})
    :
    <ARP(1,!1,{b>dg})
    <ARP(1,!4.,{b>eg}) ARP(0,!8^2,{eg})
   ]
   <ARP(1,!1,{b>dg})
   : <ARP(1,!4.,{b>eg+}) ARP(3,!8^2,{eg+b})
  ]
  v(MML(v)+20)
  v(MML(v)-64) [8 <ARP(0,!8,{b>eg+}) v(MML(v)+8) ]
  v(MML(v)-20)
  <<

  [2
   [2
    [4 ARP(0,!4,{>cega<})]
    [4 ARP(0,!4,{>cdf+a<})]
    :
    [4 ARP(0,!4,{b>deg<})]
    [4 ARP(0,!4,{b>ceg<})]
   ]
   :
   [4 ARP(0,!4,{>degb<})]
   [4 ARP(0,!4,{>deg+b<})]
  ]
  [4 ARP(0,!4,{b>deg<})]
  ARP(2,!1,{b>deg<})

  ARP(0,!1,{gb>ce<})
  ARP(0,!1,{ga>ce<})
  ARP(0,!1,{ab>df+<})
  ARP(0,!1,{f+ab>d<})

  ARP(0,!1,{gb>ce<})
  ARP(0,!1,{a>cef+<})
  DANDO(T,TE,!1^2..,!8)
  ARP(0,!1,{ab>df+<})
  ARP(0,!2,{b>df+a<}) ARP(0,!8,{ab>df+<})r4.

  DANDO(TE,T2,!1,!8)
  ARP(!32,!1^1,{gb>ceg<})



//------------------------------------
// Track 2 : 
//------------------------------------
TR(2) CH(2) P(57)
@1 v98

 o3 l8
 [4
  [2 y64,1; [2 'e<e>' v(MML(v)-20) eee v(MML(v)+20)] y64,0; ]
  :
  [2 y64,1; [2 'd<d>' v(MML(v)-20) ddd v(MML(v)+20)] y64,0; ]
 ]
 y64,1; [3 'd<d>' v(MML(v)-20) ddd v(MML(v)+20)] y64,0; 'd<b>'r4.

 [2
  [4
   [2 y64,1; [2 'e<e>' v(MML(v)-20) eee v(MML(v)+20)] y64,0; ]
   [2 y64,1; [2 'd<d>' v(MML(v)-20) ddd v(MML(v)+20)] y64,0; ]
  ]

  [2
   y64,1; [2 'c<c>' v(MML(v)-20) ccc v(MML(v)+20)] y64,0;
   y64,1; [2 'c<c>' v(MML(v)-20) ccc v(MML(v)+20)] y64,0;
   y64,1; [2 'd<d>' v(MML(v)-20) ddd v(MML(v)+20)] y64,0;
   y64,1; 'e<e>' v(MML(v)-20) eee v(MML(v)+20) y64,0; : y64,1; 'd<d>' v(MML(v)-20) ddd v(MML(v)+20) y64,0;
  ]
  'e<e>' r4.

  [2
   a4  v(MML(v)-20) [3 a4  ] v(MML(v)+20)
   f+4 v(MML(v)-20) [3 f+4 ] v(MML(v)+20)
   g4  v(MML(v)-20) [3 g4  ] v(MML(v)+20)
   e4  v(MML(v)-20) [3 e4  ] v(MML(v)+20)
   a4  v(MML(v)-20) [3 a4  ] v(MML(v)+20)
   :
   >d4  v(MML(v)-20) [3 d4  ] v(MML(v)+20) <
   b4  v(MML(v)-20) [3 b4  ] v(MML(v)+20)
   b4b4 g+4g+4
  ]
  f+4 v(MML(v)-20) [3 f+4 ] v(MML(v)+20)
  g4  v(MML(v)-20) [3 g4  ] v(MML(v)+20)
  :
  'g1b1'
 ]
 g4  v(MML(v)-20) [3 g4  ] v(MML(v)+20)

  [8 'a4<a4>']
  [8 'b4<b4>']
  [8 '>c4<c4']
  [4 'b4<b4>']
  'b2<b2>' g+2

  [4
   [2 y64,1; [2 'e<e>' v(MML(v)-20) eee v(MML(v)+20)] y64,0; ]
   :
   [2 y64,1; [2 'd<d>' v(MML(v)-20) ddd v(MML(v)+20)] y64,0; ]
  ]
  y64,1; [3 'd<d>' v(MML(v)-20) ddd v(MML(v)+20)] y64,0; 'd<b>'r4.

  [2
   y64,1; [2 'c<c>' v(MML(v)-20) ccc v(MML(v)+20)] y64,0;
   y64,1; [2 'c<c>' v(MML(v)-20) ccc v(MML(v)+20)] y64,0;
   y64,1; [2 'd<d>' v(MML(v)-20) ddd v(MML(v)+20)] y64,0;
   y64,1; 'e<e>' v(MML(v)-20) eee v(MML(v)+20) y64,0; : y64,1; 'd<d>' v(MML(v)-20) ddd v(MML(v)+20) y64,0;
  ]
  'e<e>' r4.
  g1
  >
  v(MML(v)-8)
  [2
   [2
    y64,1; cg>ce4gec< y64,0;
    y64,1; da>df+< a>df+<a y64,0;
    :
    y64,1; <b>egb4>d<bg y64,0;
    y64,1; <gb>eg cegb y64,0;
   ]
   y64,1; <b>egb4>d<bg y64,0;
   :
   y64,1; <b>eg+b eb>ce< y64,0;
  ]
  <
  y64,1; [4 'e4b4'] y64,0;
  v(MML(v)+8)

  [2
   a4  v(MML(v)-20) [3 a4  ] v(MML(v)+20)
   f+4 v(MML(v)-20) [3 f+4 ] v(MML(v)+20)
   g4  v(MML(v)-20) [3 g4  ] v(MML(v)+20)
   e4  v(MML(v)-20) [3 e4  ] v(MML(v)+20)
   a4  v(MML(v)-20) [3 a4  ] v(MML(v)+20)
   :
   >d4  v(MML(v)-20) [3 d4  ] v(MML(v)+20) <
   b4  v(MML(v)-20) [3 b4  ] v(MML(v)+20)
   b4b4 g+4g+4
  ]
  f+4 v(MML(v)-20) [3 f+4 ] v(MML(v)+20)
  g4  v(MML(v)-20) [3 g4  ] v(MML(v)+20)
  'g1b1'

 [2
  [2 y64,1; [2 'e<e>' v(MML(v)-20) eee v(MML(v)+20)] y64,0; ]
  :
  [2 y64,1; [2 'd<d>' v(MML(v)-20) ddd v(MML(v)+20)] y64,0; ]
 ]
 y64,1; [3 'd<d>' v(MML(v)-20) ddd v(MML(v)+20)] y64,0; 'd<b>'r4.

 v(MML(v)-10) y64,1; 'e1<e1>' v(MML(v)-40) <g1> y64,0;


//------------------------------------
// Track 3 : 
//------------------------------------
TR(3) CH(3) P(68)
@50 v65
M.onNoteWave(0,40,!1)
FineTune(60)

 o4 l8 q95

 [4 r1]

 e1
 f+1
 d1
 f+2'a2f+2'

 [2
  'e1g1'
  'f+1a1'
  'd1f+1'
  :
  'd1<b1>'
 ]
 'd2<b2>'
 'df+a'r4.

 [2
  [8 r1]

  v(MML(v)+14)
  g4.e4.g4
  a4.f+4.de
  d4.f+4.a4
  g4.e^2
  g4.e4.b4
  f+4.a4.>c4<
  b1
  g1
  v(MML(v)-14)

  v(MML(v)+8)
  'c1<g1>'
  'd1<a1>'
  'f+1<b1>'
  'e2<b2>' 'd2<a2>'
  'c1<g1>'
  'd1<a1>'
  'f+1<a1>'
  '<b2>e2' 'e<g>'r4.
  v(MML(v)-8)

  v(MML(v)+10)
  [2
   [2
    'c1<a1>'  r-1 >> c2e2 <<
    'f+1d1'   r-1 >> f+1  <<
    :
    'd1<b1>'  r-1 >> d2f+2 <<
    'g1e1'    r-1 >>g1<<
   ]
   :
    'd1<b1>'  r-1 >> d2f+2 <<
   'g+1e1'    r-1 >> e2<b2<
  ]
  'd1<b1>'  r-1 >> d1 <<
  EP.onTime(127,0,!2..,!8)
  'g1d1'   r-1 > b1 <
  EP(127)
  v(MML(v)-10)
 ]

 'a1<a1>'
 '>c1<c1'
 'b1<b1>'
 '>d1<d1'
 'a1<a1>'
 '>c1<c1'
 'b1<b1>'
 'g+1<g+1>'

 [4
  'e1g1'
  'f+1a1'
  'd1f+1'
  :
  'd1<b1>'
 ]
 'd2<b2>'
 'df+a'r4.

  v(MML(v)+8)
  'c1<g1>'
  'd1<a1>'
  'f+1<b1>'
  'e2<b2>' 'd2<a2>'
  'c1<g1>'
  'd1<a1>'
  'f+1<a1>'
  '<b2>e2' 'e<g>'r4.
  v(MML(v)-8)
  EP.onTime(127,0,!1) 'g1<g1>'
  EP(127)

  [8 r1]
  e1
  f+1
  g1
  e1
  c1
  d1
  e1
  g+1
  v(MML(v)+10)
  [2
   [2
    'c1<a1>'  r-1 >> c2e2 <<
    'f+1d1'   r-1 >> f+1  <<
    :
    'd1<b1>'  r-1 >> d2f+2 <<
    'g1e1'    r-1 >>g1<<
   ]
   :
    'd1<b1>'  r-1 >> d2f+2 <<
   'g+1e1'    r-1 >> e2<b2<
  ]
  'd1<b1>'  r-1 >> d1 <<
  EP.onTime(127,0,!2..,!8)
  'g1d1'   r-1 > b1 <
  EP(127)
  v(MML(v)-10)

  [2
   'e1g1'
   'f+1a1'
   'd1f+1'
   :
   'd1<b1>'
  ]
  'd2<b2>'
  'df+a'r4.
  EP.onTime(127,0,!1) 'e1^1<g1^1>'





//------------------------------------
// Track 4 : 
//------------------------------------
TR(4) CH(4) P(62)
@34 v100
M.onNoteWave(0,40,!1)

 o3 l8 q80

 [7 r1]
 r1

 cc2.d16&e16
 dd2.f+16&g16
 f+f+2.e16&d16
 ee2^8<b4>

 cc2^8ef+16&g16
 f+f+4a4b16>c16c+16&!16d16c16<b16
 aa2g16f+16g+16&16a16e16d16
 e2<br4.>

 [2
  [2
   ccrf+16&!16g16cc<b>c
   ddrg16&!16a16ddc<b
   aara16g16f+f+ga
   bbra16b16>dd16c16<b>c16&!16d16

   eerf+16&!16g16eedc
   ddrd16c16dd16c16de
   f+f+rf+16e16f+f+16e16a16g16f+
   gg4f+ee4<b>
  ]

   ccrc cc16<b16>c16<b16>c
   ddrd dd16c16de
   f+f+rf+ f+f+16e16df+
   ee4e dd4d

   ccrc cc16<b16>c16&!16d16e
   ddrd f+16&!16g16a g16f+16e
   f+f+ra16&!16b16 >c+32&d16.<b16a16gf+
   ee4d e..&!16<b32r4>

  [2
   <a>a <aa16>a16< a16>e16g+16&a16< a16a16>a
   d>d< d16d16>c+16&d16< f+16a16>c+16&d16< d16>d16<f+16&a16
   <b>b <bb16>b16< b16>e16a+16&b16< b16b16>b
   <g>g <gg16>g16 <g16>c16f+16&g16 <g16>e16g+
   <a>a <aa16>a16< a16>e16g+16&a16< a16a16>a
   <f+>f+< f+16f+16>f16&f+16 <f+16>c16d16f+16 <f+16>f+16 d16&c16 
   :
   <g>g <gg16>g16 <g16>c16f+16&g16 <g16>f+16b
   <g+>b16g+16 <g+16b16>g16&g+16 b16&>d16<b16&g+16< b16>e16b
  ]
  <g16g16>g16e16 d16g16&b16e16 <g16g16>g< g>e16d16
  :
  <b1>
 ]
 <
 bbbb bb16>d16g16e16<b

 aaaa aaaa
 aaaa aaag16&a16
 bbbb bbbb
 bbbb bbba16&g16
 >cccc cccc
 cccc ccc<b16&a16
 bbbb bbba16>c16
 d8&!8e4.< g+4....&!4d64
 >

 [2
  cc2.d16&e16
  dd2.f+16&g16
  f+f+2.e16&d16
  ee2^8<b4>
 ]

 [2
  cc2^8ef+16&g16
  f+f+4a4b16>c16c+16&!16d16c16<b16
  aa2g16f+16g+16&16a16e16d16
  :
  ee16>e16< f+16&g16 b16>e16< ee16g16b16g16e
 ]
 e2<br4.>

  ccrc cc16<b16>c16<b16>c
  ddrd dd16c16de
  f+f+rf+ f+f+16e16df+
  ee4e dd4d

  ccrc cc16<b16>c16&!16d16e
  ddrd f+16&!16g16a g16f+16e
  f+f+ra16&!16b16 >c+32&d16.<b16a16gf+
  ee4d e..&!16<b32r4>
  <b2....&!2>e32

  [7 r1]
  r2..<a16&b16>
  c4. b8&!8>c4.< g16&a16
  f+4.d2<b16>c16<
  b2..g16a16
  g4.g16&a16 b8a16&g16 a16>c16d8
   c8.e8. b8&!8>c4.<g16&a16
  f+8.a8.>c8&!8dc16<b16 ag16&f+16
  g4.d4.f+16&g16 b16>e16<
  >g32&g+16.e16<b16 g+16e16<b g+16b16>d16&e16 <b16>d16g16&!16g+16

  [2
   <a>a <aa16>a16< a16>e16g+16&a16< a16a16>a
   d>d< d16d16>c+16&d16< f+16a16>c+16&d16< d16>d16<f+16&a16
   <b>b <bb16>b16< b16>e16a+16&b16< b16b16>b
   <g>g <gg16>g16 <g16>c16f+16&g16 <g16>e16g+
   <a>a <aa16>a16< a16>e16g+16&a16< a16a16>a
   <f+>f+< f+16f+16>f16&f+16 <f+16>c16d16f+16 <f+16>f+16 d16&c16 
   :
   <g>g <gg16>g16 <g16>c16f+16&g16 <g16>f+16b
   <g+>b16g+16 <g+16b16>g16&g+16 b16&>d16<b16&g+16< b16>e16b
  ]
  <g16g16>g16e16 d16g16&b16e16 <g16g16>g< g>e16d16
  <b1>

  cc2.<a16&b16> cc2.<b16&>c16
  <bb2.>c16&d16 ee4.d4.d16&c+16
  cc2.<a16&b16> cc2f+16&g16a>d16&e16<
  bb4f+4d4c16&d16 e2<brrr
  >c1
  


//------------------------------------
// Track 5 : 
//------------------------------------
TR(5) CH(5) P(64)
@5 v45
P.onNoteWave(10,117,32,96,64)


 o7 l16 q150

  [4
   EP.onTime(127,70,!1) [2 b>e<b>g< b>ebg<]
   EP.onTime(127,70,!1) [2 b>e<b>g< b>eag<]
   EP.onTime(127,70,!1) [2 a>d<a>f+< a>daf+<]
   :
   EP.onTime(127,70,!1) [2 a>d<a>f+< a>daf+<]
  ]
  EP.onTime(127,70,!1) [2 a>d<a>f+<]
  r2
  EP(127)

 [2
  [2
   MidiDelay({ebg>e<},8,!4) r2.r1 r1r1
   MidiDelay({g>ecg<},8,!4) r2.r1 r1 : r1
  ]
  MidiDelay({g>d<b>g<},8,!4) r2.

  l8
  v(MML(v)+14)
  r2r ceb
  a2r <b>ea
  f+2r <b>f+a
  g2r f+df+

  e2r ceb
  a2r ea>c<
  b2r baf+
  e2 gr4.
  v(MML(v)-14)
  l16

  v(MML(v)+16)
  [2
   MidiDelay({ceb>g<},6,!4) r2.r1
   MidiDelay({deb>g<},6,!4) r2.r1
   MidiDelay({ceb>g<},6,!4) r2.r1
   MidiDelay({eb>dg<},6,!4) r2.r1
  ]
  v(MML(v)-16)
 ]

  v(MML(v)+10)
  MidiDelay({a>ceg<},6,!4) r2.r1
  MidiDelay({b>dgb<},6,!4) r2.r1
  MidiDelay({g>cea<},6,!4) r2.r1
  MidiDelay({b>dgb<},6,!4) r2.
  MidiDelay({b>eg+b<},6,!4) r2.
  v(MML(v)-10)

  [4
   EP.onTime(127,70,!1) [2 b>e<b>g< b>ebg<]
   EP.onTime(127,70,!1) [2 b>e<b>g< b>eag<]
   EP.onTime(127,70,!1) [2 a>d<a>f+< a>daf+<]
   :
   EP.onTime(127,70,!1) [2 a>d<a>f+< a>daf+<]
  ]
  EP.onTime(127,70,!1) [2 a>d<a>f+<]
  r2
  EP(127)

  l8
  v(MML(v)+14)
  r2r ceb
  a2r <b>ea
  f+2r <b>f+a
  g2r f+df+

  e2r ceb
  a2r ea>c<
  b2r baf+
  e2 gr4.
  v(MML(v)-14)
  l16
  r1

  [16 r1]

  [4
   EP.onTime(127,70,!1) [2 b>e<b>g< b>ebg<]
   EP.onTime(127,70,!1) [2 b>e<b>g< b>eag<]
   EP.onTime(127,70,!1) [2 a>d<a>f+< a>daf+<]
   :
   EP.onTime(127,70,!1) [2 a>d<a>f+< a>daf+<]
  ]
  EP.onTime(127,60,!2) [2 a>d<a>f+<]
  r2
  EP(127)

  [2
   EP.onTime(127,70,!1) [2 b>e<b>g< b>ebg<]
   EP.onTime(127,70,!1) [2 b>e<b>g< b>eag<]
   EP.onTime(127,70,!1) [2 a>d<a>f+< a>daf+<]
   :
   EP.onTime(127,70,!1) [2 a>d<a>f+< a>daf+<]
  ]
  EP.onTime(127,50,!1) [2 a>d<a>f+<]
  r2
  EP(127)
 l32 [8 eb>gb< v(MML(v)-10) ]



//------------------------------------
// Track 6 : 
//------------------------------------
TR(6) CH(6) P(84)
@82,90,1 v92
M.onNoteWave(0,50,!2.)
Slur(3)
FineTune(68)

 o6 l8 q99
 [7 r1]
 r2..c+24d24d+24

 e4e16f+16g4eb4
 a.g.f+16e16 d4de
 f+4.a4.f+e16f+16
 g4.e4.cd
 e4e16f+16g4eb4
 a.g.a>d4.d16c16<
 b4.f+4.ag16f+16
 g4..d32d+32er4.

[2
 EP(95)

 [16 r1]

 [2
  r<e&b&>e^2
  r<f+&>d&f+^2
  r<a&>d&a^2
  :
  r<g&>e&g r<f+&a&>f+
 ]
 <g&>d&e&g  MidiDelay({ARP(2,!16,{<b>deg})},4,!12) r4..
 v(MML(v)+60)
 EP(127)

 EP(70)
 [2
  [2
   r1
   rd&a&>d^2<
   r1
   :
   r<b&>g&b^2
  ]
  :
  rg+&b&>d^2<
 ]
 r1
 v(MML(v)-60)
 EP(127)
]

 EP(100)
 r<a&>c&e^2
 r<a&>d&f+^2
 r<b&>d&g^2
 r<b&>e&g^2
 r<a&>c&e^2
 r<a&>d&f+^2
 r<b&>d&g^2
 MidiDelay({ARP(0,!8,{dg+b>e<})},4,!8.)  r2..

 [16 r1]

 EP(95)
 [2
  r<e&b&>e^2
  r<f+&>d&f+^2
  r<a&>d&a^2
  :
  r<g&>e&g r<f+&a&>f+
 ]
 <g&>d&e&g  MidiDelay({ARP(2,!16,{<b>deg})},4,!12) r4..
 EP(127)

 v(MML(v)+60)
 r1
 <
 [16 r1]

 EP(70)
 [2
  [2
   r1
   rd&a&>d^2<
   r1
   :
   r<b&>g&b^2
  ]
  :
  rg+&b&>d^2<
 ]
 v(MML(v)-60)
 EP(127)

 v(MML(v)-10)
 r2..>c+24d24d+24

 e4e16f+16g4eb4
 a.g.f+16e16 d4de
 f+4.a4.f+e16f+16
 g2e4.c+24d24d+24
 e4e16f+16g4eb4
 a.g.a>d4.d16c16<
 b4.f+4.ag16f+16
 g4..d32d+32er4.
 EP.onTime(110,0,!1)
 <b1^1

 
 

//------------------------------------
// Track 7 : 
//------------------------------------
TR(7) CH(7) P(68)
Slur(0)
PitchBend(0)
BR(2)

 [16 r1]

 [16 r1]
 [8 r1]
 [16 r1]

 [16 r1]
 [8 r1]
 [16 r1]

 [7 r1]

// @82,1,0 v120
 @30 v110
 FineTune(68)
 M.onNoteWave(10,80,!2..)
 o5 l16 q99
 r2..c+24d24d+24

 e8.<b8.>a8&!8b4^16.&a+32 ag
 g+32&a.gf+ gf+e4. f+gf+e
 f32&f+8^32d8.f+g g+32&a8^32g8.f+e
 f+16&!16g4^32&f+32 e2 c+24d24d+24

 e8.<b8.>a8&!8b4^16.&a+32 ab
 g+32&a.gf+ gf+ga >c+32&dc.<b b32&>c<b.a
 a16&!16b4^32&a+32 f+4f+g g+32&a.gf+
 f8&!8g2^8..&f+32 dd+

 ed<b>d f+dgd af+df+ gf+ga
 f+32&g.ab ab>c<a >dc<ba >c<bag
 f+8.g+32&a8^32f+8.a+16&!16b8a8f+8
 f+32&g.f+g g+32&a.ga a+32&b.ag agf+8

 e8.a+32&b8^32g8 b.>c.d c<bag
 af+bf+ >c<f+>d<f+ >ec<af+ >c<af+e
 d.f+.d a.f+.d b.f+.a df+g+24a24a+24
 a8&!8b4>cd
 c4&!4e1. r-1 EP.onTime(127,0,!1) r1


//
// detune & delay
//
TR(17) CH(16) P(60)
Slur(0)
PitchBend(0)
BR(2)

 [16 r1]

 [16 r1]
 [8 r1]
 [16 r1]

 [16 r1]
 [8 r1]
 [16 r1]

 [7 r1]

 @81,1,0 v80
 FineTune(60)
 M.onNoteWave(10,80,!2.)
 r16.
 o5 l16 q99
 r2..c+24d24d+24

 e8.<b8.>a8&!8b4^16.&a+32 ag
 g+32&a.gf+ gf+e4. f+gf+e
 f32&f+8^32d8.f+g g+32&a8^32g8.f+e
 f+16&!16g4^32&f+32 e2 c+24d24d+24

 e8.<b8.>a8&!8b4^16.&a+32 ab
 g+32&a.gf+ gf+ga >c+32&dc.<b b32&>c<b.a
 a16&!16b4^32&a+32 f+4f+g g+32&a.gf+
 f8&!8g2^8..&f+32 dd+

 ed<b>d f+dgd af+df+ gf+ga
 f+32&g.ab ab>c<a >dc<ba >c<bag
 f+8.g+32&a8^32f+8.a+16&!16b8a8f+8
 f+32&g.f+g g+32&a.ga a+32&b.ag agf+8

 e8.a+32&b8^32g8 b.>c.d c<bag
 af+bf+ >c<f+>d<f+ >ec<af+ >c<af+e
 d.f+.d a.f+.d b.f+.a df+g+24a24a+24
 a8&!8b4>cd
 c4&!4e1. r-1 EP.onTime(127,0,!1) r1


//------------------------------------
// Track 8 : 
//------------------------------------
TR(8) CH(8) P(64)
@72 v86
M.onNoteWave(0,70,!1)

 o5 l8 q80

  [15 r1]
  r2rr<b>d

 [2
  [2
   e4cb4.ab
   a4gf+4d4e
   f+4.a4.gf+
   g4.e4.cd

   e4cb4.ab
   a4g>d4c<ba
   b4.a4.gf+
   :
   g2.<b>d
  ]
  g2.ga

  be16e16^4.ef+g
  ad16d16^2c4
  <b>f+16f+16^4.f+ef+
  g2.ga

  be16e16^4. bag
  ad16d16^2f+g
  a4.>d4.c4<
  b2^8r>cd

  [2
   e4.e4cde
   f+2d4c4<
   b4.>d4.c4<
   b4.g4b>cd
   e4.e4ef+g
   :
   a2f+4d4
   b2.a4
   g+4.b4.cd
  ]
  a2 f+4.e16f+16
  g1^4rr
  :
  rr<<b>d
 ]
 rrab>

  c^2c<ba>
  c^2c<ba
  b2a2
  g2.ab>
  c^2c<ba>
  c^2def+
  e4.f+g4.d
  g+2b2

  a1 <<
  [15 r1]

  be16e16^4.ef+g
  ad16d16^2c4
  <b>f+16f+16^4.f+ef+
  g2.ga

  be16e16^4. bag
  ad16d16^2f+g
  a4.>d4.c4<
  b2^8rrr
  
  r2>c4d4

 [2
  [2
   e4.e4cde
   f+2d4c4<
   b4.>d4.c4<
   b4.g4b>cd
   e4.e4ef+g
   :
   a2f+4d4
   b2.a4
   g+4.b4.cd
  ]
  a2 f+4.e16f+16
  :
  g1
  b2.cd
 ]
 g1.
 r2




//------------------------------------
// Track 9 : 
//------------------------------------
TR(9) CH(9) P(60)
@72 v65
M.onNoteWave(0,80,!2.)

 o5 l8 q80

  [16 r1]

 [2
  [8 r1]
  [8 r1]

  g<b16b16^4.bb>c
  f+<a16a16^2g4
  f+>d16d16^4.dc+d
  e2.ef+

  g<b16b16^4.>gf+e
  f+<a16a16^2>de
  f+4.b4.a4
  g2^8r4.

  [7 r1]
  r2.ab

  >c4.c4<ab>c
  d2<b4a4
  g4.b4.a4
  g4.e4gab

  >c4.c4cde
  f+2 d4.c16d16
  e1^4rr<
  rrrr
 ]

 [8 r1]
 [16 r1]

  g<b16b16^4.bb>c
  f+<a16a16^2g4
  f+>d16d16^4.dc+d
  e2.ef+

  g<b16b16^4.>gf+e
  f+<a16a16^2>de
  f+4.b4.a4
  g2^8r4.
  r1

  [15 r1]
 r2.ab

 [2
  >c4.c4<ab>c
  d2<b4a4
  g4.b4.a4
  g4.e4gab

  >c4.c4cde
  f+2 d4.c16d16
  :
 g2.f+4
  e4.g+4.<ab
 ]
 e1^2
 r2<





//------------------------------------
// Track 10 : ドラム系
//------------------------------------
TR(10) CH(10)
// マクロ定義
// b = bass / s = Snare
$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,}

@33,90,1
l8
Rhythm {

  [2
   [2
    v90 bbrr rrrb r-1 [4 v110c16v70c16v80c16c16]
    v90 bbrr rbs4 r-1 [4 v110c16v70c16v80c16c16]
    v90 bbrr rrrb r-1 [4 v110c16v70c16v80c16c16]
    :
    v90 bbrb rbs4 r-1 [4 v110c16v70c16v80c16c16]
   ]
   :
   v90 bbrb rb16b16s.v70s16 r-1 [4 v110c16v70c16v80c16c16]
  ]
  v90 brsb srbr r-1 [2 v110c16v70c16 v80c16c16] v110e16v1e16 r8v80c16c16o

 [2
  [2
   v90 bbrr rrrb r-1 v90 rrrrs4rr r-1 v127 e v80c16c16 [3 v110c16v70c16v80c16c16]
   v90 bbrr rbrr r-1 v90 rrrrs4rr r-1 [4 v110c16v70c16v80c16c16]
   v90 bbrr rrrb r-1 v90 rrrrs4rr r-1 [4 v110c16v70c16v80c16c16]
   v90 bbrb rbrb r-1 v90 rrrrs4rv70s r-1 [4 v110c16v70c16v80c16c16]
   v90 bbrr rrrb r-1 v90 rrrrs4rr r-1 v127 y v80c16c16 [3 v110c16v70c16v80c16c16]
   v90 bbrr rbrr r-1 v90 rrrrs4rr r-1 [4 v110c16v70c16v80c16c16]
   v90 bbrr rrrb r-1 v90 rrrrs4rr r-1 [4 v110c16v70c16v80c16c16]
   :
   v90 bbrb brbb r-1 v90 rrs4rsrs16s16 r-1 [4 v110c16v70c16v80c16c16]
  ]
  v90 brbr brbb r-1 v90 l16 rrss rsss qqaa zzss l8 r-1 [4 v110c16v70c16v80c16c16]

  [2
   v90 brrr bbrr    r-1 v90 rrs4rrs4 r-1 v127 e v50c16c16 [3 v110c16v50c16v80c16v50c16]
   v90 brr.b16 bbrr r-1 v90 rrs4rrs.v60s16 r-1 [4 v110c16v50c16v80c16v50c16]
   v90 brrr bbrr    r-1 v90 rrs4rrs4 r-1 [4 v110c16v50c16v80c16v50c16]
   :
   v90 brr.b16 brbr r-1 v90 rrs4r16ss16s16s16z16z16 r-1 [4 v110c16v50c16v80c16v50c16]
  ]
  v90 brrr brrr r-1 v90 l16 rrss qqaz l8 s4r4 r-1 v100cv80ccc v127y16v1y16rrr

  [2
   [2
    v90 bbrr bbrr    r-1 v90 rrs.v60s s. v90s4      r-1 v127 e v50c16c16 [3 v110c16v50c16v80c16v50c16]
    v90 bbrr bbr.b16 r-1 v90 rrs.v60s s. v90s16s.   r-1 [4 v110c16v50c16v80c16v50c16]
    :
    v90 bbrr bbrr    r-1 v90 rrs.v60s s. v90s4      r-1 [4 v110c16v50c16v80c16v50c16]
    v90 bbrr bbr.b16 r-1 v90 rrs.v60s s. v90s16s16z r-1 [4 v110c16v50c16v80c16v50c16]
   ]
   :
   v90 bbrr bbrr    r-1 v90 rrs.v60s s. v90s4      r-1 [4 v110c16v50c16v80c16v50c16]
   v90 brrr brb.b16 r-1 v80r16s16v60s16s16 v90sv60s16s16 v90 l16 azsa zsw8 l8 r-1 v100 d4 v80f4f4f4
  ]
  v90 bbrr bbrr    r-1 v90 rrs.v60s16 l16 v90 ssqqaazz l8 r-1 v110c16v50c16v80c16v50c16 v100 d4 v90f4f4
  :
  v90 brrr rbrr r-1 r2. v90 's4w4' r-1 v120 'e4y4' v80f4f4f4
 ]
 v90 brbr brbr r-1 r v40'sw'v50'sw'v60'sw' v70'sw'v80'sw' v90'sw' v100'sw' r-1 v120 'e4y4' v80f4f4f4

 v90 rbrbrbrb           r-1 v90 s4s4s4s4 r-1 v127 y v80j [3 v110j v80j]
 v90 rbrbrbr16bb16      r-1 v90 s4s4s4s4 r-1 [4 v110j v80j]
 v90 rbrbrbrb           r-1 v90 s4s4s4s4 r-1 [4 v110j v80j]
 v90 rb16b16rbrbrb16b16 r-1 v90 s4s4s4s16s. r-1 [3 v110j v80j] v117 e4
 v90 rbrbrbrb           r-1 v90 s4s4s4s4 r-1 v127 y v80j [3 v110j v80j]
 v90 rbrbrbr16bb16      r-1 v90 s4s4s4s4 r-1 [4 v110j v80j]
 v90 rbrbrbrb           r-1 v90 s4s4s4ss16s16 r-1 [4 v110j v80j]
 v90 brbrbrbr           r-1 v90 l24 qqqaaa zzzsss l16 azsa zsss l8 r-1 v90f4f4f4f4

  [2
   [2
    v90 bbrr rrrb r-1 r2 v90rs.v80sv60s16 r-1 [4 v110c16v70c16v80c16c16]
    v90 bbrr rbr4 r-1 r4.v90s4v60s16s16v90wv60s16s16  r-1 [4 v110c16v70c16v80c16c16]
    v90 bbrr rrrb r-1 r2 v90rs.v80sv60s16 r-1 [4 v110c16v70c16v80c16c16]
    :
    v90 bbrb rbr4 r-1 r4.v90s4v70sv90s16s16z16z16 r-1 [4 v110c16v70c16v80c16c16]
   ]
   :
   v90 brrb rb16b16rr r-1 v90 rsr16v70s. v60rs16s16 v90s.v70s16 r-1 [4 v110c16v70c16v80c16c16]
  ]
  v90 brrb rrbr r-1 v60rs16s16 v90l24 sssazz l8 s16v70s.rv90s24v60s24v40s24 r-1 [2 v110c16v70c16 v80c16c16] v110e16v1e16 r8v80c16c16o

  [2
   v90 brrr bbrr    r-1 v90 rrs4rrs4 r-1 v127 e v50c16c16 [3 v110c16v50c16v80c16v50c16]
   v90 brr.b16 bbrr r-1 v90 rrs4rrs.v60s16 r-1 [4 v110c16v50c16v80c16v50c16]
   v90 brrr bbrr    r-1 v90 rrs4rrs4 r-1 [4 v110c16v50c16v80c16v50c16]
   :
   v90 brr.b16 brbr r-1 v90 rrs4r16ss16s16s16z16z16 r-1 [4 v110c16v50c16v80c16v50c16]
  ]
  v90 brrr brrr r-1 v90 l16 rrss qqaz l8 s4r4 r-1 v100cv80ccc v127 y2
  r1

  [7 r1]
  v90 brrb brrb r-1 v90 rs16s16 l24 azsaaz sazsaz l16 s64s32.sww l8

  [2
   v90 brrb rrrb r-1 v120 rrrrSrrr         r-1 v127 y4 v110 j4j4j4
   v90 brrb rrrr r-1 v90  rrrrs4rv60s      r-1 v110 j4j4 v80d4 v110 j4
   :
   v90 brrb rrrb r-1 v120 rrrrSrrr         r-1 v110 j4j4j4j4
   v90 brrb rrrr r-1 v90  rrrrs4rv70s16s16 r-1 v110 j4j4 v80d4 v110 j4
  ]
  v90 brrb rrrb r-1 rrrr v90s l16 v70ss v90 qqaz l8 r-1 v110 j4j4 v80d4 v80f4
  v90 brbr brbr r-1 v60'sw'v70'sw'v80'sw'v90'sw' l24 [3 v100sv80ss] l16 v100sv90s l8

  [2
   [2
    v90 bbr.b16 bbrr r-1 v90 rrs.v60s s. v90s4      r-1 v127 e v50c16c16 [3 v110c16v50c16v80c16v50c16]
    v90 bbrr bbr.b16 r-1 v90 rrs.v60s s. v90s16s.   r-1 [4 v110c16v50c16v80c16v50c16]
    :
    v90 bbr.b16 bbrr r-1 v90 rrs.v60s s. v90s4      r-1 [4 v110c16v50c16v80c16v50c16]
    v90 bbrr bb16b16r.b16 r-1 v90 rrs.v60s s. v90s16s16z r-1 [4 v110c16v50c16v80c16v50c16]
   ]
   :
   v90 bbr.b16 bbrr r-1 v90 rrs.v60s s. v90s.v70s16 r-1 [4 v110c16v50c16v80c16v50c16]
   v90 brbr b16b.b.b16 r-1 v80r16s16v60s16s16 v90sv60s16s16 v90 l16 azsa zsw8 l8 r-1 v100 d4 v80f4f4f4
  ]
  v90 bbrr bbrr    r-1 v90 rrs.v60s16 l24 v90 sssqqq aaazzz l8 r-1 v110c16v50c16v80c16v50c16 v100 d4 v90f4f4
  v90 brrr rrrr r-1 v127 'e1y1'

  [2
   v80 bbrr rrrr r-1 v100 d v80c16c16 [3 v110c16v70c16v80c16c16]
   v80 bbrr rrrr r-1 [4 v110c16v70c16v80c16c16]
   v80 bbrr rrrr r-1 [4 v110c16v70c16v80c16c16]
   :
   v80 bbrr rrrr r-1 [4 v110c16v70c16v80c16c16]
  ]
  v80 brrb srr v50 b16b16 r-1 [2 v110c16v70c16 v80c16c16] v110e16v1e16 r8v70 j4
}
EP.onTime(127,0,!2.)
Rhythm {
{
  v80 l24 [16 ey]
}

