//-----------------------------------------------
// snow in holy night
// (C)Yax
//-----------------------------------------------

TrackName     = {"snow in holy night"}
Copyright     = {"Yax"}

ResetGM();
r4
TrackSync;


// アルペジオ関数
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)
}


// フェードアウト
FUNCTION FADEOUT() {
  EP.onTime(127,0,!1^1^1^1^1^1^1^2.)
}

FUNCTION FADEOUT2() {
  EP.onTime(127,0,!1^1^1^1^1^1^1^1^1^1.)
}


//------------------------------------------------
// 全体の調整
//------------------------------------------------
TR(1)  V(100) REV(50) CHO(45)
TR(2)  V(100) REV(35) CHO(60)
TR(3)  V(102) REV(70) CHO(30)
TR(4)  V(102) REV(70) CHO(30)
TR(5)  V(102) REV(70) CHO(40)
TR(6)  V(105) REV(35) CHO(60)
TR(7)  V(100) REV(30) CHO(50)
TR(8)  V(100) REV(25) CHO(80)
TR(9)  V(100) REV(50) CHO(60)
TR(10) V(120) REV(50) CHO(0)


//------------------------------------------------
// テンポ
//------------------------------------------------
INT T = 112
Tempo=(T)


//------------------------------------------------
// キー
//------------------------------------------------
INT KEY=0

Key(KEY)                    // 全体のキー
TR(10) TrackKey(KEY * -1)   // リズムトラックの調整用、Keyの符号を逆にしたものをセットしておく



//------------------------------------------------
// MML
//------------------------------------------------

//------------------------------------
// Track 1 : 
//------------------------------------
TR(1) CH(1) P(78)
@49 v70
Slur(3)
 o4 l8 q99

  [3 r1]
  r2..g+16a16

  b1^1
  a1.f+2

  d1 e1  r-1^1 b1^1
  f+1 e1 r-1^1 a1 g+1
  f+1 e1 r-1^1 a1^1
  a1 b1  r-1^1>c+1 e1<

 [2
  [2
   'f+1^1d1^1' r-1^1 r2a2&>c+2<a2
   'e1^1c+1^1' r-1^1 r2g+2&b2g+2
   'a1^1f+1^1' r-1^1 r2>c+2&e2c+2<
   'g+1^1' r-1^1 d1e1 r-1^1 r2b2&>e2d2<
  ]

  'd1f+1'  r-1 v(MML(v)-15) >>> [4 'd<f+>'r]  <<< v(MML(v)+15)
  'e1g+1'  r-1 v(MML(v)-15) >>> [4 'e<g+>'r]  <<< v(MML(v)+15)
  'g+1b1'  r-1 v(MML(v)-15) >>> [4 'e<g+>'r]  <<< v(MML(v)+15)
  'f+1b-1' r-1 v(MML(v)-15) >>> [4 'f+<b->'r] <<< v(MML(v)+15)
  'a1f+1'  r-1 v(MML(v)-15) >>> [4 'f+<a>'r]  <<< v(MML(v)+15)
  'e1g+1'  r-1 v(MML(v)-15) >>> [4 'g+<b>'r]  <<< v(MML(v)+15)
  'g+1b1'  r-1 v(MML(v)-15) >>> [4 'e<g+>'r]  <<< v(MML(v)+15)
  'f+1b-1' r-1 v(MML(v)-15) >>> [4 'f+<b->'r] <<< v(MML(v)+15)
 ]

  [2
   d1 e1  r-1^1 b1^1    r-1^1 v(MML(v)-20) >>> [4 'ba'r][4 'bg+'r] <<< v(MML(v)+20)
   f+1 e1 r-1^1 a1 g+1  r-1^1 v(MML(v)-20) >>> [4 'ba'r][4 'bg+'r] <<< v(MML(v)+20)
   f+1 e1 r-1^1 a1^1    r-1^1 v(MML(v)-20) >>> [4 'ba'r][4 'bg+'r] <<< v(MML(v)+20)
   a1 b1  r-1^1>c+1 e1< r-1^1 v(MML(v)-20) >>> [4 'ba'r][4 'bg+'r] <<< v(MML(v)+20)
  ]

  [2
   'f+1^1d1^1' r-1^1 r2a2&>c+2<a2
   'e1^1c+1^1' r-1^1 r2g+2&b2g+2
   'a1^1f+1^1' r-1^1 r2>c+2&e2c+2<
   'g+1^1' r-1^1 d1e1 r-1^1 r2b2&>e2d2<
  ]

  'd1f+1'  r-1 v(MML(v)-15) >>> [4 'd<f+>'r]  <<< v(MML(v)+15)
  'e1g+1'  r-1 v(MML(v)-15) >>> [4 'e<g+>'r]  <<< v(MML(v)+15)
  'g+1b1'  r-1 v(MML(v)-15) >>> [4 'e<g+>'r]  <<< v(MML(v)+15)
  'f+1b-1' r-1 v(MML(v)-15) >>> [4 'f+<b->'r] <<< v(MML(v)+15)
  'a1f+1'  r-1 v(MML(v)-15) >>> [4 'f+<a>'r]  <<< v(MML(v)+15)
  'e1g+1'  r-1 v(MML(v)-15) >>> [4 'g+<b>'r]  <<< v(MML(v)+15)
  'g+1b1'  r-1 v(MML(v)-15) >>> [4 'e<g+>'r]  <<< v(MML(v)+15)
  'f+1b-1' r-1 v(MML(v)-15) >>> [4 'f+<b->'r] <<< v(MML(v)+15)

  v(MML(v)-10)
  d1 e1  r-1^1 b1^1
  f+1 e1 r-1^1 a1 g+1
  f+1 e1 r-1^1 a1^1
  a1 b1  r-1^1>c+1 e1<
  'g+1b1' r-1 >e1<
  v(MML(v)+10)

  [2
   'f+1^1d1^1' r-1^1 r2a2&>c+2<a2
   'e1^1c+1^1' r-1^1 r2g+2&b2g+2
   'a1^1f+1^1' r-1^1 r2>c+2&e2c+2<
   'g+1^1' r-1^1 d1e1 r-1^1 r2b2&>e2d2<
  ]

  [4
   d1 e1  r-1^1 b1^1    r-1^1 v(MML(v)-20) >>> [4 'ba'r][4 'bg+'r] <<< v(MML(v)+20)
   f+1 e1 r-1^1 a1 g+1  r-1^1 v(MML(v)-20) >>> [4 'ba'r][4 'bg+'r] <<< v(MML(v)+20)
   f+1 e1 r-1^1 a1^1    r-1^1 v(MML(v)-20) >>> [4 'ba'r][4 'bg+'r] <<< v(MML(v)+20)
   a1 b1  r-1^1>c+1 e1< r-1^1 v(MML(v)-20) >>> [4 'ba'r][4 'bg+'r] <<< v(MML(v)+20)
  ]

 FADEOUT2()
 [2
  d1 e1  r-1^1 b1^1
  f+1 e1 r-1^1 a1 g+1
  :
  f+1 e1 r-1^1 a1^1
  a1 b1  r-1^1>c+1 e1<
 ]


//------------------------------------
// Track 2 : 
//------------------------------------
TR(2) CH(2) P(64)
@36 v100
M.onNoteWave(5,90,!1)

 o3 l8 q80

 [7 r1]
 q90
 r2.c&c+

 d4.d d4.f16&f+16
 c+4.c+c+4.g16&g+16
 <b4.bb4.>c+16&d16
 c+4.c+c+4.<g16&g+16>
 d4.d d4.>c+16&d16<
 c+4.c+c+4.<g+16&a16>
 d4.dd4.c16&c+16
 e4.ee4<b4>
 q80

 [2
  [2
   [3 ddrd] dd>c+32&d16.<d
   [3 c+c+rc+]  c+c+>c32&c+16.<c+<
   [3 aara] aa>g+32&a16.<a
   [2 bbrb] > eere eea+32&b16.c+
  ]
  <
  [2
   a2..>d16f+16<
   g+g+r2.
   b2..>e16g+16<
   :
   b-b-r2f+4
  ]
  :
  b-2 f+2>
 ]
 b-4.>c+ f+4.e

 [2
  [2
   ddrd16d16 d<a>df+
   eere16e16 e<g+b>e
   :
   ddrd16d16 d<a>df+
   eere16e16 e<b>eg+
  ]
  :
  f+f+rf+16f+16 f+<a>c+f+
  g+g+rg+16g+16 e<bg+b>
 ]
 f+f+rf+16f+16 f+<a>c+f+
 g+g+rg+16g+16 e<bg+b>

  [2
   [3 ddrd] dd>c+32&d16.<d
   [3 c+c+rc+]  c+c+>c32&c+16.<c+<
   [3 aara] aa>g+32&a16.<a
   [2 bbrb] > eere eea+32&b16.c+
  ]
  <
  [2
   a2..>d16f+16<
   g+g+r2.
   b2..>e16g+16<
   :
   b-b-r2f+4
  ]
  b-2.....&!4.c+64 >

  q95
  v(MML(v)-10)
  d1
  c+1
  <b1>
  c+1
  d1
  c+1
  d1
  e1
  <b2.
  v(MML(v)+10)
  q80
  b>c+

  [2
   ddrd ddrf+16d16 ddrd dd16d16>c+32&d16.<d
   c+c+rc+ c+c+re16c+16 c+c+rc+ c+c+16c+16>c32&c+16.<c+<
   aara aara aar>c+16<a16 aa16a16>g+32&a16.<a
   bbrb bbrg+16b16 > eere ee16e16a+32&b16.c+
  ]

 [2
  [2
   ddrd16d16 d<a16a16>df+
   eere16e16 e<g+16g+16b>e
   :
   ddrd16d16 d<a16a16>df+
   eere16e16 e<b16>c+16eg+
  ]
  f+f+rf+16f+16 f+<a16a16>c+f+
  g+g+rg+16g+16 e<b16g+16b>e
 ]

 [2
  [2
   d<a>dd16<a16> dd16<a16>df+
   e<b>ee16<b16> e<g+16b16>eg+
   :
   d<a>dd16<a16> df+16a16>d<f+
   e<b>ee16g+16 bg+16e16 g+b16>e16<
  ]
 :
  f+c+g+e16c+16 f+a16>c+16f+c+16<a16
  g+ebg+16g+16 eb16e16g+b16>e16<
 ]
 f+c+g+e16f+16 a>c+f+c+16<a16
 bg+16d16g+d q98 v(MML(v)-5) 'e2<b2' v(MML(v)+5) >

 FADEOUT2()
 v(MML(v)-10)
 [2
  d1
  c+1
  <b1>
  c+1
  :
  d1
  c+1
  d1
  e2<b2>
 ]
 






//------------------------------------
// Track 3 : 
//------------------------------------
TR(3) CH(3) P(10)
@99 v60
FineTune(68)

 o6 l4

 [4
  ag+f+e dc+<b>c+
  ag+f+g+ ag+ab
 ]

 [2
  [2
   <a>df+a
   df+a>c+<
   c+eg+b
   eg+b>e<
   <a>c+ea
   c+ea>c+<
   <b>df+b
   eg+b>e<
  ]

  r8<a2..>
  r8<b2..>
  r8<b2..>
  r8<b-2..>
  r8c+2..
  r8<b2..>
  r8e2..
  r8f+4.>f+4.<e r-8
 ]

 [4
  ag+f+e dc+<b>c+
  ag+f+g+ ag+ab
 ]

  [2
   <a>df+a
   df+a>c+<
   c+eg+b
   eg+b>e<
   <a>c+ea
   c+ea>c+<
   <b>df+b
   eg+b>e<
  ]

  r8<a2..>
  r8<b2..>
  r8<b2..>
  r8<b-2..>
  r8c+2..
  r8<b2..>
  r8e2..
  r8f+4.>f+2<

 [2
  ag+f+e dc+<b>c+
  ag+f+g+ ag+ab
 ]
 >e1<

  [2
   <a>df+a
   df+a>c+<
   c+eg+b
   eg+b>e<
   <a>c+ea
   c+ea>c+<
   <b>df+b
   eg+b>e<
  ]

 [8
  ag+f+e dc+<b>c+
  ag+f+g+ ag+ : ab
 ]
 b2

 [2
  [2
   ag+f+e dc+<b>c+
   ag+f+g+ ag+ab
  ]
  :
  FADEOUT()
 ]
 r2


//------------------------------------
// Track 4 : 
//------------------------------------
TR(4) CH(4) P(117)
@99 v60
FineTune(60)
 o6 l4
 r8
 [4
  f+edc+ <bag+>e
  f+ede f+ef+>c+<
 ]
 r-8

 [2
  r4
  [2
   f+df+a
   df+a>c+<
   c+eg+b
   eg+b>c+<
   <a>c+ea
   c+eab
   <b>df+b
   eg+b : >d<
  ]

  >c+<d2.
  re2.
  re2.
  rf+2.
  rf+2.
  rg+2.
  rg+2.
  rb-4.>c+2< r-8
 ]

 r8
 [4
  f+edc+ <bag+>e
  f+ede f+ef+>c+<
 ]
 r-8

  r
  [2
   f+df+a
   df+a>c+<
   c+eg+b
   eg+b>c+<
   <a>c+ea
   c+eab
   <b>df+b
   eg+b : >d<
  ]

  >c+<d2.
  re2.
  re2.
  rf+2.
  rf+2.
  rg+2.
  rg+2.
  rb-4>c+2<

 r8
 [2
  f+edc+ <bag+>e
  f+ede f+ef+>c+<
 ]
 r-8
 b1

  r4
  [2
   f+df+a
   df+a>c+<
   c+eg+b
   eg+b>c+<
   <a>c+ea
   c+eab
   <b>df+b
   eg+b : >d<
  ]

 r8
 [8
  f+edc+ <bag+>e
  f+ede f+e : f+>c+<
 ]
 r-8
 e2

 r8
 [2
  [2
   f+edc+ <bag+>e
   f+ede f+ef+>c+<
  ]
  :
  FADEOUT()
 ]
 


//------------------------------------
// Track 5 : 
//------------------------------------
TR(5) CH(5) P(64)
@99 v60

 o6 l4

 [8 r1]

 [2
  >c+<bag+ f+ef+g+
  >c+<bab >c+<b>c+e<
 ]

 [2
  > v(MML(v)-20)
  [2
   rara raf+a
   rbrb rbg+b
   rara raea
   rbrb rg+bg+
  ]
  < v(MML(v)+20)

  r4.f+8^2
  r4.g+8^2
  r4.g+8^2
  r4.b-8^2
  r4.a8^2
  r4.b8^2
  r4.b8^2
  r4.>c+4.<f+4
 ]

 [4
  >c+<bag+ f+ef+g+
  >c+<bab >c+<b>c+e<
 ]

  > v(MML(v)-20)
  [2
   rara raf+a
   rbrb rbg+b
   rara raea
   rbrb rg+bg+
  ]
  < v(MML(v)+20)

  r4.f+8^2
  r4.g+8^2
  r4.g+8^2
  r4.b-8^2
  r4.a8^2
  r4.b8^2
  r4.b8^2
  r4.>c+8^2<

 [4 r1]
 >c+<bag+ f+ef+g+
 >c+<bab >c+<b>c+e<
 >e1<

  > v(MML(v)-20)
  [2
   rara raf+a
   rbrb rbg+b
   rara raea
   rbrb rg+bg+
  ]
  < v(MML(v)+20)

 [8
  >c+<bag+ f+ef+g+
  >c+<bab >c+<b : >c+e<
 ]
 g+2

 [4 r1]
 >c+<bag+ f+ef+g+
 >c+<bab >c+<b>c+e<
 
 FADEOUT()
 [2
  >c+<bag+ f+ef+g+
  >c+<bab >c+<b>c+e<
 ]


//------------------------------------
// Track 6 : 
//------------------------------------
TR(6) CH(6) P(50)
@103 v92

 o5 l8 q90

 [8 r1]

 [2
  y64,1; rr'd4<a4>'f+4a4 y64,0;
  y64,1; 'b2e2'g+2 y64,0;
  y64,1; rr'f+4d4'a4>c+4< y64,0;
  :
  y64,1; 'b2e2'g+2 y64,0;
 ]
 y64,1; 'b2g+2'>e2< y64,0;

 [2
  [2
   '>d2<a2' 'a2f+2' 'f+1d1'
   '>c+2<g+2' 'g+2e2' 'e2c+2' 'g+2e2'
   'a2f+2' 'e2c+2' '>c+1<a1'
   'b2f+2''f+2d2' : 'g+2e2' 'b2>e2<'
  ]
  'g+1e1'

  'a2f+2' 'f+2d2' 'g+1e1'
  'g+2e2' 'b2g+2' 'b-1f+1'
  '>c+2<a2' 'a2f+2' 'b1g+1'
  :
  'g+1e1' 'b-1f+1'
 ]
 'g+2e2''e2c+2' 'b-2f+2' 'f+2c+2'

 [2
  [2
   y64,1; rr'd4<a4>'f+4a4 y64,0;
   y64,1; 'b2e2'g+2 y64,0;
   y64,1; rr'f+4d4'a4>c+4< y64,0;
   :
   y64,1; 'b2e2'g+2 y64,0;
  ]
  y64,1; 'b2g+2'>e2< y64,0;
 ]

 [2
  '>d2<a2' 'a2f+2' 'f+1d1'
  '>c+2<g+2' 'g+2e2' 'e2c+2' 'g+2e2'
  'a2f+2' 'e2c+2' '>c+1<a1'
  'b2f+2''f+2d2' : 'g+2e2' 'b2>e2<'
 ]
 'g+1e1'

 'a2f+2' 'f+2d2' 'g+1e1'
 'g+2e2' 'b2g+2' 'b-1f+1'
 '>c+2<a2' 'a2f+2' 'b1g+1'
 'g+2e2''e2c+2' 'b-2f+2' 'f+2c+2'

 [4 r1]
 y64,1; rr'd4<a4>'f+4a4 y64,0;
 y64,1; 'b2e2'g+2 y64,0;
 y64,1; rr'f+4d4'a4>c+4< y64,0;
 y64,1; 'b1g+1'>e1< y64,0;

  [2
   '>d2<a2' 'a2f+2' 'f+1d1'
   '>c+2<g+2' 'g+2e2' 'e2c+2' 'g+2e2'
   'a2f+2' 'e2c+2' '>c+1<a1'
   'b2f+2''f+2d2' : 'g+2e2' 'b2>e2<'
  ]
  'g+1e1'

 [2
  [2
   [2
    y64,1; rr'd4<a4>'f+4a4 y64,0;
    y64,1; 'b2e2'g+2 y64,0;
    y64,1; rr'f+4d4'a4>c+4< y64,0;
    :
    y64,1; 'b2e2'g+2 y64,0;
   ]
   :
   y64,1; 'b2g+2'>e2< y64,0;
  ]
  :
  y64,1; 'b2g+2'>e2< y64,0;
 ]
 y64,1; 'b2g+2'>e2< y64,0;

 FADEOUT2()
 v(MML(v)-15)
 [2
  y64,1; rr'd4<a4>'f+4a4 y64,0;
  y64,1; 'b2e2'g+2 y64,0;
  y64,1; rr'f+4d4'a4>c+4< y64,0;
  :
  y64,1; 'b2e2'g+2 y64,0;
 ]
 y64,1; 'b2g+2'>e2< y64,0;

  y64,1; rr'd4<a4>'f+4a4 y64,0;
  y64,1; 'b2e2'g+2 y64,0;
  y64,1; rr'f+4d4'a4>c+4< y64,0;


//------------------------------------
// Track 7 : 
//------------------------------------
TR(7) CH(7) P(68)
@62 v90

 [8 r1]

 o5 q80
 l8
 rrr'f+16d16''f+16d16' 'f+2a2'
 rrr 'g+8.e8.'r16 'e4c+4'r
 'f+2..d2..'r
 'g+4..e4..'r16 'e2c+2'
 rrr'f+16d16''f+16d16' 'f+2a2'
 rrr 'g+8.e8.'r16 'g+4b4'r
 'f+4.a4.'a16b16 '>c+4.<a4.'r
 'b4.g+4.'r 'g+2e2'

 [2
  l16
  [2
   r1 r4.'af+''bg+' '>c+<a'r'bg+''af+' '>c+4<a4'
   r1 r4.'g+e''af+' 'b2g+2'
   r1 r4.'f+d''g+e' 'a8.f+8.'r'>c+4<a4'
   :
   r1 r4.'g+b''af+' 'g+2e2'
  ]
  r1 r4.'g+b''a>c+<' '>d2<b2'

  [8 r1]
 ]

 l8
 [2
  rrr'f+16d16''f+16d16' 'f+2a2'
  rrr 'g+8.e8.'r16 'e4c+4'r
  'f+2..d2..'r
  'g+4..e4..'r16 'e2c+2'
  rrr'f+16d16''f+16d16' 'f+2a2'
  rrr 'g+8.e8.'r16 'g+4b4'r
  'f+4.a4.'a16b16 '>c+4.<a4.'r
  'b4.g+4.'r : 'g+2e2'
 ]
 'g+2b2'

  l16
  [2
   r1 r4.'af+''bg+' '>c+<a'r'bg+''af+' '>c+4<a4'
   r1 r4.'g+e''af+' 'b2g+2'
   r1 r4.'f+d''g+e' 'a8.f+8.'r'>c+4<a4'
   :
   r1 r4.'g+b''af+' 'g+2e2'
  ]
  r1 r4.'g+b''a>c+<' '>d2<b2'

  [8 r1]

  [8 r1]
  r1

  l16
  [2
   r1 r4.'af+''bg+' '>c+<a'r'bg+''af+' '>c+4<a4'
   r1 r4.'g+e''af+' 'b2g+2'
   r1 r4.'f+d''g+e' 'a8.f+8.'r'>c+4<a4'
   :
   r1 r4.'g+b''af+' 'g+2e2'
  ]
  r1 r4.'g+b''a>c+<' '>d2<b2'

 l8
 [2
  [2
   rrr'f+16d16''f+16d16' 'f+2a2'
   rrr 'g+8.e8.'r16 'e4c+4'r
   'f+2..d2..'r
   'g+4..e4..'r16 'e2c+2'
   rrr'f+16d16''f+16d16' 'f+2a2'
   rrr 'g+8.e8.'r16 'g+4b4'r
   'f+4.a4.'a16b16 '>c+4.<a4.'r
   'b4.g+4.'r : 'g+2e2'
  ]
  'g+2b2'
 ]


//------------------------------------
// Track 8 : 
//------------------------------------
TR(8) CH(8) P(64)
@19 v100

 [8 r1]
 [8 r1]

 o6 l8 q90
 M.onNoteWave(0,50,!1)

 [2
  [2
   rr dd16e16 f+8.r16 a8.r16
   b4.a16g+16 f+2
   rr g+2 re16c+16
   e1

   rr f+f+16g+16 a8.r16f+8.r16
   >c+4.c+16<b16 a2
   rr b4.r g+f+16g+16
   a4.rg+2
  ]

  a4.rf+4.r
  g+2.rg+16a16
  b4.rg+4.r
  b-2..r
  >c+4.r<a4.g+16a16
  b4.b16a16 g+4e.r16
  g+4.r b4.r
  :
  b-2..r
 ]
 b-2.>c+4

 [2
  d4.d16e16 f+2
  e4.e16f+16 g+2
  a2 f+4.e16f+16
  g+2 e2
  d4.d16e16 f+2
  e4.e16f+16 g+4e4
 :
  f+2g+2
  a2>c+2<
 ]
 >c+2..<r
 b2..r<
 
  [2
   rr dd16e16 f+8.r16 a8.r16
   b4.a16g+16 f+2
   rr g+2 re16c+16
   e1

   rr f+f+16g+16 a8.r16f+8.r16
   >c+4.c+16<b16 a2
   rr b4.r g+f+16g+16
   a4.rg+2
  ]

  a4.rf+4.r
  g+2.rg+16a16
  b4.rg+4.r
  b-2..r
  >c+4.r<a4.g+16a16
  b4.b16a16 g+4e.r16
  g+4.r b4.r
  b-2..r

  [8 r1]
  r1

  [2
   rr dd16e16 f+8.r16 a8.r16
   b4.a16g+16 f+2
   rr g+2 re16c+16
   e1

   rr f+f+16g+16 a8.r16f+8.r16
   >c+4.c+16<b16 a2
   rr b4.r g+f+16g+16
   :
   a4.rg+2
  ]
  a4.r b4 >c+4

  [2
   [2
    d4.d16e16 f+2
    e4.e16f+16 g+2
    a2 f+4.e16f+16
    g+2 e2
    d4.d16e16 f+2
    e4.e16f+16 g+4e4
   :
    f+2g+2
    a2>c+2<
   ]
   :
   >c+2..<r
   b4.rg+4.r
  ]
  >c+2..r
  e1^1^1 r-1^1 EP.onTime(127,0,!1^1)






//------------------------------------
// Track 9 : 
//------------------------------------
TR(9) CH(9) P(64)
@69 v56 o6

 [8 r1]
 [8 r1]

 l8 q90
 M.onNoteWave(0,50,!1)

 [2
  [8 r1]
  [8 r1]

  [8 r1]
 ]

 [2
  <a2>d2 r-1 f+2a2
  <b2>e2 r-1 g+2b2
  f+2d2  r-1 >c+2<a2
  e2<b2> r-1 b2g+2
  <a2>d2 r-1 f+2a2
  <b2>e2 r-1 g+2b2
  :
  c+2e2 r-1 a2b2
  f+2b2 r-1 >c+2e2<
 ]
 a2..r r-1 >f+2..r<
 g+2..r r-1 >e2..r<

  [8 r1]
  [8 r1]

  [8 r1]

  [8 r1]
  r1

  [8 r1]
  [8 r1]

 [2
  [2
   <a2>d2 r-1 f+2a2
   <b2>e2 r-1 g+2b2
   f+2d2  r-1 >c+2<a2
   e2<b2> r-1 b2g+2
   <a2>d2 r-1 f+2a2
   <b2>e2 r-1 g+2b2
   :
   c+2e2 r-1 a2b2
   f+2b2 r-1 >c+2e2<
  ]
  a2..r r-1 >f+2..r<
  g+2..r r-1 >e2..r<
 ]



//------------------------------------
// Track 10 : ドラム系
//------------------------------------
TR(10) CH(10)
// マクロ定義
// b = bass / s = Snare / S = Rim
$b{n36,} $s{n38,} $S{n37,} $N{n40,}
// 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
  v70 rrbr rrbr r-1 v127 e v70c16v40c16 [3 v100c v70c16 v40c16]
  v70 rrbr rrbr r-1 [3 v100c v70c16v40c16] v70c16v50c16 v80o
  v70 rrbr rrbr r-1 [4 v100c v70c16v40c16]
  :
  v70 rrbr rrbr r-1 [2 v100c v70c16v40c16] [2 v70c16v50c16 v80o]
 ]
 v70 brbr brbr r-1 r v60'sw' v70'sw' v80'sw' [2 v90 s64s32. [3 v70s16]] r-1 v100c v70c16v40c16 v100 d v70f ffff

 [2
  v70 brrb brrr r-1 v90 rrrr srrr r-1  v127 e v70c16 v50c16 [3 v100c v70c16v50c16]
  v70 brrb brrb r-1 v90 rrrr srrr r-1 [3 v100c v70c16v50c16] v70c16c16 v80o
  v70 brrb brrr r-1 v90 rrrr srrr r-1 [4 v100c v70c16v50c16]
  :
  v70 brrb rbrb r-1 v90 rrrr srss r-1 [2 v100c v70c16v50c16] v80o v70 [2 c16c16] v80o
 ]
 v70 brbr rbrb16b16 r-1 v90 rrrs16s16 l16 v100qqaz v90 s64s16..l8 v70s r-1 [2 v100c v70c16v50c16] v80 o v70 [2 c16c16] v80 o

 [2
  [2
   v127 e1 r-1
   [2
    v70 brrr brrr r-1 v90 rrs4 rrs4 r-1 [4 v100c v60c]
    v70 brrr bbrr r-1 v90 rrs4 rrs4 r-1 [4 v100c : v60c] v80 o
    v70 brrr brrr r-1 v90 rrs4 rrs4 r-1 [4 v100c v60c]
    :
    v70 brrr bbr.b16 r-1 v90 rrs4 rrss r-1 [4 v100c : v60c] v80 o
   ]
   :
   v70 brrr brr.b16 r-1 v90 rrs4 r'sw''sw''sw'r-16s16 r-1 [2 v100c v60c] v90d v70fff
  ]
  v70 bbrb brr.b16 r-1 v90 rrs16s. l16 v100 rq64q32.qa az v90 s64s32.s l8 r-1 [2 v100c v60c] v90d v70fff

  [2
   v70 brrb brrr r-1 v90 rrrr rrrr r-1 v127 yr v100ururur
   v70 bbrr rrrb r-1 v90 rrrr rrsr r-1 v100 urururur
   :
   v70 brrb brrr r-1 v90 rrrr rrrr r-1 v100 urururur
   v70 bbrr rrrb r-1 v90 rrrr rswr r-1 v100 urururur
  ]
  :
  v70 brrb brrr r-1 v90 rrrr rrss16s16 r-1 v100 urururur
  v70 bbrb brb.b16 r-1 v90 rrs16s16r l16 v100 qqaa zz v90 ss l8 r-1 v100 drur v70ffff
 ]
 v70 brrb bb16b16rr r-1 v90 rrrr rrss16s16 r-1 v100 urururur
 v70 rbrb16b16 brb.b16 r-1 v90 [2 s16s16r] l16 v100 qasa zass l8 r-1 v100 drur v70ffff

 [2
  [2
   v70 bbr.b16 bbrr    r-1 v90 rrs.v55 s16 r16s. v90 s4     r-1 v127 y v60t [3 v100 j v60t] r-1 v35 [4 rN]
   v70 bbr.b16 bbr.b16 r-1 v90 rrs.v55 s16 r16s. v90 sv55s  r-1 [4 v100 j v60t]             r-1 v35 [4 rN]
   v70 bbr.b16 bbrr    r-1 v90 rrs.v55 s16 r16s. v90 s4     r-1 [4 v100 j v60t]             r-1 v35 [4 rN]
   :
   v70 bbr.b16 bbr.b16 r-1 v90 rrs.v55 s16 r16s. v90 s16s16v55s  r-1 [4 v100 j v60t]        r-1 v35 [4 rN]
  ]
  :
  v70 bbr.b16 bbr.b16 r-1 rrv90 s16 v75s16v60s v100 l16 aass zzss l8  r-1 [4 v100 j v60t]   r-1 v35 [4 rN]
 ]
 v70 bbr.b16 bbr.b16 r-1 l16 v100 qqzz aaww zzss wwss l8 r-1 [4 v100 j v60t]                r-1 v35 [4 rN]

  [2
   v127 e1 r-1
   [2
    v70 brrr brrr r-1 v90 rrs4 rrs4 r-1 [4 v100c v60c]
    v70 brrr bbrr r-1 v90 rrs4 rrs4 r-1 [4 v100c : v60c] v80 o
    v70 brrr brrr r-1 v90 rrs4 rrs4 r-1 [4 v100c v60c]
    :
    v70 brrr bbr.b16 r-1 v90 rrs4 rrss r-1 [4 v100c : v60c] v80 o
   ]
   :
   v70 brrr brr.b16 r-1 v90 rrs4 r'sw''sw''sw'r-16s16 r-1 [2 v100c v60c] v90d v70fff
  ]
  v70 bbrb brr.b16 r-1 v90 rrs16s. l16 v100 rq64q32.qa az v90 s64s32.s l8 r-1 [2 v100c v60c] v90d v70fff

  [2
   v70 brrb brrr r-1 v90 rrrr rrrr r-1 v127 yr v100ururur
   v70 bbrr rrrb r-1 v90 rrrr rrsr r-1 v100 urururur
   :
   v70 brrb brrr r-1 v90 rrrr rrrr r-1 v100 urururur
   v70 bbrr rrrb r-1 v90 rrrr rswr r-1 v100 urururur
  ]
 v70 brrb bb16b16rr r-1 v90 rrrr rrss16s16 r-1 v100 urururur
 v70 brbr brrr r-1 v100 l16 qqaa zzss l8 r2 r-1 v100 drur v127 'ye'rrr

 [2
  v70 rrbr rrbr r-1 v127 e v70c16v40c16 [3 v100c v70c16 v40c16]
  v70 rrbr rrbr r-1 [3 v100c v70c16v40c16] v70c16v50c16 v80o
  :
  v70 rrbr rrbr r-1 [4 v100c v70c16v40c16]
  v70 rrbr rrbr r-1 [2 v100c v70c16v40c16] [2 v70c16v50c16 v80o]
 ]
 v70 rrbr rrbr r-1 v90 rrrr rq16a16z16w16s16s16 r-1 [3 v100c v70c16v40c16] v100 dr
 v70 brrr rrr.b16 r-1 v127 e1
 v70 brbr brbr r-1 l16 v100 s64s32.aa s64s32.zz s64s32.w v90 rsss v100 s64s32. [3 v90s16] l8 r-1 v120 y2 v110 d4rr

  [2
   v127 e1 r-1
   [2
    v70 brrr brrr    r-1 v90 rrs4 rrs4 r-1 [4 v100c v60c]
    v70 brrr bbr.b16 r-1 v90 rrs4 rrs4 r-1 [4 v100c : v60c] v80 o
    v70 brrr brrr    r-1 v90 rrs4 rrs4 r-1 [4 v100c v60c]
    :
    v70 brrr bbr.b16 r-1 v90 rrs4 rrss r-1 [4 v100c : v60c] v80 o
   ]
   :
   v70 brrr brr.b16 r-1 v90 rrs4 r'sw''sw''sw'r-16s16 r-1 [2 v100c v60c] v90d v70fff
  ]
  v70 bbrb brr.b16 r-1 v90 rrs16s. l16 v100 rq64q32.qa az v90 s64s32.s l8 r-1 [2 v100c v60c] v90d v70fff

 [2
  [2
   v70 bbr.b16 bbrr    r-1 v90 rrs.v55 s16 r16s. v90 s4     r-1 v127 y v60t [3 v100 j v60t] r-1 v35 [4 rN]
   v70 bbr.b16 bbr.b16 r-1 v90 rrs.v55 s16 r16s. v90 sv55s  r-1 [4 v100 j v60t]             r-1 v35 [4 rN]
   :
   v70 bbr.b16 bbrr    r-1 v90 rrs.v55 s16 r16s. v90 s4     r-1 [4 v100 j v60t]             r-1 v35 [4 rN]
   v70 bbr.b16 bbr.b16 r-1 v90 rrs.v55 s16 r16s. v90 s16s16v55s  r-1 [4 v100 j v60t]        r-1 v35 [4 rN]
  ]
  :
  v70 bbr.b16 bbrr    r-1 v90 rrs.v55 s16 r16s. v90 s4     r-1 [4 v100 j v60t]              r-1 v35 [4 rN]
  v70 bbr.b16 bbr.b16 r-1 rrv90 s16 v75s16v60s v100 l16 aass zzss l8  r-1 [4 v100 j v60t]   r-1 v35 [4 rN]
 ]
 v70 bbr.b16 bbrr    r-1 v90 rrs.v55 s16 r16s. v90 s4     r-1 [4 v100 j v60t]               r-1 v35 [4 rN]
 v70 bbr.b16 bbr.b16 r-1 l16 v100 qqzz aaww zzss wwss l8 r-1 [4 v100 j v60t]                r-1 v35 [4 rN]

 [2
  [2
   v70 bbr.b16 bbr.b16    r-1 v90 rrs.v55 s16 r16s. v90 s4     r-1 v127 y v60t [3 v100 j v60t] r-1 v35 [4 rN]
   v70 bbr.b16 bbrb16b16  r-1 v60 r16sv55s16 v90 s.v55 s16 r16s. v90 sv55s  r-1 [4 v100 j v60t]             r-1 v35 [4 rN]
   :
   v70 bbr.b16 bbr.b16    r-1 v90 rrs.v55 s16 r16s. v90 s.v55s16     r-1 [4 v100 j v60t]             r-1 v35 [4 rN]
   v70 bb16b16rb16b16 bbrb16b16 r-1 v60 r16ss16v90 s.v55 s16 r16s. v90 s16s16v55s  r-1 [4 v100 j v60t]        r-1 v35 [4 rN]
  ]
  :
  v70 bbr.b16 bbr.b16      r-1 rv55s16s16 v90 s.v55 s16 r16s. v90 sv80s16s16     r-1 [4 v100 j v60t]              r-1 v35 [4 rN]
  v70 bb16b16r.b16 bbr.b16 r-1 l16 v100 qqzz aaww zzgg v90 s64s16..ss l8 r-1 [4 v100 j v60t]   r-1 v35 [4 rN]
 ]
 v70 bbr.b16 bbr.b16    r-1 v90 rrs.v55 s16 r16s. v90 ss16s16     r-1 [3 v100 j v60t] v110 d v60 f r-1 v35 [4 rN]
 v70 bb16b16rb16b16 brrr r-1 l16 v100 qqzz aaww l8 rrrr r-1 [2 v100 j v60t] v127 y4rr                  r-1 v35 [4 rN]

 v70 brrr rrrr r-1 v127 'e1y1'
}
