/*

◆airwalk 2010


Xpand2の音がやたらとトランスに合うようです。


⇒http://www.youtube.com/watch?v=CYkG8FwL_CA


*/



//-----------------Original MML-----------------//

INT EST=146PlayFrom.SysEx=1PlayFrom.CtrlChg=1PlayFrom.RPN_NRPN=1TrackName={airwalk}Copyright={Cyberhippie}System.MeasureShift=3Tempo=1000Include(delay.h)ResetGS;
FUNCTION WIN(X1,X2,X3,XA,XB,X4,X5,X6,X7,X8,X9,XC){TR=X1;DL(0)CH=X2;@(X3,XA,XB)TrackKey=X4;P=X5;CHO=X6*10REV=X7*10v=(X8)q=(X9*10)M=(XC*10)}
FUNCTION DL(ti){Time(ti:1:0)}FUNCTION PAN(ER1,ER2){If(ER2==0){P.T(0,127,ER1)}If(ER2==1){P.T(127,0,ER1)}}FUNCTION GSRY(_D){INT _TCH=Channel;INT _CH;If(_TCH==10){_CH=$00;}Else{If(_TCH<10){_CH=_TCH;}Else{_CH=_TCH-1}}_CH=$10+_CH;SysEx=$F0,$41,(DeviceNumber),$42,$12,{$40,(_CH),$15,(_D)},$F7;}
FUNCTION HAM(STR SA){Sub{Key=12SA;Key=0}SA}FUNCTION HAM2(STR SA){Sub{Key=-12SA;Key=0}SA}FUNCTION HAM3(STR SA){Sub{Key=-12SA;Key=0}Sub{Key=12SA;Key=0}SA}FUNCTION REC(FF=127){EP.T(FF,0,!1^1^1^1^1^1)}FUNCTION REC2(FF=100){V.T(FF,0,!1^1^1^1^1^1)}FUNCTION IP(DW=1){DL(-2)GSRY(DW)r8}INT K=0DL=0Tempo=EST;
Function MD(Str S,Int Repeat, Int Delay){Int Temp_v=MML(v);Int Dly=Delay;Int Dec_v=Temp_v/(Repeat+2);Int J=Temp_v+20;J=J-(Dec_v*2);v(J);For(Int I=1;I<=Repeat;I++){Sub{r%(Dly)v(J)S}Dly=Dly+Delay;J=J-Dec_v;}v(Temp_v)S}
//-(TR,CH,@  ,2 ,3,K, P ,C,R, v ,q ,M)---(TR,CH,@  ,2 ,3,K, P ,C,R, v ,q ,M)---(TR,CH,@  ,2 ,3,K, P ,C,R, v ,q ,M)
WIN(01,01,008,00,0,K,064,0,0,127,09,0)WIN(07,07,081,00,0,K,094,0,0,120,10,0)WIN(13,13,049,00,0,K,032,0,0,100,10,0)
WIN(02,02,082,00,0,K,064,0,0,100,09,3)WIN(08,08,012,00,0,K,064,0,0,127,09,0)WIN(14,14,049,00,0,K,096,0,0,100,10,0)
WIN(03,03,082,00,0,K,000,0,0,100,10,3)WIN(09,09,012,00,0,K,064,0,0,127,09,0)WIN(15,15,003,00,0,0,010,0,0,120,10,0)
WIN(04,04,082,00,0,K,127,0,0,100,10,3)WIN(10,10,025,00,0,0,064,0,0,127,10,0)WIN(16,16,003,00,0,0,117,0,0,120,10,0)
WIN(05,05,039,00,0,K,034,0,0,120,10,0)WIN(11,11,025,00,0,0,064,0,0,127,09,0)//--Light source ver1.7--//
WIN(06,06,049,00,0,K,032,0,0,080,10,0)WIN(12,12,026,00,0,0,064,0,0,127,09,0)TR=10IP;TR=11IP=2TR=12IP;
INT HAZ=5INT ST0=21INT ST1=37INT BK1=53INT BGN=69INT ST2=85INT HZ2=101INT ST3=117INT ST4=133INT BK2=149INT BK3=167INT BN2=183INT ST5=199INT ST6=215
/*1*/STR MNH={<EP=110MD({[8[3'`ebg'rr]r[3'`dbg'r]]},3,!8)>}
STR MNI={<EP=110MD({[[3'`ebg'rr]r[3'`dbg'r]][[3'`e`cg'rr]r[3'`d`cg'r]][[3'`f#`da'rr]r[3'`e`ca'r]][[3'`ebg'rr]r[3'`dbg'r]]},3,!8)>}
TR=1l16DL=HAZ;P.onCycle(!8,54,74)[4MNH][MNI]DL=HZ2[4MNH][MNI]DL=BK2+8MNI;DL=ST5[MNH]
/*2&3&4*/STR RTA={@82,0q=150If(CH==3){BR=20p%=130}If(CH==4){BR=20p%=-130}}STR RTH={EP=110RTA[4MidiDelay({<`g^b`g^b`g^>},8,!2)[56r]]}
STR RTI={EP=120RTA;q.T(150,10,!1^1^1^1^1^1^1^1)MD({`g^b`g^b`g^`f#^b`f#^b`f#^`e^b`e^b`e^`d^b`d^b`d^;`c^g`c^g`c^`d^g`d^g`d^[`e^g`e^g`e^]
`f#^a`f#^a`f#^`e^a`e^a`e^`d^a`d^a`d^`c^a`c^a`c^;b^gb^gb^`c^g`c^g`c^[`d^g`d^g`d^]},1,!8)
q.T(10,100,!1^1^1^1^1^1^1^1)MD({`g^b`g^b`g^`f#^b`f#^b`f#^`e^b`e^b`e^`d^b`d^b`d^;`c^g`c^g`c^`d^g`d^g`d^[`e^g`e^g`e^]
`f#^a`f#^a`f#^`e^a`e^a`e^`d^a`d^a`d^`c^a`c^a`c^[b^gb^gbg]},1,!8)MD({[bbgbbgbg]},2,!16)}
STR RTJ={EP=120RTA;q.T(10,100,!1^1^1^1^1^1^1^1)MD({`g^b`g^b`g^`f#^b`f#^b`f#^`e^b`e^b`e^`d^b`d^b`d^;`c^g`c^g`c^`d^g`d^g`d^[`e^g`e^g`e^]
`f#^a`f#^a`f#^`e^a`e^a`e^`d^a`d^a`d^`c^a`c^a`c^[b^gb^gbg]},1,!8)MD({[bbgbbgbg]},2,!16)}
STR RT1={EP=120RTA;q=150MD({`g^b`g^b`g^`f#^b`f#^b`f#^`e^b`e^b`e^`d^b`d^b`d^;`c^g`c^g`c^`d^g`d^g`d^[`e^g`e^g`e^]
`f#^a`f#^a`f#^`e^a`e^a`e^`d^a`d^a`d^`c^a`c^a`c^;b^gb^gb^`c^g`c^g`c^[`d^g`d^g`d^]},1,!8)}
STR RT2={EP=120RTA;q=150MD({`g^b`g^b`g^`f#^b`f#^b`f#^`e^b`e^b`e^`d^b`d^b`d^;`c^g`c^g`c^`d^g`d^g`d^[`e^g`e^g`e^]
`f#^a`f#^a`f#^`e^a`e^a`e^`d^a`d^a`d^`c^a`c^a`c^[b^gb^gbg]},1,!8)MD({[bbgbbgbg]},2,!16)}
STR RRF={l16HAM({DL=ST0;RTH;DL=BK1;RTI;DL=BGN[RT1;RT2]DL=ST3;RTH;DL=BK3+8RTJ;DL=BN2;RT1;RT2;})}TR=2RRF;TR=3RRF;TR=4RRF;
/*5*/STR BSH={MidiDelay({[32r"ggg]},3,!16)}STR BSI={q.T(150,10,!1^1^1^1^1^1^1^1)[MidiDelay({[4"grgrggrg][4cr`cr`c`cr`c][4dr`dr`d`dr`d]},3,!8):MidiDelay({[4"grgrggrg]},3,!8)q.T(10,100,!1^1^1^1^1^1^1^1)]MidiDelay({[3"grgrggrg]},3,!8)rrrrrrg&"gq=100}
STR BS1={MidiDelay({[8r"ggg][8rc`c`c][8rd`d`d][8r"ggg]},2,!16)}
STR BASS={l16<<DL=HAZ[4BSH][BS1]DL=BK1;BSI;DL=BGN;V=127[4BS1]V=100DL=HZ2[4BSH][BS1]DL=BK3;BSI;DL=BN2;V=127[BS1]V=100DL=ST5[4BSH]}TR=5BASS;TR=7BASS;
/*8&9*/STR YTH={BR=30p.W(70,0,!16)@79,0l16c[127r][c[31r]][c[15r]][c[7r]][c;rrr][c;r][4c]}STR YT1={l4BR=30p.W(70,0,!16)@79,0q=40[32'c']}
TR=8DL=HAZ;V=127[6YT1]DL=BK1;YTH;DL=BGN[4YT1]DL=HZ2[6YT1]DL=BK3;YTH;DL=BN2[6YT1]
STR GFH={BR=30p.W(70,0,!16)@80,0l16c[127r][c[31r]][c[15r]][c[7r]][c;rrr][c;r][4c]}STR GF1={l4BR=30p.W(70,0,!16)@80,0q=40[32'c']}
TR=9DL=HAZ;V=127[6GF1]DL=BK1;GFH;DL=BGN[4GF1]DL=HZ2[6GF1]DL=BK3;GFH;DL=BN2[6GF1]
/*10*/STR OA={n27n32n33n35n36}STR O1={'OA'}STR O2={'OA'}STR O3={'n49OA'}STR O4={'n57OA'}STR O5={'n51n59OA'}STR DM1={O1;rrr}STR DH1={[7DM1][2O1;r]}
STR DM2={O1;rrrO2;rrr}STR DM3={DM2;O1;rrrO2;rrO2}STR DM4={[7DN2]O1;rrrO2;rO1;r}STR DM5={[7DM2]O1;O2;r[2O1]r[2O1]}STR DM6={[7DM2]O1;rrr[2O2;r]}STR DM7={[7DM2]O1;rrrO2;r[2O2]}STR DM8={[6DM2]O1;rrrO1;rO2;rrrO1;rO2;r[2O2]}
STR DM9={[6DM2]O3[7r]['n28n39'r][4'n28n39']}STR DM10={[7DM2][3O1]r[4O1]}STR DM11={[6DM2][O2;r[O1]][O2;r][O2]rr}STR DM12={O1;rrrO4;rO1;rrrO4;rO1;O4;rO4}STR DM13={[6DM2]O3[7r][n54rrr]}STR DM14={[7DM1][O1;r][4O1;rrr]O3[7r]['n28n39'r]rrrr}
STR DM15={[[O1;r]O4;r[O1]:rO4[O1;r:O4;r]][O1]O4;r[4'n27n28']}STR DM16={[6DM2]rrr['n39n28'r:rr]O1;r[4O1]}STR DM17={[6DM2]p.W(0,127,!16)[3DM1]p%=2000O1;r[O1]}STR DM18={SUB{[32n42r]}[O1;rrrO4;rO1;rrrO4;rO1;O4;rO4:[O1;r]O4;rO1;rrrO1;rO4;r[O4]][O1;r]O4;r[O1;O4]O4;rO1;r[O4]}STR DM19={[O1;r]O4;rO1;rrrO1;rO4;r[O4]}
STR GR={'n42n85'}STR GA={n44}STR GB={'n51n46'}STR TA={n54}STR MT={n51}STR DR={'n38n40n82n85'}STR PL1={If(MODE1==GS){P.onCycle(!8,32,90)}Else{P.onCycle(!8,20,90)}}STR PL2={P.onCycle(!16,0,32,96,127)If(MODE1==TWM){P.onCycle(!16,0,32,70,80)}}
STR GP1={[2GR;GA;GB;r][2GR;GA;GB;GR]}STR GP2={[3GR;rGB;r]GR;r[2GB]}STR GP3={[3[GR]GB;r][2GR][2GB]}STR GP4={[GR]GB;GR}STR GP5={[3GP4][GR][GB]}STR GP6={[GR][TA]}STR GP7={[GP6][GR]TA;GR;GP6}STR GP8={[3[GR]GB;GR][2GR][2GB]}
STR DD1={@25SUB{GG1}[16DM2]}STR DD2={@25SUB{GG1}[14DM2][16O1]}STR DD3={@25O3[127r][O4[31r]][O3[15r]][O3[7r]][O3;rrr][O3;r][4O1]}STR DD4={@25SUB{GG1}[15DM2]DM1;O1;r[O1]}
STR GGH={@26BR=20p%=4000EP.T(10,127,!1^1^1^1^1^1^1^1)[128'n38n40n59']@17BR=20p%=5000EP=127}
STR GGI={@17BR=20p%=4000EP.T(10,100,!1^1^1^1^1^1^1^1)[128'n38n40n59']@17BR=20p%=5000EP=127}STR GG1={[32[GR]GB;GR]}
TR=10l16DL=HAZ;BR=20p%=1800[3DD1:DD2]DD4;DL=BK1;BR=20p%=1800DD3;DL=BGN;BR=20p%=1800[DD1:DD4]DD2;DL=HZ2[3DD1:DD2]DD4;DL=BK3;BR=20p%=1800DD3;DL=BN2[DD1;DD2:DD1;DD4]l1n49^^
/*11*/TR=11l16V=127DL=HAZ@26BR=20p%=6000PL1;DL=ST0+8P=64GGH@26DL=BGN@26BR=20p%=6000PL1[3GG1]P=64GGI;DL=ST3+8P=64GGH@26PL1@26BR=20p%=6000DL=BN2;GG1;P=64GGI;DL=ST6+8P=64GGH
/*12*/STR PDH={@25[O3[5r]O5;O4[8r]O5[5r]O3;O5[8r]]}STR PD1={@26P.onCycle(!16,0,127)n27r[4DR]rr[3DR]l32[DR]l16[4DR]P=64}STR PD2={@26EP.T(20,127,!1^1^1)[48DR]}STR PD3={@33SUB{n49}[48r][3n51rrr]SUB{rrn57}[2n51r]SUB{n49}[48r][3n51rrr][2n51r]}STR PD3A={@25SUB{n49}[48r][3n51rrr]SUB{rrn57}[2n51r]SUB{n49}}
STR PD4={@26EP.T(40,100,!1)[8DR]l32[16DR]l16EP=127}STR PD5={@26[3DR;r][5DR]r[4DR]}STR PD6={@26[4DR;r][3DR]r[4DR]}STR PD7={@26BR=20p.T(127,32,!1)[8DR]l32[8DR]l16[4DR]p%=0}
STR PD8={@9BR=30p.T(32,100,!1)[16DR]p=64}STR PD9={@33BR=30p.T(110,32,!1)[8DR]l32[16DR]l16p=64}STR PD10={@26[3O2;r:[O1]]O2;rl32[8O1]l16@33}STR PD11={BR=20p.T(127,32,!1)[16n51]p=64}STR PD12={@26[4O2][4O1][O2][6O1]@17}
STR NSH={@17BR=20p%=4000EP.T(10,100,!1^1^1^1^1^1^1^1)[120'n38n40n59'][8r]@17BR=20p%=5000EP=127}STR NS1={[16rrrr'n38n40n59'rrr]}STR NS2={[15rrrr'n38n40n59'rrr]rrr[['n38n40n59']:r]}
TR=12l16DL=HAZ@17BR=20p%=6000[SUB{n49}NS2:SUB{n49}NS1]NS1;SUB{n49}DL=BK1+8BR=20p%=6000NSH;DL=BGN@17BR=20p%=6000[SUB{n49}[NS1]]DL=HZ2[SUB{n49}NS2:SUB{n49}NS1]NS1;SUB{n49}NS2;NS1;SUB{n49}DL=BK3+8BR=20p%=6000NSH;DL=BN2;SUB{n49}[NS1]DL=ST5[SUB{n49}NS2:SUB{n49}NS1]NS1;
/*13&14*/STR SSS={q=100EP=80BR=20p%=60If(CH==14){p%=-60}l4<@49SUB{d^^^^^d^g^^^a^^^b^^^^^`d^g^^^^^^^}[g^^^^^a^b^^^^^^^]>}
STR SST={q=100EP=90BR=20p%=60If(CH==14){p%=-60}l4@49SUB{d^^^^^d^g^^^a^^^b^^^^^`d^g^^^^^^^}[g^^^^^a^b^^^^^^^]}
STR SSU={q=100EP=90BR=20p%=60If(CH==14){p%=-60}l4@49SUB{d^^^^^d^g^^^a^^^b^^^^^`d^g^^^^^^^}HAM({[g^^^^^a^b^^^^^^^]})}
STR SSA={q=100EP=100BR=20p%=60If(CH==14){p%=-60}l4@103,2SUB{g^f#^e^d^c^d^e^^^f#^e^d^c^"b^c^d^^^}<"g^^^^^^^c^^^"a^^^"f#^^"g"a^d^"b^^^"g^^^>EP=127}
STR SSB={q=100EP=100BR=20p%=60If(CH==14){p%=-60}l4@103,1SUB{g^f#^e^d^c^d^e^^^f#^e^d^c^"b^^^^^^^}<"g^^^^^^^c^^^"a^^^d^^^^^^^"g^^^^^^^>EP=127}
STR SSH={q=100EP=100BR=20p%=70If(CH==14){p%=-70}l4@50SUB{g^f#^e^d^c^d^e^^^f#^e^d^c^"b^c^d^^^}<"g^^^^^^^c^^^^^^^d^^^^^^^"g^^^^^^^>EP=127}
STR SSI={q=100EP=100BR=20p%=70If(CH==14){p%=-70}l4@50SUB{g^f#^e^d^c^d^e^^^f#^e^d^c^"b^^^^^^^}<"g^^^^^^^c^^^^^^^d^^^^^^^"g^^^^^^^>EP=127}
STR SSG={l16EP=120q=150@37,0BR=20p%=70If(CH==4){BR=20p%=-70}q.T(0,150,!1^1^1^1^1^1^1^1^1^1^1^1^1^1^1^1)MD({`g^b`g^b`g^`f#^b`f#^b`f#^`e^b`e^b`e^`d^b`d^b`d^;`c^g`c^g`c^`d^g`d^g`d^[`e^g`e^g`e^]
`f#^a`f#^a`f#^`e^a`e^a`e^`d^a`d^a`d^`c^a`c^a`c^;b^gb^gb^`c^g`c^g`c^[`d^g`d^g`d^]},1,!8)@39,0
MD({`g^b`g^b`g^`f#^b`f#^b`f#^`e^b`e^b`e^`d^b`d^b`d^;`c^g`c^g`c^`d^g`d^g`d^[`e^g`e^g`e^]
`f#^a`f#^a`f#^`e^a`e^a`e^`d^a`d^a`d^`c^a`c^a`c^[b^gb^gbg]},1,!8)MD({[bbgbbgbg]},2,!16)}
STR SS1={l4@49q=100BR=20p%=70If(CH==14){p%=-70}l4SUB{g^f#^e^d^c^d^e^^^f#^e^d^c^"b^c^d^^^}<"g^^^^^^^c^^^^^^^d^^^^^^^"g^^^^^^^>}
STR SS2={l4@49q=100BR=20p%=70If(CH==14){p%=-70}l4SUB{g^f#^e^d^c^d^e^^^f#^e^d^c^"b^^^^^^^}<"g^^^^^^^c^^^^^^^d^^^^^^^"g^^^^^^^>}
STR STT={DL=HAZ+8SSS;SST;SSU;DL=ST1;>SSA;SSB<DL=BK1;SSG;DL=BGN;SS1;SS2>SSA;SSB<DL=HZ2+8SSS;SST;SSU;DL=ST4;>SSA;SSB<DL=BK2;SSH;SSI;DL=BK3;SSG;DL=BN2;SS1;SS2;SSU;SST}TR=13STT;TR=14;>STT;
/*15&16*/STR BGH={@123,3BR=40p.T(127,0,!1^1^1^1)If(CH==16){p%=-3000}l1c^^^}
STR BG1={@123,3BR=40If(CH==16){BR=50l64rp.T(127,800,!1^1^1^1)l1c^^^^^^^}Else{p.T(127,800,!1^1^1^1)l1c^^^^^^^}}
STR BG2={@128,2If(CH==16){l64r}l1BR=20p.T(0,127,!1^1^1^1,127,0,!1^1^1^1)FOR(INT A;A<100;A++){l(A+2)c}FOR(INT A;A<100;A++){l(100-A)c}p=64}STR BG3={@120,0If(CH==16){l64r}l4rq=80'cde'^^q=100}
STR BG4={@128,2If(CH==16){l64r}l1BR=20p.T(0,127,!1^1^1^1,127,0,!1^1^1^1)FOR(INT A;A<90;A++){l(A+2)c}FOR(INT A;A<90;A++){l(90-A)c}p=64}
STR BG5={V=127EP.T(100,127,!1^1^1^1^1^1^1)SUB{FOR(INT A=1;A<30;A++){l(A)p.T(127,0,!A)r}FOR(INT A=1;A<26;A++){l(30-A)p.T(127,0,!(30-A))r}l1}@123,3BR=40If(CH==16){BR=45l64rl1}l1`c^^^^^^V=100p=64}
STR BG6={If(CH==16){l64r}@126,8BR=40p.T(127,0,!1^1)l4'g'^^^^^^^p=64}
STR BBN={DL=HAZ-4BG2;DL=HAZ+15BG3;DL=ST0+15BG3;DL=ST1;BG6;DL=ST1+15BG3;DL=BK1;BG4;DL=BK1+8BG5;DL=BK1+15BG3;DL=BGN;BG6;DL=BGN+15BG3;DL=ST2;BG6;DL=ST2+12BG4;
DL=HZ2+15BG3;DL=ST3+15BG3;DL=ST4;BG6;DL=ST4+15BG3;DL=BK2+17BG3;DL=BK3;BG4;DL=BK3+8BG5;DL=BK3+15BG3;DL=BN2;BG6;DL=BN2+15BG3;DL=ST5;BG6;DL=ST5+15BG3;DL=ST6+15BG3;}TR=15BBN;TR=16BBN;