experiments-pico8/games/toomgis.p8
2023-04-16 15:13:45 -05:00

953 lines
48 KiB
Lua
Raw Permalink Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

pico-8 cartridge // http://www.pico-8.com
version 41
__lua__
function _init()
start_ampm()
--start_level(3)
end
function _draw()
cls()
if state == "ampm" then
ampm_draw()
elseif state == "level" then
level_draw()
-- DEBUG
-- print("px="..px.." vx="..vx, 0, 120, 7)
elseif state == "gameover" then
gameover_draw()
elseif state == "winscreen" then
winscreen_draw()
elseif state == "explainer" then
explainer_draw()
end
end
function _update()
if state == "ampm" then
ampm_upd()
toomgis_upd()
elseif state == "level" then
toomgis_upd()
level_upd()
elseif state == "gameover" then
gameover_upd()
elseif state == "winscreen" then
winscreen_upd()
elseif state == "explainer" then
explainer_upd()
end
end
function sprm(n, x, y, w, h)
-- mirrored sprite draw
spr(n, x, y, w, h)
spr(n, x+w*8, y, w, h, true)
end
-->8
-- ampm logo
function start_ampm()
state = "ampm"
music(0)
ampm_t = 0
px = 0
py = 0
vx = 0
vy = 0
yacc = 0
for i=2, 14 do
add2body(i)
add2body(i)
add2body(i)
add2body(i)
end
end
function ampm_draw()
local tx = 300 - ampm_t
local fx = 78
toomgis_draw(tx, 50)
fx = min(tx, 78)
shift = max(ampm_t - 64, 0)
width = max(128 - shift, 64)
if width > tx then
width = tx
end
for y=0,min(ampm_t, 64) do
tline(0, 64-y, width, 64-y,
0, (64-y)/64, 2/width, 0)
tline(0, 64+y, width, 64+y,
0, (64+y)/64, 2/width, 0)
end
if ampm_t > 120 then
print("presents", fx, 20, 13)
end
if ampm_t > 150 then
print("toomgis", fx, 30, 12)
end
if ampm_t > 180 then
print("in", fx, 80, 13)
end
if ampm_t > 210 then
print("rise of",
fx, 90, 12)
print("toomgis", fx, 100, 12)
end
end
function ampm_upd()
ampm_t += 1
if ampm_t > 350 then
start_explainer()
ampm_t = 0
end
tangle -= 0.02
if btnp() then
start_explainer()
end
end
-->8
-- toomgis
tangle = 0
tbody = {} -- array of items in body
last_guitar = 0
do_guitar_reset = false
GOAL = 100
MAX_PIECES = 200
GUITAR_DELAY = 0.2 -- time before clearing items
GUITAR_DURATION = 0.5
GUITAR_COOLDOWN = 2
function toomgis_radius()
return 8 + (#tbody / MAX_PIECES) * 40
end
function add2body(n)
if #tbody < MAX_PIECES then
add(tbody, {n=n, r=toomgis_radius() + rnd(9), off=rnd(4), ejecting=false})
end
end
function hitbody()
local ejected = 0
for piece in all(tbody) do
if rnd() < 0.15 then
piece.ejecting = true
ejected += 1
end
end
end
function toomgis_draw(x, y)
shadow_pal()
for i=1,#tbody do
-- rotate drawing order
local bs = tbody[(i+flr(tangle)) % #tbody + 1]
spr(bs.n,
x+5+bs.r*sin(tangle+bs.off),
y+5+bs.r*cos(tangle+bs.off)
)
end
pal()
for i=1,#tbody do
-- rotate drawing order
local bs = tbody[(i+flr(tangle)) % #tbody + 1]
spr(bs.n,
x+4+bs.r*sin(tangle+bs.off),
y+4+bs.r*cos(tangle+bs.off)
)
end
sprm(0, x, y, 1, 2)
end
function toomgis_upd()
tangle += vx * 0.01
px += max(vx, min_speed)
py = max(0, py+vy)
if px >= 10000 then
px = 0
reset_items(5)
end
vy += yacc
local to_remove = {}
for idx, piece in pairs(tbody) do
if piece.ejecting then
piece.r += 5
if piece.r > 90 then
add(to_remove, idx)
--piece.ejecting = false
end
end
end
for i = #to_remove, 1, -1 do
deli(tbody, to_remove[i])
end
end
-->8
-- level
levels = {
{
mapy=1,
maph=4,
bad_item_ratio=0.07,
unit="CM",
time=120,
next=2,
},
{
mapy=5,
maph=4,
bad_item_ratio=0.10,
unit="M",
time=180,
next=3,
},
{
mapy=9,
maph=6,
bad_item_ratio=0.15,
unit="KM",
time=180,
next=nil,
}
}
horizon = 64
min_speed = 1
max_speed = 5
throttle = 1
function start_level(n)
state = "level"
music(-1, 1000)
-- toomgis reset
tbody = {}
px = 0
py = 0
vx = min_speed
vy = 0
yacc = 0
streak = 0
warnings = 0
-- level reset
lvl = levels[n]
lvl_end_time = time() + lvl.time
reset_items(5)
-- initial items on screen
for item in all(items) do
-- all good
item.n = flr(rnd(12)+2)
item.x = 30 + rnd(80)
item.y = rnd(90) + 5
end
end
function reset_items(n)
items = {}
for i=0,n do
add(items, {x=0, y=0, n=0})
end
end
max_text = 0
function fancy_background()
local cx1 = 20
local cx2 = 108
local cy = 40
-- for a=0,120,10 do
-- line(0, a, 128, a, 11)
-- line(a, 0, a, 128, 11)
-- end
cls(0)
for i=0,8 do
local x = 20*cos((i+t())/8)
local y = 30*sin((i+t())/8)
line(cx1+x, cy+y, cx2+x, cy-y, 9)
end
max_text = max(max_text, #tbody)
if max_text > 60 then
print("OK toomgis", 40, 70, 9)
end
if max_text > 80 then
print("YOU HAVE our ATTENTION", 10, 78, 9)
end
if max_text > 100 then
print("finish your snack", 30, 86, 9)
if #items < 10 then
reset_items(20)
lvl.bad_item_ratio = 0
end
end
if max_text > 110 then
print("AND THEN we WILL SHOW YOU", 10, 94, 9)
end
if max_text > 130 then
print("entire worlds in need", 40, 102, 9)
end
if max_text > 150 then
print("of a fresh start", 40, 110, 9)
end
end
function level_bg(unit)
if unit == "CM" then
cls(7)
elseif unit == "M" then
if px < 2000 then
cls(12)
elseif px < 4000 then
cls(140)
elseif px < 6000 then
cls(2)
else
cls(1)
end
else
if #tbody < 50 then
cls(1)
else
fancy_background()
return -- do not draw map anymore
end
end
-- each level is 4tl/32px
--- zoom should go from 16 to 1 w/ growth
local zoom = 16 - (15 * -sin(#tbody / MAX_PIECES / 4))
local h=lvl.maph * 8 * zoom
for y=0,h do
tline(0, 128-h+y, 128, 128-h+y, -- screen coordinates (entire screen scanlines)
px/100, lvl.mapy+y/(8*zoom), 1/(8*zoom), 0)
-- don't scale x start with zoom, since position is not dependent
end
end
function level_draw()
level_bg(lvl.unit)
toomgis_draw(20, 96-py)
-- percentage of way through guitar duration
local gdp = (time() - last_guitar) / GUITAR_DURATION;
if gdp < 1 then
circ(20, 104-py, 16+(gdp*100), 11)
circ(20, 104-py, 16+(gdp*75), 11)
circ(20, 104-py, 16+(gdp*50), 11)
circ(20, 104-py, 16+(gdp*25), 11)
end
if (time() - last_guitar) < GUITAR_COOLDOWN then
spr(35 + time()*2%4, 19, 104-py)
spr(35 + time()*4%4, 25, 104-py)
end
spr(33, 20, 104-py, 2, 2)
-- draw item shadows
shadow_pal()
for item in all(items) do
if item.n != 0 then
spr(item.n, item.x-px+1, item.y+1)
end
end
-- reset
pal()
for item in all(items) do
if item.n != 0 then
spr(item.n, item.x-px, item.y)
-- collider
-- circ(item.x-px+4, item.y+4, 4, 8)
-- stink
if item.n > 16 then
draw_stink(item.x-px, item.y)
end
end
end
-- hud
local streak_str = streak2mult()
if streak_str == 1 then
streak_str = ""
else
streak_str = streak_str.."X"
end
rectfill(0, 0, 128, 8, 2)
print("SIZE "..#tbody..lvl.unit.." "..streak_str.." ", 1, 1, 9)
print(time_left().."S", 60, 1, 9)
print("GOAL "..GOAL..lvl.unit, 88, 1, 9)
end
function time_left()
return flr(max(0, lvl_end_time-time()))
end
function streak2mult()
if streak > 20 then
return 3
elseif streak > 5 then
return 2
else
return 1
end
end
function draw_stink(x, y)
local step = flr(2*time()) % 3 - 1
line(x+1, y-2, x+1 + step, y-7, 3)
line(x+3, y-2, x+3 + step, y-7, 3)
line(x+6, y-2, x+5 + step, y-7, 3)
end
function level_upd()
-- check timer and state
if time_left() < 10 and warnings == 0 then
sfx(7)
warnings += 1
elseif time_left() < 5 and warnings == 1 then
sfx(7)
warnings += 1
elseif time_left() <= 0 then
if #tbody < GOAL then
start_gameover()
elseif lvl.next != nil then
sfx(11)
start_level(lvl.next)
else
start_winscreen()
end
end
if #tbody == MAX_PIECES and warnings < 2 then
-- advance time
sfx(11)
lvl_end_time = time() + 3
warnings = 2
end
-- jump
if btnp() and py == 0 then
yacc = 6
elseif py > 0 then
yacc = -1
elseif py == 0 and yacc < 0 then
-- on ground
yacc = 0
vy = 0
end
if btn() then
vx = min(vx + 0.01, max_speed)
end
-- if btnp(⬆️) then
-- start_level(lvl.next)
-- end -- DEBUG
-- guitar
local guitar_elapsed = time() - last_guitar
if btnp(🅾) and guitar_elapsed > GUITAR_COOLDOWN then
last_guitar = time()
-- now with three amazing jams
sfx(rnd({14,15,16}))
do_guitar_reset = true
elseif (guitar_elapsed > GUITAR_DELAY) and do_guitar_reset then
reset_items(5)
do_guitar_reset = false
end
-- check for falling off back of screen and player collision
for item in all(items) do
if item.x < (px-20) then
item.n = 0
end
local d = dist(20+8, 96-py+8, item.x+4-px, item.y+4)
if d < toomgis_radius() and item.n != 0 then
-- item collision
if item.n > 16 then
sfx(5)
hitbody()
streak = 0
vx = max(vx - 1, min_speed)
else
local mult = streak2mult()
sfx(6, -1, 0, 4*mult)
for i=1,mult do
add2body(item.n)
end
streak += 1
vx = min(vx + 0.1*mult, max_speed)
end
item.n = 0
end
end
-- add item if inactive (chance increases as more slots inactive)
to_check = rnd(items)
if to_check != nil and to_check.n == 0 then
-- good items 2-14, bad items 18-30
if rnd() < lvl.bad_item_ratio then
to_check.n = flr(rnd(12)+18)
else
to_check.n = flr(rnd(12)+2)
end
to_check.x = px + 128 + rnd(100)
to_check.y = rnd(80) + 10
end
end
-->8
-- utils
function dist(x0,y0,x1,y1)
-- scale inputs down by 6 bits
local dx=(x0-x1)/64
local dy=(y0-y1)/64
-- get distance squared
local dsq=dx*dx+dy*dy
-- in case of overflow/wrap
if(dsq<0) return 32767.99999
-- scale output back up by 6 bits
return sqrt(dsq)*64
end
function shadow_pal()
for i=0,16 do
pal(i, 1)
end
end
function tech_pal()
pal(0, 3)
pal(1, 3)
pal(2, 3)
pal(4, 3)
pal(5, 3)
pal(6, 11)
pal(7, 11)
pal(8, 3)
pal(9, 11)
pal(10, 11)
pal(12, 11)
pal(13, 3)
pal(14, 11)
pal(15, 11)
end
-- gameover
function start_gameover()
state = "gameover"
py = 0
px = 64
tbody = {}
music(4)
for i=18,26 do
add2body(i)
add2body(i)
add2body(i)
end
end
function gameover_draw()
cls(1)
toomgis_draw(px, py)
shadow_pal()
sprm(32, px+1, py+13, 1, 2)
pal()
sprm(32, px, py+12, 1, 2)
-- gritpy
sprm(15, px-20, py-70, 1, 4)
-- grimace is backwards
spr(64, px+30, py-85, 2, 4)
spr(64, px+30-16, py-85, 2, 4, true)
print("WE RUN THIS TOWN", px-45, py-80, 9)
print("CRUSH HIM", px+20, py-95, 2)
print("GAME OVER", 50, py-110, 8)
end
function gameover_upd()
px += rnd(2) - 1
py += 0.3
if py > 200 then
start_gameover()
end
end
-- winscreen
function start_winscreen()
music(0)
state = "winscreen"
px = 64
py = -100
tbody = {}
for i=2,18 do
add2body(i)
add2body(i)
add2body(i)
add2body(i)
end
for i=129,190 do
add2body(i)
end
end
function winscreen_draw()
cls(1)
toomgis_draw(px, py)
-- gritty
sprm(15, px-20, py+70, 1, 4)
-- grimace is backwards
spr(64, px+30, py+85, 2, 4)
spr(64, px+30-16, py+85, 2, 4, true)
print("WE REGRET EVERYTHING", px-45, py+60, 9)
print("I REPENT", px+20, py+75, 2)
print("YOU WIN", 50, py-60, 8)
print("TOOMGIS WILL RETURN", 20, py-100, 8)
end
function winscreen_upd()
py += 0.5
end
function start_explainer()
state = "explainer"
scene_start = time()
tbody = {}
end
function explainer_draw()
cls(2)
rectfill(0, 40, 128, 80, 0)
print("snacks make toomgis big and fast", 1, 1, 9)
for n=0,14 do
local ix = 10*n
spr(n+2, ix, 20+10*sin(t()+n/14))
local iy = 100+10*cos(t()+n/14)
spr(n+18, ix, iy)
draw_stink(ix, iy)
end
toomgis_draw(50, 42)
spr(33, 50, 50, 2, 2)
print("stinky makes toomgis upset", 7, 120, 9)
print("❎ jump\n➡️ accel\n🅾️ shred", 5, 52)
print(" grow 100X\n to clear\n 200X to skip", 70, 52)
end
function explainer_upd()
if time() - scene_start > 10 then
start_level(1)
end
if btnp() then
start_level(1)
end
end
--
__gfx__
000022220000000000444400000ee000aaaaaaaa0000000000555500045454000099990000087000000000000cccccc00077700000000a0000ffff0000005555
000222220000000004eee440009ea9000aa77aa0060000000088880004545400099999900007400009f9f9f0cc1111cc06444660000a0a000fff4ff000055555
00224444000000004e444e44009ae9000aa778a000666600008ff800055555000aaaa8a00044470099999999c1111f1c064446660a0aaaa0ff4ff4ff00055555
00224554000000004e4004e4009aa9000a8888a00088880000ffff0004545400088aaaa000477700aaaaaaaac1f1ff1c0644460600aaaa004fffffff00099999
00225c74000000004e4004e4009ae9000a877aa00087870000f44f0004545400008aa80000ffff004a444a44c1ff111c0644466600888880fff4ff4f00099999
022247440000000044e444e4009ea9000aaaaaa000787800008ff8000555550000aa880000ffff00bbb88abbc1fff11c0644466000899880f4ffffff00997799
0222244400000000044eee40009ae9000aaaaaa0008787000088880004545400000aa000000ff00099998999cc1111cc06644600008989800ff4f4f000977779
022224770000000000444400000ee00000aaaa000088880000088000045454000008a000000ff000099999900cccccc0006666000008880000ffff0009977079
02202944000000000006000000333300000033000000000000033000000330000003300000000000000000000033330000000330000030000033330009997799
202029990000000000666660030330300000033000330300023333300099990003333330000000300333333003ffff300030330000023300033ee33009999999
20202099000000000063336030300303000999330000300022233320099a9a90033bb33000000b300377773003ffff30000330000002220033eeee3309999999
202024090000000000633360030330300099990300888800023202229999999933bbbb330000b330037997300333333000030000002222003edeede30a990000
2020404f00000000006333600330033000999900088888800322232099999a9933bbbb33000b3300037997300333333000222000002222003eeeeee30a999000
0020040f00000000006333600003300009999000088888800202020099999999333bb33300b330000377773003333330022222000022220033edee330aaa9999
0000000000000000006333600003300099900000088888802220222009999990033333300333000003333330033333300022200000222200033ee33000aa9999
00000000000000000006660000033000990000000088880002000200009999000030030000000000000000000033330000020000000220000033330000aaaaaa
00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001000000000000000000aaaaaa
00000000000000000000064400000000000000000000000000008800099999099099099000000000000000000000000000000011000000000000000000a0aaaa
07000777000000000000644400000000000008800000000000008a8899909909999999900000000000000000000000000000011100000000000000000000aaaa
00707700000000000000445400000008000008a800000008000088a8999099099099099000000000000000000000000000001111000000000000000000009aaa
00070777000000000004454600000088000008aa08888808000008a888808808808808800000000000000000000000000000066600000000000000000009999a
0007770000000000004454000000008a0000008a008aa88a008888a80880880880880880000000000000000000000000000006b6000000000000000000999999
000777770000000bb4454000000888aa000888aa0088aaaa08aaaaaa008888088088088800000000000000000000000000000166000000000000000009999999
0000700000000bbbb554000000008aaa00008aaa00088aaa0088aaaa000000000000000000000000000000000000000000000016000000000000000009999999
00007777000bbbbb5b54000000000000000000000000000000000000000000000000000000000000000000000000000000111001000000000000000099999999
000000070bbbb77575bb000000000000000000000000000000000000022220022022022000000000000000000000000006611111000000000000000099999999
00000077bbbb775757bb000000000000000000000000000000000000020222022222222000000000000000000000000000001111000000000000000099999999
00000770bbbbbbb577bb000000000000000000000000000000000000020222022022022000000000000000000000000000011111000000000000000099999999
00000070000000b77bb0000000000000000000000000000000000000011110011011011000000000000000000000000000111111000000000000000099999999
00000700000000b7bb00000000000000000000000000000000000000011000011011011000000000000000000000000000111111000000000000000099999999
00007700000000bbb000000000000000000000000000000000000000011000011011011100000000000000000000000000111111000000000000000099999999
00077000000000bb0000000000000000000000000000000000000000011000000000000000000000000000000000000000000440000000000000000009999999
22000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
22200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
22220000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
22222000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
22722200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
27772220000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
20072222000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
22022222200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
22222222220000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
00222222222000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
00222222222200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
22222222222200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
22222222222200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
22222222222220000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
22222222222222000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
22222222222222200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
22222222222222200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
22222222222222200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
22222222222222200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
22222222222222200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
22222222222222200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
22222222222222200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
22222222222222200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
22222222222222200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
22222222222222200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
22222222222222000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
22222222222220000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
22222222222200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
22222222222000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
00222000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
00222000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
00222000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
00222220544444445666666656666666566666665666666656666666066666660005500000000000000000000000000000000000000000000000000000000000
0022222054a4a4a456aa6aa656aa65565666666656556aa656556aa6565555560056650000000000000000000000000000000000000000000007700000000000
0000000054444444566666665666666656666666566666665666666656555556056666500000000000000000000000000000000000000000007dd70000000000
0000000054a4a4a456aa6aa656aa6aa6566666665655655656aa65565655555600566500000000000000000000000000000000000000000007dddd7000000000
0000000054444444566666665666666656666666566666665666666656555556000550000000000000000000000000000000000000000000dddddddd00000000
0000000054a444a45666666656aa6aa65666666656556aa656aa655656555556005665000000000000000000000000000000000000000000dddddddd00000000
0000000054445444566656665666666656666666566666665666666656555556005665000000000000000000000000000000000000000000dddddddd00000000
00000000bbbbbbbbbbbbbbbb56aa6aa65666666656aa655656aa655656666666055665500000000000000000000000000000000000000000dddddddd00000000
00000000000000000004400000044000000443330004400000044000000330000004400000044000000330000004400000044000000000000000000000000000
0000000000000000000440000004400000044433003433000334433000333300400440000334433000333000000440000033430000000000000dd00000000000
000000000000000000044000330440000004403303333330033333300033330004444000003333000033300033344000000333000000000000dddd0000000000
00000000000000000004400034444033000440000333333000044000033333300404400000044000033333333334400400044000000000000dddddd0ddddd000
0000000000000000000440003304433300044000033333330333333003333330000440040034430003333330030444400334433000000ddddddddddddddddd00
00000000000440000004400000044433000433303334433300044000333333330004444000033000000340000004400003333330000dddddddddddddddddddd0
000000000004400000044000000440000004433033343333033333303333333300044000000440000033400000044000003333000ddddddddddddddddddddddd
00000000bbbbbbbbbbbbbbbb00044000000440000033400000044000000440000004400000044000003440000004400000044000dddddddddddddddddddddddd
00000000000000000000000000000000030000000000000000333300000000000000000000000000000000000000000000600000566666660000000000000000
00000000000000000000000000044000333000000099990033333830066666600044440000000000000007000000000006860000566666660000000000000000
000000000000000000000000004444000400000009aaaa903834333006655660044444400000eee0000076700000000008880000566666660000000000000000
00000000000000000000000004dddd40333000000acaaca00334383006566560055555500000ece0000076700001100008886660566666660000000000000000
0000000000000000000000004dddddd4040033300aaaaaa00034330006666660044444400eeeeee0077776700006600006668880566666660000000000000000
0000000000000000000000000ddd8dd0333034300aa55aa00004000006566560055555500ecce4e0075776700011110008888480566666660000000000000000
0000000000000000707070700ddd8dd0040004000aa55aa00004000006566560044554400eeee4e0075777700666666008888480566666660000000000000000
00000000bbbbbbbb7b7b7b7bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb0000000000000000
00000000666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666600000000
00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
00000000880880d0009909900d0d0880099000000bb0bb000000000008b9ec00000000000000700007d7d7d000000000000fff00cc0cc0cc0550555000000000
00000000880880c0009909900c0c0880099000000ba0ba000bbbbb900ce8b9e000000000000707000d7d7d700a0a0a000ffffff0cc0cc0cc0440444000000000
00000000880880c0090990990c0c0880909909900ba0ba000b999990089beac000000000007070700d7d7d700a9a9a900eeeeef0ff0ff0ff0440444000000000
00000000880880c0090990990c0c0880909909900bb0bb000bbbbb900ed88ed000000000070707070d7d7d700a9a9a900ffffff0cc0cc0cc0550555000000000
00000000666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666600000000
00000000555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555500000000
__label__
00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
00000000999999999999999999999999999999999999999000000009999999999999990000000099999999999999990000000999999999999999900000000000
00000000999999999999999999999999999999999999999000000009999999999999990000000099999999999999990000000999999999999999900000000000
00000000999999999999999999999999999999999999999000000009999999999999990000000099999999999999990000000999999999999999900000000000
00000000999999999999999999999999999999999999999000000009999999999999990000000099999999999999990000000999999999999999900000000000
00000000999999999999999999999999999999999999999000000009999999999999990000000099999999999999990000000999999999999999900000000000
00000000999999999999999999999999999999999999999000000009999999999999990000000099999999999999990000000999999999999999900000000000
00000000999999999999999999999999999999999999999000000009999999999999990000000099999999999999990000000999999999999999900000000000
00000000999999999999999999999999999999999999999000000009999999999999990000000099999999999999990000000999999999999999900000000000
99999999999999999999999900000000999999999999999000000009999999999999999999999999999999999999999999999999999999999999900000000000
99999999999999999999999900000000999999999999999000000009999999999999999999999999999999999999999999999999999999999999900000000000
99999999999999999999999900000000999999999999999000000009999999999999999999999999999999999999999999999999999999999999900000000000
99999999999999999999999900000000999999999999999000000009999999999999999999999999999999999999999999999999999999999999900000000000
99999999999999999999999900000000999999999999999000000009999999999999999999999999999999999999999999999999999999999999900000000000
99999999999999999999999900000000999999999999999000000009999999999999999999999999999999999999999999999999999999999999900000000000
99999999999999999999999900000000999999999999999000000009999999999999999999999999999999999999999999999999999999999999900000000000
99999999999999999999999900000000999999999999999000000009999999999999999999999999999999999999999999999999999999999999900000000000
99999999999999999999999900000000999999999999999000000009999999999999990000000099999999999999990000000999999999999999900000000000
99999999999999999999999900000000999999999999999000000009999999999999990000000099999999999999990000000999999999999999900000000000
99999999999999999999999900000000999999999999999000000009999999999999990000000099999999999999990000000999999999999999900000000000
99999999999999999999999900000000999999999999999000000009999999999999990000000099999999999999990000000999999999999999900000000000
99999999999999999999999900000000999999999999999000000009999999999999990000000099999999999999990000000999999999999999900000000000
99999999999999999999999900000000999999999999999000000009999999999999990000000099999999999999990000000999999999999999900000000000
99999999999999999999999900000000999999999999999000000009999999999999990000000099999999999999990000000999999999999999900000000000
99999999999999999999999900000000999999999999999000000009999999999999990000000099999999999999990000000999999999999999900000000000
88888888888888888888888800000000888888888888888000000008888888888888880000000088888888888888880000000888888888888888800000000000
88888888888888888888888800000000888888888888888000000008888888888888880000000088888888888888880000000888888888888888800000000000
88888888888888888888888800000000888888888888888000000008888888888888880000000088888888888888880000000888888888888888800000000000
88888888888888888888888800000000888888888888888000000008888888888888880000000088888888888888880000000888888888888888800000000000
88888888888888888888888800000000888888888888888000000008888888888888880000000088888888888888880000000888888888888888800000000000
88888888888888888888888800000000888888888888888000000008888888888888880000000088888888888888880000000888888888888888800000000000
88888888888888888888888800000000888888888888888000000008888888888888880000000088888888888888880000000888888888888888800000000000
88888888888888888888888800000000888888888888888000000008888888888888880000000088888888888888880000000888888888888888800000000000
00000000888888888888888800000000888888888888888000000008888888888888880000000088888888888888880000000888888888888888800000000000
00000000888888888888888800000000888888888888888000000008888888888888880000000088888888888888880000000888888888888888800000000000
00000000888888888888888800000000888888888888888000000008888888888888880000000088888888888888880000000888888888888888800000000000
00000000888888888888888800000000888888888888888000000008888888888888880000000088888888888888880000000888888888888888800000000000
00000000888888888888888800000000888888888888888000000008888888888888880000000088888888888888880000000888888888888888800000000000
00000000888888888888888800000000888888888888888000000008888888888888880000000088888888888888880000000888888888888888800000000000
00000000888888888888888800000000888888888888888000000008888888888888880000000088888888888888880000000888888888888888800000000000
00000000888888888888888800000000888888888888888000000008888888888888880000000088888888888888880000000888888888888888800000000000
00000000000000008888888888888888888888888888888000000008888888888888880000000088888888888888880000000888888888888888888888888000
00000000000000008888888888888888888888888888888000000008888888888888880000000088888888888888880000000888888888888888888888888000
00000000000000008888888888888888888888888888888000000008888888888888880000000088888888888888880000000888888888888888888888888000
00000000000000008888888888888888888888888888888000000008888888888888880000000088888888888888880000000888888888888888888888888000
00000000000000008888888888888888888888888888888000000008888888888888880000000088888888888888880000000888888888888888888888888000
00000000000000008888888888888888888888888888888000000008888888888888880000000088888888888888880000000888888888888888888888888000
00000000000000008888888888888888888888888888888000000008888888888888880000000088888888888888880000000888888888888888888888888000
00000000000000008888888888888888888888888888888000000008888888888888880000000088888888888888880000000888888888888888888888888000
00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
00000000222222222222222222222222222222200000000000000002222222222222220000000022222222222222220000000222222222222222200000000000
00000000222222222222222222222222222222200000000000000002222222222222220000000022222222222222220000000222222222222222200000000000
00000000222222222222222222222222222222200000000000000002222222222222220000000022222222222222220000000222222222222222200000000000
00000000222222222222222222222222222222200000000000000002222222222222220000000022222222222222220000000222222222222222200000000000
00000000222222222222222222222222222222200000000000000002222222222222220000000022222222222222220000000222222222222222200000000000
00000000222222222222222222222222222222200000000000000002222222222222220000000022222222222222220000000222222222222222200000000000
00000000222222222222222222222222222222200000000000000002222222222222220000000022222222222222220000000222222222222222200000000000
00000000222222222222222222222222222222200000000000000002222222222222220000000022222222222222220000000222222222222222200000000000
00000000222222220000000022222222222222222222222000000002222222222222222222222222222222222222222222222222222222222222200000000000
00000000222222220000000022222222222222222222222000000002222222222222222222222222222222222222222222222222222222222222200000000000
00000000222222220000000022222222222222222222222000000002222222222222222222222222222222222222222222222222222222222222200000000000
00000000222222220000000022222222222222222222222000000002222222222222222222222222222222222222222222222222222222222222200000000000
00000000222222220000000022222222222222222222222000000002222222222222222222222222222222222222222222222222222222222222200000000000
00000000222222220000000022222222222222222222222000000002222222222222222222222222222222222222222222222222222222222222200000000000
00000000222222220000000022222222222222222222222000000002222222222222222222222222222222222222222222222222222222222222200000000000
00000000222222220000000022222222222222222222222000000002222222222222222222222222222222222222222222222222222222222222200000000000
00000000222222220000000022222222222222222222222000000002222222222222220000000022222222222222220000000222222222222222200000000000
00000000222222220000000022222222222222222222222000000002222222222222220000000022222222222222220000000222222222222222200000000000
00000000222222220000000022222222222222222222222000000002222222222222220000000022222222222222220000000222222222222222200000000000
00000000222222220000000022222222222222222222222000000002222222222222220000000022222222222222220000000222222222222222200000000000
00000000222222220000000022222222222222222222222000000002222222222222220000000022222222222222220000000222222222222222200000000000
00000000222222220000000022222222222222222222222000000002222222222222220000000022222222222222220000000222222222222222200000000000
00000000222222220000000022222222222222222222222000000002222222222222220000000022222222222222220000000222222222222222200000000000
00000000222222220000000022222222222222222222222000000002222222222222220000000022222222222222220000000222222222222222200000000000
00000000111111111111111111111111111111100000000000000001111111111111110000000011111111111111110000000111111111111111100000000000
00000000111111111111111111111111111111100000000000000001111111111111110000000011111111111111110000000111111111111111100000000000
00000000111111111111111111111111111111100000000000000001111111111111110000000011111111111111110000000111111111111111100000000000
00000000111111111111111111111111111111100000000000000001111111111111110000000011111111111111110000000111111111111111100000000000
00000000111111111111111111111111111111100000000000000001111111111111110000000011111111111111110000000111111111111111100000000000
00000000111111111111111111111111111111100000000000000001111111111111110000000011111111111111110000000111111111111111100000000000
00000000111111111111111111111111111111100000000000000001111111111111110000000011111111111111110000000111111111111111100000000000
00000000111111111111111111111111111111100000000000000001111111111111110000000011111111111111110000000111111111111111100000000000
00000000111111111111111100000000000000000000000000000001111111111111110000000011111111111111110000000111111111111111100000000000
00000000111111111111111100000000000000000000000000000001111111111111110000000011111111111111110000000111111111111111100000000000
00000000111111111111111100000000000000000000000000000001111111111111110000000011111111111111110000000111111111111111100000000000
00000000111111111111111100000000000000000000000000000001111111111111110000000011111111111111110000000111111111111111100000000000
00000000111111111111111100000000000000000000000000000001111111111111110000000011111111111111110000000111111111111111100000000000
00000000111111111111111100000000000000000000000000000001111111111111110000000011111111111111110000000111111111111111100000000000
00000000111111111111111100000000000000000000000000000001111111111111110000000011111111111111110000000111111111111111100000000000
00000000111111111111111100000000000000000000000000000001111111111111110000000011111111111111110000000111111111111111100000000000
00000000111111111111111100000000000000000000000000000001111111111111110000000011111111111111110000000111111111111111111111111000
00000000111111111111111100000000000000000000000000000001111111111111110000000011111111111111110000000111111111111111111111111000
00000000111111111111111100000000000000000000000000000001111111111111110000000011111111111111110000000111111111111111111111111000
00000000111111111111111100000000000000000000000000000001111111111111110000000011111111111111110000000111111111111111111111111000
00000000111111111111111100000000000000000000000000000001111111111111110000000011111111111111110000000111111111111111111111111000
00000000111111111111111100000000000000000000000000000001111111111111110000000011111111111111110000000111111111111111111111111000
00000000111111111111111100000000000000000000000000000001111111111111110000000011111111111111110000000111111111111111111111111000
00000000111111111111111100000000000000000000000000000001111111111111110000000011111111111111110000000111111111111111111111111000
00000000111111111111111100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
00000000111111111111111100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
00000000111111111111111100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
00000000111111111111111100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
00000000111111111111111100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
00000000111111111111111100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
00000000111111111111111100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
00000000111111111111111100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
__map__
272800000000000000000000000100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000b8b8b8b800000000000000000000000000000000000000000000000000
3738000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000b8b8b8b8b4b8b8bdb3bdb8b8b8b8b3b1b1b3b8b8b8b8bebebebebebebebeb8b2b8b8bdb8b8beb8b6b8b8b1b4b8b8b8b8b8b8b8b8b8b8b8b8bcb8b9b8bebebebdb1b8b9beb4b8b3b1b8bdb2b8b1b8
b9b9b9b5b1b5b2b5b8b8b8b8b8b8b8b8b8bdbbb8b8b8b5b3b7bdbcbcb2b8b5b5b5bdbabdb2b8b8b6b8bebebcbcbcbcbcbcbcb6b3b5b4b4b8b5bdb3bdb5bbb5b5b3b1b1b3b8b2b8babdb2babebebebabeb7b8b5b6b4b8b7b5bdb8b7b4b1b7b8b5bbbbbbb7b7b7b5b5bdb8bcbcb9b9bebebeb8b3b6beb8b9b6b6b2bdb4bab4bebd
b7b5b5b2babbbab5bdb2b1b3b6b6b2b8b8bdbbb9b5b6b4b3b8b7b4b7b8b8b5b8b5bdbabdb8b6b2b8b6bebeb5b5b5b5b5b5b5b6b3b3b5b8b5b8bdb3bdb5bbb5b5b3b1b3b3b8b2b8babdb2bab5bdb2babeb8b1beb8b8b4beb8b6b3b2b8b8b8b8b5bbbbbbb7b7b8b8b5bdb8b8bcb9b9beb8beb8b2b4b8bdb7bcb8b7b8b1b8b2b8b8
b1b2b5b2babbbab5b2b2b3b5b5b5b2b8b8bdbbb9b6b2b4b3b4b4b8b7b5b4b5b5b5bdbabdb2b8b8b2b8bebeb1b1b1b1b1b1b1b6b8b9b8b5b8b9bdb3bdb5bbb5b5b3b1b3b3b8bab8babdb2bab5bdb2babeb8b7b1b8b4b8b8b8b4b8b8b3b3b8b8b5bbbbbbb7b7b7b5b5bdb8bcbcb9b9bebebeb1b7bcb2beb8bdbab8b9b8bdb8b3b4
000000003a3a3a00000101010000000000000000009b9700000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000097009c00000000000087888500870000000000000000988790009700000000000000000084008500009a000000000000000000008700870085
000000003a3a3a3a00013a0100000000000000000098969a000000000000000000000000000000000000000000000000000000000000000000000000970000000000000000009394959b000000000000858585908500880088960000009b83870096000000000000000000850085000095000000000000000087008600860085
000000003a3a3a3a000101010100000000000000009c96940000000000000000000000000000000000000000000000000000000000000000000000009c00000000000000830093969598000000000000858385878500848884940000009886838795000000878787878700850085000095000000000000000083008600850085
a7a2a3a4a2a5a1a6aba6a5a181a1a2a2a2acaba2a2929292a1a4a9a1a6a1a1a7a2a2aaa1a2a3a2a3a2a3a6a5a6a5a2a5a2a8a8a2a2a6a4a6a6aba4a492a6a2aca7a4a8a4828192929292aba4a6a9a6a18282828282abad82ad92a2a7a19282828292a1aaa68281828182a182a482a1ab9291a281a2a281a6a182a682a182a182
0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
000000009a979a00000000000000000085860000000000000000000000000000000000009400000000000000000000000085000000000000000000000000000000000000000000000000000000000000000000980098000098000000009800000000000000000000000000000000000000000000000000000000000000000000
009000009494960094000093009b000085860000000000000000000000000000000097979b00000000000000000000000085000000000000000000000000000000000000000000000000000000000000000098980098000098000000989800000000000000939300009898980000000000000000000000000000000000000000
8b9400009694940098000093009b00008586000000000000000000000000000000009b9a950000000000000000000000008500000000000000000000000000000000000000000000000000000000000000009b93899b000098000000989b0000000000000098989898989b989800000000000000000000000000000000000000
00930000949696009400009b00930000838500000000008d0000000000000000000096969600000000000000000000000085000000000000000000000000000000000000000000000000000000000000000098989b980000980000009898000098000000009898989b9b98969600000000000000000000000000000000000000
a192a1a1929292a192a1a192a192a1a18282a19d9e9f9d9e9f9d8e9f9d9e8e9e8e9f9292929191919191919d9e9d8e8e9f82a5a5a6a5a5aca6aba6a1a1a1a1a19d9e8e9e8e9f8e8e9d8e9f8e9f9e9d9e9fa892929292a1a192a19292929292929291919191929292929292929291919191919191a19d9e8e8e8e9fa3a1a1a181
000000000000000000000000008f00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000009f00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a100000000
000000000000000000000000008f000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000860000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
0000000000870000000000850085000089000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
0000008300848583008700830086000083000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
0082008200828282008200820082008182008100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
__sfx__
000100000050013160155601516018560181601b560191601d5601c1601f5601d1601f5601e1601f5601d1601d5601a160185600f1601056011160145601416018560181601b5601a1601b560191601b56017160
001400000010000150001500015000100001500010002150001000015000150001500010000150001000215000100001500015000150001000015000100021500010000150001500015000100001500010005150
001400000a0500c0500c0500a050050500705007050050500a0500c0500c0500a0500c0500f0500f0500c05011050130501305011050130501605016050130501d0501b0501b0501d0501b05018050180501b050
361400000050200502275520050200502275520050200502275522455027552005022755227500275522455227550275002755227500275002755227500275002755224550275522750027552245522455222552
001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
0003000000503165531d5532155324553265532655325553225531e5531a5531855317553195531e5532055323553255532555325553255532555324553235532355322553215531d5531a5531a5531a55319553
000100000c5600e5600e5600c5600e56010560105600e56010560115601156010560115601356013560115601356015560155601356017560185601856017560185601a5601a560185601c5601d5601d5601c560
011400002e4542e4542e4542e45400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
01180000220522205227052240522405229052270522705216052160521b05218052180521d0521b0521b052220522205227052240522405229052270522705216052160521b05218052180521d0521b0521b052
011800000670006700067500675000700067500670006750007000070006750067500070006750067000675006700067000675006750007000675006700067500070000700067500675000700067500670006750
081400002375220752217521e7521f7521c7521d7521a7521b75218752197521775217752157521375213752117521275210752107520e7520e7520b7520c752097520a752077520875207752067520575205752
30100000002000225202200022520220002252042520b2000225204252092520b20002252042520925209200022000e252022000e252022000e25210252092000e25210252152520b2000e252102521525200200
081400002315220152211521e1521f1521c1521d1521a1521b15218152191521715217152151521315213152111521215210152101520e1520e1520b1520c152091520a152071520815207152061520515205152
081400002345120451214511e4511f4511c4511d4511a4511b45118451194511745117451154511345113451114511245110451104510e4510e4510b4510c451094510a451074510845107451064510545105451
660400000f1611316118161131610f1610f16116161181611b1611b1611616111161131611b1611f161221611d1611b161181611d1612216124161241611f1611b1611f161271612916127161221611d16122161
60040000071410a1410a141071410a1410c1410c1410a1410c1410f1410f1410c141071410a1410a141071410a1410c1410c1410a1410a1410c1410c1410a141071410a1410a14107141071410a1410a14107141
600400000925200252042520225207252092520025204252022520725209252002520425202252072520925200252042520225207252092520025204252022520725209252002520425202252092520025210252
__music__
01 01424344
00 01024344
02 01024344
00 01020344
01 0a4b4344
00 0a0c4d44
00 0a0c0d44
02 0d0c4d44
00 41424344
00 41424344
00 0f105044
02 4f4f5044