px8 / python cartridge version 1 __python__ import random def frange(start, stop, step): return [x*step+start for x in range(0,round(abs((stop-start)/step)+0.5001), int((stop-start)/step<0)*-2+1)] class Button(object): def __init__(self, x, y, w, h, color, text): self.x1 = x self.y1 = y self.x2 = x+w self.y2 = y+h self.color = color self.text = text self.clicked = False def draw(self): rectfill(self.x1, self.y1, self.x2, self.y2, self.color) px8_print(self.text, self.x1, self.y1+1, 2) def update(self, x, y): self.clicked = False if x >= self.x1 and x <= self.x2: if y >= self.y1 and y <= self.y2: self.clicked = True def is_click(self): return self.clicked class HelloWorld(object): def __init__(self): self.T = 0 def init(self): cls() def update(self): self.T += 1 def draw(self): cls() for i in range(1, 12): for j0 in range(0, 7): j = 7 - j0 col = 7 + j - 1 t1 = self.T + i * 4 - j * 2 x = cos(j0) * 5 y = 38 + j + cos(t1/50) * 5 pal(7, col) spr(16+i, 8+i*8+x, y) class Vortex(object): def __init__(self): self.t=0 self.freq=0.007 self.turn=0.003 self.r=0 self.col=[9,12,2,8] self.high=10 self.arms=15 self.wave=50 def reset(self): for i in range(1, 4): self.col[i]=rnd(15)+1 self.high=rnd(20)+10 self.wave=50+rnd(150) self.freq=(rnd(2)-1)/200 self.turn=(rnd(2)-1)/300 def init(self): cls() def update(self): if (btn (0)): self.turn = self.turn + 0.0005 if (btn (1)): self.turn = self.turn - 0.0005 if (btn (2)): if self.freq < 0.03: self.freq = self.freq + 0.001 if (btn (3)): if self.freq > -0.03: self.freq = self.freq - 0.001 if (btnp (4)): self.reset() self.arms = flr(rnd(20))+3 if (btnp (5)): self.reset() self.arms = rnd(20) def draw(self): cls() self.t = self.t - self.freq self.r = self.r + self.turn for i in range(1, 1500): z=(i/self.arms) pset(cos(z+self.r)*z+64, sin(z+self.r)*z/2+cos(z/self.wave+self.t)*self.high+64, (self.col[(flr(i/100)%4)])) class Sphere(object): def __init__(self): self.t=0 self.turn=0 self.rot=0.1 self.col=[0, 0, 0, 0, 0] self.arms=0.08 self.pts=1000 self.offset=0 def reset(self, r): for i in range(0, 5): self.col[i]=rnd(15)+1 self.arms=rnd(20) if r == 1: self.arms=flr(self.arms)+2 self.offset=rnd(self.pts*4)-self.pts*2 self.turn=(rnd(2)-1)/200 def init(self): self.reset(1) cls() def update(self): if btn(0): self.turn = self.turn + 0.001 if btn(1): self.turn = self.turn - 0.001 if btn(2): self.rot = self.rot + 0.01 if btn(3): self.rot = self.rot - 0.01 if btnp(5): self.reset(1) if btnp(4): self.reset(2) def draw(self): cls() self.t = self.t + self.turn self.t = self.t % 1 self.rot = self.rot % 1 for i in range(0, self.pts): j=i/self.arms r=sin(i/self.offset)*50 x=cos(j+self.t) y=sin(j+self.t) *sin(self.rot) z=cos(i/self.offset) *cos(self.rot)*50 pset(x*r+64,y*r+64+z, (self.col[(flr(i/100)%4)+1])) class Drippy(object): def __init__(self): self.x = 64 self.y = 64 self.c = 8 def init(self): cls() rectfill(0, 0, 127, 127, 1) def update(self): x = random.randint(0, 3) if x == 0: self.x -= 1 if x == 1: self.x += 1 if x == 2: self.y -= 1 if x == 3: self.y += 1 self.c = self.c + 0.1 if self.c >= 16: self.c = 8 for i in range(1, 100): x2 = random.randint(10, 110) y2 = random.randint(10, 110) col = pget(x2, y2) if col != 1: pset(x2, y2+1, col) def draw(self): pset(self.x, self.y, self.c) # see https://itch.io/t/65644/i-ported-a-nice-mini-demo-from-pico-8- class RadBot(object): def __init__(self): pass def init(self): self.T = 0 def update(self): pass def draw(self): cls() self.T += 1/9 r=map(lambda x: x/10.0,range(0,10)) for i in r: x = 64+cos(i+self.T)*48 y = 64+sin(i+self.T)*24 color = 12+y%4 circfill(x, y, y/12, color) px8_print("rad bot!", 40, 60, color) # see https://itch.io/t/69170/from-pico-8-to-tic-80-another-port-of-nice-mini-demo- class Ripple(object): def __init__(self): self.r=64 self.t=0 def init(self): self.T = 0 def update(self): pass def draw(self): cls() for y in range(-self.r,self.r,3): for x in range(-self.r,self.r,2): z=cos(sqrt(x*x+y*y*2)/40-self.t)*6 pset(self.r+x,self.r+y-z,6) self.t+=2/self.r # https://twitter.com/Huginn18/status/847155000027627528 class Tweetjam_0(object): def __init__(self): self.t=[0,0,0,0,0,0,0,10,5,6] self.c = 0 self.o = 127 def init(self): self.T = 0 cls() def update(self): pass def draw(self): for _ in range(0,3000): x = rnd(self.o) y = rnd(self.o) c = pget(x, y+rnd(2)) if rnd(self.o) < c: c = self.t[c-1] circ(x, y, 1.5, c) pset(y, self.o, 7) # https://twitter.com/imakecoolstuff/status/847177521783345155 class Tweetjam_1(object): def __init__(self): pass def init(self): self.c = 0 cls() def update(self): pass self.c+=1 def draw(self): l=64 u=.04 for x in range(-l,l): for y in range(-l,l): pset(x+l,y+l,bxor(cos(x*u)*5,sin(y*u)*5+self.c)) # https://twitter.com/imakecoolstuff/status/847387606568411136 class Tweetjam_2(object): def __init__(self): self.c = 0 self.u = 0 self.r = 0.01 self.s = 64 def init(self): self.T = 0 cls() def update(self): pass def draw(self): cls() self.u+=self.r for x in range(0,127): self.c+=self.r y=self.s*sin((x+self.c)*self.r) i=23*sin(self.u) line(x+i,self.s+y,x-i,self.s-y,x/4) # https://twitter.com/themorfeus/status/847357856659587073 class Tweetjam_3(object): def __init__(self): self.t=0 self.o=128 self.d=.001 def init(self): self.T = 0 cls() def update(self): pass def draw(self): for x in range(0, self.o): for y in range(0, self.o): if y != 0: pset(sin((x+self.t)*self.d)*self.o, cos((y+self.t)*self.d)*self.o,(x/y)+9) self.t+=1 # https://twitter.com/imakecoolstuff/status/847342717013114880 class Tweetjam_4(object): def __init__(self): self.u=63 self.c=0 def init(self): self.T = 0 cls() def update(self): pass def draw(self): for _ in range(0,1000): self.c+=1 t=self.c*.01 x=rnd(self.u) y=rnd(self.u) xp=x*cos(t)-y*sin(t) yp=y*cos(t)+x*sin(t) pset(self.u+xp,self.u+yp,sin((x+y)*.01)*15) # https://twitter.com/lexaloffle/status/848437410102878208 class Tweetjam_5(object): def __init__(self): self.t=0 def init(self): cls() def update(self): pass def draw(self): cls() r=64 for y in range(-r,r,2): for x in range(-r,r,3): z=cos(x/r+self.t)*3+cos(y/r+self.t/3)*3 pset(r+x-y/2,r+y/2+x/4-z,11+z/2) self.t+=1/r # https://twitter.com/TRASEVOL_DOG/status/791405685829427200 class Tweetjam_6(object): def __init__(self): self.t = 0 def init(self): cls() self.a = 0x0 self.b = 0x2000 def update(self): pass def draw(self): if rnd(9999)<1: l = rnd(0x800) memset(self.a+rnd(self.b-l),rnd(256),l) else: l=rnd(0x100) memcpy(self.a+rnd(self.b-l),self.a+rnd(self.b-l),l) # https://twitter.com/lexaloffle/status/849083097371070464 class Tweetjam_7(object): def __init__(self): pass def init(self): cls() self.t = 0 def update(self): pass def draw(self): cls() i = 3 while i < 10: c=cos x=64+i*5*c(i) y=64+i*9*sin(i) line(x,y,x+c(i*2+self.t)*30,y+c(i*3+self.t/2)*19,4+i) i += 0.01 self.t+=0.01 # https://twitter.com/RedzThief/status/848986167999639552 class Tweetjam_8(object): def __init__(self): pass def init(self): cls() self.z = 64 def update(self): pass def draw(self): for _ in range(0,1000): t=2.4+sin(px8_time()/5)*2 j,k=t*18,rnd(1) circfill(rnd(192),rnd(192),1,1) circfill(self.z+cos(k)*j,self.z+sin(k)*j,t*2,t*3+k*3) class Tweetjam_9(object): def __init__(self): pass def init(self): cls() self.z = 64 def update(self): pass def draw(self): for _ in range(0,5000): x=rnd(128) y=rnd(128) c=pget(x,y-rnd(1)) if(y<1): c=8+rnd(6) circfill(x,y,1,c) # https://twitter.com/imakecoolstuff/status/847931676697219072 class Tweetjam_10(object): def __init__(self): pass def init(self): cls() self.z = 128 self.c = 0 def update(self): pass def draw(self): l=1.3 for _ in range(0, 1000): self.c+=0.00002 x=rnd(self.z) y=rnd(self.z) pset(x,y,7+(self.c+(sin(x*.05)*l)+(sin(y*.05)*l))%8) # https://twitter.com/TheSparrowHunt/status/847353300248707074 class Tweetjam_11(object): def __init__(self): pass def init(self): cls() self.s = 0 def update(self): pass def draw(self): for x in range(0, 128, 8): for y in range(0, 128, 8): rect(x-self.s/2, y-self.s/2, x+self.s/2, y+self.s/2, self.s%7+7) self.s+=1 if self.s > 16: self.s = 0 # https://twitter.com/guerragames/status/849046571908030464 class Tweetjam_12(object): def __init__(self): pass def init(self): cls() self.c = 64 self.t = 1 def update(self): if self.t > 3.5: self.t = 1 def draw(self): cls() for y in frange(self.t,self.t+1,2/self.c): for x in frange(self.t,self.t+1,3/self.c): w=40+20*cos(x) pset(self.c+w*cos(y),self.c+w*sin(y)/2+40*sin(x),self.t*x) self.t+=.01 # https://twitter.com/TRASEVOL_DOG/status/848656498834239488 class Tweetjam_13(object): def __init__(self): pass def init(self): cls() def update(self): pass def draw(self): for _ in range(0, 1000): x = rnd(128) y = rnd(128) a=atan2(x-64,y-64)-cos(px8_time()/10)+.5 c=pget(x+3*cos(a),y+3*sin(a)) circ(x,y,1,(c+rnd(1.05))%8+8) # https://twitter.com/topkeki69/status/850029638843854850 class Tweetjam_14(object): def __init__(self): pass def init(self): cls() self.t = 0 def update(self): pass def draw(self): cls() self.t += 1 for x in range(0,127): a=sin(x/44+self.t/50) b=sin(x/32+self.t/70) pset(x,20+8*a,8) pset(x,100+8*b,8) pset(x,63+8*(a+b),12) # https://twitter.com/imakecoolstuff/status/849950317001273344 class Tweetjam_15(object): def __init__(self): pass def init(self): cls() self.t=0 self.z=0 self.l=16 def update(self): pass def draw(self): x=self.l*(sin(self.t/3)+1) self.t+=.01 r=self.l*(1+sin(self.t*2)) self.z+=1 for k in range(-2,2): for l in range(-2,2): circfill(64+x*k,64+x*l,r,self.z%8+7) # https://twitter.com/lexaloffle/status/850776046467035136 class Tweetjam_16(object): def __init__(self): pass def init(self): cls() self.r=64 self.t=self.r def update(self): pass def draw(self): cls() for y in range(-self.r,self.r,5): for x in range(-self.r,self.r,5): d=x+y q=x/self.r+self.t/9 z=cos(q)*y+5*cos(d/self.r+self.t) circ(self.r+z,self.r+sin(q)*y,1,q) self.t+=2/self.r # https://twitter.com/adam_sporka/status/851181799879434244 class Tweetjam_17(object): def __init__(self): pass def init(self): cls() self.c=0 self.l=8 def update(self): pass def draw(self): a=self.c self.c=(self.c+flr(rnd(16))*2)%128 for x in range(a,self.c,3): rect(x,x,self.c,self.c,self.l+1) rect(126-x,x,126-self.c,self.c,self.l+1) self.l=(self.l+1)%15 # https://twitter.com/adam_sporka/status/851922691405881344 class Tweetjam_18(object): def __init__(self): pass def init(self): cls() self.a=0 def update(self): pass def draw(self): cls() for x in range(0,127): y=0 for i in range(1,15): y+=cos(2*self.a*i)*sin(self.a*i+i*x/127) pset(x,64+y*12,15-i) self.a+=1/240/2 # https://twitter.com/guerragames/status/852712760014249984 class Tweetjam_19(object): def __init__(self): pass def init(self): cls() self.t=0 def update(self): pass def draw(self): self.t+=.05 cls() for a in frange(0.001,1,0.001): b=a*self.t e=b-a-self.t x=sin(b)+sin(e/2) y=cos(b)+cos(e/2) circfill(64+4*x/a,64+4*y/a,1,16*a) # https://twitter.com/guerragames/status/859226718225268741 class Tweetjam_20(object): def __init__(self): pass def init(self): cls() self.t=0 self.s=32 def update(self): pass def draw(self): cls() self.t+=.01 for y in range(-self.s,self.s,2): for x in range(-self.s,self.s,2): q=x+y+64 circfill(q+16*cos(y/64+self.t),q+16*cos(x/64+self.t),3,5+x*y%16) # https://twitter.com/guerragames/status/859191654678499328 class Tweetjam_21(object): def __init__(self): pass def init(self): cls() self.t=0 self.s=64 def update(self): pass def draw(self): cls() self.t+=.01 for y in range(-self.s,self.s,3): for x in range(-self.s,self.s,2): pset(self.s+x+16*cos(y/self.s+self.t)+y,self.s+y+16*sin(x/self.s+self.t)+x,7+x/8%8) def sqr(a): return a*a # http://www.lexaloffle.com/bbs/?tid=28308 class Metaballs(object): def __init__(self): pass def init(self): cls() self.t = 0 def update(self): pass def draw(self): self.t+=0.01 x1=64+128*cos(self.t/4) y1=64+16*sin(self.t) x2=64-128*cos(self.t/4) y2=64-16*sin(self.t) for i in range(0, 999): x=rnd(128) y=rnd(128) l1=sqr((x-x1)/128)+sqr((y-y1)/128) v1=sqr(1-l1) l2=sqr((x-x2)/128)+sqr((y-y2)/128) v2=sqr(1-l2) v=v1+v2 circ(x,y,1,min(v,1)*15.999) idx_demo = 0 demos = [ ["Hello", [HelloWorld()]], ["Sphere", [Sphere()]], ["Vortex", [Vortex()]], ["Drippy", [Drippy()]], ["RadBot", [RadBot()]], ["Ripple", [Ripple()]], ["Tweetjam_0", [Tweetjam_0()]], ["Tweetjam_1", [Tweetjam_1()]], ["Tweetjam_2", [Tweetjam_2()]], ["Tweetjam_3", [Tweetjam_3()]], ["Tweetjam_4", [Tweetjam_4()]], ["Tweetjam_5", [Tweetjam_5()]], ["Tweetjam_6", [Tweetjam_6()]], ["Tweetjam_7", [Tweetjam_7()]], ["Tweetjam_8", [Tweetjam_8()]], ["Tweetjam_9", [Tweetjam_9()]], ["Tweetjam_10", [Tweetjam_10()]], ["Tweetjam_11", [Tweetjam_11()]], ["Tweetjam_12", [Tweetjam_12()]], ["Tweetjam_13", [Tweetjam_13()]], ["Tweetjam_14", [Tweetjam_14()]], ["Tweetjam_15", [Tweetjam_15()]], ["Tweetjam_16", [Tweetjam_16()]], ["Tweetjam_17", [Tweetjam_17()]], ["Tweetjam_18", [Tweetjam_18()]], ["Tweetjam_19", [Tweetjam_19()]], ["Tweetjam_20", [Tweetjam_20()]], ["Tweetjam_21", [Tweetjam_21()]], ["Metaballs", [Metaballs()]], ] buttons = [] buttons.append(Button(110, 110, 16, 8, 9, "next")) buttons.append(Button(90, 110, 16, 8, 9, "prev")) def _init(): global demos, idx_demo cls() show_mouse(True) for demo in demos[idx_demo][1]: demo.init() def prev_demo(): global idx_demo, demos idx_demo = (idx_demo-1) % len(demos) pal() for demo in demos[idx_demo][1]: demo.init() def next_demo(): global idx_demo, demos idx_demo = (idx_demo+1) % len(demos) pal() for demo in demos[idx_demo][1]: demo.init() def _update(): global idx_demo, demos, buttons _mouse_state = mouse_state() if _mouse_state == 1: _mouse_x = mouse_x() _mouse_y = mouse_y() for button in buttons: button.update(_mouse_x, _mouse_y) if button.is_click(): if button.text == "next": next_demo() else: prev_demo() for demo in demos[idx_demo][1]: demo.update() def _draw(): global idx_demo, demos, buttons for demo in demos[idx_demo][1]: demo.draw() for button in buttons: button.draw() px8_print("Demos " + demos[idx_demo][0], 0, 120, 2) __gfx__ 10000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 00000000088088000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 00000000888887800000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 00000000888888800000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 00000000088888000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 00000000008880000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 00000000000800000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 00000000077007700777777007700000077000000777777000000000770007700777777007777770077000000777700000000000000000000000000000000000 00000000077007700770000007700000077000000770077000000000770007700770077007700770077000000770077000000000000000000000000000000000 00000000077007700770000007700000077000000770077000000000770707700770077007700770077000000770077000000000000000000000000000000000 00000000077777700777700007700000077000000770077000000000777777700770077007777000077000000770077000000000000000000000000000000000 00000000077007700770000007700000077000000770077000000000777077700770077007700770077000000770077000000000000000000000000000000000 00000000077007700777777007777770077777700777777000000000770007700777777007700770077777700777777000000000000000000000000000000000 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 __gff__ 0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 __map__ 0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 __sfx__ 0110000000472004620c3400c34318470004311842500415003700c30500375183750c3000c3751f4730c375053720536211540114330c37524555247120c3730a470163521d07522375164120a211220252e315 01100000183732440518433394033c65539403185432b543184733940318433394033c655306053940339403184733940318423394033c655394031845321433184733940318473394033c655394033940339403 01100000247552775729755277552475527755297512775524755277552b755277552475527757297552775720755247572775524757207552475227755247522275526757297552675722752267522975526751 01100000001750c055003550c055001750c055003550c05500175180650c06518065001750c065003650c065051751106505365110650c17518075003650c0650a145160750a34516075111451d075113451d075 011000001b5771f55722537265171b5361f52622515265121b7771f76722757267471b7461f7362271522712185771b5571d53722517187361b7261d735227122454527537295252e5171d73514745227452e745 01100000275422754227542275422e5412e5452b7412b5422b5452b54224544245422754229541295422954224742277422e7422b7422b5422b5472954227542295422b742307422e5422e7472b547305462e742 0110000030555307652e5752b755295622e7722b752277622707227561297522b072295472774224042275421b4421b5451b5421b4421d542295471d442295422444624546245472444727546275462944729547 0110000000200002000020000200002000020000200002000020000200002000020000200002000020000200110171d117110171d227131211f227130371f2370f0411b1470f2471b35716051221571626722367 001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002e775000002e1752e075000002e1752e77500000 001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 __music__ 00 00044208 00 00044108 00 00010304 00 00010304 01 00010203 00 00010203 00 00010305 00 00010306 00 00010305 00 00010306 00 00010245 02 00010243 00 41424344 00 41424344 00 41424344 00 41424344 00 41424344 00 41424344 00 41424344 00 41424344 00 41424344 00 41424344 00 41424344 00 41424344 00 41424344 00 41424344 00 41424344 00 41424344 00 41424344 00 41424344 00 41424344 00 41424344 00 41424344 00 41424344 00 41424344 00 41424344 00 41424344 00 41424344 00 41424344 00 41424344 00 41424344 00 41424344 00 41424344 00 41424344 00 41424344 00 41424344 00 41424344 00 41424344 00 41424344 00 41424344 00 41424344 00 41424344 00 41424344 00 41424344 00 41424344 00 41424344 00 41424344 00 41424344 00 41424344 00 41424344 00 41424344 00 41424344 00 41424344 00 41424344