Iomega 1GB Jaz Drive Power Supply
Picked this little beast up from the flea markets recently. It came with 2 disks and no power supply! I was so excited to see a random pile of SCSI junk at the markets, that I forgot to check if everything required was in the bundle when I picked it up.
The power plug on the back looks like a PS/2 cable with a lower pin missing. Why do it for? Of course: proprietary power means you need to contact their service desk when you need a replacement... or do you?
I started hacking up a spare PS/2 extension cable and got it to fit!
As I was rummaging for a compatible brick that could supply both 12v and 5v, I found that I already had a "ps/2-style" power adapter in my box-o-shite. It had exactly the right pinout, with voltages all in the correct places, but the extra pin was stilla an issue...
I grabbed the sharpest pair of snips in the toolbox and quickly hacked the plug into submission. With that pin clear, it was time to test...
Noooo waaaaay... it also worked perfectly when on a SCSI card. Nothing interesting on the disks though!
Adding more RAM to a Toshiba Satellite 300CDS
Picked this up recently and loved the design and specifications. It needed more RAM though, so I started unscrewing it to find the relevant slot. Turns out there's minimal effort needed... not even a screwdriver! Usually you get a panel underneath with a cute RAM icon, or somesuch, but there was no such thing on this unit.
Instead... there's a lever-point on the right-hand-side of the unit, on the edge of the 'bevel' that runs along the top of the keyboard. Once popped out, the keyboard nicely lifts up and you have full access to the RAM slot.
The trusty box-o-crap was emptied and all laptop RAM shown. 4 were a good fit, but all SDRAM. Unfortunately this unit only accepts EDO!
Matsucom OnHand Wearable PC
Saw this on eBay... no one else bid on it? Are you serious? It's one of the first smart watches! It was also one of the first to have its own software development kit.
Totally reminiscent of a Casio, it's a chunk Matsucom OnHand PC which is actually the american clone of the Seiko Ruputer. In the package is a whole lot of documentation, software, the watch, a docking station and a cute little extra battery holder.
I expected CR2032 coin cell batteries, but it turns out it wanted CR2025s? I went off to find some...
Using it
I was immediately presented with "Fatal Error" after turning it on. The default action is to try and open "My Computer", so I assume that area of memory is crap.
I booted my Windows 98se VM and plugged through the serial port. We were connected in no time and I was straight-away warned that the internal memory was rubbish. A quick format later and I had a connected watch!
The file browser kept throwing an error that shortcut.ini was missing, so I created an empty file in the relevant directory, which successfully shut the error up. I wonder what software I can put on this thing?
The community still exists!
There's a whole raft of software at PC On Hand. This website actually has all the information you could ever want. If you're bored, it seems you can even convert movies into short animations to play on your watch.
I quickly downloaded the fishtank and copied it to the watch with zero effort required.
Yup... Fish. Worked nicely... EXF seems to be the compiled executable for the watch and it was seen as such in the file browser after copying. It's then a really quick navigation on the watch itself and, before you know it, you've got a mini aquarium on your wrist!
Software Development
PcOH-C For Windows is here, but they want you to register to download. I tried to do so, as I'm a legitimate human and was happy to see what random emails they wanted to send. Regardless, the signup process is dead... so the file is out of reach... or is it? I changed the URL from .asp to .zip and, you guessed it, the 1.6mb of glory downloaded. Here's a version just for keep-sake. The SDK is required, and that URL doesn't work either... so here's the entire product CD.
There's a few samples in PConH and I quickly compiled the first one. MAIN.EXF was created and I was able to upload it to the watch straight from the IDE. Before that though, the IDE has an emulator in it! You don't even need to deploy to your watch to test!
I copied it to the watch anyway...
It also executed perfectly fine and, as expected, the relevant indicator popped up when pressing the joystick directions. The best part was that you can do diagonal actions as well... might come in very handy for a game!
What's next? I think this watch deserves a mini-model-railway.
Kodak DC50 – Retrieving Internal Images
I'd picked this Kodak DC50 camera up for a steal at a local flea market and had already had success taking photos to a PCMCIA storage card. I'd also already created a serial cable and had used Virtual Box to pull the internal images off. The whole method was a little clunky, so I decided to use kdcpi as a base to write a quick app in C# to get the data myself. I was pretty close ... but kept failing some CRC checks... so I decided to cheat and snoop in on the original conversation.
Virtual Box to Camera
If you just want to use VirtualBox to talk to your camera, then go to the link above. There you'll find everything you need to know to get it set up. One point though, if you don't tell Windows 98 that you have a serial port when installing, then you'll need to fight through the Add New Hardware Wizard to get one installed. I had cheated and piped through a USB Serial port first, but then worked out that I needed to re-add the base serial port.
Once that was out of the way, I used the USB Serial to connect through to the camera and revived the software I built for debugging DOS Interlnk here to snoop on the data. To map the serial ports through, I used Eltima's Virtual Serial Port. It's actually awesome!
Yessss.... It worked perfectly. The conversation was captured and was already showing some hints as to why my initial C# code wasn't working.
Decoding Conversation
From here I could compare the real conversation to mine. Already I could see that I was putting the last byte of the previous 1024-byte block as the first in the next. No wonder checksums were failing! Anyway, here's the conversation from "Hello", to "What Images do you have for me?" and "Give me that image, there!".
KodakKonnektor
Based on everything above, I wrote 90% of the following. After the checksum hints, I had a full image dumping into a file... IrfanView still wouldn't load it though! I compared it to an actual image dump via VirtualBox and there was a good 16kb of header up the top. Actually, if you look at the Perl source, you'll see the exact size is 15680 bytes. I wasn't accounting for this at all and, actually, neither does the Perl script... does it even work?
using System; using System.Collections.Generic; using System.IO; using System.IO.Ports; using System.Linq; using System.Text; using System.Threading; namespace KodakKonnektor { class PictureInfo { public string fileName; public long fileSize; public override string ToString() { return "[PIC]:" + fileName + ":" + fileSize; } } class Program { const byte DC_COMMAND_ACK = 0xD1; const byte DC_SET_SPEED = 0x41; const byte DC_COMMAND_COMPLETE = 0x00; const byte DC_CORRECT_PACKET = 0xD2; const byte DC_COMMAND_NAK = 0xE1; const byte DC_ILLEGAL_PACKET = 0xE3; const byte DC_BUSY = 0xF0; const int DC50_EPOC = 852094800; // Kodak System Commands const byte DC50_INITIALIZE = 0x7E; const byte DC50_GET_PICTURE_IN_CAMERA = 0x51; const byte DC50_GET_PICTURE_IN_CARD = 0x61; const byte DC50_PICTURE_INFO_IN_CAMERA = 0x55; const byte DC50_PICTURE_INFO_IN_CARD = 0x65; const byte DC50_ERASE_IMAGE_IN_CAMERA = 0x7A; const byte DC50_ERASE_IMAGE_IN_CARD = 0x7B; const byte DC50_TAKE_PICTURE_TO_CAMERA = 0x77; const byte DC50_TAKE_PICTURE_TO_CARD = 0x7C; const byte DC50_STATUS = 0x7F; const int DC50_PICTURE_HEADER_SIZE = 15680; // Create the serial port with basic settings private static SerialPort port; private static int nextExpectedPacketLength = 0; static void Main(string[] args) { //system("stty raw -parenb -parodd -onlcr -iexten -echonl -noflsh -tostop -echoprt -ixoff -olcuc -ocrnl -onocr -onlret -ofill -ofdel -echo -echoe -echok -echoctl -echoke min 255 time 5 cs8 9600 < $tty"); //raw = same as -ignbrk -brkint -ignpar -parmrk -inpck -istrip -inlcr -igncr -icrnl -ixon -ixoff -iuclc -ixany -imaxbel -opost -isig -icanon -xcase min 1 time 0 // ignbrk = ignore break characters // brkint = breaks cause an interrupt signal // ignpar = ignore characters with parity errors // parmrk = mark parity errors (with a 255-0-character sequence) // inpck = enable input parity checking // istrip = clear high (8th) bit of input characters // inlcr = translate newline to carriage return // igncr = ignore carriage return // icrnl // //-------------------- //-parenb -parodd -onlcr -iexten -echonl -noflsh -tostop -echoprt -ixoff -olcuc -ocrnl -onocr -onlret -ofill -ofdel -echo -echoe -echok -echoctl -echoke port = new SerialPort("COM8", 9600, Parity.None, 8, StopBits.One); //port.DataReceived += new SerialDataReceivedEventHandler(port_DataReceived); port.Open(); send(DC50_INITIALIZE, null, 0, true); setPortSpeed(9600); Console.Write("[Command](list,status,dump]: "); string str = Console.ReadLine(); Console.WriteLine(""); while (!string.IsNullOrWhiteSpace(str)) { switch (str) { case "list": pictureList.Clear(); Console.WriteLine("------------------------------------------------------"); for (byte p = 1; p < 12; p++) { pictureList.Add(getPictureInfo(p)); Console.WriteLine(pictureList.Last().ToString()); } Console.WriteLine("------------------------------------------------------"); break; case "dump": Console.Write("Which picture?:"); var picnum = Console.ReadLine(); byte pic = 1; if (byte.TryParse(picnum, out pic)) { downloadPicture(pic); } break; case "status": var statusData = send(DC50_STATUS, null, 256, false); printStatus(statusData); //complete? break; } Console.Write("[Command](list,status,dump): "); str = Console.ReadLine(); Console.WriteLine(""); } } private static void downloadPicture(byte p) { if (pictureList.Count() > p) { var data = send(DC50_GET_PICTURE_IN_CAMERA, new byte[] { 0x00, p, 0x00, 0x00 }, pictureList[p - 1].fileSize, false); if (data != null) File.WriteAllBytes(pictureList[p - 1].fileName.Replace("\\","") + ".kdc", data); } } static List<pictureinfo> pictureList = new List(); private static PictureInfo getPictureInfo(byte p) { string filename = "???"; long filesize = -1; bool intPics = true; if (intPics) { var data = send(DC50_PICTURE_INFO_IN_CAMERA, new byte[] { 0x00, p, 0x00, 0x00 }, 256, true, false); //my @attrs = unpack('C8 N2 C12 N1 C5 A8',$data); //0x01 0x01 0x00 0x01 0x00 0x00 0x00 0x00 //0x00 0x01 0xF3 0x00 //0x23 0x64 0xF4 0x0E //0x01 0x00 0x0D 0xAC 0x00 0x00 0x00 0x00 0x09 0x20 0x00 0x00 //0x00 0x00 0x0C 0xDC //0x00 0x19 0x00 0x00 0x00 //0x44 0x43 0x49 0x30 0x30 0x31 0x4C 0x00 if (data[1] == 1) //KDC format { Console.WriteLine(BitConverter.ToString(data)); Console.WriteLine("------------------------------------------------------"); filename = Encoding.ASCII.GetString(data.Skip(37).Take(8).ToArray()); } var size = data.Skip(8).Take(4).Reverse().ToArray(); filesize = BitConverter.ToInt32(size, 0); } return new PictureInfo() { fileName = filename, fileSize = filesize }; } private static void printStatus(byte[] statusData) { /*(undef, C10 $cameraTypeId, a2 $firmwareMajor, N1 $firmwareMinor, $blah1, $blah2, $blah3, $blah4, $batteryStatusId, $acStatusId, undef, # reserved $time, $zoomMode, undef, # reserved $flashCharged, $compressionModeId, $flashMode, $exposureCompensation, undef, undef, $manualExposureTime, undef, # not implemented yet. $numPicturesInMemory, # the number of pictures in internal memory undef, # not implemented yet $numPicturesInCard, # the number of pictures in Compact Flash undef, # not implemented yet $compactFlashVolumeId, # volume id of the ATA card undef, # reserved $cameraIdent # camera identification ) = unpack('C10 a2 N1 C8 N1 a8 n1 a18 n1 a9 A11 a2 a32',$data); 01-01-01-0A-01-00-01-00-00-00-3C-00-00-0F- 6B-A9-00-FF-00-00-00-00-00-00-00-00-0C-E4-00-00-00-00-00-00-00-0B-00-01- 00- 08-00-02-00-00-00-00-00-01-00-00-00-00-00-00-00-00-00- 00- 00-00-00-00-00-00-00-00-00- 00-00-00-00-00-00-00-00-00-00-00- 00-00- 4B-6F-64-61-6B-20-44-69-67-69-74-61-6C-20-43-61-6D-65-72-61-20-35-30-20-20-20-20-20-20-20-20-00- 00- */ Console.WriteLine("------------------------------------------------------"); Console.WriteLine(BitConverter.ToString(statusData)); Console.WriteLine("------------------------------------------------------"); Console.WriteLine(ASCIIEncoding.ASCII.GetString(statusData)); Console.WriteLine("------------------------------------------------------"); } private static byte[] send(byte command, byte[] args, long bytesToRead, bool needsComplete, bool outputDebug = true) { byte[] data = new byte[] { command, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1A }; if (args != null) for (int b = 0; b < args.Length; b++) data[b + 2] = args[b]; if (outputDebug) Console.Write("Sending " + BitConverter.ToString(data) + ": "); port.Write(data, 0, 8); bool acked = false; long bytesWanted = bytesToRead; long totalBlocks = 0; if (bytesWanted > 0) totalBlocks = (bytesToRead / 1024) + 1; var blocks = totalBlocks; waitForData(1); List<byte> bytesOut = new List(); bool gotPacket = false; while (!gotPacket) { byte ack = (byte)port.ReadByte(); if (!acked && ack == DC_COMMAND_ACK) { if (outputDebug) Console.Write("< "); gotPacket = !needsComplete && bytesToRead == 0; if (gotPacket) Console.WriteLine("!"); acked = true; } else if (blocks > 0) { while (blocks > 0) { long blockBytes = 1024; if (blocks == 1) blockBytes = (bytesWanted - bytesOut.Count()) % 1024; blockBytes++; var blockData = new List(); while (blockBytes > 0) { if (blockData.Count() == 0 && outputDebug) Console.WriteLine("\nReading "); blockData.Add(ack); if (outputDebug) Console.Write("."); blockBytes--; if (blockBytes == 1) { var checksum = (byte)port.ReadByte(); var ourChecksum = computeChecksum(blockData.ToArray()); if (outputDebug) Console.Write(" --- Read " + blockData.Count() + " Bytes [" + (checksum == ourChecksum ? "Y" : "N") + "] ... "); port.Write(new byte[] { (checksum == ourChecksum) ? DC_CORRECT_PACKET : DC_ILLEGAL_PACKET }, 0, 1); blockBytes--; } else ack = (byte)port.ReadByte(); } bytesOut.AddRange(blockData); blocks--; if (blocks == 0) { gotPacket = !needsComplete; } } } else if (ack == DC_COMMAND_COMPLETE) { if (outputDebug) Console.WriteLine("!"); gotPacket = true; } else { //do something? if (outputDebug) Console.WriteLine(" Failed..."); send(command, args, bytesToRead, needsComplete); gotPacket = true; } } return bytesOut.ToArray(); } private static void waitForData(int dataRequired) { while (port.BytesToRead < dataRequired) Thread.Sleep(100); } private static byte computeChecksum(byte[] data) { byte chksum = 0; foreach (byte b in data) chksum ^= b; return chksum; } private static void setPortSpeed(int speed) { byte arg1 = 0, arg2 = 0; switch (speed) { case 9600: arg1 = 0x96; arg2 = 0x00; break; case 19200: arg1 = 0x19; arg2 = 0x20; break; case 38400: arg1 = 0x38; arg2 = 0x40; break; case 57600: arg1 = 0x57; arg2 = 0x60; break; case 115200: arg1 = 0x11; arg2 = 0x52; break; } send(DC_SET_SPEED, new byte[] { arg1, arg2 }, 0, false); } } }
Darnnation... seems there's a constructed header to make the image complete:
0x4d 0x4d 0x20 0x2a 0x20 0x20 0x20 0x08 0x20 0x22 0x20 0xfe 0x20 0x04 0x20 0x20 0x20 0x01 0x20 0x20 0x20 0x01 0x01 0x20 0x20 0x03 0x20 0x20 0x20 0x01 0x20 0x60 0x20 0x20 0x01 0x01 0x20 0x03 0x20 0x20 0x20 0x01 0x20 0x40 0x20 0x20 0x01 0x02 0x20 0x03 0x20 0x20 0x20 0x03 0x20 0x20 0x01 0xa6 0x01 0x03 0x20 0x03 0x20 0x20 0x20 0x01 0x20 0x01 0x20 0x20 0x01 0x06 0x20 0x03 0x20 0x20 0x20 0x01 0x20 0x02 0x20 0x20 0x01 0x0e 0x20 0x02 0x20 0x20 0x20 0x08 0x20 0x20 0x01 0xac 0x01 0x0f 0x20 0x02 0x20 0x20 0x20 0x16 0x20 0x20 0x01 0xb4 0x01 0x10 0x20 0x02 0x20 0x20 0x20 0x27 0x20 0x20 0x01 0xca 0x01 0x11 0x20 0x04 0x20 0x20 0x20 0x01 0x20 0x20 0x05 0x20 0x01 0x12 0x20 0x03 0x20 0x20 0x20 0x01 0x20 0x01 0x20 0x20 0x01 0x15 0x20 0x04 0x20 0x20 0x20 0x01 0x20 0x20 0x20 0x03 0x01 0x16 0x20 0x04 0x20 0x20 0x20 0x01 0x20 0x20 0x20 0x40 0x01 0x17 0x20 0x04 0x20 0x20 0x20 0x01 0x20 0x20 0x48 0x20 0x01 0x1a 0x20 0x05 0x20 0x20 0x20 0x01 0x20 0x20 0x01 0xf2 0x01 0x1b 0x20 0x05 0x20 0x20 0x20 0x01 0x20 0x20 0x01 0xfa 0x01 0x1c 0x20 0x03 0x20 0x20 0x20 0x01 0x20 0x01 0x20 0x20 0x01 0x28 0x20 0x03 0x20 0x20 0x20 0x01 0x20 0x02 0x20 0x20 0x01 0x31 0x20 0x02 0x20 0x20 0x20 0x0e 0x20 0x20 0x02 0x02 0x01 0x32 0x20 0x02 0x20 0x20 0x20 0x14 0x20 0x20 0x02 0x10 0x01 0x4a 0x20 0x04 0x20 0x20 0x20 0x01 0x20 0x20 0x02 0x70 0x82 0x8f 0x20 0x02 0x20 0x20 0x20 0x05 0x20 0x20 0x02 0x24 0x82 0x90 0x20 0x04 0x20 0x20 0x20 0x01 0x20 0x20 0x04 0x8c 0x82 0x98 0x20 0x02 0x20 0x20 0x20 0x21 0x20 0x20 0x02 0x2a 0x82 0x9a 0x20 0x05 0x20 0x20 0x20 0x01 0x20 0x20 0x02 0x4c 0x82 0x9d 0x20 0x05 0x20 0x20 0x20 0x01 0x20 0x20 0x02 0x54 0x88 0x22 0x20 0x03 0x20 0x20 0x20 0x01 0x20 0x02 0x20 0x20 0x88 0x2b 0x20 0x03 0x20 0x20 0x20 0x01 0x20 0x20 0x20 0x20 0x92 0x06 0x20 0x05 0x20 0x20 0x20 0x01 0x20 0x20 0x02 0x5c 0x92 0x09 0x20 0x03 0x20 0x20 0x20 0x01 0x20 0x1f 0x20 0x20 0x92 0x0a 0x20 0x05 0x20 0x20 0x20 0x01 0x20 0x20 0x02 0x64 0x92 0x11 0x20 0x03 0x20 0x20 0x20 0x01 0x20 0x02 0x20 0x20 0x92 0x16 0x20 0x01 0x20 0x20 0x20 0x04 0x20 0x09 0x20 0x20 0x92 0x17 0x20 0x03 0x20 0x20 0x20 0x01 0x20 0x02 0x20 0x20 0x20 0x20 0x20 0x20 0x20 0x08 0x20 0x08 0x20 0x08 0x44 0x43 0x49 0x30 0x30 0x32 0x53 0x20 0x45 0x61 0x73 0x74 0x6d 0x61 0x6e 0x20 0x4b 0x6f 0x64 0x61 0x6b 0x20 0x43 0x6f 0x6d 0x70 0x61 0x6e 0x79 0x20 0x4b 0x6f 0x64 0x61 0x6b 0x20 0x44 0x69 0x67 0x69 0x74 0x61 0x6c 0x20 0x53 0x63 0x69 0x65 0x6e 0x63 0x65 0x20 0x44 0x43 0x35 0x30 0x20 0x5a 0x6f 0x6f 0x6d 0x20 0x43 0x61 0x6d 0x65 0x72 0x61 0x20 0x20 0x20 0x20 0x20 0x48 0x20 0x20 0x20 0x01 0x20 0x20 0x20 0x48 0x20 0x20 0x20 0x01 0x44 0x43 0x31 0x32 0x30 0x53 0x44 0x4b 0x20 0x56 0x31 0x2e 0x30 0x20 0x32 0x30 0x31 0x32 0x3a 0x31 0x30 0x3a 0x32 0x35 0x20 0x32 0x32 0x3a 0x34 0x30 0x3a 0x34 0x36 0x20 0x46 0x75 0x6c 0x6c 0x20 0x20 0x4b 0x6f 0x64 0x61 0x6b 0x20 0x44 0x69 0x67 0x69 0x74 0x61 0x6c 0x20 0x43 0x61 0x6d 0x65 0x72 0x61 0x20 0x35 0x30 0x20 0x20 0x20 0x20 0x20 0x20 0x20 0x20 0x20 0x20 0x20 0x20 0x20 0x07 0xa5 0x20 0x01 0x86 0xa0 0x20 0x20 0x20 0x19 0x20 0x20 0x20 0x0a 0x20 0x20 0x20 0xaa 0x20 0x20 0x03 0xe8 0x20 0x20 0x20 0x2e 0x20 0x20 0x20 0x01 0x20 0x20 0x20 0x20 0x20 0x14 0x20 0xfe 0x20 0x04 0x20 0x20 0x20 0x01 0x20 0x20 0x20 0x20 0x01 0x20 0x20 0x03 0x20 0x20 0x20 0x01 0x02 0xf4 0x20 0x20 0x01 0x01 0x20 0x03 0x20 0x20 0x20 0x01 0x01 0xf8 0x20 0x20 0x01 0x02 0x20 0x03 0x20 0x20 0x20 0x01 0x20 0x08 0x20 0x20 0x01 0x03 0x20 0x03 0x20 0x20 0x20 0x01 0x80 0x63 0x20 0x20 0x01 0x06 0x20 0x03 0x20 0x20 0x20 0x01 0x80 0x23 0x20 0x20 0x01 0x11 0x20 0x04 0x20 0x20 0x20 0x01 0x20 0x20 0x4d 0x20 0x01 0x12 0x20 0x03 0x20 0x20 0x20 0x01 0x20 0x01 0x20 0x20 0x01 0x15 0x20 0x03 0x20 0x20 0x20 0x01 0x20 0x01 0x20 0x20 0x01 0x16 0x20 0x03 0x20 0x20 0x20 0x01 0x01 0xf8 0x20 0x20 0x01 0x17 0x20 0x04 0x20 0x20 0x20 0x01 0x20 0x20 0x93 0x20 0x01 0x1a 0x20 0x05 0x20 0x20 0x20 0x01 0x20 0x20 0x03 0x66 0x01 0x1b 0x20 0x05 0x20 0x20 0x20 0x01 0x20 0x20 0x03 0x6e 0x01 0x1c 0x20 0x03 0x20 0x20 0x20 0x01 0x20 0x01 0x20 0x20 0x01 0x28 0x20 0x03 0x20 0x20 0x20 0x01 0x20 0x02 0x20 0x20 0x82 0x8d 0x20 0x03 0x20 0x20 0x20 0x02 0x20 0x02 0x20 0x02 0x82 0x8e 0x20 0x01 0x20 0x20 0x20 0x04 0x01 0x02 0x20 0x01 0x82 0x91 0x20 0x07 0x20 0x20 0x20 0xae 0x20 0x20 0x03 0x76 0x91 0x02 0x20 0x05 0x20 0x20 0x20 0x01 0x20 0x20 0x04 0x24 0x92 0x18 0x20 0x0a 0x20 0x20 0x20 0x0c 0x20 0x20 0x04 0x2c 0x20 0x20 0x20 0x20 0x20 0x20 0x20 0x90 0x20 0x20 0x20 0x01 0x20 0x20 0x20 0x90 0x20 0x20 0x20 0x01 0x01 0x01 0x20 0x20 0x20 0x20 0x20 0x20 0x20 0x20 0x02 0x20 0xfe 0xfd 0x03 0xef 0xfb 0x05 0x11 0xf9 0x02 0x09 0x12 0xee 0xf7 0xfe 0x07 0xb1 0xcf 0xe4 0xf7 0x09 0x1c 0x31 0x4f 0xdb 0xf0 0xff 0x0d 0x1a 0x27 0x37 0x4c 0xb4 0xc9 0xd9 0xe6 0xf3 0x01 0x10 0x25 0x02 0x01 0x02 0x01 0x01 0x02 0x02 0x02 0x02 0x02 0x02 0x02 0x02 0x02 0x02 0x02 0x02 0x05 0x03 0x02 0x03 0x03 0x02 0x04 0x05 0x06 0x04 0x02 0x02 0x02 0x03 0x05 0x06 0x06 0x05 0x03 0x02 0x02 0x02 0x04 0x06 0x20 0x01 0x04 0x02 0x03 0x06 0x07 0x05 0x07 0x01 0x02 0x05 0x03 0x04 0x08 0x07 0x06 0x08 0x03 0x02 0x03 0x02 0x03 0x05 0x04 0x06 0x06 0x02 0x02 0x03 0x02 0x04 0x07 0x05 0x06 0x07 0x03 0x02 0x03 0x03 0x02 0x05 0x06 0x04 0x06 0x05 0x03 0x03 0x02 0x03 0x03 0x03 0x04 0x05 0x03 0x03 0x05 0x02 0x04 0x04 0x02 0x04 0x05 0x05 0x04 0x04 0x03 0x02 0x04 0x03 0x02 0x05 0x04 0x03 0x05 0x03 0x05 0x03 0x02 0x03 0x03 0x05 0x20 0x20 0x20 0x48 0x20 0x20 0x20 0x64 0x20 0x02 0x29 0xd8 0x20 0x20 0x20 0x01 0x20 0x02 0x24 0xbd 0x20 0x20 0x20 0x01 0x20 0x02 0x25 0x64 0x20 0x20 0x20 0x01 0x20 0x02 0x29 0x68 0x20 0x20 0x20 0x01 0x20 0x02 0x27 0x94 0x20 0x20 0x20 0x01 0x20 0x02 0x2d 0x6a 0x20 0x20 0x20 0x01 0x20 0x02 0x29 0xfb 0x20 0x20 0x20 0x01 0x20 0x02 0x29 0x68 0x20 0x20 0x20 0x01 0x20 0x02 0x2c 0xd7 0x20 0x20 0x20 0x01 0x20 0x02 0x25 0x16 0x20 0x20 0x20 0x01 0x20 0x02 0x2c 0x0c 0x20 0x20 0x20 0x01 0x20 0x02 0x27 0x37 0x20 0x20 0x20 0x01 0x20 0x06 0x20 0x20 0x20 0x01 0x20 0x20 0x20 0x04 0x20 0x20 0x20 0x01 0x20 0x01 0x20 0x05 0x20 0x20 0x20 0x01 0x20 0x20 0x04 0xda 0x20 0x02 0x20 0x01 0x20 0x20 0x20 0x01 0x20 0x20 0x20 0x20 0x20 0x03 0x20 0x05 0x20 0x20 0x20 0x01 0x20 0x20 0x04 0xe2 0x20 0x04 0x20 0x05 0x20 0x20 0x20 0x01 0x20 0x20 0x04 0xea 0x20 0x05 0x20 0x01 0x20 0x20 0x20 0x01 0x20 0x20 0x20 0x20 0x20 0x20 0x20 0x20 0x20 0x20 0x23 0xa5 0x20 0x20 0x03 0xe8 0x20 0x20 0x18 0xe7 0x20 0x20 0x03 0xe8 0x20 0x20 0x18 0xe7 0x20 0x20 0x03 0xe8 0x20 0x20 0x20 0x20 0x20 0x20 0x20 0x20 0x20 0x20 0x20 0x20 0x20 0x20 0x28 0x18 0x18 0x20 0x18 0x20 0x18 0x18 0x28 0x20 0x18 0x28 0x28 0x18 0x28 0x28 0x18 0x28 0x28 0x18 0x28 0x28 0x20 0x30 0x28 0x28 0x38 0x20 0x18 0x28 0x18 0x08 0x18 0x20 0x10 0x20 0x28 0x18 0x28 0x28 0x18 0x28 0x28 0x18 0x28 0x30 0x18 0x30 0x38 0x18 0x38 0x30 0x18 0x30 0x28 0x18 0x28 0x28 0x20 0x28 0x28 0x28 0x28 0x28 0x20 0x28 0x28 0x18 0x28 0x28 0x20 0x28 0x28 0x28 0x28 0x28 0x20 0x28 0x28 0x18 0x28 0x28 0x18 0x28 0x28 0x18 0x28 0x28 0x18 0x20 0x28 0x18 0x18 0x28 0x20 0x18 0x28 0x28 0x18 0x28 0x20 0x18 0x28 0x18 0x18 0x28 0x18 0x20 0x28 0x18 0x28 0x28 0x18 0x20 0x28 0x18 0x18 0x28 0x18 0x20 0x28 0x18 0x28 0x28 0x10 0x28 0x28 0x08 0x28 0x28 0x10 0x28 0x28 0x18 0x28 0x28 0x18 0x28 0x28 0x18 0x28 0x30 0x18 0x28 0x38 0x18 0x28 0x30 0x18 0x20 0x28 0x18 0x18 0x28 0x18 0x20 0x28 0x18 0x28 0x28 0x18 0x20 0x28 0x18 0x18 0x28 0x18 0x20 0x28 0x18 0x28 0x28 0x10 0x20 0x28 0x08 0x18 0x28 0x10 0x20 0x28 0x18 0x28 0x28 0x10 0x20 0x28 0x08 0x18 0x28 0x10 0x20 0x28 0x18 0x28 0x28 0x10 0x20 0x28 0x08 0x18 0x28 0x10 0x20 0x28 0x18 0x28 0x28 0x10 0x20 0x28 0x08 0x18 0x28 0x10 0x20 0x28 0x18 0x28 0x20 0x10 0x20 0x18 0x08 0x18 0x20 0x10 0x20 0x28 0x18 0x28 0x28 0x10 0x20 0x28 0x08 0x18 0x28 0x10 0x20 0x28 0x18 0x28 0x20 0x10 0x20 0x18 0x08 0x18 0x20 0x10 0x20 0x28 0x18 0x28 0x20 0x10 0x20 0x18 0x08 0x18 0x20 0x10 0x20 0x28 0x18 0x28 0x20 0x10 0x20 0x18 0x08 0x18 0x20 0x10 0x20 0x28 0x18 0x28 0x20 0x10 0x20 0x18 0x08 0x18 0x50 0x48 0x50 0x20 0x18 0x10 0x1c 0x18 0x18 0x1c 0x1c 0x24 0x20 0x18 0x24 0x2c 0x1c 0x2c 0x34 0x28 0x34 0x28 0x20 0x28 0x20 0x18 0x24 0x28 0x20 0x30 0x30 0x28 0x34 0x24 0x1c 0x24 0x20 0x18 0x20 0x28 0x20 0x28 0x30 0x28 0x30 0x28 0x20 0x28 0x28 0x18 0x28 0x34 0x1c 0x34 0x3c 0x28 0x38 0x30 0x20 0x28 0x24 0x18 0x1c 0x28 0x20 0x20 0x30 0x28 0x2c 0x28 0x20 0x28 0x1c 0x18 0x1c 0x20 0x20 0x20 0x2c 0x28 0x2c 0x28 0x20 0x28 0x24 0x18 0x24 0x2c 0x1c 0x2c 0x34 0x28 0x30 0x28 0x20 0x20 0x20 0x18 0x18 0x28 0x20 0x20 0x30 0x28 0x2c 0x28 0x20 0x28 0x24 0x18 0x20 0x2c 0x1c 0x24 0x34 0x28 0x2c 0x28 0x20 0x20 0x20 0x18 0x1c 0x20 0x18 0x20 0x24 0x18 0x24 0x28 0x18 0x28 0x28 0x18 0x28 0x2c 0x1c 0x2c 0x34 0x28 0x34 0x28 0x20 0x28 0x24 0x18 0x24 0x2c 0x1c 0x2c 0x34 0x28 0x30 0x28 0x20 0x20 0x24 0x18 0x20 0x2c 0x1c 0x2c 0x34 0x28 0x30 0x28 0x20 0x20 0x20 0x18 0x1c 0x24 0x1c 0x24 0x34 0x28 0x30 0x2c 0x1c 0x24 0x28 0x18 0x20 0x2c 0x1c 0x24 0x38 0x28 0x30 0x2c 0x1c 0x24 0x24 0x18 0x20 0x24 0x1c 0x24 0x34 0x28 0x30 0x2c 0x1c 0x24 0x24 0x18 0x20 0x24 0x1c 0x24 0x34 0x28 0x30 0x2c 0x1c 0x24 0x28 0x18 0x20 0x2c 0x1c 0x24 0x34 0x28 0x30 0x24 0x1c 0x24 0x20 0x18 0x24 0x24 0x1c 0x2c 0x34 0x28 0x34 0x2c 0x1c 0x24 0x24 0x18 0x20 0x24 0x1c 0x24 0x30 0x28 0x34 0x20 0x18 0x28 0x20 0x18 0x24 0x20 0x18 0x20 0x20 0x18 0x20 0x1c 0x14 0x1c 0x20 0x18 0x20 0x24 0x1c 0x24 0x30 0x28 0x34 0x20 0x18 0x28 0x20 0x18 0x24 0x20 0x18 0x20 0x20 0x18 0x20 0x18 0x10 0x18 0x0c 0x08 0x0c 0x18 0x18 0x08 0x1c 0x1c 0x14 0x28 0x28 0x28 0x28 0x20 0x28 0x28 0x18 0x28 0x2c 0x24 0x2c 0x28 0x28 0x28 0x28 0x20 0x28 0x28 0x18 0x28 0x28 0x20 0x28 0x28 0x28 0x28 0x24 0x24 0x24 0x28 0x28 0x28 0x28 0x28 0x28 0x28 0x28 0x28 0x28 0x20 0x28 0x28 0x18 0x28 0x30 0x20 0x28 0x38 0x28 0x28 0x30 0x20 0x20 0x28 0x18 0x18 0x2c 0x24 0x24 0x28 0x28 0x28 0x20 0x20 0x20 0x18 0x18 0x18 0x24 0x24 0x24 0x28 0x28 0x28 0x28 0x20 0x28 0x28 0x18 0x28 0x28 0x20 0x28 0x28 0x28 0x28 0x28 0x20 0x28 0x28 0x18 0x28 0x28 0x20 0x30 0x28 0x28 0x38 0x28 0x20 0x28 0x28 0x18 0x18 0x28 0x20 0x20 0x28 0x28 0x28 0x20 0x20 0x20 0x18 0x18 0x18 0x1c 0x1c 0x1c 0x28 0x28 0x28 0x28 0x20 0x28 0x28 0x18 0x28 0x28 0x20 0x28 0x28 0x28 0x28 0x20 0x20 0x28 0x18 0x18 0x28 0x20 0x20 0x28 0x28 0x28 0x28 0x28 0x20 0x28 0x28 0x18 0x28 0x28 0x20 0x28 0x28 0x28 0x28 0x20 0x20 0x20 0x18 0x18 0x18 0x20 0x20 0x20 0x28 0x28 0x28 0x28 0x20 0x20 0x28 0x18 0x18 0x28 0x20 0x20 0x28 0x28 0x28 0x20 0x20 0x20 0x18 0x18 0x18 0x20 0x20 0x20 0x28 0x28 0x28 0x20 0x20 0x20 0x18 0x18 0x18 0x20 0x20 0x20 0x28 0x28 0x28 0x28 0x20 0x20 0x28 0x18 0x18 0x28 0x20 0x20 0x28 0x28 0x28 0x20 0x20 0x28 0x18 0x18 0x28 0x20 0x20 0x28 0x28 0x28 0x28 0x20 0x20 0x20 0x18 0x18 0x18 0x1c 0x1c 0x24 0x18 0x18 0x28 0x1c 0x1c 0x24 0x18 0x18 0x18 0x18 0x18 0x18 0x18 0x18 0x18 0x18 0x18 0x18 0x18 0x18 0x18 0x1c 0x1c 0x24 0x18 0x18 0x28 0x1c 0x1c 0x24 0x18 0x18 0x18 0x18 0x18 0x18 0x18 0x18 0x18 0x10 0x10 0x10 0x20 0x20 0x10 0x1c 0x18 0x14 0x28 0x20 0x28 0x30 0x28 0x30 0x2c 0x24 0x2c 0x2c 0x28 0x30 0x24 0x24 0x2c 0x28 0x28 0x2c 0x24 0x24 0x24 0x1c 0x18 0x1c 0x28 0x20 0x28 0x2c 0x28 0x2c 0x28 0x28 0x28 0x28 0x28 0x2c 0x24 0x24 0x2c 0x2c 0x28 0x30 0x28 0x20 0x28 0x24 0x18 0x20 0x30 0x20 0x28 0x30 0x28 0x28 0x28 0x28 0x20 0x2c 0x28 0x28 0x2c 0x24 0x2c 0x2c 0x28 0x2c 0x24 0x24 0x24 0x28 0x28 0x28 0x28 0x28 0x28 0x2c 0x28 0x2c 0x28 0x20 0x28 0x20 0x18 0x20 0x28 0x20 0x28 0x30 0x28 0x30 0x28 0x20 0x28 0x1c 0x18 0x20 0x24 0x24 0x2c 0x2c 0x28 0x2c 0x28 0x20 0x20 0x20 0x18 0x18 0x28 0x20 0x20 0x30 0x28 0x2c 0x24 0x1c 0x24 0x20 0x18 0x1c 0x28 0x20 0x20 0x30 0x28 0x2c 0x28 0x20 0x28 0x20 0x18 0x1c 0x28 0x20 0x20 0x2c 0x28 0x2c 0x20 0x20 0x28 0x1c 0x18 0x20 0x28 0x20 0x28 0x30 0x28 0x30 0x28 0x20 0x28 0x1c 0x18 0x20 0x20 0x20 0x28 0x28 0x28 0x2c 0x20 0x20 0x20 0x18 0x18 0x18 0x20 0x20 0x20 0x2c 0x28 0x28 0x28 0x20 0x20 0x1c 0x18 0x18 0x20 0x20 0x20 0x28 0x28 0x28 0x20 0x20 0x20 0x18 0x18 0x18 0x20 0x20 0x20 0x28 0x28 0x28 0x20 0x20 0x20 0x18 0x18 0x18 0x20 0x20 0x20 0x2c 0x28 0x28 0x28 0x20 0x20 0x20 0x18 0x18 0x28 0x20 0x20 0x2c 0x28 0x2c 0x20 0x20 0x28 0x18 0x18 0x1c 0x20 0x20 0x20 0x28 0x28 0x28 0x20 0x20 0x20 0x18 0x18 0x1c 0x1c 0x1c 0x24 0x24 0x28 0x2c 0x18 0x20 0x20 0x14 0x18 0x18 0x18 0x18 0x18 0x18 0x18 0x1c 0x18 0x18 0x20 0x18 0x18 0x20 0x1c 0x1c 0x24 0x28 0x28 0x30 0x1c 0x1c 0x24 0x1c 0x18 0x20 0x1c 0x14 0x1c 0x1c 0x18 0x1c 0x28 0x28 0x18 0x24 0x1c 0x1c 0x28 0x18 0x28 0x28 0x20 0x28 0x28 0x28 0x28 0x24 0x24 0x2c 0x18 0x18 0x28 0x1c 0x24 0x24 0x28 0x38 0x28 0x24 0x24 0x24 0x28 0x18 0x28 0x28 0x20 0x28 0x28 0x28 0x28 0x24 0x24 0x2c 0x18 0x18 0x28 0x24 0x24 0x2c 0x28 0x28 0x28 0x28 0x20 0x28 0x28 0x18 0x28 0x28 0x28 0x28 0x28 0x38 0x28 0x28 0x28 0x28 0x28 0x18 0x28 0x2c 0x24 0x2c 0x28 0x28 0x28 0x28 0x28 0x28 0x28 0x28 0x28 0x24 0x24 0x24 0x28 0x28 0x28 0x28 0x20 0x28 0x28 0x18 0x28 0x2c 0x24 0x2c 0x28 0x28 0x28 0x24 0x24 0x24 0x28 0x28 0x28 0x24 0x24 0x24 0x28 0x28 0x28 0x28 0x20 0x20 0x28 0x18 0x18 0x2c 0x1c 0x24 0x28 0x18 0x28 0x2c 0x1c 0x24 0x28 0x18 0x18 0x28 0x20 0x20 0x28 0x28 0x28 0x28 0x20 0x20 0x28 0x18 0x18 0x28 0x20 0x20 0x28 0x28 0x28 0x28 0x20 0x28 0x28 0x18 0x28 0x28 0x20 0x28 0x28 0x28 0x28 0x20 0x20 0x28 0x18 0x18 0x28 0x20 0x20 0x28 0x28 0x28 0x28 0x20 0x20 0x20 0x18 0x18 0x18 0x20 0x20 0x20 0x28 0x28 0x28 0x20 0x20 0x20 0x18 0x18 0x18 0x20 0x20 0x20 0x28 0x28 0x28 0x20 0x20 0x20 0x18 0x18 0x18 0x20 0x20 0x20 0x28 0x28 0x28 0x20 0x20 0x20 0x18 0x18 0x18 0x20 0x20 0x20 0x28 0x28 0x28 0x28 0x20 0x20 0x28 0x18 0x18 0x28 0x20 0x20 0x28 0x28 0x28 0x20 0x20 0x20 0x18 0x18 0x18 0x20 0x20 0x20 0x28 0x28 0x28 0x20 0x20 0x20 0x18 0x18 0x18 0x18 0x20 0x20 0x18 0x28 0x28 0x18 0x20 0x20 0x18 0x18 0x18 0x18 0x18 0x20 0x18 0x18 0x28 0x18 0x18 0x20 0x18 0x18 0x18 0x1c 0x1c 0x24 0x18 0x18 0x28 0x1c 0x14 0x24 0x18 0x08 0x18 0x20 0x18 0x20 0x28 0x20 0x10 0x20 0x18 0x14 0x24 0x1c 0x24 0x20 0x18 0x20 0x28 0x20 0x28 0x2c 0x28 0x30 0x20 0x20 0x28 0x18 0x18 0x1c 0x24 0x24 0x24 0x2c 0x28 0x2c 0x28 0x20 0x28 0x1c 0x18 0x18 0x24 0x24 0x1c 0x24 0x28 0x28 0x20 0x28 0x30 0x28 0x28 0x30 0x2c 0x24 0x2c 0x30 0x28 0x30 0x2c 0x24 0x2c 0x28 0x28 0x28 0x24 0x2c 0x24 0x2c 0x28 0x28 0x34 0x24 0x2c 0x30 0x28 0x28 0x28 0x28 0x20 0x28 0x28 0x24 0x24 0x24 0x24 0x18 0x18 0x18 0x24 0x24 0x24 0x2c 0x28 0x28 0x2c 0x24 0x24 0x30 0x28 0x2c 0x2c 0x24 0x2c 0x2c 0x28 0x2c 0x24 0x24 0x24 0x18 0x18 0x1c 0x20 0x20 0x28 0x2c 0x28 0x2c 0x28 0x20 0x20 0x24 0x18 0x20 0x2c 0x1c 0x2c 0x34 0x28 0x30 0x28 0x20 0x20 0x20 0x18 0x1c 0x28 0x20 0x28 0x30 0x28 0x2c 0x28 0x20 0x20 0x20 0x18 0x18 0x28 0x20 0x20 0x30 0x28 0x2c 0x28 0x20 0x28 0x20 0x18 0x20 0x28 0x20 0x28 0x2c 0x28 0x30 0x20 0x20 0x28 0x1c 0x18 0x20 0x28 0x20 0x28 0x2c 0x28 0x2c 0x20 0x20 0x20 0x1c 0x18 0x18 0x28 0x20 0x20 0x2c 0x28 0x28 0x20 0x20 0x20 0x18 0x18 0x1c 0x20 0x20 0x28 0x28 0x28 0x2c 0x20 0x20 0x20 0x18 0x18 0x18 0x20 0x20 0x20 0x28 0x28 0x28 0x20 0x20 0x20 0x18 0x18 0x18 0x20 0x20 0x20 0x2c 0x28 0x28 0x28 0x20 0x20 0x1c 0x18 0x18 0x20 0x20 0x20 0x28 0x28 0x24 0x20 0x20 0x18 0x18 0x18 0x14 0x20 0x20 0x20 0x28 0x28 0x28 0x20 0x20 0x20 0x14 0x18 0x18 0x18 0x20 0x20 0x24 0x28 0x2c 0x1c 0x1c 0x24 0x18 0x18 0x20 0x18 0x18 0x20 0x14 0x18 0x1c 0x14 0x1c 0x1c 0x14 0x18 0x1c 0x18 0x18 0x20 0x1c 0x18 0x24 0x1c 0x14 0x24 0x1c 0x18 0x20 0x28 0x18 0x08 0x24 0x1c 0x14 0x28 0x28 0x28 0x28 0x20 0x28 0x28 0x18 0x28 0x28 0x20 0x28 0x28 0x28 0x28 0x28 0x20 0x28 0x28 0x18 0x28 0x28 0x20 0x28 0x28 0x28 0x28 0x24 0x24 0x1c 0x28 0x28 0x18 0x24 0x2c 0x24 0x28 0x38 0x38 0x28 0x28 0x30 0x28 0x18 0x28 0x28 0x20 0x28 0x28 0x28 0x28 0x28 0x28 0x28 0x28 0x28 0x28 0x30 0x28 0x28 0x38 0x28 0x28 0x34 0x2c 0x24 0x28 0x28 0x18 0x28 0x28 0x20 0x28 0x28 0x28 0x24 0x24 0x24 0x28 0x28 0x28 0x24 0x24 0x1c 0x28 0x28 0x18 0x2c 0x24 0x24 0x28 0x18 0x28 0x28 0x20 0x28 0x28 0x28 0x28 0x20 0x20 0x28 0x18 0x18 0x28 0x20 0x20 0x28 0x28 0x28 0x28 0x28 0x20 0x28 0x28 0x18 0x28 0x28 0x20 0x28 0x28 0x28 0x28 0x28 0x20 0x28 0x28 0x18 0x28 0x28 0x20 0x28 0x28 0x28 0x28 0x28 0x20 0x20 0x28 0x18 0x18 0x28 0x20 0x20 0x28 0x28 0x28 0x28 0x20 0x28 0x28 0x18 0x28 0x28 0x20 0x28 0x28 0x28 0x28 0x28 0x20 0x28 0x28 0x18 0x28 0x2c 0x24 0x2c 0x28 0x28 0x28 0x28 0x20 0x20 0x28 0x18 0x18 0x28 0x20 0x20 0x28 0x28 0x28 0x20 0x20 0x28 0x18 0x18 0x28 0x20 0x20 0x28 0x28 0x28 0x28 0x20 0x20 0x20 0x18 0x18 0x18 0x20 0x20 0x20 0x28 0x28 0x28 0x20 0x20 0x20 0x18 0x18 0x18 0x20 0x20 0x20 0x28 0x28 0x28 0x20 0x20 0x20 0x18 0x18 0x18 0x20 0x20 0x18 0x28 0x28 0x18 0x20 0x20 0x18 0x18 0x18 0x18 0x20 0x20 0x20 0x28 0x28 0x28 0x20 0x20 0x20 0x18 0x18 0x18 0x1c 0x1c 0x24 0x18 0x18 0x28 0x1c 0x1c 0x24 0x18 0x18 0x18 0x14 0x1c 0x1c 0x18 0x28 0x28 0x18 0x20 0x20 0x18 0x18 0x18 0x18 0x18 0x20 0x18 0x18 0x28 0x18 0x18 0x20 0x28 0x20 0x10 0x20 0x18 0x14 0x28 0x20 0x28 0x30 0x28 0x30 0x28 0x20 0x28 0x20 0x18 0x20 0x28 0x20 0x28 0x30 0x28 0x30 0x28 0x20 0x28 0x20 0x18 0x1c 0x28 0x20 0x20 0x2c 0x28 0x24 0x28 0x28 0x20 0x24 0x28 0x24 0x24 0x2c 0x2c 0x2c 0x28 0x2c 0x30 0x20 0x28 0x24 0x18 0x1c 0x28 0x20 0x20 0x2c 0x28 0x24 0x2c 0x2c 0x24 0x2c 0x28 0x24 0x34 0x2c 0x2c 0x38 0x38 0x30 0x28 0x30 0x20 0x28 0x28 0x24 0x2c 0x24 0x2c 0x30 0x28 0x2c 0x2c 0x24 0x24 0x1c 0x18 0x14 0x24 0x24 0x1c 0x2c 0x28 0x28 0x28 0x20 0x28 0x20 0x18 0x20 0x28 0x20 0x28 0x2c 0x28 0x30 0x20 0x20 0x28 0x18 0x18 0x20 0x20 0x20 0x28 0x2c 0x28 0x30 0x28 0x20 0x28 0x20 0x18 0x20 0x28 0x20 0x28 0x30 0x28 0x30 0x28 0x20 0x28 0x20 0x18 0x20 0x28 0x20 0x28 0x30 0x28 0x2c 0x28 0x20 0x20 0x20 0x18 0x1c 0x28 0x20 0x28 0x30 0x28 0x30 0x28 0x20 0x28 0x20 0x18 0x1c 0x28 0x20 0x20 0x30 0x28 0x2c 0x2c 0x24 0x2c 0x30 0x28 0x30 0x2c 0x24 0x2c 0x30 0x28 0x2c 0x28 0x20 0x20 0x20 0x18 0x18 0x28 0x20 0x20 0x2c 0x28 0x28 0x20 0x20 0x20 0x18 0x18 0x1c 0x20 0x20 0x28 0x28 0x28 0x2c 0x20 0x20 0x20 0x18 0x18 0x18 0x20 0x20 0x20 0x28 0x28 0x28 0x20 0x20 0x20 0x18 0x18 0x18 0x20 0x20 0x20 0x28 0x28 0x28 0x20 0x20 0x20 0x18 0x18 0x18 0x20 0x20 0x20 0x28 0x28 0x28 0x20 0x20 0x20 0x18 0x18 0x18 0x20 0x20 0x20 0x28 0x28 0x28 0x20 0x20 0x20 0x18 0x18 0x1c 0x1c 0x1c 0x24 0x24 0x28 0x2c 0x18 0x20 0x20 0x10 0x18 0x18 0x18 0x20 0x20 0x24 0x28 0x2c 0x1c 0x1c 0x24 0x18 0x18 0x20 0x18 0x18 0x20 0x18 0x18 0x1c 0x28 0x28 0x18 0x28 0x20 0x20 0x28 0x18 0x28 0x28 0x20 0x28 0x28 0x28 0x28 0x28 0x20 0x28 0x28 0x18 0x28 0x2c 0x24 0x2c 0x28 0x28 0x28 0x28 0x20 0x20 0x28 0x18 0x18 0x28 0x20 0x20 0x28 0x28 0x28 0x28 0x28 0x28 0x28 0x28 0x28 0x30 0x28 0x28 0x38 0x28 0x28 0x30 0x20 0x20 0x28 0x18 0x18 0x2c 0x24 0x1c 0x38 0x38 0x28 0x2c 0x2c 0x24 0x28 0x28 0x28 0x28 0x30 0x28 0x28 0x38 0x28 0x28 0x28 0x28 0x28 0x18 0x28 0x34 0x24 0x2c 0x38 0x28 0x28 0x2c 0x24 0x24 0x28 0x28 0x28 0x28 0x28 0x28 0x28 0x28 0x28 0x28 0x20 0x28 0x28 0x18 0x28 0x28 0x20 0x28 0x28 0x28 0x28 0x20 0x20 0x28 0x18 0x18 0x28 0x20 0x20 0x28 0x28 0x28 0x28 0x28 0x20 0x28 0x28 0x18 0x28 0x28 0x20 0x28 0x28 0x28 0x28 0x28 0x20 0x28 0x28 0x18 0x28 0x2c 0x24 0x2c 0x28 0x28 0x28 0x28 0x20 0x28 0x28 0x18 0x28 0x28 0x20 0x28 0x28 0x28 0x28 0x28 0x20 0x20 0x28 0x18 0x18 0x28 0x20 0x20 0x28 0x28 0x28 0x2c 0x24 0x2c 0x28 0x18 0x28 0x28 0x20 0x28 0x28 0x28 0x28 0x28 0x20 0x20 0x28 0x18 0x18 0x28 0x20 0x18 0x28 0x28 0x18 0x20 0x20 0x20 0x18 0x18 0x28 0x20 0x20 0x28 0x28 0x28 0x28 0x20 0x20 0x20 0x18 0x18 0x18 0x20 0x20 0x20 0x28 0x28 0x28 0x20 0x20 0x20 0x18 0x18 0x18 0x20 0x20 0x20 0x28 0x28 0x28 0x20 0x20 0x28 0x18 0x18 0x28 0x20 0x20 0x28 0x28 0x28 0x28 0x20 0x20 0x20 0x18 0x18 0x18 0x20 0x20 0x20 0x28 0x28 0x28 0x20 0x20 0x20 0x18 0x18 0x18 0x18 0x20 0x20 0x18 0x28 0x28 0x14 0x1c 0x1c 0x18 0x18 0x18 0x1c 0x1c 0x24 0x18 0x18 0x28 0x18 0x18 0x20 0x18 0x18 0x18 0x18 0x18 0x18 0x28 0x20 0x10 0x30 0x28 0x24 0x28 0x20 0x28 0x20 0x18 0x20 0x28 0x20 0x28 0x30 0x28 0x30 0x2c 0x24 0x2c 0x30 0x28 0x30 0x2c 0x24 0x2c 0x34 0x28 0x2c 0x30 0x20 0x20 0x20 0x18 0x14 0x24 0x24 0x1c 0x28 0x28 0x24 0x28 0x28 0x28 0x2c 0x28 0x28 0x30 0x28 0x28 0x30 0x28 0x28 0x28 0x20 0x20 0x20 0x18 0x18 0x2c 0x24 0x24 0x2c 0x28 0x28 0x28 0x28 0x28 0x24 0x28 0x24 0x24 0x2c 0x24 0x24 0x28 0x28 0x28 0x28 0x30 0x30 0x28 0x30 0x34 0x24 0x2c 0x30 0x28 0x28 0x2c 0x2c 0x24 0x28 0x28 0x24 0x28 0x28 0x28 0x28 0x28 0x2c 0x24 0x24 0x2c 0x18 0x18 0x1c 0x24 0x24 0x24 0x24 0x28 0x28 0x1c 0x24 0x24 0x18 0x18 0x1c 0x28 0x20 0x28 0x34 0x28 0x30 0x30 0x20 0x28 0x24 0x18 0x20 0x28 0x20 0x28 0x34 0x28 0x30 0x34 0x24 0x2c 0x30 0x28 0x2c 0x28 0x28 0x28 0x30 0x28 0x2c 0x30 0x20 0x28 0x24 0x18 0x1c 0x28 0x20 0x20 0x30 0x28 0x28 0x28 0x20 0x20 0x20 0x18 0x18 0x28 0x20 0x20 0x30 0x28 0x2c 0x28 0x20 0x28 0x20 0x18 0x1c 0x28 0x20 0x20 0x30 0x28 0x28 0x28 0x20 0x20 0x1c 0x18 0x18 0x20 0x20 0x20 0x28 0x28 0x2c 0x20 0x20 0x28 0x18 0x18 0x20 0x20 0x20 0x28 0x28 0x28 0x2c 0x20 0x20 0x20 0x1c 0x18 0x18 0x28 0x20 0x20 0x2c 0x28 0x28 0x20 0x20 0x20 0x18 0x18 0x1c 0x20 0x20 0x28 0x28 0x28 0x30 0x20 0x20 0x28 0x18 0x18 0x1c 0x20 0x20 0x20 0x28 0x28 0x28 0x20 0x20 0x20 0x18 0x18 0x18 0x20 0x20 0x20 0x28 0x28 0x28 0x20 0x20 0x20 0x14 0x18 0x18 0x14 0x1c 0x1c 0x14 0x18 0x1c 0x18 0x18 0x20 0x1c 0x18 0x24 0x1c 0x14 0x24 0x1c 0x18 0x1c 0x1c 0x1c 0x14 0x18 0x18 0x14 0x28 0x18 0x08 0x28 0x20 0x18 0x28 0x28 0x28 0x28 0x20 0x28 0x28 0x18 0x28 0x28 0x20 0x28 0x28 0x28 0x28 0x2c 0x24 0x2c 0x28 0x18 0x28 0x30 0x20 0x28 0x38 0x28 0x28 0x2c 0x24 0x1c 0x28 0x28 0x18 0x24 0x24 0x1c 0x28 0x28 0x28 0x28 0x28 0x28 0x28 0x28 0x28 0x24 0x24 0x24 0x28 0x28 0x28 0x28 0x20 0x28 0x28 0x18 0x28 0x2c 0x24 0x2c 0x28 0x28 0x28 0x2c 0x2c 0x2c 0x28 0x28 0x28 0x20 0x28 0x28 0x28 0x38 0x38 0x2c 0x2c 0x34 0x28 0x18 0x28 0x30 0x28 0x28 0x38 0x38 0x28 0x30 0x30 0x28 0x28 0x28 0x28 0x24 0x2c 0x2c 0x28 0x38 0x38 0x20 0x28 0x28 0x28 0x28 0x28 0x24 0x2c 0x24 0x28 0x38 0x28 0x28 0x28 0x28 0x28 0x18 0x28 0x34 0x24 0x2c 0x38 0x28 0x28 0x30 0x20 0x28 0x28 0x18 0x28 0x34 0x24 0x2c 0x38 0x28 0x28 0x30 0x28 0x28 0x28 0x28 0x28 0x30 0x28 0x28 0x38 0x28 0x28 0x30 0x20 0x20 0x28 0x18 0x18 0x2c 0x24 0x24 0x28 0x28 0x28 0x28 0x20 0x20 0x28 0x18 0x18 0x28 0x20 0x20 0x28 0x28 0x28 0x28 0x20 0x20 0x28 0x18 0x18 0x28 0x20 0x20 0x28 0x28 0x28 0x20 0x20 0x28 0x18 0x18 0x28 0x20 0x20 0x28 0x28 0x28 0x28 0x20 0x20 0x28 0x18 0x18 0x28 0x20 0x20 0x28 0x28 0x28 0x28 0x28 0x20 0x20 0x28 0x18 0x18 0x28 0x20 0x20 0x28 0x28 0x28 0x20 0x20 0x28 0x18 0x18 0x28 0x20 0x20 0x28 0x28 0x28 0x28 0x20 0x20 0x20 0x18 0x18 0x18 0x20 0x20 0x20 0x28 0x28 0x28 0x20 0x20 0x20 0x18 0x18 0x18 0x20 0x20 0x20 0x28 0x28 0x28 0x20 0x20 0x20 0x18 0x18 0x18 0x18 0x18 0x20 0x18 0x18 0x28 0x1c 0x14 0x24 0x18 0x08 0x18 0x20 0x18 0x18 0x28 0x28 0x18 0x18 0x18 0x10 0x28 0x20 0x10 0x1c 0x18 0x10 0x24 0x24 0x24 0x2c 0x28 0x28 0x2c 0x24 0x24 0x20 0x18 0x1c 0x28 0x20 0x28 0x30 0x28 0x34 0x28 0x20 0x30 0x20 0x18 0x20 0x2c 0x24 0x24 0x2c 0x28 0x24 0x24 0x24 0x1c 0x18 0x18 0x14 0x24 0x24 0x24 0x28 0x28 0x24 0x28 0x28 0x20 0x18 0x18 0x14 0x24 0x24 0x24 0x30 0x28 0x24 0x38 0x28 0x20 0x30 0x28 0x34 0x30 0x30 0x50 0x48 0x38 0x6c 0x4c 0x2c 0x74 0x24 0x18 0x44 0x20 0x28 0x38 0x44 0x38 0x60 0x4c 0x2c 0x6c 0x38 0x28 0x50 0x3c 0x3c 0x4c 0x40 0x38 0x58 0x40 0x30 0x60 0x2c 0x28 0x4c 0x2c 0x34 0x4c 0x2c 0x28 0x48 0x3c 0x2c 0x54 0x2c 0x28 0x44 0x2c 0x34 0x44 0x38 0x38 0x50 0x34 0x2c 0x4c 0x30 0x28 0x40 0x30 0x28 0x38 0x34 0x28 0x3c 0x34 0x24 0x3c 0x38 0x28 0x34 0x38 0x28 0x28 0x34 0x28 0x28 0x30 0x28 0x28 0x30 0x28 0x28 0x30 0x28 0x28 0x34 0x28 0x28 0x34 0x24 0x24 0x34 0x28 0x2c 0x2c 0x24 0x2c 0x30 0x28 0x28 0x2c 0x24 0x1c 0x20 0x18 0x14 0x28 0x20 0x20 0x30 0x28 0x28 0x28 0x20 0x20 0x20 0x18 0x1c 0x28 0x20 0x28 0x2c 0x28 0x30 0x20 0x20 0x28 0x1c 0x18 0x20 0x28 0x20 0x28 0x2c 0x28 0x30 0x20 0x20 0x28 0x18 0x18 0x1c 0x20 0x20 0x20 0x2c 0x28 0x28 0x28 0x20 0x20 0x1c 0x18 0x18 0x20 0x20 0x20 0x28 0x28 0x2c 0x20 0x20 0x28 0x18 0x18 0x20 0x20 0x20 0x28 0x28 0x28 0x30 0x20 0x20 0x28 0x18 0x18 0x1c 0x20 0x20 0x20 0x28 0x28 0x28 0x20 0x20 0x20 0x18 0x18 0x18 0x20 0x20 0x20 0x2c 0x28 0x2c 0x24 0x1c 0x24 0x1c 0x18 0x20 0x18 0x18 0x20 0x1c 0x18 0x24 0x1c 0x14 0x24 0x1c 0x18 0x1c 0x1c 0x1c 0x14 0x18 0x18 0x14 0x28 0x28 0x18 0x24 0x24 0x1c 0x28 0x28 0x28 0x2c 0x2c 0x24 0x38 0x38 0x28 0x2c 0x24 0x24 0x28 0x18 0x28 0x2c 0x24 0x34 0x28 0x28 0x38 0x24 0x24 0x2c 0x28 0x28 0x28 0x24 0x24 0x24 0x28 0x28 0x28 0x24 0x24 0x24 0x28 0x28 0x28 0x28 0x28 0x20 0x38 0x38 0x28 0x2c 0x2c 0x24 0x28 0x28 0x28 0x28 0x20 0x10 0x68 0x58 0x38 0x68 0x60 0x70 0x68 0x68 0xa8 0x84 0x64 0xcc 0x78 0x38 0xc8 0x80 0x60 0xb8 0x68 0x68 0x88 0x7c 0x64 0xac 0x68 0x38 0xa8 0x60 0x48 0x98 0x58 0x58 0x88 0x58 0x48 0x90 0x58 0x38 0x98 0x50 0x40 0x88 0x48 0x48 0x78 0x50 0x40 0x80 0x58 0x38 0x88 0x48 0x38 0x78 0x38 0x38 0x68 0x38 0x38 0x68 0x38 0x38 0x68 0x30 0x30 0x58 0x28 0x28 0x48 0x30 0x28 0x48 0x38 0x28 0x48 0x38 0x28 0x38 0x38 0x28 0x28 0x38 0x28 0x28 0x38 0x28 0x28 0x30 0x28 0x28 0x28 0x28 0x28 0x30 0x28 0x28 0x38 0x28 0x28 0x30 0x20 0x28 0x28 0x18 0x28 0x30 0x28 0x28 0x38 0x38 0x28 0x30 0x28 0x20 0x28 0x18 0x18 0x28 0x20 0x20 0x28 0x28 0x28 0x28 0x20 0x28 0x28 0x18 0x28 0x34 0x2c 0x34 0x28 0x28 0x28 0x28 0x20 0x28 0x28 0x18 0x28 0x2c 0x24 0x2c 0x28 0x28 0x28 0x20 0x20 0x20 0x18 0x18 0x18 0x20 0x20 0x20 0x28 0x28 0x28 0x20 0x20 0x20 0x18 0x18 0x18 0x20 0x20 0x20 0x28 0x28 0x28 0x20 0x20 0x28 0x18 0x18 0x28 0x20 0x20 0x30 0x28 0x28 0x38 0x20 0x20 0x28 0x18 0x18 0x18 0x20 0x20 0x20 0x28 0x28 0x28 0x20 0x20 0x20 0x18 0x18 0x18 0x24 0x1c 0x24 0x28 0x18 0x28 0x24 0x1c 0x24 0x18 0x18 0x18 0x18 0x18 0x20 0x18 0x18 0x28 0x18 0x18 0x20 0x18 0x18 0x18 0x18 0x18 0x18 0x28 0x28 0x18 0x2c 0x28 0x20 0x30 0x28 0x28 0x28 0x28 0x20 0x24 0x2c 0x1c 0x28 0x28 0x24 0x2c 0x24 0x2c 0x30 0x28 0x34 0x2c 0x24 0x34 0x2c 0x28 0x30 0x24 0x24 0x24 0x18 0x18 0x14 0x24 0x24 0x1c 0x2c 0x28 0x24 0x2c 0x24 0x24 0x20 0x18 0x14 0x30 0x28 0x20 0x40 0x38 0x34 0x30 0x28 0x28 0x1c 0x18 0x20 0x58 0x58 0x10 0x68 0x68 0x54 0x94 0x94 0xb4 0xcc 0xb8 0xf0 0xe8 0xc0 0xff 0xdc 0xc8 0xf8 0xc0 0xc0 0xd0 0xc8 0xb8 0xdc 0xe0 0xc0 0xf8 0xd8 0xc8 0xf0 0x98 0x98 0xb0 0x88 0x78 0xac 0xa8 0x88 0xd8 0xac 0x98 0xc4 0xb0 0xa8 0xb0 0xc4 0xb8 0xd0 0xd0 0xc0 0xe8 0xd0 0xc8 0xe8 0xc0 0xc0 0xd8 0xb8 0xb8 0xd0 0xb8 0xb8 0xd0 0xbc 0xb8 0xcc 0xb8 0xb0 0xc0 0xb0 0xa8 0xb8 0xb8 0xb0 0xc0 0xc4 0xb8 0xc0 0xc0 0xb0 0xb0 0xb8 0xa8 0xac 0xb0 0xa0 0xa8 0xa0 0x98 0x9c 0x90 0x90 0x90 0x90 0x88 0x88 0x98 0x88 0x88 0x94 0x88 0x8c 0x80 0x78 0x80 0x6c 0x68 0x68 0x68 0x68 0x60 0x6c 0x68 0x64 0x68 0x60 0x60 0x5c 0x58 0x58 0x58 0x58 0x58 0x5c 0x58 0x5c 0x58 0x50 0x58 0x4c 0x48 0x4c 0x48 0x48 0x48 0x4c 0x48 0x4c 0x40 0x38 0x40 0x34 0x28 0x44 0x38 0x28 0x58 0x30 0x28 0x40 0x20 0x20 0x20 0x1c 0x18 0x18 0x28 0x20 0x20 0x2c 0x28 0x28 0x20 0x20 0x20 0x1c 0x18 0x18 0x28 0x20 0x20 0x2c 0x28 0x2c 0x20 0x20 0x28 0x18 0x18 0x20 0x20 0x20 0x28 0x28 0x28 0x2c 0x20 0x20 0x20 0x18 0x18 0x18 0x20 0x20 0x20 0x28 0x28 0x28 0x20 0x20 0x20 0x1c 0x18 0x1c 0x24 0x1c 0x24 0x30 0x28 0x30 0x24 0x1c 0x24 0x1c 0x18 0x20 0x18 0x18 0x20 0x18 0x18 0x20 0x18 0x18 0x20 0x18 0x18 0x1c 0x28 0x28 0x18 0x2c 0x24 0x1c 0x38 0x28 0x28 0x2c 0x2c 0x24 0x18 0x28 0x18 0x1c 0x24 0x1c 0x28 0x28 0x28 0x2c 0x24 0x2c 0x28 0x18 0x28 0x2c 0x24 0x2c 0x28 0x28 0x28 0x24 0x24 0x1c 0x28 0x28 0x18 0x30 0x28 0x20 0x38 0x28 0x28 0x30 0x20 0x20 0x28 0x18 0x18 0x38 0x28 0x28 0x38 0x28 0x28 0x20 0x20 0x20 0x78 0x88 0x18 0x58 0x60 0x28 0xc8 0xc8 0xc8 0xc8 0xc0 0xc8 0xc8 0xb8 0xc8 0xcc 0xc4 0xcc 0xc8 0xc8 0xc8 0xc8 0xc0 0xc0 0xc8 0xb8 0xb8 0xc8 0xc0 0xc0 0xc8 0xc8 0xc8 0xb4 0xa4 0xc4 0xa8 0x88 0xc8 0xb8 0xa0 0xb0 0xb8 0xa8 0x88 0xbc 0xb4 0xa4 0xb8 0xb8 0xb8 0xc0 0xc0 0xc0 0xc8 0xc8 0xc8 0xc0 0xc0 0xc0 0xb8 0xb8 0xb8 0xc0 0xb8 0xb8 0xc8 0xb8 0xb8 0xbc 0xb4 0xb4 0xb8 0xb8 0xb8 0xc0 0xb8 0xb8 0xc8 0xb8 0xb8 0xc0 0xb0 0xb8 0xb8 0xa8 0xb8 0xb0 0xa8 0xb0 0xb8 0xb8 0xb8 0xb8 0xb0 0xb0 0xb8 0xa8 0xa8 0xac 0xa4 0xa4 0xb8 0xb8 0xb8 0xb0 0xb0 0xb0 0xa8 0xa8 0xa8 0xb0 0xb0 0xb0 0xb8 0xb8 0xb8 0xb0 0xb0 0xb0 0xa8 0xa8 0xa8 0xb0 0xb0 0xb0 0xb8 0xb8 0xb8 0xb0 0xb0 0xb0 0xa8 0xa8 0xa8 0xb0 0xb0 0xb0 0xb8 0xb8 0xb8 0x80 0x70 0xa0 0x48 0x28 0x88 0x40 0x30 0x60 0x28 0x28 0x28 0x28 0x20 0x20 0x28 0x18 0x18 0x28 0x20 0x20 0x28 0x28 0x28 0x28 0x20 0x20 0x28 0x18 0x18 0x28 0x20 0x20 0x28 0x28 0x28 0x20 0x20 0x20 0x18 0x18 0x18 0x20 0x20 0x20 0x28 0x28 0x28 0x20 0x20 0x20 0x18 0x18 0x18 0x20 0x20 0x20 0x28 0x28 0x28 0x20 0x20 0x20 0x18 0x18 0x18 0x24 0x1c 0x24 0x28 0x18 0x28 0x24 0x1c 0x24 0x18 0x18 0x18 0x18 0x18 0x20 0x18 0x18 0x28 0x18 0x18 0x20 0x30 0x28 0x18 0x24 0x18 0x14 0x34 0x24 0x2c 0x40 0x38 0x38 0x28 0x28 0x20 0x18 0x18 0x14 0x24 0x24 0x24 0x2c 0x28 0x2c 0x2c 0x24 0x2c 0x30 0x28 0x30 0x2c 0x24 0x2c 0x2c 0x28 0x28 0x28 0x28 0x20 0x2c 0x28 0x24 0x30 0x28 0x28 0x30 0x28 0x24 0x30 0x28 0x20 0x30 0x28 0x24 0x30 0x28 0x28 0x28 0x28 0x20 0x80 0x88 0x18 0x58 0x58 0x20 0xc8 0xc0 0xc0 0xd0 0xc8 0xbc 0xcc 0xc4 0xac 0xd0 0xc8 0xb4 0xc8 0xc0 0xb0 0xc8 0xc8 0xa8 0xbc 0xc4 0x94 0xbc 0xb8 0x9c 0xcc 0xbc 0xb4 0xd8 0xc8 0xd4 0xd0 0xc0 0xe0 0xc8 0xb8 0xc0 0xc4 0xb4 0xa4 0xc0 0xb8 0xa8 0xbc 0xbc 0xac 0xb8 0xb8 0xb0 0xc0 0xc0 0xc0 0xc8 0xc8 0xc4 0xc0 0xc0 0xb8 0xbc 0xb8 0xb4 0xc0 0xb8 0xb8 0xc0 0xb8 0xb8 0xc0 0xb8 0xb8 0xc0 0xb8 0xb8 0xc0 0xb8 0xb8 0xc0 0xb8 0xbc 0xb8 0xb0 0xb8 0xb0 0xa8 0xb0 0xb8 0xb0 0xb8 0xc0 0xb8 0xbc 0xb8 0xb0 0xb0 0xb0 0xa8 0xa8 0xb8 0xb0 0xb0 0xbc 0xb8 0xb8 0xb0 0xb0 0xb0 0xa8 0xa8 0xa8 0xb0 0xb0 0xb0 0xb8 0xb8 0xb8 0xb0 0xb0 0xb0 0xa8 0xa8 0xa8 0xb0 0xb0 0xb0 0xb8 0xb8 0xb8 0xb0 0xb0 0xb0 0xa8 0xa8 0xa8 0xb0 0xb0 0xb0 0xc4 0xb8 0xe4 0x48 0x30 0x88 0x58 0x48 0x78 0x34 0x2c 0x34 0x30 0x28 0x2c 0x28 0x20 0x20 0x1c 0x18 0x18 0x20 0x20 0x20 0x2c 0x28 0x28 0x28 0x20 0x20 0x1c 0x18 0x1c 0x20 0x20 0x28 0x28 0x28 0x2c 0x20 0x20 0x20 0x18 0x18 0x18 0x20 0x20 0x20 0x28 0x28 0x28 0x20 0x20 0x20 0x18 0x18 0x18 0x20 0x20 0x20 0x24 0x28 0x28 0x18 0x20 0x20 0x18 0x18 0x1c 0x24 0x1c 0x24 0x2c 0x28 0x28 0x20 0x20 0x18 0x18 0x18 0x18 0x18 0x18 0x20 0x18 0x18 0x1c 0x38 0x28 0x18 0x30 0x20 0x20 0x28 0x18 0x28 0x34 0x24 0x2c 0x38 0x28 0x28 0x2c 0x24 0x24 0x28 0x28 0x28 0x28 0x28 0x28 0x28 0x28 0x28 0x2c 0x24 0x2c 0x28 0x18 0x28 0x2c 0x24 0x2c 0x28 0x28 0x28 0x28 0x28 0x28 0x28 0x28 0x28 0x2c 0x2c 0x24 0x38 0x38 0x28 0x30 0x30 0x28 0x28 0x28 0x28 0x28 0x28 0x20 0x88 0x88 0x18 0x60 0x58 0x20 0xc8 0xb8 0xb8 0xc8 0xc0 0xa0 0xc8 0xc8 0x88 0xc0 0xb8 0x88 0xb8 0xa8 0x88 0xb0 0xb8 0x78 0xb8 0xd8 0x78 0xb0 0xb0 0x78 0xc8 0xa8 0x98 0xc8 0xb8 0xb0 0xc8 0xc8 0xc8 0xc8 0xc0 0xc0 0xc8 0xb8 0xb8 0xc4 0xbc 0xac 0xc8 0xc8 0xa8 0xb8 0xb8 0xa8 0xb8 0xb8 0xb8 0xc0 0xc0 0xb8 0xc8 0xc8 0xb8 0xc0 0xc0 0xb8 0xb8 0xb8 0xb8 0xc0 0xb8 0xb8 0xc8 0xb8 0xb8 0xc0 0xb8 0xb8 0xb8 0xb8 0xb8 0xb8 0xb8 0xb8 0xb8 0xb8 0xb8 0xb8 0xb0 0xb8 0xb8 0xa8 0xb8 0xb8 0xb0 0xb8 0xb8 0xb8 0xb8 0xb8 0xb0 0xb0 0xb8 0xa8 0xa8 0xb8 0xb0 0xb0 0xb8 0xb8 0xb8 0xb0 0xb0 0xb0 0xa8 0xa8 0xa8 0xb0 0xb0 0xb0 0xb8 0xb8 0xb8 0xb0 0xb0 0xb0 0xa8 0xa8 0xa8 0xac 0xac 0xac 0xb8 0xb8 0xb8 0xac 0xac 0xac 0xa8 0xa8 0xa8 0xb8 0xb0 0xd8 0x48 0x38 0x88 0x4c 0x3c 0x6c 0x28 0x18 0x28 0x28 0x20 0x28 0x28 0x28 0x28 0x20 0x20 0x20 0x18 0x18 0x18 0x20 0x20 0x20 0x28 0x28 0x28 0x20 0x20 0x28 0x18 0x18 0x28 0x20 0x20 0x28 0x28 0x28 0x28 0x20 0x20 0x20 0x18 0x18 0x18 0x20 0x20 0x20 0x28 0x28 0x28 0x1c 0x1c 0x1c 0x18 0x18 0x18 0x18 0x20 0x20 0x18 0x28 0x28 0x18 0x20 0x20 0x18 0x18 0x18 0x20 0x20 0x18 0x28 0x28 0x18 0x20 0x20 0x18 0x18 0x18 0x18 0x18 0x18 0x18 0x30 0x20 0x10 0x34 0x28 0x24 0x28 0x20 0x28 0x24 0x18 0x20 0x30 0x20 0x28 0x30 0x28 0x2c 0x28 0x28 0x28 0x28 0x28 0x24 0x28 0x28 0x20 0x30 0x28 0x28 0x34 0x24 0x2c 0x34 0x28 0x30 0x2c 0x24 0x2c 0x2c 0x28 0x2c 0x28 0x28 0x28 0x28 0x28 0x24 0x30 0x30 0x28 0x3c 0x38 0x38 0x34 0x2c 0x34 0x30 0x28 0x20 0x80 0x78 0x18 0x60 0x58 0x2c 0xb0 0xa8 0xb0 0x90 0x88 0x78 0xb4 0xac 0x84 0xb4 0xa8 0x8c 0xbc 0xac 0x9c 0xa8 0xa8 0x88 0xa8 0xb8 0x88 0xac 0xa8 0x88 0xb4 0x9c 0x8c 0x94 0x88 0x80 0xc8 0xc8 0xc8 0xcc 0xc8 0xc8 0xc8 0xc0 0xc0 0xb8 0xb8 0xb0 0xac 0xb4 0xa4 0xa4 0xa8 0xa0 0xb8 0xb8 0xb8 0xb8 0xb8 0xb4 0xc0 0xc0 0xb8 0xc8 0xc8 0xc4 0xc0 0xc0 0xc0 0xbc 0xb8 0xb8 0xc0 0xb8 0xb8 0xbc 0xb8 0xb4 0xbc 0xbc 0xb4 0xb8 0xb8 0xb4 0xb8 0xb8 0xb8 0xbc 0xb8 0xbc 0xb8 0xb0 0xb8 0xb0 0xa8 0xac 0xb8 0xb0 0xb0 0xc0 0xb8 0xb8 0xb8 0xb0 0xb0 0xac 0xa8 0xac 0xb0 0xb0 0xb8 0xb8 0xb8 0xbc 0xb0 0xb0 0xb0 0xa8 0xa8 0xa8 0xb0 0xb0 0xb0 0xb8 0xb8 0xc0 0xa0 0xa0 0xb0 0xa0 0x98 0xb8 0xb0 0xa0 0xd0 0xb0 0xa8 0xcc 0xa8 0xa8 0xc0 0xb8 0xa8 0xe4 0x48 0x28 0x88 0x6c 0x58 0x8c 0x28 0x20 0x28 0x20 0x18 0x1c 0x28 0x20 0x20 0x2c 0x28 0x28 0x20 0x20 0x20 0x18 0x18 0x1c 0x20 0x20 0x28 0x28 0x28 0x2c 0x20 0x20 0x20 0x14 0x18 0x14 0x1c 0x24 0x1c 0x24 0x28 0x24 0x20 0x20 0x20 0x18 0x18 0x18 0x1c 0x1c 0x1c 0x14 0x18 0x18 0x14 0x1c 0x1c 0x10 0x18 0x1c 0x18 0x20 0x28 0x24 0x28 0x2c 0x20 0x20 0x20 0x18 0x18 0x14 0x20 0x20 0x18 0x24 0x28 0x24 0x18 0x20 0x20 0x14 0x18 0x18 0x28 0x18 0x08 0x28 0x20 0x18 0x28 0x28 0x28 0x28 0x20 0x28 0x28 0x18 0x28 0x2c 0x24 0x2c 0x28 0x28 0x28 0x28 0x28 0x20 0x28 0x28 0x18 0x30 0x28 0x20 0x38 0x28 0x28 0x34 0x24 0x2c 0x28 0x18 0x28 0x28 0x20 0x28 0x28 0x28 0x28 0x28 0x28 0x28 0x28 0x28 0x28 0x34 0x2c 0x34 0x38 0x28 0x38 0x38 0x28 0x08 0x78 0x68 0x18 0x58 0x50 0x30 0x98 0x98 0xa8 0xb0 0xa8 0xa8 0xc8 0xb8 0xa8 0xbc 0xac 0xa4 0xc8 0xb8 0xb8 0xb4 0xac 0xac 0xb8 0xb8 0xb8 0xb4 0xac 0xa4 0xa8 0x98 0x88 0x88 0x80 0x78 0xc8 0xc8 0xc8 0xc8 0xc8 0xc8 0xc8 0xc8 0xc8 0xb0 0xb8 0xb8 0x98 0xa8 0xa8 0xa0 0xa8 0xa8 0xc8 0xc8 0xc8 0xc0 0xc0 0xc0 0xb8 0xb8 0xb8 0xc0 0xc0 0xc0 0xc8 0xc8 0xc8 0xc0 0xc0 0xc0 0xb8 0xb8 0xb8 0xbc 0xbc 0xb4 0xc8 0xc8 0xb8 0xc0 0xc0 0xb8 0xb8 0xb8 0xb8 0xb0 0xb0 0xb0 0xb8 0xb8 0xb8 0xac 0xa4 0xa4 0xb8 0xa8 0xa8 0xb8 0xb0 0xb0 0xb8 0xb8 0xb8 0xb0 0xb0 0xb8 0xa8 0xa8 0xb8 0xb0 0xb0 0xb8 0xb8 0xb8 0xb8 0xb0 0xb0 0xb0 0xa8 0xa8 0xa8 0xa4 0xa4 0xb4 0x88 0x88 0xa8 0x9c 0x8c 0xcc 0x88 0x68 0xc8 0x94 0x84 0xcc 0x78 0x78 0xa8 0xc0 0xa8 0xf8 0x48 0x18 0x88 0x54 0x3c 0x74 0x28 0x28 0x28 0x28 0x20 0x20 0x28 0x18 0x18 0x28 0x20 0x20 0x28 0x28 0x28 0x20 0x20 0x28 0x18 0x18 0x28 0x20 0x20 0x20 0x28 0x28 0x18 0x1c 0x24 0x14 0x18 0x28 0x18 0x1c 0x24 0x1c 0x28 0x28 0x28 0x20 0x20 0x20 0x18 0x18 0x18 0x14 0x1c 0x1c 0x18 0x28 0x28 0x18 0x20 0x28 0x18 0x18 0x28 0x20 0x20 0x28 0x28 0x28 0x28 0x20 0x20 0x20 0x18 0x18 0x18 0x18 0x20 0x20 0x18 0x28 0x28 0x18 0x20 0x20 0x38 0x20 0x08 0x28 0x18 0x0c 0x2c 0x24 0x24 0x34 0x28 0x2c 0x34 0x24 0x2c 0x30 0x28 0x2c 0x28 0x28 0x28 0x24 0x28 0x1c 0x24 0x2c 0x14 0x28 0x28 0x1c 0x30 0x28 0x28 0x30 0x28 0x30 0x28 0x20 0x30 0x1c 0x18 0x20 0x24 0x24 0x24 0x28 0x28 0x24 0x2c 0x2c 0x24 0x2c 0x28 0x28 0x30 0x28 0x30 0x34 0x28 0x08 0x60 0x50 0x08 0x50 0x48 0x28 0x98 0x98 0xa0 0xbc 0xb8 0xb8 0xc0 0xb8 0xb0 0x9c 0x98 0x94 0xac 0xac 0xac 0x98 0x98 0x94 0xb4 0xb4 0xac 0xbc 0xb8 0xb4 0x98 0x90 0x90 0x70 0x78 0x6c 0xb0 0xc8 0xb0 0xc0 0xc8 0xc0 0xc4 0xbc 0xc4 0xb8 0xb8 0xbc 0xb0 0xb8 0xb8 0x8c 0x88 0x84 0xbc 0xac 0xa4 0xd4 0xc8 0xc0 0xc4 0xbc 0xb4 0xc0 0xb8 0xb0 0xc8 0xc0 0xb8 0xcc 0xc8 0xc4 0xb4 0xb4 0xb4 0xbc 0xb8 0xb8 0xc8 0xc0 0xc0 0xc4 0xc8 0xb8 0xa0 0xb0 0x90 0x94 0x98 0x88 0x98 0x90 0x90 0x90 0x88 0x78 0xb8 0xb0 0x90 0x5c 0x58 0x4c 0xa8 0xa8 0xb0 0xb8 0xb8 0xc0 0xb0 0xb0 0xb8 0xac 0xa8 0xb0 0xb8 0xb0 0xb8 0xbc 0xb8 0xbc 0xb0 0xb0 0xb0 0xa4 0xa8 0xac 0x98 0xa0 0xa8 0xa4 0xa8 0xb0 0x98 0x98 0xa0 0x88 0x88 0x98 0x90 0x90 0xa8 0xbc 0xa8 0xec 0x50 0x28 0x98 0x70 0x58 0x90 0x28 0x20 0x20 0x30 0x28 0x28 0x28 0x20 0x20 0x1c 0x18 0x18 0x20 0x20 0x20 0x28 0x28 0x2c 0x20 0x20 0x28 0x18 0x18 0x18 0x20 0x20 0x18 0x24 0x28 0x20 0x1c 0x24 0x1c 0x14 0x18 0x14 0x20 0x20 0x20 0x28 0x28 0x28 0x20 0x20 0x20 0x14 0x18 0x1c 0x18 0x20 0x28 0x24 0x28 0x30 0x20 0x20 0x28 0x18 0x18 0x1c 0x20 0x20 0x20 0x28 0x28 0x28 0x20 0x20 0x20 0x14 0x18 0x18 0x18 0x20 0x20 0x24 0x28 0x28 0x48 0x28 0x08 0x3c 0x24 0x14 0x38 0x28 0x28 0x38 0x28 0x28 0x38 0x28 0x28 0x34 0x2c 0x2c 0x28 0x28 0x28 0x24 0x2c 0x1c 0x28 0x38 0x18 0x24 0x2c 0x1c 0x28 0x28 0x28 0x24 0x24 0x2c 0x28 0x28 0x38 0x28 0x28 0x30 0x28 0x28 0x28 0x2c 0x2c 0x24 0x38 0x38 0x28 0x2c 0x2c 0x24 0x28 0x28 0x28 0x30 0x28 0x08 0x78 0x68 0x28 0x58 0x50 0x30 0xc8 0xc8 0xc8 0xc8 0xc8 0xc8 0xd8 0xd8 0xd8 0xc8 0xd0 0xd0 0xb8 0xc8 0xc8 0xa4 0xac 0xa4 0xc8 0xc8 0xb8 0xa4 0xa4 0xa4 0x88 0x88 0x98 0x8c 0xa4 0x94 0x98 0xc8 0x98 0xa8 0xb8 0xa8 0xb8 0xa8 0xb8 0xc0 0xb8 0xc0 0xc8 0xc8 0xc8 0x98 0x88 0x80 0xb8 0x98 0x88 0xc0 0xa8 0x98 0xc8 0xb8 0xa8 0xa4 0x94 0x84 0x98 0x88 0x78 0xac 0xa4 0x9c 0x98 0x98 0x98 0xac 0xa4 0xac 0x88 0x78 0x88 0x98 0xa0 0x88 0x88 0xa8 0x68 0x90 0x98 0x78 0x78 0x68 0x68 0xa0 0x98 0x78 0xb8 0xb8 0x78 0x84 0x84 0x6c 0x98 0x98 0xa8 0xa8 0xa8 0xb0 0xb8 0xb8 0xb8 0xb8 0xb0 0xb8 0xb8 0xa8 0xb8 0xb8 0xb0 0xb8 0xb8 0xb8 0xb8 0xa8 0xb0 0xa8 0x98 0xa8 0x98 0x98 0xb0 0x80 0x98 0xb8 0x68 0x88 0x98 0x70 0x98 0x98 0x98 0x8c 0x7c 0xb4 0x58 0x38 0xa8 0x5c 0x44 0x7c 0x28 0x18 0x18 0x28 0x20 0x20 0x28 0x28 0x28 0x20 0x20 0x20 0x18 0x18 0x18 0x20 0x20 0x20 0x28 0x28 0x28 0x20 0x20 0x20 0x18 0x18 0x18 0x20 0x20 0x20 0x28 0x28 0x28 0x20 0x20 0x20 0x18 0x18 0x18 0x20 0x20 0x20 0x28 0x28 0x28 0x20 0x20 0x28 0x18 0x18 0x28 0x20 0x20 0x28 0x28 0x28 0x28 0x1c 0x1c 0x1c 0x18 0x18 0x18 0x20 0x20 0x20 0x28 0x28 0x28 0x20 0x20 0x20 0x18 0x18 0x18 0x20 0x20 0x20 0x48 0x28 0x08 0x3c 0x28 0x14 0x34 0x2c 0x24 0x38 0x28 0x1c 0x4c 0x34 0x24 0x44 0x38 0x30 0x34 0x34 0x34 0x28 0x28 0x24 0x28 0x28 0x20 0x28 0x28 0x20 0x28 0x28 0x20 0x18 0x18 0x18 0x28 0x28 0x30 0x38 0x38 0x3c 0x30 0x30 0x30 0x2c 0x28 0x28 0x30 0x28 0x28 0x2c 0x28 0x24 0x2c 0x2c 0x24 0x30 0x28 0x04 0x70 0x60 0x20 0x5c 0x58 0x3c 0xb8 0xc0 0xc8 0xd0 0xc8 0xd4 0xe8 0xd0 0xe0 0xe4 0xd8 0xe8 0xb0 0xb0 0xc0 0x90 0x88 0xa0 0x98 0x88 0xa8 0x90 0x88 0x98 0xa8 0xa8 0xa8 0xbc 0xc8 0xb4 0xa8 0xc0 0x98 0x74 0x88 0x74 0x90 0xa0 0xa0 0xbc 0xb8 0xcc 0xb8 0xa0 0xc8 0x9c 0x88 0x98 0xa4 0x94 0x8c 0x88 0x78 0x74 0x9c 0x8c 0x8c 0x64 0x58 0x54 0x9c 0x94 0x8c 0xb0 0xa8 0xa8 0xb4 0xac 0xb4 0xcc 0xc8 0xd0 0xa8 0xa8 0xb0 0x88 0x98 0x80 0x88 0xa8 0x70 0x90 0x98 0x7c 0xb0 0xa0 0xa0 0xb0 0xa8 0x98 0xb0 0xb0 0x90 0x6c 0x68 0x64 0x60 0x58 0x70 0x50 0x48 0x54 0x70 0x68 0x68 0x84 0x78 0x78 0x90 0x80 0x80 0xac 0xa8 0x98 0xac 0xb4 0x94 0xb0 0xb8 0xa4 0x90 0x98 0x90 0x6c 0x68 0x68 0x88 0x78 0x80 0x90 0x88 0x90 0x88 0x88 0x90 0x8c 0x78 0xb4 0x7c 0x54 0xc4 0x80 0x68 0xa0 0x28 0x20 0x20 0x1c 0x18 0x14 0x24 0x24 0x1c 0x28 0x28 0x24 0x20 0x20 0x20 0x18 0x18 0x18 0x20 0x20 0x20 0x28 0x28 0x28 0x20 0x20 0x20 0x18 0x18 0x18 0x20 0x20 0x20 0x28 0x28 0x28 0x20 0x20 0x20 0x18 0x18 0x1c 0x20 0x20 0x28 0x28 0x28 0x30 0x20 0x20 0x28 0x18 0x18 0x1c 0x1c 0x1c 0x1c 0x18 0x18 0x18 0x1c 0x1c 0x1c 0x18 0x18 0x18 0x20 0x20 0x20 0x28 0x28 0x28 0x20 0x20 0x20 0x18 0x18 0x18 0x48 0x28 0x08 0x40 0x30 0x18 0x38 0x38 0x28 0x4c 0x3c 0x24 0x68 0x48 0x28 0x54 0x44 0x34 0x48 0x48 0x48 0x38 0x30 0x38 0x28 0x18 0x28 0x30 0x28 0x28 0x38 0x38 0x28 0x28 0x28 0x20 0x28 0x28 0x28 0x30 0x30 0x30 0x38 0x38 0x38 0x30 0x28 0x30 0x28 0x18 0x28 0x30 0x28 0x28 0x38 0x38 0x28 0x44 0x3c 0x14 0x68 0x58 0x18 0x48 0x48 0x30 0xa8 0xb8 0xc8 0xd0 0xc0 0xd8 0xa8 0x78 0x98 0xcc 0xac 0xcc 0xa8 0x98 0xb8 0xa8 0x90 0xc8 0xa8 0x88 0xd8 0xb8 0xa8 0xc8 0xc8 0xc8 0xb8 0xc0 0xc0 0xa8 0xb8 0xb8 0x98 0x88 0xa0 0x88 0x68 0x98 0x88 0x98 0x98 0xb8 0xa8 0x78 0xc8 0xb8 0xa0 0xc8 0xb8 0xb8 0xb8 0x9c 0x94 0x9c 0xb8 0xa8 0xb8 0xc0 0xb8 0xc0 0xc8 0xc8 0xc8 0xc0 0xb8 0xc0 0xb8 0xa8 0xb8 0xb8 0xb8 0xc0 0xb8 0xc8 0xc8 0xb0 0xc8 0xb0 0xa8 0xc8 0x98 0x88 0x90 0x78 0xa8 0x98 0x98 0xb0 0xa8 0xa8 0xa8 0xa8 0xa8 0x80 0x78 0x88 0x48 0x38 0x58 0x40 0x30 0x40 0x38 0x28 0x28 0x40 0x30 0x28 0x48 0x38 0x28 0x70 0x70 0x48 0xa8 0xb8 0x78 0x8c 0x94 0x74 0x88 0x88 0x88 0x98 0x78 0xa8 0x88 0x48 0xa8 0xb8 0x98 0xd0 0x88 0x88 0x98 0x90 0x78 0xb8 0x68 0x38 0xa8 0x64 0x4c 0x84 0x28 0x28 0x28 0x24 0x24 0x1c 0x28 0x28 0x18 0x24 0x24 0x1c 0x28 0x28 0x28 0x20 0x20 0x20 0x18 0x18 0x18 0x20 0x20 0x20 0x28 0x28 0x28 0x20 0x20 0x20 0x18 0x18 0x18 0x20 0x20 0x20 0x28 0x28 0x28 0x20 0x20 0x28 0x18 0x18 0x28 0x20 0x20 0x28 0x28 0x28 0x28 0x20 0x20 0x20 0x18 0x18 0x18 0x1c 0x1c 0x1c 0x28 0x28 0x28 0x20 0x20 0x20 0x18 0x18 0x18 0x20 0x20 0x20 0x28 0x28 0x28 0x18 0x18 0x18 0x68 0x50 0x18 0x48 0x38 0x18 0x48 0x40 0x38 0x58 0x48 0x38 0x64 0x4c 0x34 0x58 0x48 0x3c 0x48 0x40 0x40 0x40 0x38 0x3c 0x30 0x28 0x30 0x30 0x28 0x28 0x30 0x28 0x20 0x2c 0x28 0x20 0x2c 0x2c 0x24 0x28 0x28 0x24 0x2c 0x2c 0x2c 0x30 0x28 0x2c 0x34 0x24 0x2c 0x34 0x28 0x28 0x38 0x30 0x28 0x44 0x38 0x14 0x58 0x48 0x08 0x38 0x38 0x20 0xa8 0xb8 0xc8 0xc0 0xb8 0xc8 0xb8 0x98 0xa8 0xdc 0xc8 0xd4 0xd0 0xc8 0xd0 0xcc 0xc8 0xd4 0xc8 0xc8 0xd8 0xc8 0xc8 0xcc 0xc4 0xc4 0xbc 0xb8 0xb8 0xa8 0xbc 0xbc 0xa4 0xa0 0xa8 0x94 0x94 0xa4 0x94 0x9c 0x98 0xa4 0xc0 0xa8 0xd0 0xd8 0xc8 0xdc 0xc0 0xb8 0xb8 0x80 0x78 0x7c 0xc0 0xb8 0xc0 0xc0 0xb8 0xbc 0xc8 0xc0 0xc0 0xd0 0xc8 0xcc 0xb8 0xb0 0xb8 0xac 0xa8 0xac 0xb8 0xb8 0xb8 0xc0 0xc8 0xbc 0xb8 0xc8 0xb0 0x84 0x88 0x7c 0xb0 0xa8 0xa8 0xb8 0xb8 0xb8 0xa0 0xa8 0xa8 0x8c 0x88 0x88 0xa8 0x98 0x98 0xbc 0xa8 0xcc 0x50 0x38 0x80 0x34 0x28 0x58 0x34 0x34 0x4c 0x28 0x28 0x1c 0x5c 0x5c 0x2c 0x5c 0x58 0x3c 0x88 0x80 0x78 0x9c 0x88 0x98 0xb8 0x98 0xc0 0xb8 0xa8 0xc0 0x80 0x80 0x88 0x88 0x78 0xac 0x90 0x70 0xd0 0x7c 0x68 0x98 0x28 0x20 0x20 0x2c 0x28 0x24 0x24 0x24 0x1c 0x1c 0x18 0x18 0x28 0x20 0x28 0x2c 0x28 0x2c 0x20 0x20 0x20 0x1c 0x18 0x18 0x28 0x20 0x20 0x2c 0x28 0x28 0x20 0x20 0x20 0x18 0x18 0x18 0x20 0x20 0x20 0x28 0x28 0x28 0x20 0x20 0x20 0x18 0x18 0x1c 0x20 0x20 0x28 0x28 0x28 0x2c 0x20 0x20 0x20 0x18 0x18 0x18 0x20 0x20 0x20 0x2c 0x28 0x2c 0x24 0x1c 0x24 0x1c 0x18 0x1c 0x1c 0x1c 0x1c 0x18 0x18 0x18 0x68 0x58 0x08 0x54 0x44 0x1c 0x58 0x48 0x48 0x60 0x50 0x48 0x68 0x58 0x48 0x5c 0x4c 0x44 0x48 0x38 0x38 0x3c 0x34 0x34 0x28 0x28 0x28 0x2c 0x24 0x24 0x28 0x18 0x18 0x30 0x28 0x20 0x38 0x38 0x28 0x30 0x30 0x28 0x28 0x28 0x28 0x30 0x28 0x28 0x38 0x28 0x28 0x3c 0x2c 0x2c 0x38 0x28 0x28 0x40 0x30 0x10 0x68 0x58 0x18 0x40 0x40 0x28 0xa8 0xb8 0xc8 0xc0 0xc0 0xc8 0x78 0x68 0x68 0xd0 0xc8 0xc0 0xc8 0xc8 0xb8 0xb4 0xc4 0xa4 0xa8 0xc8 0x98 0xb4 0xc4 0xac 0xc8 0xc8 0xc8 0xc8 0xc8 0xc0 0xd8 0xd8 0xc8 0xd0 0xc8 0xb8 0xc8 0xb8 0xa8 0xc8 0xc0 0xb8 0xc8 0xc8 0xc8 0xc8 0xc0 0xc0 0xc8 0xb8 0xb8 0xa4 0x9c 0x9c 0xc8 0xc8 0xc8 0xc8 0xc0 0xc0 0xc8 0xb8 0xb8 0xb8 0xb0 0xb0 0xa8 0xa8 0xa8 0xa8 0xa0 0xa0 0xb8 0xa8 0xa8 0xc4 0xbc 0xbc 0xc8 0xc8 0xc8 0xc0 0xc0 0xc0 0xb8 0xb8 0xb8 0xa8 0xb0 0xb0 0x98 0xa8 0xa8 0xa0 0xa0 0x90 0xb8 0xa8 0x88 0x90 0x78 0xb0 0x68 0x48 0xd8 0x50 0x48 0xb0 0x38 0x48 0x88 0x34 0x34 0x44 0x48 0x38 0x18 0x5c 0x4c 0x34 0x88 0x78 0x68 0x98 0x90 0x80 0xa8 0xa8 0x98 0x98 0x98 0x90 0x78 0x78 0x78 0x84 0x7c 0xa4 0x78 0x68 0xb8 0x88 0x78 0xa0 0x28 0x18 0x18 0x28 0x20 0x20 0x28 0x28 0x28 0x28 0x20 0x28 0x28 0x18 0x28 0x28 0x20 0x28 0x28 0x28 0x28 0x28 0x20 0x20 0x28 0x18 0x18 0x28 0x20 0x20 0x28 0x28 0x28 0x20 0x20 0x20 0x18 0x18 0x18 0x20 0x20 0x18 0x28 0x28 0x18 0x20 0x20 0x20 0x18 0x18 0x28 0x20 0x20 0x28 0x28 0x28 0x28 0x20 0x20 0x20 0x18 0x18 0x18 0x24 0x1c 0x24 0x28 0x18 0x28 0x24 0x1c 0x24 0x18 0x18 0x18 0x18 0x18 0x18 0x60 0x50 0x18 0x48 0x38 0x18 0x58 0x48 0x40 0x68 0x58 0x4c 0x68 0x58 0x48 0x68 0x58 0x48 0x50 0x40 0x30 0x40 0x38 0x30 0x2c 0x2c 0x2c 0x2c 0x28 0x2c 0x2c 0x24 0x2c 0x2c 0x28 0x28 0x30 0x30 0x28 0x38 0x38 0x38 0x2c 0x2c 0x34 0x2c 0x28 0x2c 0x34 0x2c 0x2c 0x44 0x38 0x38 0x3c 0x2c 0x2c 0x40 0x28 0x10 0x60 0x40 0x10 0x50 0x48 0x34 0xb8 0xc8 0xd0 0xd4 0xc8 0xdc 0xc0 0x98 0xb8 0xd8 0xc8 0xd0 0xb4 0xbc 0xac 0xb4 0xb8 0xa8 0xb8 0xb8 0xa8 0xb8 0xb8 0xac 0xc8 0xc8 0xc0 0xc8 0xc8 0xc0 0xd0 0xd0 0xc8 0xe0 0xd8 0xd4 0xd4 0xc4 0xc4 0xdc 0xc8 0xd8 0xb0 0x98 0xb8 0x84 0x78 0x90 0x90 0x90 0xa0 0x7c 0x78 0x7c 0xc8 0xc0 0xb8 0xd0 0xc8 0xc4 0xc0 0xb8 0xb8 0x90 0x88 0x8c 0xa0 0x98 0xa0 0x90 0x88 0x8c 0xc0 0xb8 0xb8 0xbc 0xb8 0xb8 0xc0 0xc0 0xc0 0xc4 0xc8 0xd0 0xac 0xb4 0xc4 0xa0 0xa8 0xb0 0xa0 0xa8 0xa8 0xb0 0xa8 0xa0 0x90 0x78 0x68 0x60 0x48 0x64 0x94 0x7c 0xc4 0xc0 0xb8 0xe8 0x38 0x40 0x58 0x2c 0x28 0x30 0x38 0x28 0x20 0x30 0x28 0x20 0x78 0x78 0x70 0x8c 0x98 0x88 0x7c 0x94 0x7c 0x80 0x88 0x88 0x84 0x7c 0x94 0xa4 0x98 0xcc 0x8c 0x7c 0xcc 0x94 0x88 0xb0 0x28 0x20 0x20 0x20 0x18 0x18 0x28 0x20 0x20 0x30 0x28 0x2c 0x28 0x20 0x28 0x20 0x18 0x20 0x28 0x20 0x28 0x30 0x28 0x2c 0x28 0x20 0x20 0x1c 0x18 0x18 0x20 0x20 0x20 0x28 0x28 0x28 0x20 0x20 0x20 0x18 0x18 0x18 0x20 0x20 0x20 0x28 0x28 0x2c 0x20 0x20 0x28 0x18 0x18 0x1c 0x20 0x20 0x20 0x28 0x28 0x28 0x20 0x20 0x20 0x1c 0x18 0x1c 0x24 0x1c 0x24 0x2c 0x28 0x2c 0x20 0x20 0x20 0x18 0x18 0x18 0x38 0x28 0x08 0x48 0x38 0x20 0x58 0x48 0x38 0x54 0x44 0x34 0x38 0x28 0x18 0x40 0x30 0x18 0x48 0x38 0x18 0x38 0x30 0x20 0x28 0x28 0x28 0x28 0x28 0x30 0x28 0x28 0x38 0x28 0x28 0x30 0x28 0x28 0x28 0x2c 0x2c 0x34 0x28 0x28 0x38 0x2c 0x2c 0x34 0x28 0x28 0x28 0x34 0x2c 0x2c 0x38 0x28 0x28 0x4c 0x2c 0x1c 0x68 0x38 0x18 0x48 0x38 0x28 0xc8 0xd8 0xd8 0xe8 0xd0 0xf0 0xa8 0x68 0xa8 0xb0 0x98 0xb0 0x98 0xa8 0x98 0xc0 0xb8 0xb8 0x78 0x58 0x68 0xd0 0xc0 0xc0 0xd8 0xd8 0xc8 0xd0 0xd0 0xc8 0xc8 0xc8 0xc8 0xcc 0xc4 0xcc 0xc8 0xb8 0xc8 0xbc 0x9c 0xc4 0x88 0x58 0x98 0x9c 0x8c 0xbc 0x88 0x98 0xb8 0xa8 0xa8 0xb0 0xc8 0xb8 0xa8 0xc4 0xbc 0xb4 0xb8 0xb8 0xb8 0xa4 0x9c 0xa4 0xb8 0xa8 0xb8 0xb0 0xa8 0xb0 0xc8 0xc8 0xc8 0xc0 0xc0 0xc0 0xb8 0xb8 0xb8 0xb0 0xb8 0xc8 0x98 0xa8 0xc8 0xa0 0xa8 0xb8 0xa8 0xa8 0xa8 0xb8 0xa8 0xa8 0x68 0x48 0x48 0x70 0x58 0x58 0xb8 0xa8 0xa8 0xc0 0xb8 0xb0 0x38 0x38 0x28 0x30 0x28 0x28 0x28 0x18 0x28 0x28 0x28 0x30 0x68 0x78 0x78 0x70 0x90 0x80 0x58 0x88 0x68 0x80 0x90 0x98 0x68 0x58 0x88 0x94 0x84 0xc4 0x78 0x68 0xb8 0x90 0x88 0xb0 0x28 0x28 0x28 0x28 0x20 0x20 0x28 0x18 0x18 0x28 0x20 0x20 0x28 0x28 0x28 0x28 0x20 0x28 0x28 0x18 0x28 0x28 0x20 0x28 0x28 0x28 0x28 0x20 0x20 0x20 0x18 0x18 0x18 0x20 0x20 0x20 0x28 0x28 0x28 0x20 0x20 0x28 0x18 0x18 0x28 0x20 0x20 0x28 0x28 0x28 0x28 0x20 0x20 0x20 0x18 0x18 0x18 0x20 0x20 0x20 0x28 0x28 0x28 0x20 0x20 0x20 0x18 0x18 0x18 0x20 0x20 0x20 0x28 0x28 0x28 0x20 0x20 0x20 0x28 0x20 0x08 0x10 0x08 0x20 0x34 0x2c 0x24 0x54 0x48 0x40 0x38 0x28 0x20 0x28 0x18 0x0c 0x34 0x24 0x14 0x2c 0x28 0x1c 0x24 0x2c 0x24 0x24 0x28 0x28 0x28 0x28 0x30 0x28 0x28 0x2c 0x28 0x28 0x28 0x28 0x28 0x2c 0x2c 0x2c 0x34 0x38 0x38 0x38 0x30 0x30 0x28 0x2c 0x28 0x24 0x30 0x28 0x28 0x40 0x28 0x18 0x5c 0x34 0x14 0x38 0x28 0x18 0xc8 0xd0 0xd0 0xe0 0xd8 0xe8 0xc0 0xa8 0xc8 0x98 0x88 0x8c 0xb0 0xa8 0x90 0xd8 0xb8 0xbc 0xc4 0x8c 0xac 0xec 0xc8 0xcc 0xdc 0xcc 0xb4 0xe0 0xd8 0xd4 0xc0 0xc0 0xd0 0xc0 0xb8 0xc8 0xb8 0xa8 0xb8 0xac 0x98 0xac 0xbc 0xa4 0xbc 0xd0 0xc8 0xdc 0xc0 0xc8 0xd8 0xc8 0xc8 0xc8 0xc8 0xc0 0xb0 0xb4 0xb8 0xb8 0xa0 0xb0 0xc0 0x88 0x88 0x98 0xb4 0xa4 0xb4 0xb0 0xa8 0xac 0xbc 0xbc 0xb4 0xcc 0xc8 0xc8 0xc0 0xb8 0xc0 0xbc 0xb8 0xc4 0xa8 0xa8 0xb8 0xa8 0xa8 0xb4 0xac 0xac 0xb4 0xb0 0xa8 0x9c 0x90 0x80 0x60 0x74 0x68 0x58 0xb8 0xb0 0xb0 0xc0 0xb8 0xb8 0x38 0x30 0x30 0x34 0x28 0x2c 0x34 0x24 0x2c 0x30 0x28 0x2c 0x7c 0x7c 0x7c 0x9c 0xa8 0xac 0x80 0x98 0xa0 0x8c 0x98 0xa4 0xa8 0xa8 0xb8 0xb8 0xb8 0xd4 0x90 0x90 0xb8 0x8c 0x88 0xa0 0x28 0x20 0x28 0x30 0x28 0x2c 0x28 0x20 0x20 0x20 0x18 0x18 0x28 0x20 0x20 0x30 0x28 0x2c 0x28 0x20 0x28 0x1c 0x18 0x1c 0x20 0x20 0x20 0x28 0x28 0x28 0x20 0x20 0x20 0x18 0x18 0x18 0x20 0x20 0x20 0x28 0x28 0x2c 0x20 0x20 0x28 0x1c 0x18 0x1c 0x28 0x20 0x20 0x2c 0x28 0x28 0x20 0x20 0x20 0x18 0x18 0x18 0x20 0x20 0x20 0x28 0x28 0x28 0x20 0x20 0x20 0x18 0x18 0x1c 0x20 0x20 0x28 0x28 0x28 0x2c 0x18 0x18 0x08 0x10 0x10 0x08 0x18 0x18 0x18 0x28 0x20 0x20 0x38 0x28 0x28 0x30 0x20 0x20 0x28 0x18 0x18 0x24 0x24 0x1c 0x28 0x38 0x28 0x28 0x30 0x28 0x28 0x28 0x28 0x28 0x28 0x28 0x28 0x28 0x28 0x2c 0x2c 0x2c 0x28 0x28 0x28 0x30 0x30 0x28 0x38 0x38 0x28 0x30 0x30 0x28 0x28 0x28 0x28 0x40 0x30 0x20 0x68 0x48 0x28 0x40 0x30 0x20 0xc8 0xc8 0xc8 0xc8 0xd0 0xd0 0xc8 0xd8 0xd8 0xc0 0xb8 0xa8 0xc8 0xa8 0x88 0xc4 0x8c 0x94 0xa8 0x58 0x88 0xd4 0x9c 0xa4 0xd8 0xb8 0x98 0xc0 0xb0 0xb0 0xa8 0xa8 0xc8 0xb0 0xa8 0xc0 0xa8 0x98 0xa8 0xa0 0x98 0x98 0xd8 0xd8 0xc8 0xd0 0xd0 0xc8 0xc8 0xc8 0xc8 0xc8 0xc8 0xc0 0xc8 0xc8 0xb8 0xac 0xbc 0xc4 0x88 0xa8 0xc8 0xa8 0xb0 0xc8 0xc8 0xb8 0xc8 0xbc 0xb4 0xb4 0xb8 0xb8 0xa8 0xc0 0xb8 0xb8 0xb8 0xa8 0xb8 0xc0 0xb0 0xb8 0xa8 0x98 0x98 0xb0 0xa8 0xb0 0xb8 0xb8 0xc8 0xa8 0xa8 0x90 0xa8 0xa8 0x68 0xb0 0xb0 0x90 0xb8 0xb8 0xb8 0xc0 0xb8 0xc0 0x38 0x28 0x38 0x38 0x28 0x30 0x38 0x28 0x28 0x40 0x30 0x30 0xb8 0xa8 0xa8 0xac 0xa4 0xbc 0x98 0x98 0xc8 0x88 0x90 0xa0 0x78 0x88 0x78 0x8c 0x9c 0x94 0x88 0x98 0x98 0x90 0x90 0x98 0x28 0x18 0x28 0x28 0x20 0x28 0x28 0x28 0x28 0x28 0x20 0x20 0x28 0x18 0x18 0x28 0x20 0x20 0x28 0x28 0x28 0x20 0x20 0x20 0x18 0x18 0x18 0x20 0x20 0x20 0x28 0x28 0x28 0x20 0x20 0x20 0x18 0x18 0x18 0x20 0x20 0x20 0x28 0x28 0x28 0x28 0x20 0x20 0x28 0x18 0x18 0x28 0x20 0x20 0x28 0x28 0x28 0x20 0x20 0x20 0x18 0x18 0x18 0x20 0x20 0x20 0x28 0x28 0x28 0x20 0x20 0x28 0x18 0x18 0x28 0x20 0x20 0x28 0x10 0x10 0x08 0x08 0x08 0x20 0x18 0x18 0x10 0x1c 0x18 0x14 0x2c 0x24 0x24 0x30 0x28 0x28 0x2c 0x24 0x24 0x18 0x18 0x14 0x24 0x2c 0x24 0x34 0x38 0x34 0x30 0x30 0x30 0x28 0x28 0x2c 0x2c 0x2c 0x34 0x3c 0x38 0x3c 0x34 0x2c 0x2c 0x2c 0x28 0x24 0x30 0x30 0x28 0x38 0x38 0x30 0x30 0x30 0x28 0x38 0x28 0x18 0x54 0x34 0x1c 0x48 0x38 0x2c 0xd0 0xd0 0xd0 0xc8 0xc8 0xcc 0xd0 0xd0 0xd8 0xdc 0xd8 0xe0 0xa0 0x98 0xa0 0x88 0x78 0x80 0xa0 0x88 0x90 0xac 0x98 0x90 0xc0 0xb0 0x98 0xac 0xa8 0x94 0xa4 0xac 0x9c 0xa8 0xa8 0xa8 0xac 0xa4 0xb4 0x9c 0x98 0x9c 0xd0 0xd0 0xc8 0xdc 0xd8 0xd4 0xd4 0xcc 0xcc 0xcc 0xc8 0xc0 0xc8 0xc8 0xb8 0xc0 0xc8 0xcc 0xa8 0xb8 0xd0 0xb8 0xb8 0xc8 0xc8 0xb8 0xc0 0xc0 0xb8 0xb4 0xbc 0xbc 0xac 0xc0 0xb8 0xb4 0xc8 0xb8 0xc0 0xd0 0xc8 0xcc 0xb8 0xb8 0xb8 0xa8 0xa8 0xb4 0xa4 0xa4 0xbc 0x94 0x98 0xa0 0x74 0x7c 0x74 0x38 0x38 0x34 0xb8 0xb0 0xb0 0xb8 0xb8 0xc4 0x70 0x78 0x90 0x6c 0x68 0x70 0x38 0x28 0x20 0x48 0x38 0x40 0x8c 0x7c 0x94 0xa4 0xa8 0xb4 0x84 0x9c 0x9c 0x7c 0x88 0x7c 0x88 0x88 0x70 0x8c 0x98 0x88 0x84 0x9c 0x94 0x90 0x98 0x98 0x28 0x20 0x28 0x20 0x18 0x20 0x28 0x20 0x28 0x30 0x28 0x2c 0x28 0x20 0x20 0x18 0x18 0x14 0x1c 0x24 0x1c 0x24 0x28 0x24 0x20 0x20 0x20 0x14 0x18 0x14 0x1c 0x24 0x1c 0x24 0x28 0x24 0x20 0x20 0x20 0x18 0x18 0x18 0x20 0x20 0x20 0x2c 0x28 0x28 0x28 0x20 0x20 0x1c 0x18 0x1c 0x20 0x20 0x28 0x28 0x28 0x2c 0x20 0x20 0x20 0x18 0x18 0x18 0x20 0x20 0x20 0x28 0x28 0x2c 0x20 0x20 0x28 0x18 0x18 0x1c 0x08 0x08 0x08 0x10 0x10 0x08 0x28 0x28 0x18 0x20 0x20 0x18 0x28 0x28 0x28 0x2c 0x2c 0x2c 0x38 0x38 0x38 0x2c 0x2c 0x2c 0x28 0x28 0x28 0x30 0x30 0x30 0x38 0x38 0x38 0x30 0x30 0x38 0x28 0x28 0x38 0x34 0x2c 0x34 0x38 0x28 0x28 0x34 0x2c 0x2c 0x28 0x28 0x28 0x30 0x30 0x28 0x38 0x38 0x28 0x3c 0x2c 0x1c 0x48 0x28 0x18 0x40 0x30 0x28 0xd8 0xd8 0xd8 0xd8 0xd0 0xd8 0x68 0x58 0x68 0xd0 0xd0 0xf0 0x78 0x88 0xb8 0x80 0x98 0xa0 0x88 0xa8 0x88 0xa8 0xb8 0xa0 0xc8 0xc8 0xb8 0xb4 0xbc 0x94 0xa8 0xb8 0x78 0xb0 0xb8 0xa0 0xb8 0xb8 0xc8 0xc0 0xc0 0xc8 0xc8 0xc8 0xc8 0xd0 0xc8 0xc8 0xd8 0xc8 0xc8 0xd0 0xc8 0xc0 0xc8 0xc8 0xb8 0xc4 0xc4 0xc4 0xb8 0xb8 0xc8 0xc0 0xb8 0xc0 0xc8 0xb8 0xb8 0xc4 0xbc 0xb4 0xc8 0xc8 0xb8 0xc8 0xc0 0xb8 0xc8 0xb8 0xb8 0xc0 0xc0 0xc0 0xb8 0xc8 0xc8 0xb0 0xb8 0xc8 0x98 0x98 0xb8 0x90 0x98 0xc0 0x68 0x78 0xa8 0x70 0x70 0x88 0xb8 0xa8 0xa8 0x98 0xa0 0xb0 0x78 0x98 0xb8 0x50 0x58 0x60 0x38 0x28 0x18 0x48 0x38 0x48 0x78 0x68 0x98 0x90 0xa0 0xa0 0x78 0xa8 0x78 0x70 0x80 0x58 0x88 0x78 0x58 0x90 0x98 0x80 0x88 0xa8 0x98 0x88 0x98 0x90 0x28 0x28 0x28 0x28 0x20 0x28 0x28 0x18 0x28 0x28 0x20 0x28 0x28 0x28 0x28 0x1c 0x24 0x1c 0x18 0x28 0x18 0x1c 0x24 0x1c 0x28 0x28 0x28 0x1c 0x24 0x1c 0x18 0x28 0x18 0x1c 0x24 0x1c 0x28 0x28 0x28 0x20 0x20 0x20 0x18 0x18 0x18 0x20 0x20 0x20 0x28 0x28 0x28 0x20 0x20 0x28 0x18 0x18 0x28 0x20 0x20 0x28 0x28 0x28 0x28 0x20 0x20 0x20 0x18 0x18 0x18 0x20 0x20 0x20 0x28 0x28 0x28 0x20 0x20 0x20 0x08 0x08 0x08 0x0c 0x08 0x04 0x1c 0x14 0x0c 0x18 0x18 0x10 0x20 0x28 0x20 0x24 0x28 0x24 0x30 0x30 0x30 0x38 0x38 0x3c 0x2c 0x2c 0x34 0x28 0x28 0x28 0x30 0x30 0x28 0x34 0x38 0x34 0x28 0x30 0x30 0x28 0x28 0x24 0x34 0x2c 0x24 0x38 0x38 0x34 0x28 0x30 0x30 0x24 0x28 0x24 0x2c 0x2c 0x24 0x34 0x28 0x20 0x44 0x2c 0x24 0x34 0x28 0x24 0xd0 0xd0 0xd0 0xdc 0xd8 0xd0 0xa4 0x9c 0x8c 0xd0 0xc8 0xd4 0xb0 0xa8 0xd0 0xc8 0xd8 0xc8 0x9c 0xc4 0x7c 0xb8 0xc8 0xa4 0xc8 0xc0 0xc0 0xc8 0xc8 0xc0 0xb8 0xc0 0xb0 0xc4 0xc8 0xc4 0xc4 0xc4 0xcc 0xcc 0xc8 0xd4 0xc8 0xc0 0xd0 0xc0 0xb8 0xc0 0xcc 0xc4 0xc4 0xcc 0xc8 0xc4 0xc8 0xc8 0xc0 0xc4 0xc8 0xc8 0xb4 0xbc 0xc4 0xb8 0xb8 0xbc 0xc4 0xbc 0xbc 0xc0 0xb8 0xac 0xc4 0xbc 0xa4 0xd0 0xc8 0xbc 0xc8 0xc0 0xc0 0xbc 0xb8 0xb8 0xbc 0xbc 0xbc 0xcc 0xc8 0xd4 0xbc 0xb4 0xcc 0xbc 0xb8 0xd4 0x70 0x70 0x90 0x70 0x68 0x88 0x70 0x60 0x80 0x58 0x58 0x7c 0x38 0x48 0x70 0x34 0x38 0x48 0x40 0x38 0x30 0x44 0x38 0x40 0x88 0x78 0x90 0x94 0x98 0x98 0x84 0x9c 0x84 0x74 0x78 0x64 0x88 0x78 0x68 0x94 0x98 0x7c 0x8c 0xa4 0x7c 0x8c 0x98 0x84 0x28 0x28 0x28 0x2c 0x28 0x28 0x28 0x20 0x20 0x1c 0x18 0x18 0x20 0x20 0x20 0x24 0x28 0x24 0x1c 0x24 0x1c 0x18 0x18 0x14 0x28 0x20 0x20 0x28 0x28 0x24 0x1c 0x24 0x1c 0x14 0x18 0x14 0x20 0x20 0x20 0x28 0x28 0x28 0x20 0x20 0x20 0x18 0x18 0x18 0x20 0x20 0x20 0x28 0x28 0x2c 0x20 0x20 0x28 0x18 0x18 0x1c 0x20 0x20 0x20 0x28 0x28 0x28 0x20 0x20 0x20 0x18 0x18 0x1c 0x20 0x20 0x28 0x28 0x28 0x2c 0x08 0x08 0x08 0x10 0x08 0x08 0x18 0x08 0x08 0x10 0x10 0x08 0x28 0x38 0x28 0x24 0x2c 0x24 0x28 0x28 0x28 0x2c 0x2c 0x34 0x28 0x28 0x38 0x2c 0x2c 0x2c 0x28 0x28 0x18 0x28 0x30 0x20 0x28 0x38 0x28 0x28 0x30 0x20 0x28 0x28 0x18 0x28 0x30 0x28 0x28 0x38 0x38 0x24 0x2c 0x2c 0x28 0x28 0x28 0x34 0x2c 0x2c 0x48 0x38 0x38 0x38 0x30 0x30 0xc8 0xc8 0xc8 0xd0 0xd0 0xb8 0x78 0x78 0x48 0x88 0x78 0x70 0x98 0x78 0x98 0x9c 0xa4 0x7c 0x98 0xc8 0x58 0xa8 0xb8 0x88 0xb8 0xa8 0xb8 0xb8 0xb0 0xc8 0xb8 0xb8 0xd8 0xc8 0xc8 0xd8 0xc8 0xc8 0xc8 0xc8 0xc0 0xd0 0xa8 0x98 0xb8 0xb0 0xa8 0xb8 0xc8 0xc8 0xc8 0xc8 0xc8 0xc8 0xc8 0xc8 0xc8 0xbc 0xc4 0xc4 0xa8 0xb8 0xb8 0xb4 0xbc 0xbc 0xc8 0xc8 0xc8 0xbc 0xb4 0xa4 0xb8 0xa8 0x88 0xc0 0xb8 0xa8 0xc8 0xc8 0xc8 0xc4 0xbc 0xbc 0xb8 0xa8 0xa8 0xc4 0xb4 0xbc 0xc8 0xb8 0xc8 0xb8 0xa8 0xb8 0x78 0x68 0x78 0x88 0x78 0xa0 0x48 0x38 0x78 0x48 0x40 0x78 0x48 0x48 0x78 0x7c 0x7c 0x94 0xb8 0xb8 0xb8 0x94 0x8c 0x8c 0x98 0x88 0x88 0x98 0x90 0x90 0xb8 0xb8 0xb8 0x88 0x80 0x80 0x68 0x58 0x58 0xa0 0xa0 0x80 0xa8 0xb8 0x78 0x90 0x98 0x78 0x28 0x28 0x28 0x24 0x24 0x1c 0x28 0x28 0x18 0x20 0x20 0x18 0x18 0x18 0x18 0x20 0x20 0x20 0x28 0x28 0x28 0x28 0x20 0x20 0x28 0x18 0x18 0x28 0x20 0x20 0x28 0x28 0x28 0x20 0x20 0x20 0x18 0x18 0x18 0x20 0x20 0x20 0x28 0x28 0x28 0x20 0x20 0x20 0x18 0x18 0x18 0x20 0x20 0x20 0x28 0x28 0x28 0x20 0x20 0x20 0x18 0x18 0x18 0x20 0x20 0x20 0x28 0x28 0x28 0x20 0x20 0x28 0x18 0x18 0x28 0x20 0x20 0x28 0x08 0x08 0x08 0x0c 0x08 0x08 0x14 0x0c 0x0c 0x0c 0x08 0x08 0x20 0x20 0x20 0x28 0x28 0x28 0x2c 0x2c 0x2c 0x28 0x28 0x2c 0x2c 0x2c 0x34 0x38 0x38 0x34 0x30 0x30 0x20 0x24 0x28 0x1c 0x28 0x30 0x28 0x34 0x38 0x2c 0x30 0x30 0x20 0x24 0x28 0x20 0x24 0x2c 0x2c 0x24 0x28 0x28 0x2c 0x2c 0x2c 0x30 0x28 0x28 0x40 0x30 0x30 0x40 0x38 0x38 0xd0 0xd0 0xd0 0xc8 0xc8 0xc4 0x9c 0x9c 0x94 0x80 0x78 0x78 0x88 0x78 0x80 0x74 0x78 0x54 0xb0 0xc8 0x78 0xa4 0xa8 0x7c 0xb0 0xa0 0x98 0x90 0x88 0x8c 0xc0 0xc0 0xd0 0xd4 0xd8 0xe4 0xbc 0xc4 0xcc 0xb8 0xb8 0xb4 0xb0 0xa8 0x98 0xa0 0x98 0x90 0xd0 0xc8 0xc8 0xd0 0xc8 0xcc 0xcc 0xc4 0xcc 0xc4 0xc8 0xcc 0xb0 0xc0 0xc0 0xb0 0xb8 0xb8 0xb8 0xb8 0xb8 0xa4 0xa8 0xa4 0xb0 0xb8 0xb0 0x78 0x78 0x74 0xc8 0xc0 0xc0 0xc8 0xc8 0xbc 0xa8 0xb0 0x98 0xb0 0xa8 0xa8 0xbc 0xa4 0xbc 0xac 0x98 0xa8 0xa0 0x90 0x98 0x94 0x88 0x9c 0x98 0x90 0xb0 0xc8 0xc8 0xe0 0xb8 0xc0 0xd0 0xb4 0xb8 0xc0 0xb8 0xb8 0xb8 0xc0 0xb8 0xc0 0x90 0x80 0x90 0x70 0x68 0x74 0x94 0x94 0x9c 0x8c 0x88 0x90 0x80 0x78 0x80 0x9c 0xa8 0x90 0x8c 0xac 0x74 0x88 0x98 0x78 0x30 0x30 0x28 0x1c 0x18 0x10 0x28 0x20 0x18 0x2c 0x28 0x24 0x20 0x20 0x20 0x1c 0x18 0x18 0x28 0x20 0x20 0x30 0x28 0x28 0x28 0x20 0x20 0x1c 0x18 0x18 0x20 0x20 0x20 0x28 0x28 0x28 0x20 0x20 0x20 0x18 0x18 0x1c 0x20 0x20 0x28 0x28 0x28 0x2c 0x20 0x20 0x20 0x18 0x18 0x18 0x20 0x20 0x20 0x28 0x28 0x28 0x20 0x20 0x20 0x18 0x18 0x18 0x20 0x20 0x20 0x28 0x28 0x2c 0x20 0x20 0x28 0x18 0x18 0x1c 0x08 0x08 0x08 0x0c 0x0c 0x0c 0x18 0x18 0x18 0x1c 0x14 0x1c 0x28 0x18 0x28 0x30 0x28 0x30 0x38 0x38 0x38 0x2c 0x2c 0x2c 0x28 0x28 0x28 0x30 0x30 0x28 0x38 0x38 0x28 0x30 0x30 0x28 0x28 0x28 0x28 0x30 0x30 0x28 0x38 0x38 0x28 0x30 0x30 0x28 0x28 0x28 0x28 0x2c 0x2c 0x2c 0x38 0x38 0x38 0x38 0x30 0x30 0x38 0x28 0x28 0x38 0x30 0x30 0xd8 0xd8 0xd8 0xcc 0xcc 0xdc 0xb8 0xb8 0xd8 0xa0 0xa0 0xa8 0xd8 0xd8 0xc8 0xa4 0xa4 0x84 0xc8 0xc8 0x98 0xc0 0xb8 0x90 0xb8 0xa8 0x88 0xac 0xa4 0x94 0xc8 0xc8 0xc8 0xc0 0xc8 0xd0 0xa8 0xb8 0xc8 0xbc 0xc4 0xac 0xc8 0xc8 0x88 0xbc 0xb4 0x94 0xd8 0xc8 0xc8 0xd8 0xc8 0xd0 0xc8 0xb8 0xc8 0xc4 0xc4 0xcc 0xb8 0xc8 0xc8 0xac 0xb4 0xb4 0xb8 0xb8 0xb8 0xa8 0xb8 0xc0 0xa8 0xc8 0xd8 0xb8 0xc0 0xc8 0xc8 0xb8 0xb8 0xac 0xb4 0x9c 0x88 0xa8 0x78 0xa8 0xa8 0xa0 0xb8 0x98 0xb8 0xbc 0xa4 0xb4 0xc8 0xb8 0xb8 0xc0 0xb8 0xb8 0xb8 0xb8 0xb8 0xb8 0xc0 0xb8 0xb8 0xc8 0xb8 0xb4 0xbc 0xb4 0xb8 0xb8 0xb8 0xb8 0xb0 0xc0 0x88 0x78 0x98 0x78 0x70 0x88 0xa8 0xa8 0xb8 0x90 0x90 0xa0 0x58 0x58 0x68 0x98 0xb0 0xa0 0x88 0xb8 0x88 0x78 0x90 0x70 0x38 0x38 0x28 0x2c 0x24 0x1c 0x28 0x18 0x18 0x28 0x20 0x20 0x28 0x28 0x28 0x28 0x20 0x20 0x28 0x18 0x18 0x28 0x20 0x20 0x28 0x28 0x28 0x20 0x20 0x20 0x18 0x18 0x18 0x20 0x20 0x20 0x28 0x28 0x28 0x20 0x20 0x28 0x18 0x18 0x28 0x24 0x24 0x2c 0x28 0x28 0x28 0x20 0x20 0x20 0x18 0x18 0x18 0x20 0x20 0x20 0x28 0x28 0x28 0x20 0x20 0x20 0x18 0x18 0x18 0x20 0x20 0x20 0x28 0x28 0x28 0x18 0x18 0x18 0x10 0x08 0x08 0x0c 0x08 0x08 0x10 0x10 0x10 0x1c 0x18 0x18 0x2c 0x24 0x24 0x2c 0x28 0x28 0x2c 0x2c 0x2c 0x2c 0x28 0x28 0x30 0x28 0x28 0x30 0x28 0x20 0x38 0x30 0x20 0x3c 0x38 0x30 0x30 0x30 0x30 0x28 0x28 0x20 0x30 0x30 0x20 0x3c 0x38 0x34 0x34 0x2c 0x34 0x2c 0x28 0x2c 0x30 0x30 0x30 0x3c 0x38 0x38 0x38 0x30 0x30 0x30 0x28 0x28 0xd8 0xd0 0xd0 0xdc 0xd8 0xdc 0xb0 0xb0 0xb8 0x78 0x78 0x7c 0xa4 0xa4 0xa4 0x78 0x78 0x6c 0xa0 0xa0 0x88 0x6c 0x68 0x50 0xa8 0xa0 0x88 0x9c 0x98 0x8c 0xd0 0xd0 0xd0 0xc4 0xc8 0xcc 0xc0 0xc8 0xd0 0xd4 0xd8 0xd4 0xc0 0xc0 0xb0 0xac 0xa8 0x9c 0xd0 0xc8 0xc0 0xe0 0xd8 0xd8 0xd0 0xc8 0xd0 0xd4 0xc8 0xc8 0xb8 0xa8 0xa0 0xa4 0x98 0x90 0xbc 0xb4 0xac 0xb8 0xb8 0xb4 0xb4 0xbc 0xbc 0xd4 0xc8 0xd8 0xd8 0xb8 0xd8 0xb0 0xa8 0xac 0xa0 0xb0 0x98 0xb8 0xb8 0xb4 0xc0 0xb0 0xc0 0xb4 0xa8 0xb0 0xc0 0xb8 0xb8 0xcc 0xc8 0xc8 0xc0 0xc0 0xc0 0xb8 0xb8 0xb4 0xb8 0xb8 0xb0 0xb4 0xb8 0xa8 0xb0 0xb8 0xa0 0xa8 0xa8 0xa8 0x90 0x88 0xa0 0x80 0x78 0x8c 0x90 0x88 0x98 0xa0 0x98 0xa0 0x8c 0x84 0x84 0xb0 0xb8 0xa0 0x98 0xb0 0x80 0x80 0x88 0x70 0x30 0x28 0x28 0x30 0x28 0x28 0x28 0x20 0x20 0x20 0x18 0x18 0x28 0x20 0x20 0x30 0x28 0x28 0x28 0x20 0x20 0x1c 0x18 0x1c 0x20 0x20 0x28 0x28 0x28 0x2c 0x20 0x20 0x20 0x18 0x18 0x18 0x20 0x20 0x20 0x28 0x28 0x2c 0x24 0x24 0x2c 0x28 0x28 0x2c 0x24 0x24 0x24 0x24 0x28 0x28 0x18 0x20 0x20 0x14 0x18 0x1c 0x20 0x20 0x28 0x28 0x28 0x2c 0x20 0x20 0x20 0x18 0x18 0x18 0x1c 0x1c 0x1c 0x18 0x18 0x18 0x18 0x08 0x08 0x10 0x08 0x08 0x08 0x08 0x08 0x10 0x10 0x08 0x38 0x38 0x28 0x2c 0x2c 0x24 0x28 0x28 0x28 0x2c 0x24 0x24 0x38 0x28 0x28 0x38 0x28 0x20 0x38 0x28 0x18 0x34 0x2c 0x24 0x38 0x38 0x38 0x30 0x30 0x28 0x28 0x28 0x18 0x34 0x2c 0x2c 0x38 0x28 0x38 0x34 0x2c 0x34 0x28 0x28 0x28 0x30 0x30 0x30 0x38 0x38 0x38 0x38 0x30 0x30 0xd8 0xc8 0xc8 0xcc 0xc4 0xbc 0xa8 0xa8 0x98 0x9c 0x9c 0x9c 0xc8 0xc8 0xd8 0xa8 0xa8 0xb0 0xd8 0xd8 0xd8 0x78 0x78 0x70 0x98 0x98 0x88 0x98 0x98 0x90 0xd8 0xd8 0xd8 0xd0 0xd0 0xd0 0xc8 0xc8 0xc8 0xc4 0xc4 0xd4 0xb8 0xb8 0xd8 0xbc 0xbc 0xc4 0xc8 0xc8 0xb8 0xc8 0xc8 0xc0 0xc8 0xc8 0xc8 0xb8 0xa0 0x98 0xa8 0x78 0x68 0xc8 0xa8 0x98 0xd8 0xc8 0xb8 0xc0 0xb0 0xa0 0xb8 0xa8 0x98 0xb8 0x98 0xb0 0xb8 0x88 0xc8 0xd0 0xb8 0xd8 0xb8 0xb8 0xb8 0xbc 0xbc 0xbc 0xc8 0xc8 0xc8 0xbc 0xbc 0xbc 0xb8 0xb8 0xb8 0xc0 0xc0 0xc0 0xc8 0xc8 0xc8 0xc0 0xb8 0xb8 0xb8 0xa8 0xa8 0xb4 0xb4 0x9c 0xb8 0xc8 0x98 0x98 0xa0 0x90 0x98 0x98 0xa8 0x88 0x80 0x90 0x88 0x78 0x88 0x94 0x84 0x84 0x78 0x68 0x58 0xb0 0xa8 0x88 0xa8 0xa8 0x78 0x90 0x88 0x78 0x28 0x18 0x28 0x2c 0x24 0x2c 0x28 0x28 0x28 0x28 0x20 0x20 0x28 0x18 0x18 0x28 0x20 0x20 0x28 0x28 0x28 0x20 0x20 0x28 0x18 0x18 0x28 0x20 0x20 0x28 0x28 0x28 0x28 0x20 0x20 0x20 0x18 0x18 0x18 0x20 0x20 0x20 0x28 0x28 0x28 0x24 0x24 0x24 0x18 0x18 0x18 0x18 0x20 0x20 0x18 0x28 0x28 0x18 0x20 0x28 0x18 0x18 0x28 0x20 0x20 0x28 0x28 0x28 0x28 0x20 0x20 0x20 0x18 0x18 0x18 0x18 0x18 0x18 0x10 0x08 0x08 0x0c 0x08 0x0c 0x08 0x08 0x10 0x0c 0x08 0x0c 0x28 0x20 0x20 0x30 0x28 0x28 0x2c 0x24 0x24 0x20 0x18 0x18 0x2c 0x24 0x24 0x34 0x28 0x24 0x34 0x24 0x1c 0x24 0x18 0x18 0x30 0x28 0x30 0x3c 0x38 0x38 0x2c 0x2c 0x24 0x30 0x28 0x28 0x3c 0x2c 0x34 0x44 0x38 0x40 0x34 0x2c 0x34 0x30 0x28 0x2c 0x38 0x30 0x30 0x40 0x38 0x38 0xd8 0xd0 0xd0 0xd8 0xc8 0xd0 0xb0 0x98 0xa8 0x94 0x88 0x9c 0xa0 0xa0 0xb8 0x8c 0x88 0xa0 0x90 0x88 0xa0 0x88 0x88 0x98 0x98 0xa0 0xa8 0x58 0x58 0x58 0xd0 0xc8 0xc0 0xdc 0xd8 0xd8 0xc4 0xc4 0xcc 0xbc 0xb8 0xc4 0xc4 0xbc 0xcc 0xcc 0xc8 0xd4 0xb8 0xb8 0xc0 0x68 0x68 0x6c 0x9c 0x9c 0x9c 0x84 0x78 0x74 0xb4 0x9c 0x94 0xc8 0xb8 0xac 0xc0 0xb8 0xa8 0xa0 0x98 0x8c 0xb0 0xa8 0xa0 0xac 0x98 0xa4 0xc8 0xa8 0xc8 0xd8 0xc8 0xd8 0xc0 0xc0 0xc0 0xb8 0xb8 0xb8 0xc0 0xc0 0xc0 0xc8 0xc8 0xc8 0xc0 0xc0 0xc0 0xb8 0xb8 0xb8 0xbc 0xbc 0xbc 0xbc 0xb8 0xb8 0xb8 0xb0 0xb0 0xac 0xa8 0x9c 0xa0 0xa0 0x88 0x9c 0x98 0x90 0x94 0x8c 0x94 0x80 0x78 0x88 0x80 0x78 0x90 0xa0 0x98 0x9c 0x90 0x88 0x78 0x9c 0x98 0x84 0x94 0x94 0x7c 0x90 0x88 0x80 0x30 0x20 0x28 0x34 0x28 0x30 0x2c 0x24 0x2c 0x30 0x28 0x2c 0x28 0x20 0x20 0x1c 0x18 0x18 0x20 0x20 0x20 0x28 0x28 0x2c 0x20 0x20 0x28 0x18 0x18 0x1c 0x20 0x20 0x20 0x28 0x28 0x28 0x20 0x20 0x20 0x1c 0x18 0x1c 0x28 0x20 0x28 0x2c 0x28 0x2c 0x20 0x20 0x20 0x14 0x18 0x1c 0x18 0x20 0x28 0x24 0x28 0x30 0x20 0x20 0x28 0x18 0x18 0x1c 0x20 0x20 0x20 0x24 0x28 0x28 0x18 0x20 0x20 0x14 0x18 0x18 0x08 0x08 0x08 0x08 0x08 0x10 0x08 0x08 0x18 0x14 0x0c 0x1c 0x28 0x18 0x28 0x30 0x20 0x28 0x38 0x28 0x28 0x30 0x28 0x28 0x28 0x28 0x28 0x30 0x28 0x28 0x38 0x28 0x28 0x34 0x24 0x2c 0x28 0x18 0x28 0x30 0x28 0x30 0x28 0x28 0x28 0x34 0x2c 0x2c 0x38 0x28 0x28 0x3c 0x2c 0x34 0x38 0x28 0x38 0x3c 0x2c 0x34 0x38 0x28 0x28 0x38 0x30 0x30 0xd8 0xd8 0xd8 0xe8 0xd0 0xe8 0x98 0x68 0x98 0xac 0x94 0xbc 0xa8 0xa8 0xc8 0xa8 0xa0 0xc8 0xb8 0xa8 0xd8 0xa0 0xa0 0xc8 0x98 0xa8 0xc8 0xb0 0xb0 0xb8 0xc8 0xb8 0xa8 0xc0 0xb8 0xb8 0xb8 0xb8 0xc8 0xc8 0xc0 0xc8 0xc8 0xb8 0xb8 0xc4 0xbc 0xcc 0xa8 0xa8 0xc8 0xb8 0xb8 0xc8 0xc8 0xc8 0xc8 0xc8 0xc8 0xc8 0xc8 0xc8 0xc8 0xc4 0xc4 0xbc 0xc8 0xc8 0xb8 0xb8 0xb8 0xb0 0xc8 0xc8 0xc8 0xc8 0xc0 0xc0 0xc8 0xb8 0xb8 0xc8 0xc0 0xc0 0xc8 0xc8 0xc8 0xc0 0xc0 0xc0 0xb8 0xb8 0xb8 0xc0 0xc0 0xc0 0xc8 0xc8 0xc8 0xc0 0xc0 0xc0 0xb8 0xb8 0xb8 0xb8 0xb8 0xb8 0xb8 0xb8 0xb8 0xb8 0xb0 0xb0 0x98 0x88 0x88 0xa0 0x90 0x90 0x98 0x88 0x88 0x88 0x80 0x90 0x58 0x58 0x78 0x88 0x88 0x90 0x88 0x88 0x78 0x8c 0x8c 0x84 0x88 0x88 0x88 0x90 0x88 0x88 0x38 0x28 0x28 0x34 0x24 0x2c 0x28 0x18 0x28 0x28 0x20 0x28 0x28 0x28 0x28 0x20 0x20 0x20 0x18 0x18 0x18 0x20 0x20 0x20 0x28 0x28 0x28 0x20 0x20 0x20 0x18 0x18 0x18 0x20 0x20 0x20 0x28 0x28 0x28 0x28 0x20 0x28 0x28 0x18 0x28 0x28 0x20 0x28 0x28 0x28 0x28 0x20 0x20 0x28 0x18 0x18 0x28 0x20 0x20 0x28 0x28 0x28 0x28 0x20 0x20 0x20 0x18 0x18 0x18 0x18 0x20 0x20 0x18 0x28 0x28 0x18 0x20 0x20 0x08 0x08 0x08 0x08 0x08 0x0c 0x08 0x08 0x10 0x0c 0x08 0x0c 0x20 0x18 0x18 0x20 0x18 0x18 0x30 0x28 0x28 0x40 0x38 0x38 0x34 0x2c 0x2c 0x30 0x28 0x28 0x34 0x2c 0x2c 0x44 0x38 0x3c 0x38 0x28 0x30 0x30 0x28 0x2c 0x2c 0x2c 0x2c 0x3c 0x38 0x34 0x38 0x30 0x28 0x30 0x28 0x28 0x34 0x2c 0x34 0x40 0x38 0x38 0x38 0x30 0x28 0x2c 0x28 0x24 0xd0 0xd0 0xd0 0xe0 0xd8 0xcc 0xd8 0xc8 0xb0 0xc0 0xb8 0xb4 0xa8 0xa8 0xb8 0xac 0xa8 0xc0 0xa8 0xa0 0xc0 0xa4 0xa8 0xc0 0x94 0xa4 0xb4 0xb4 0xb8 0xbc 0xc0 0xb8 0xb0 0x9c 0x98 0x98 0xc0 0xc0 0xc8 0xdc 0xd8 0xd8 0xd4 0xcc 0xc4 0xc8 0xc8 0xcc 0xb4 0xbc 0xcc 0xc8 0xc8 0xdc 0xc0 0xb8 0xd0 0xac 0xa8 0xb4 0xc0 0xc0 0xc0 0xc8 0xc8 0xc4 0xc4 0xc4 0xbc 0xbc 0xb8 0xb8 0xc8 0xc0 0xc8 0xd0 0xc8 0xcc 0xc8 0xc0 0xc0 0xc0 0xb8 0xb8 0xc8 0xc0 0xc0 0xcc 0xc8 0xc8 0xc0 0xc0 0xc0 0xb8 0xb8 0xb8 0xc0 0xc0 0xc0 0xc8 0xc8 0xc8 0xbc 0xbc 0xbc 0xb8 0xb8 0xb8 0xb4 0xb4 0xb4 0xc0 0xb8 0xc0 0xac 0x9c 0xac 0xa8 0x98 0xa0 0x98 0x88 0x88 0x90 0x88 0x90 0x80 0x80 0x90 0x80 0x78 0x74 0x8c 0x7c 0x64 0x8c 0x88 0x6c 0x84 0x8c 0x6c 0x88 0x88 0x78 0x30 0x28 0x28 0x30 0x28 0x2c 0x28 0x20 0x28 0x1c 0x18 0x20 0x20 0x20 0x28 0x28 0x28 0x2c 0x20 0x20 0x20 0x18 0x18 0x18 0x20 0x20 0x20 0x28 0x28 0x28 0x20 0x20 0x20 0x1c 0x18 0x18 0x28 0x20 0x20 0x30 0x28 0x2c 0x28 0x20 0x28 0x1c 0x18 0x20 0x20 0x20 0x28 0x28 0x28 0x30 0x20 0x20 0x28 0x18 0x18 0x20 0x20 0x20 0x28 0x24 0x28 0x2c 0x18 0x20 0x20 0x10 0x18 0x18 0x18 0x20 0x20 0x24 0x28 0x28 0x08 0x08 0x08 0x08 0x08 0x08 0x08 0x08 0x08 0x10 0x10 0x08 0x28 0x28 0x18 0x24 0x24 0x1c 0x28 0x28 0x28 0x34 0x2c 0x2c 0x38 0x28 0x28 0x30 0x28 0x28 0x28 0x28 0x28 0x34 0x2c 0x2c 0x38 0x28 0x28 0x34 0x2c 0x2c 0x28 0x28 0x28 0x30 0x30 0x28 0x38 0x38 0x28 0x2c 0x2c 0x24 0x28 0x28 0x28 0x30 0x30 0x28 0x38 0x38 0x28 0x30 0x30 0x28 0xc8 0xc8 0xc8 0xc8 0xd0 0xa0 0xc8 0xd8 0x78 0xa0 0xa8 0x78 0x98 0x98 0x98 0x90 0x90 0x98 0x88 0x88 0x98 0x90 0x98 0xa0 0x78 0x88 0x88 0xa0 0xa8 0xa8 0xd8 0xd8 0xd8 0xd0 0xd0 0xd0 0xc8 0xc8 0xc8 0xd0 0xd0 0xc8 0xd8 0xd8 0xc8 0xc4 0xcc 0xc4 0xa8 0xb8 0xb8 0xa4 0xa4 0xbc 0x88 0x78 0xa8 0xb8 0xb0 0xc8 0xc8 0xc8 0xc8 0xc8 0xc8 0xc8 0xc8 0xc8 0xc8 0xc8 0xc0 0xc8 0xc8 0xb8 0xc8 0xc8 0xc0 0xc8 0xc8 0xc8 0xc8 0xc8 0xc0 0xc0 0xc8 0xb8 0xb8 0xc8 0xc0 0xc0 0xc8 0xc8 0xc8 0xc0 0xc0 0xc0 0xb8 0xb8 0xb8 0xbc 0xbc 0xbc 0xb8 0xb8 0xb8 0xb8 0xb8 0xb8 0xa8 0xa8 0xa8 0xb0 0xa8 0xb8 0xa8 0x98 0xb8 0xa4 0x94 0xa4 0x88 0x78 0x78 0xa0 0x98 0x98 0xb8 0xb8 0xb8 0x98 0x88 0x78 0x88 0x68 0x48 0x90 0x88 0x58 0x88 0x98 0x58 0x90 0x98 0x78 0x28 0x28 0x28 0x24 0x24 0x24 0x28 0x28 0x28 0x20 0x20 0x28 0x18 0x18 0x28 0x20 0x20 0x28 0x28 0x28 0x28 0x20 0x20 0x20 0x18 0x18 0x18 0x20 0x20 0x20 0x28 0x28 0x28 0x28 0x20 0x20 0x28 0x18 0x18 0x28 0x20 0x20 0x28 0x28 0x28 0x20 0x20 0x28 0x18 0x18 0x28 0x20 0x20 0x28 0x28 0x28 0x28 0x20 0x20 0x28 0x18 0x18 0x28 0x18 0x20 0x28 0x18 0x28 0x28 0x18 0x20 0x20 0x18 0x18 0x18 0x20 0x20 0x20 0x08 0x08 0x08 0x08 0x08 0x0c 0x08 0x08 0x10 0x08 0x08 0x04 0x1c 0x1c 0x0c 0x2c 0x28 0x20 0x30 0x28 0x28 0x30 0x28 0x28 0x30 0x28 0x28 0x2c 0x28 0x28 0x2c 0x2c 0x2c 0x30 0x28 0x28 0x3c 0x2c 0x2c 0x44 0x38 0x3c 0x34 0x2c 0x34 0x2c 0x28 0x28 0x2c 0x2c 0x24 0x28 0x28 0x24 0x2c 0x2c 0x2c 0x28 0x28 0x20 0x34 0x34 0x24 0x38 0x38 0x30 0xd0 0xd0 0xd0 0xc4 0xc8 0xbc 0x9c 0xa4 0x8c 0x74 0x78 0x70 0x70 0x70 0x78 0x68 0x68 0x70 0x98 0x98 0xa0 0xa8 0xa8 0xa8 0xa0 0xa0 0x98 0x98 0x98 0x8c 0xd0 0xd0 0xc0 0xd8 0xd8 0xcc 0xd0 0xd0 0xc8 0xc8 0xc8 0xc0 0xd0 0xd0 0xc8 0xd4 0xd8 0xd4 0xb0 0xb8 0xb8 0xa4 0x98 0xac 0xb4 0x94 0xbc 0xc8 0xb8 0xcc 0xc4 0xc4 0xc4 0xc8 0xc8 0xc4 0xc8 0xc8 0xc0 0xcc 0xc8 0xc8 0xc8 0xc0 0xc8 0xbc 0xb8 0xbc 0xc0 0xc0 0xc0 0xcc 0xc8 0xc8 0xc8 0xc0 0xc0 0xbc 0xb8 0xb8 0xc0 0xc0 0xc0 0xc8 0xc8 0xc8 0xc0 0xc0 0xc0 0xb8 0xb8 0xb8 0xbc 0xbc 0xbc 0xc8 0xc8 0xc8 0xb0 0xb0 0xb0 0xa8 0xa8 0xb0 0xa4 0xa4 0xb4 0xac 0xa8 0xb0 0xb0 0xa8 0xa8 0xb0 0xa8 0xa8 0xb0 0xa8 0xa8 0xa4 0x98 0x90 0xa0 0x90 0x80 0x8c 0x88 0x70 0x94 0x9c 0x7c 0xa4 0xa8 0x98 0x28 0x28 0x28 0x18 0x18 0x1c 0x20 0x20 0x28 0x28 0x28 0x30 0x20 0x20 0x28 0x14 0x18 0x18 0x1c 0x24 0x1c 0x24 0x28 0x24 0x20 0x20 0x20 0x1c 0x18 0x1c 0x28 0x20 0x28 0x30 0x28 0x2c 0x28 0x20 0x20 0x1c 0x18 0x18 0x20 0x20 0x20 0x28 0x28 0x2c 0x20 0x20 0x28 0x18 0x18 0x1c 0x20 0x20 0x20 0x28 0x28 0x2c 0x20 0x20 0x28 0x14 0x18 0x1c 0x18 0x20 0x20 0x24 0x28 0x28 0x20 0x20 0x20 0x18 0x18 0x18 0x08 0x08 0x08 0x08 0x08 0x10 0x08 0x08 0x18 0x0c 0x0c 0x0c 0x18 0x18 0x08 0x24 0x1c 0x14 0x38 0x28 0x28 0x30 0x28 0x28 0x28 0x28 0x28 0x2c 0x2c 0x2c 0x38 0x38 0x38 0x38 0x30 0x30 0x38 0x28 0x28 0x3c 0x2c 0x34 0x38 0x28 0x38 0x34 0x2c 0x34 0x28 0x28 0x28 0x2c 0x2c 0x2c 0x38 0x38 0x38 0x34 0x34 0x2c 0x38 0x38 0x28 0x30 0x30 0x28 0xd8 0xd8 0xd8 0xd0 0xd0 0xe8 0x78 0x78 0xa8 0x78 0x78 0x98 0xc8 0xc8 0xd8 0x9c 0x9c 0xa4 0xc8 0xc8 0xc8 0xc0 0xb8 0xb0 0xc8 0xb8 0xa8 0xb8 0xb0 0x98 0xc8 0xc8 0xa8 0xd0 0xd0 0xb8 0xd8 0xd8 0xc8 0xd0 0xd0 0xc8 0xc8 0xc8 0xc8 0xc0 0xc0 0xc0 0xb8 0xb8 0xb8 0xc0 0xa8 0xb8 0xb8 0x88 0xa8 0xd0 0xb8 0xc8 0xc8 0xc8 0xc8 0xc8 0xc8 0xc0 0xc8 0xc8 0xb8 0xc8 0xc8 0xc0 0xc8 0xc8 0xc8 0xc0 0xc0 0xc0 0xb8 0xb8 0xb8 0xc0 0xc0 0xc0 0xc8 0xc8 0xc8 0xc0 0xc0 0xc0 0xb8 0xb8 0xb8 0xc0 0xc0 0xc0 0xc8 0xc8 0xc8 0xc0 0xc0 0xc0 0xb8 0xb8 0xb8 0xb8 0xb8 0xb8 0xa8 0xa8 0xa8 0xa4 0xac 0xac 0x98 0xa8 0xa8 0xa8 0xb0 0xb0 0xb8 0xb8 0xb8 0xb8 0xb0 0xb0 0xb8 0xa8 0xa8 0xb0 0xa8 0xa8 0xb8 0xb8 0xb8 0xb0 0xb0 0xb0 0xa8 0xa8 0xa8 0xa8 0xa8 0xa8 0x28 0x28 0x28 0x20 0x20 0x28 0x18 0x18 0x28 0x20 0x20 0x28 0x28 0x28 0x28 0x1c 0x24 0x1c 0x18 0x28 0x18 0x1c 0x24 0x1c 0x28 0x28 0x28 0x28 0x20 0x28 0x28 0x18 0x28 0x28 0x20 0x28 0x28 0x28 0x28 0x20 0x20 0x20 0x18 0x18 0x18 0x20 0x20 0x20 0x28 0x28 0x28 0x20 0x20 0x20 0x18 0x18 0x18 0x20 0x20 0x20 0x28 0x28 0x28 0x20 0x20 0x20 0x18 0x18 0x18 0x20 0x20 0x20 0x28 0x28 0x28 0x18 0x18 0x18 0x08 0x08 0x08 0x08 0x08 0x0c 0x08 0x08 0x10 0x08 0x08 0x04 0x10 0x10 0x20 0x10 0x08 0x20 0x2c 0x1c 0x1c 0x2c 0x28 0x24 0x24 0x2c 0x24 0x24 0x28 0x20 0x30 0x30 0x28 0x38 0x38 0x34 0x30 0x30 0x30 0x2c 0x28 0x2c 0x34 0x2c 0x34 0x40 0x38 0x3c 0x34 0x2c 0x2c 0x2c 0x28 0x28 0x30 0x30 0x30 0x38 0x38 0x30 0x34 0x34 0x24 0x28 0x28 0x20 0xd0 0xd0 0xd0 0xd8 0xd8 0xe4 0x88 0x88 0xa0 0x7c 0x78 0x84 0xa0 0x98 0x98 0x74 0x78 0x78 0x94 0xa4 0xa4 0xac 0xb8 0xa8 0xa8 0xb0 0x90 0xa4 0xa8 0x94 0xc8 0xc8 0xc0 0x58 0x58 0x5c 0x98 0x98 0xa8 0x98 0x98 0xa0 0xac 0xac 0xac 0x88 0x88 0x88 0xc0 0xc0 0xc0 0xd4 0xc8 0xd0 0xd8 0xc0 0xd0 0xc8 0xb8 0xc0 0xc8 0xc0 0xc0 0xcc 0xc8 0xc4 0xc8 0xc8 0xc0 0xcc 0xc8 0xc8 0xcc 0xc4 0xcc 0xcc 0xc8 0xcc 0xc0 0xc0 0xc0 0xb8 0xb8 0xb8 0xc0 0xc0 0xc0 0xc8 0xc8 0xc8 0xc0 0xc0 0xc0 0xb8 0xb8 0xb8 0xc0 0xc0 0xc0 0xc4 0xc8 0xc4 0xb8 0xc0 0xb8 0xb4 0xb8 0xb4 0xb4 0xb4 0xb4 0xb4 0xb8 0xb8 0xac 0xb4 0xb4 0xb4 0xb8 0xb8 0xb8 0xb8 0xb8 0xbc 0xb8 0xb8 0xb8 0xb0 0xb0 0xac 0xa8 0xa8 0xb0 0xb0 0xb0 0xb8 0xb8 0xb8 0xb0 0xb0 0xb0 0xac 0xa8 0xac 0x28 0x20 0x28 0x2c 0x28 0x30 0x20 0x20 0x28 0x18 0x18 0x20 0x20 0x20 0x28 0x24 0x28 0x28 0x1c 0x24 0x1c 0x18 0x18 0x14 0x28 0x20 0x20 0x30 0x28 0x2c 0x28 0x20 0x28 0x1c 0x18 0x1c 0x20 0x20 0x20 0x28 0x28 0x28 0x20 0x20 0x20 0x18 0x18 0x18 0x20 0x20 0x20 0x28 0x28 0x28 0x20 0x20 0x20 0x18 0x18 0x18 0x20 0x20 0x20 0x28 0x28 0x2c 0x1c 0x1c 0x24 0x18 0x18 0x1c 0x1c 0x1c 0x1c 0x18 0x18 0x18 0x08 0x08 0x08 0x08 0x08 0x08 0x08 0x08 0x08 0x0c 0x0c 0x04 0x18 0x18 0x08 0x1c 0x14 0x0c 0x28 0x18 0x18 0x24 0x24 0x1c 0x28 0x38 0x28 0x24 0x2c 0x1c 0x28 0x28 0x18 0x28 0x30 0x28 0x28 0x38 0x38 0x24 0x2c 0x2c 0x28 0x28 0x28 0x34 0x2c 0x2c 0x38 0x28 0x28 0x34 0x2c 0x2c 0x28 0x28 0x28 0x30 0x30 0x28 0x38 0x38 0x28 0x30 0x30 0x28 0xc8 0xc8 0xc8 0xd0 0xd0 0xd0 0x98 0x98 0x98 0x9c 0x94 0x8c 0xb8 0xa8 0x98 0x84 0x8c 0x84 0x78 0x98 0x98 0x88 0xa8 0x90 0x88 0xa8 0x78 0xa8 0xb8 0xa8 0xc8 0xc8 0xd8 0xa4 0xa4 0xc4 0x98 0x98 0xc8 0xb0 0xb0 0xc8 0xc8 0xc8 0xc8 0xc8 0xc8 0xc8 0xc8 0xc8 0xc8 0xc8 0xc8 0xc8 0xc8 0xc8 0xc8 0xc8 0xc0 0xc0 0xc8 0xb8 0xb8 0xc8 0xc0 0xc0 0xc8 0xc8 0xc8 0xcc 0xc4 0xcc 0xc8 0xb8 0xc8 0xc8 0xc0 0xc8 0xc8 0xc8 0xc8 0xc0 0xc0 0xc0 0xb8 0xb8 0xb8 0xc0 0xc0 0xc0 0xc8 0xc8 0xc8 0xc0 0xc0 0xc0 0xb8 0xb8 0xb8 0xb8 0xc0 0xb8 0xb8 0xc8 0xb8 0xb8 0xc0 0xb8 0xb8 0xb8 0xb8 0xb8 0xb8 0xb8 0xb8 0xb8 0xb8 0xb8 0xb8 0xb8 0xb8 0xb8 0xb8 0xb8 0xb8 0xb8 0xb8 0xb8 0xb8 0xb0 0xb0 0xb0 0xa8 0xa8 0xa8 0xb0 0xb0 0xb0 0xb8 0xb8 0xb8 0xb8 0xb0 0xb8 0x28 0x18 0x28 0x28 0x20 0x28 0x28 0x28 0x28 0x20 0x20 0x28 0x18 0x18 0x28 0x20 0x20 0x28 0x28 0x28 0x28 0x28 0x20 0x20 0x28 0x18 0x18 0x28 0x20 0x20 0x28 0x28 0x28 0x20 0x20 0x20 0x18 0x18 0x18 0x20 0x20 0x20 0x28 0x28 0x28 0x20 0x20 0x20 0x18 0x18 0x18 0x20 0x20 0x20 0x28 0x28 0x28 0x20 0x20 0x20 0x18 0x18 0x18 0x1c 0x1c 0x24 0x18 0x18 0x28 0x1c 0x1c 0x24 0x18 0x18 0x18 0x18 0x18 0x18 0x10 0x10 0x08 0x0c 0x08 0x08 0x10 0x08 0x10 0x0c 0x08 0x08 0x10 0x10 0x08 0x20 0x18 0x14 0x2c 0x1c 0x1c 0x1c 0x18 0x10 0x20 0x28 0x18 0x20 0x28 0x18 0x24 0x2c 0x1c 0x20 0x28 0x20 0x24 0x2c 0x2c 0x24 0x28 0x24 0x2c 0x2c 0x24 0x2c 0x28 0x24 0x34 0x2c 0x2c 0x3c 0x38 0x38 0x30 0x30 0x30 0x2c 0x28 0x24 0x38 0x30 0x28 0x3c 0x38 0x34 0xd0 0xd0 0xd0 0xc8 0xc8 0xc8 0xb0 0xb0 0xb0 0xa8 0x98 0x9c 0xa8 0x88 0x90 0x8c 0x78 0x90 0x8c 0x84 0xac 0xa4 0xa8 0xac 0xa8 0xb8 0x98 0xc0 0xc8 0xbc 0xcc 0xcc 0xd4 0xd8 0xd8 0xe4 0xd0 0xd0 0xe0 0xc8 0xc8 0xd0 0xcc 0xcc 0xcc 0xd8 0xd8 0xd8 0xcc 0xcc 0xcc 0xc8 0xc8 0xc4 0xc8 0xc8 0xc0 0xcc 0xc8 0xc4 0xc8 0xc0 0xc0 0xbc 0xb8 0xb4 0xc4 0xc4 0xbc 0xcc 0xc8 0xc8 0xc8 0xc0 0xc8 0xbc 0xb8 0xbc 0xc0 0xc0 0xc0 0xc8 0xc8 0xc8 0xc0 0xc0 0xc0 0xb8 0xb8 0xb8 0xc0 0xc0 0xc0 0xc4 0xc8 0xc4 0xb8 0xc0 0xb8 0xb0 0xb8 0xb0 0xb8 0xc0 0xb8 0xc4 0xc8 0xc4 0xbc 0xbc 0xbc 0xbc 0xb8 0xb0 0xbc 0xb4 0xa4 0xc0 0xb8 0xa4 0xbc 0xb4 0x9c 0xb8 0xb8 0x98 0xac 0xb4 0x8c 0xbc 0xb8 0x98 0xc0 0xb0 0x98 0xa4 0xa8 0x7c 0x94 0xac 0x6c 0xb0 0xb8 0x9c 0x28 0x20 0x28 0x1c 0x18 0x20 0x20 0x20 0x28 0x28 0x28 0x30 0x20 0x20 0x28 0x1c 0x18 0x1c 0x28 0x20 0x20 0x30 0x28 0x28 0x28 0x20 0x20 0x1c 0x18 0x18 0x20 0x20 0x20 0x28 0x28 0x28 0x20 0x20 0x20 0x18 0x18 0x1c 0x20 0x20 0x28 0x28 0x28 0x2c 0x20 0x20 0x20 0x18 0x18 0x18 0x20 0x20 0x20 0x28 0x28 0x28 0x20 0x20 0x20 0x18 0x18 0x20 0x1c 0x1c 0x2c 0x24 0x28 0x30 0x18 0x20 0x20 0x14 0x18 0x18 0x18 0x18 0x08 0x14 0x0c 0x0c 0x18 0x08 0x18 0x10 0x08 0x10 0x08 0x08 0x08 0x1c 0x14 0x14 0x38 0x28 0x28 0x2c 0x24 0x1c 0x28 0x28 0x18 0x20 0x28 0x18 0x28 0x38 0x28 0x24 0x2c 0x24 0x28 0x28 0x28 0x2c 0x2c 0x24 0x38 0x38 0x28 0x30 0x30 0x28 0x28 0x28 0x28 0x30 0x30 0x30 0x38 0x38 0x38 0x38 0x30 0x30 0x38 0x28 0x28 0x38 0x30 0x30 0xd8 0xd8 0xd8 0xd0 0xd0 0xd0 0xc8 0xc8 0xc8 0xbc 0xa4 0xb4 0x98 0x68 0x88 0xa4 0x74 0xac 0x88 0x58 0xa8 0xb8 0xa0 0xc0 0xd8 0xd8 0xc8 0xd0 0xd0 0xc8 0xc8 0xc8 0xc8 0xd0 0xd0 0xc8 0xd8 0xd8 0xc8 0xd0 0xd0 0xc8 0xc8 0xc8 0xc8 0xcc 0xcc 0xcc 0xc8 0xc8 0xc8 0xc8 0xc8 0xc0 0xc8 0xc8 0xb8 0xc4 0xc4 0xbc 0xc8 0xc8 0xc8 0xc4 0xc4 0xbc 0xc8 0xc8 0xb8 0xc4 0xc4 0xbc 0xc8 0xc8 0xc8 0xbc 0xbc 0xbc 0xb8 0xb8 0xb8 0xbc 0xbc 0xbc 0xc8 0xc8 0xc8 0xb4 0xb4 0xb4 0xb8 0xb8 0xb8 0xb8 0xc0 0xb8 0xb8 0xc8 0xb8 0xb8 0xc0 0xb8 0xb8 0xb8 0xb8 0xb8 0xb8 0xb8 0xb8 0xb8 0xb8 0xb8 0xb0 0xa0 0xb8 0xa8 0x88 0xb8 0xa8 0x80 0xb8 0xa8 0x78 0xa8 0xa8 0x68 0x98 0xa8 0x58 0x88 0x80 0x40 0x98 0x78 0x48 0x80 0x88 0x30 0x68 0x98 0x18 0x50 0x68 0x28 0x28 0x28 0x28 0x20 0x20 0x28 0x18 0x18 0x28 0x20 0x20 0x28 0x28 0x28 0x28 0x28 0x20 0x20 0x28 0x18 0x18 0x28 0x20 0x20 0x28 0x28 0x28 0x20 0x20 0x20 0x18 0x18 0x18 0x20 0x20 0x20 0x28 0x28 0x28 0x20 0x20 0x28 0x18 0x18 0x28 0x20 0x20 0x28 0x28 0x28 0x28 0x20 0x20 0x20 0x18 0x18 0x18 0x20 0x20 0x20 0x28 0x28 0x28 0x1c 0x1c 0x24 0x18 0x18 0x28 0x18 0x20 0x28 0x18 0x28 0x28 0x10 0x18 0x18 0x20 0x18 0x08 0x10 0x08 0x04 0x14 0x0c 0x14 0x10 0x08 0x08 0x14 0x0c 0x04 0x18 0x08 0x04 0x38 0x20 0x20 0x3c 0x28 0x24 0x34 0x24 0x1c 0x20 0x18 0x10 0x28 0x28 0x20 0x2c 0x28 0x20 0x34 0x2c 0x24 0x2c 0x28 0x20 0x30 0x30 0x28 0x38 0x38 0x30 0x2c 0x2c 0x24 0x28 0x28 0x24 0x30 0x30 0x30 0x3c 0x38 0x38 0x38 0x30 0x30 0x2c 0x28 0x28 0xd0 0xd0 0xd0 0xd8 0xd8 0xd8 0xd0 0xd0 0xd0 0xd4 0xc8 0xd0 0xbc 0xa4 0xb4 0xb4 0x98 0xb0 0xb8 0x98 0xb8 0xac 0x98 0x98 0xd0 0xc8 0xa8 0xd8 0xd8 0xb0 0xc4 0xcc 0x9c 0xc8 0xc8 0xa0 0xd8 0xd0 0xb0 0xd0 0xd8 0xa4 0xb4 0xcc 0x84 0xc4 0xc8 0x98 0xd8 0xc8 0xb0 0xc8 0xc8 0x98 0xb0 0xc0 0x78 0xb4 0xb8 0x88 0xc8 0xc0 0xa8 0xd0 0xc8 0xac 0xc8 0xc0 0xa0 0xc0 0xb8 0xa8 0xc0 0xb8 0xb8 0xbc 0xb8 0xb8 0xb0 0xb0 0xb0 0xa8 0xa8 0xa8 0xa0 0xa0 0xa0 0x98 0x98 0x98 0x88 0x88 0x88 0x74 0x78 0x74 0x70 0x78 0x70 0x78 0x78 0x74 0x70 0x68 0x68 0x5c 0x58 0x58 0x50 0x50 0x50 0x50 0x48 0x40 0x48 0x38 0x28 0x38 0x28 0x18 0x38 0x28 0x18 0x2c 0x28 0x0c 0x20 0x28 0x20 0x2c 0x28 0x08 0x38 0x28 0x10 0x24 0x28 0x20 0x10 0x28 0x20 0x20 0x28 0x08 0x2c 0x24 0x24 0x2c 0x28 0x2c 0x20 0x20 0x28 0x18 0x18 0x20 0x20 0x20 0x28 0x2c 0x28 0x2c 0x28 0x20 0x20 0x1c 0x18 0x18 0x20 0x20 0x20 0x28 0x28 0x28 0x20 0x20 0x20 0x18 0x18 0x18 0x20 0x20 0x20 0x28 0x28 0x2c 0x20 0x20 0x28 0x18 0x18 0x1c 0x20 0x20 0x20 0x28 0x28 0x2c 0x1c 0x1c 0x24 0x18 0x18 0x1c 0x1c 0x1c 0x1c 0x18 0x18 0x20 0x18 0x18 0x28 0x14 0x18 0x20 0x14 0x1c 0x1c 0x14 0x18 0x18 0x28 0x18 0x08 0x1c 0x14 0x0c 0x18 0x18 0x18 0x1c 0x14 0x0c 0x28 0x18 0x08 0x30 0x18 0x10 0x48 0x28 0x28 0x48 0x28 0x28 0x48 0x28 0x28 0x40 0x28 0x28 0x38 0x28 0x28 0x3c 0x2c 0x24 0x48 0x38 0x28 0x34 0x2c 0x24 0x28 0x28 0x28 0x2c 0x2c 0x24 0x28 0x28 0x18 0x2c 0x2c 0x24 0x28 0x28 0x28 0x30 0x30 0x30 0x38 0x38 0x38 0x30 0x30 0x30 0xc8 0xc8 0xc8 0xd0 0xd0 0xd0 0xd8 0xd8 0xd8 0xd0 0xd0 0xd0 0xc8 0xc8 0xc8 0xd0 0xc8 0xc0 0xd8 0xc8 0xb8 0xd0 0xc0 0xa0 0xc8 0xb8 0x88 0xc0 0xc0 0x78 0xb8 0xc8 0x68 0x98 0x98 0x50 0xa8 0x98 0x68 0x88 0x98 0x38 0x98 0xc8 0x38 0x84 0x8c 0x2c 0x88 0x68 0x38 0x78 0x78 0x20 0x68 0x88 0x08 0x64 0x6c 0x14 0x58 0x48 0x18 0x58 0x48 0x18 0x58 0x48 0x18 0x48 0x38 0x20 0x38 0x28 0x28 0x38 0x30 0x30 0x38 0x38 0x38 0x30 0x30 0x30 0x28 0x28 0x28 0x30 0x30 0x30 0x38 0x38 0x38 0x30 0x30 0x30 0x28 0x28 0x28 0x30 0x28 0x28 0x38 0x28 0x28 0x30 0x28 0x28 0x28 0x28 0x28 0x30 0x28 0x28 0x38 0x28 0x28 0x34 0x24 0x2c 0x28 0x18 0x28 0x28 0x20 0x28 0x28 0x28 0x28 0x28 0x28 0x28 0x28 0x28 0x28 0x28 0x28 0x28 0x28 0x28 0x28 0x2c 0x24 0x24 0x28 0x18 0x18 0x28 0x20 0x20 0x28 0x28 0x28 0x20 0x20 0x28 0x18 0x18 0x28 0x20 0x20 0x28 0x28 0x28 0x28 0x20 0x20 0x20 0x18 0x18 0x18 0x20 0x20 0x20 0x28 0x28 0x28 0x20 0x20 0x20 0x18 0x18 0x18 0x20 0x20 0x20 0x28 0x28 0x28 0x20 0x20 0x20 0x18 0x18 0x18 0x1c 0x1c 0x24 0x18 0x18 0x28 0x1c 0x1c 0x24 0x18 0x18 0x18 0x18 0x18 0x20 0x18 0x18 0x28 0x1c 0x1c 0x24 0x18 0x18 0x18 0x18 0x18 0x18 0x28 0x18 0x08 0x20 0x18 0x0c 0x1c 0x1c 0x14 0x20 0x18 0x14 0x24 0x14 0x14 0x2c 0x18 0x14 0x44 0x2c 0x24 0x44 0x28 0x20 0x50 0x30 0x28 0x50 0x38 0x30 0x44 0x34 0x2c 0x3c 0x28 0x24 0x44 0x2c 0x2c 0x38 0x28 0x24 0x34 0x2c 0x24 0x2c 0x28 0x20 0x2c 0x2c 0x24 0x38 0x38 0x30 0x30 0x30 0x28 0x28 0x28 0x24 0x30 0x30 0x30 0x38 0x38 0x38 0x40 0x40 0x40 0x48 0x48 0x48 0x50 0x50 0x50 0x54 0x58 0x58 0x48 0x50 0x50 0x48 0x48 0x44 0x48 0x40 0x38 0x40 0x38 0x24 0x38 0x30 0x10 0x2c 0x28 0x20 0x30 0x30 0x20 0x3c 0x38 0x14 0x38 0x30 0x20 0x20 0x28 0x20 0x18 0x30 0x20 0x38 0x38 0x0c 0x48 0x30 0x20 0x2c 0x28 0x20 0x18 0x28 0x20 0x24 0x28 0x20 0x3c 0x34 0x14 0x30 0x28 0x0c 0x38 0x30 0x18 0x30 0x28 0x20 0x2c 0x24 0x2c 0x1c 0x18 0x1c 0x2c 0x2c 0x2c 0x38 0x38 0x38 0x2c 0x2c 0x2c 0x28 0x28 0x28 0x2c 0x2c 0x2c 0x28 0x28 0x28 0x28 0x28 0x28 0x2c 0x28 0x28 0x30 0x28 0x28 0x30 0x28 0x28 0x2c 0x24 0x24 0x24 0x18 0x18 0x30 0x20 0x20 0x34 0x28 0x2c 0x28 0x20 0x28 0x1c 0x18 0x1c 0x24 0x24 0x24 0x28 0x28 0x28 0x28 0x28 0x28 0x28 0x28 0x28 0x24 0x24 0x24 0x2c 0x28 0x28 0x28 0x20 0x20 0x20 0x18 0x18 0x28 0x20 0x20 0x2c 0x28 0x2c 0x20 0x20 0x28 0x1c 0x18 0x1c 0x28 0x20 0x20 0x2c 0x28 0x28 0x20 0x20 0x20 0x18 0x18 0x1c 0x20 0x20 0x28 0x28 0x28 0x2c 0x20 0x20 0x20 0x18 0x18 0x18 0x20 0x20 0x20 0x28 0x28 0x28 0x20 0x20 0x20 0x18 0x18 0x1c 0x1c 0x1c 0x24 0x28 0x28 0x2c 0x20 0x20 0x20 0x18 0x18 0x1c 0x1c 0x1c 0x24 0x28 0x28 0x2c 0x20 0x20 0x20 0x18 0x18 0x18 0x28 0x18 0x08 0x24 0x1c 0x0c 0x28 0x28 0x18 0x24 0x1c 0x1c 0x18 0x08 0x18 0x20 0x10 0x10 0x58 0x48 0x38 0x54 0x3c 0x2c 0x58 0x38 0x28 0x54 0x3c 0x2c 0x58 0x48 0x38 0x50 0x38 0x38 0x48 0x28 0x38 0x4c 0x34 0x34 0x48 0x38 0x28 0x3c 0x34 0x2c 0x28 0x28 0x28 0x30 0x30 0x28 0x38 0x38 0x28 0x2c 0x2c 0x24 0x28 0x28 0x28 0x30 0x30 0x30 0x38 0x38 0x38 0x38 0x38 0x38 0x28 0x28 0x28 0x28 0x30 0x30 0x28 0x38 0x38 0x30 0x38 0x38 0x28 0x28 0x28 0x30 0x30 0x28 0x38 0x38 0x28 0x38 0x30 0x20 0x38 0x28 0x18 0x34 0x2c 0x2c 0x28 0x28 0x38 0x28 0x28 0x30 0x28 0x28 0x28 0x34 0x2c 0x34 0x38 0x28 0x38 0x34 0x2c 0x2c 0x28 0x28 0x18 0x2c 0x2c 0x1c 0x38 0x38 0x28 0x2c 0x2c 0x24 0x28 0x28 0x28 0x28 0x28 0x30 0x28 0x28 0x38 0x24 0x24 0x2c 0x28 0x28 0x28 0x28 0x28 0x28 0x28 0x28 0x28 0x28 0x28 0x28 0x28 0x28 0x28 0x28 0x28 0x28 0x28 0x28 0x28 0x28 0x28 0x28 0x28 0x28 0x28 0x2c 0x24 0x24 0x38 0x28 0x28 0x30 0x20 0x20 0x28 0x18 0x18 0x2c 0x24 0x24 0x28 0x28 0x28 0x24 0x24 0x24 0x28 0x28 0x28 0x28 0x28 0x28 0x28 0x28 0x28 0x24 0x24 0x24 0x18 0x18 0x18 0x20 0x20 0x20 0x28 0x28 0x28 0x28 0x20 0x20 0x28 0x18 0x18 0x28 0x20 0x20 0x28 0x28 0x28 0x28 0x20 0x20 0x28 0x18 0x18 0x28 0x20 0x20 0x28 0x28 0x28 0x20 0x20 0x28 0x18 0x18 0x28 0x20 0x20 0x28 0x28 0x28 0x28 0x20 0x20 0x20 0x18 0x18 0x18 0x20 0x20 0x20 0x28 0x28 0x28 0x20 0x20 0x20 0x18 0x18 0x18 0x20 0x20 0x20 0x28 0x28 0x28 0x20 0x20 0x20 0x18 0x18 0x18 0x20 0x20 0x20 0x28 0x28 0x28 0x20 0x20 0x20 0x28 0x20 0x08 0x1c 0x18 0x0c 0x20 0x20 0x20 0x2c 0x28 0x2c 0x1c 0x14 0x1c 0x14 0x08 0x04 0x50 0x40 0x30 0x5c 0x48 0x34 0x5c 0x44 0x2c 0x4c 0x38 0x24 0x58 0x48 0x38 0x6c 0x58 0x54 0x68 0x50 0x58 0x58 0x48 0x44 0x50 0x48 0x38 0x4c 0x48 0x40 0x30 0x30 0x30 0x28 0x28 0x24 0x2c 0x2c 0x24 0x28 0x28 0x20 0x2c 0x2c 0x24 0x28 0x28 0x24 0x30 0x30 0x30 0x38 0x38 0x38 0x2c 0x2c 0x2c 0x24 0x28 0x28 0x28 0x30 0x30 0x34 0x38 0x38 0x2c 0x2c 0x2c 0x28 0x28 0x24 0x30 0x30 0x28 0x38 0x38 0x30 0x30 0x30 0x28 0x28 0x28 0x28 0x28 0x28 0x30 0x28 0x28 0x2c 0x28 0x28 0x28 0x2c 0x28 0x2c 0x34 0x2c 0x34 0x3c 0x38 0x38 0x2c 0x2c 0x24 0x28 0x28 0x20 0x2c 0x2c 0x24 0x28 0x28 0x24 0x2c 0x2c 0x2c 0x28 0x28 0x2c 0x28 0x28 0x30 0x28 0x28 0x28 0x28 0x28 0x20 0x1c 0x18 0x18 0x28 0x20 0x28 0x2c 0x28 0x2c 0x28 0x28 0x28 0x2c 0x28 0x2c 0x2c 0x24 0x2c 0x2c 0x28 0x2c 0x24 0x24 0x24 0x20 0x18 0x1c 0x30 0x20 0x28 0x34 0x28 0x2c 0x2c 0x24 0x24 0x2c 0x28 0x2c 0x24 0x24 0x2c 0x28 0x28 0x2c 0x28 0x28 0x28 0x2c 0x28 0x2c 0x2c 0x24 0x2c 0x2c 0x28 0x2c 0x20 0x20 0x20 0x1c 0x18 0x18 0x28 0x20 0x20 0x30 0x28 0x28 0x28 0x20 0x20 0x20 0x18 0x18 0x28 0x20 0x20 0x30 0x28 0x28 0x28 0x20 0x20 0x1c 0x18 0x18 0x20 0x20 0x20 0x28 0x28 0x2c 0x20 0x20 0x28 0x18 0x18 0x1c 0x20 0x20 0x20 0x28 0x28 0x28 0x20 0x20 0x20 0x18 0x18 0x1c 0x20 0x20 0x28 0x28 0x28 0x2c 0x20 0x20 0x20 0x18 0x18 0x18 0x20 0x20 0x20 0x24 0x28 0x28 0x18 0x20 0x20 0x14 0x18 0x18 0x20 0x20 0x20 0x28 0x28 0x28 0x28 0x28 0x08 0x20 0x20 0x18 0x18 0x18 0x28 0x20 0x20 0x28 0x18 0x18 0x18 0x24 0x1c 0x14 0x48 0x38 0x28 0x54 0x44 0x2c 0x68 0x58 0x38 0x58 0x48 0x30 0x58 0x48 0x38 0x60 0x50 0x48 0x68 0x58 0x58 0x5c 0x54 0x4c 0x58 0x58 0x48 0x48 0x48 0x40 0x28 0x28 0x28 0x28 0x28 0x28 0x28 0x28 0x28 0x2c 0x2c 0x24 0x38 0x38 0x28 0x2c 0x2c 0x24 0x28 0x28 0x28 0x2c 0x2c 0x2c 0x28 0x28 0x28 0x2c 0x2c 0x2c 0x28 0x28 0x28 0x2c 0x2c 0x2c 0x28 0x28 0x28 0x2c 0x2c 0x2c 0x28 0x28 0x28 0x24 0x2c 0x2c 0x28 0x38 0x38 0x28 0x30 0x30 0x28 0x28 0x28 0x28 0x28 0x28 0x28 0x28 0x28 0x28 0x28 0x28 0x28 0x28 0x28 0x2c 0x2c 0x2c 0x28 0x28 0x28 0x28 0x28 0x28 0x28 0x28 0x28 0x2c 0x2c 0x2c 0x38 0x38 0x38 0x2c 0x2c 0x2c 0x28 0x28 0x28 0x28 0x28 0x20 0x38 0x38 0x28 0x2c 0x24 0x24 0x28 0x18 0x28 0x2c 0x24 0x2c 0x28 0x28 0x28 0x2c 0x24 0x2c 0x28 0x18 0x28 0x28 0x20 0x28 0x28 0x28 0x28 0x28 0x20 0x28 0x28 0x18 0x28 0x28 0x20 0x28 0x28 0x28 0x28 0x24 0x24 0x2c 0x18 0x18 0x28 0x24 0x24 0x2c 0x28 0x28 0x28 0x2c 0x24 0x2c 0x28 0x18 0x28 0x2c 0x24 0x2c 0x28 0x28 0x28 0x28 0x20 0x20 0x28 0x18 0x18 0x28 0x20 0x20 0x28 0x28 0x28 0x28 0x20 0x20 0x28 0x18 0x18 0x28 0x20 0x20 0x28 0x28 0x28 0x20 0x20 0x20 0x18 0x18 0x18 0x20 0x20 0x20 0x28 0x28 0x28 0x20 0x20 0x20 0x18 0x18 0x18 0x20 0x20 0x20 0x28 0x28 0x28 0x20 0x20 0x28 0x18 0x18 0x28 0x20 0x20 0x28 0x28 0x28 0x28 0x20 0x20 0x20 0x18 0x18 0x18 0x18 0x20 0x20 0x18 0x28 0x28 0x18 0x20 0x20 0x18 0x18 0x18 0x20 0x20 0x20 0x28 0x28 0x08 0x28 0x28 0x18 0x28 0x28 0x28 0x28 0x28 0x28 0x18 0x18 0x18 0x24 0x18 0x10 0x48 0x30 0x20 0x50 0x38 0x24 0x5c 0x44 0x2c 0x5c 0x48 0x34 0x58 0x48 0x38 0x58 0x48 0x3c 0x60 0x50 0x48 0x64 0x58 0x4c 0x54 0x4c 0x3c 0x4c 0x48 0x3c 0x30 0x30 0x28 0x24 0x28 0x20 0x24 0x2c 0x24 0x24 0x28 0x20 0x2c 0x2c 0x24 0x28 0x28 0x24 0x28 0x28 0x28 0x2c 0x28 0x2c 0x30 0x28 0x30 0x3c 0x38 0x38 0x30 0x30 0x28 0x28 0x28 0x24 0x2c 0x2c 0x2c 0x34 0x38 0x38 0x24 0x2c 0x2c 0x10 0x18 0x18 0x24 0x2c 0x2c 0x34 0x38 0x38 0x2c 0x2c 0x2c 0x28 0x28 0x28 0x28 0x28 0x28 0x28 0x28 0x28 0x28 0x28 0x28 0x2c 0x28 0x2c 0x2c 0x24 0x2c 0x30 0x28 0x2c 0x30 0x28 0x28 0x30 0x28 0x2c 0x30 0x28 0x30 0x30 0x28 0x2c 0x2c 0x24 0x24 0x1c 0x18 0x14 0x28 0x28 0x20 0x2c 0x28 0x28 0x2c 0x24 0x2c 0x2c 0x28 0x28 0x28 0x28 0x20 0x30 0x28 0x28 0x30 0x20 0x28 0x20 0x18 0x18 0x24 0x24 0x1c 0x2c 0x28 0x28 0x28 0x20 0x28 0x20 0x18 0x1c 0x28 0x20 0x20 0x2c 0x28 0x2c 0x24 0x24 0x2c 0x28 0x28 0x30 0x24 0x24 0x2c 0x2c 0x28 0x30 0x2c 0x24 0x2c 0x2c 0x28 0x2c 0x24 0x24 0x24 0x2c 0x28 0x28 0x28 0x20 0x20 0x1c 0x18 0x18 0x20 0x20 0x20 0x2c 0x28 0x28 0x28 0x20 0x20 0x1c 0x18 0x1c 0x20 0x20 0x28 0x28 0x28 0x2c 0x20 0x20 0x20 0x18 0x18 0x18 0x20 0x20 0x20 0x28 0x28 0x28 0x20 0x20 0x20 0x18 0x18 0x18 0x20 0x20 0x20 0x28 0x28 0x2c 0x20 0x20 0x28 0x18 0x18 0x1c 0x20 0x20 0x20 0x28 0x28 0x24 0x20 0x20 0x18 0x14 0x18 0x14 0x18 0x20 0x20 0x24 0x28 0x28 0x1c 0x1c 0x1c 0x18 0x18 0x18 0x28 0x28 0x08 0x28 0x28 0x10 0x38 0x38 0x28 0x28 0x28 0x20 0x08 0x08 0x08 0x20 0x10 0x08 0x58 0x38 0x28 0x58 0x38 0x28 0x58 0x38 0x28 0x58 0x40 0x30 0x58 0x48 0x38 0x54 0x44 0x34 0x58 0x48 0x38 0x58 0x48 0x38 0x48 0x38 0x28 0x3c 0x34 0x24 0x28 0x28 0x18 0x24 0x2c 0x1c 0x28 0x38 0x28 0x28 0x30 0x28 0x28 0x28 0x28 0x28 0x28 0x28 0x28 0x28 0x28 0x2c 0x24 0x2c 0x28 0x18 0x28 0x30 0x28 0x28 0x38 0x38 0x28 0x30 0x30 0x28 0x28 0x28 0x28 0x24 0x2c 0x2c 0x28 0x38 0x38 0x24 0x2c 0x2c 0x28 0x28 0x28 0x2c 0x2c 0x2c 0x28 0x28 0x28 0x28 0x28 0x28 0x28 0x28 0x28 0x28 0x28 0x28 0x28 0x28 0x28 0x2c 0x24 0x2c 0x28 0x18 0x28 0x34 0x24 0x2c 0x38 0x28 0x28 0x34 0x24 0x2c 0x28 0x18 0x28 0x34 0x24 0x2c 0x38 0x28 0x28 0x2c 0x24 0x24 0x28 0x28 0x28 0x24 0x24 0x24 0x28 0x28 0x28 0x28 0x28 0x20 0x28 0x28 0x18 0x2c 0x24 0x1c 0x38 0x28 0x28 0x2c 0x24 0x1c 0x28 0x28 0x18 0x24 0x24 0x1c 0x28 0x28 0x28 0x28 0x20 0x20 0x28 0x18 0x18 0x28 0x20 0x20 0x28 0x28 0x28 0x24 0x24 0x2c 0x18 0x18 0x28 0x20 0x20 0x28 0x28 0x28 0x28 0x24 0x24 0x24 0x18 0x18 0x18 0x20 0x20 0x20 0x28 0x28 0x28 0x20 0x20 0x20 0x18 0x18 0x18 0x20 0x20 0x20 0x28 0x28 0x28 0x20 0x20 0x28 0x18 0x18 0x28 0x20 0x20 0x28 0x28 0x28 0x28 0x20 0x20 0x20 0x18 0x18 0x18 0x20 0x20 0x20 0x28 0x28 0x28 0x20 0x20 0x20 0x18 0x18 0x18 0x20 0x20 0x20 0x28 0x28 0x28 0x20 0x20 0x20 0x18 0x18 0x18 0x20 0x20 0x18 0x28 0x28 0x18 0x20 0x20 0x18 0x18 0x18 0x18 0x1c 0x1c 0x1c 0x18 0x18 0x18 0x18 0x18 0x18 0x28 0x28 0x10 0x1c 0x18 0x08 0x2c 0x24 0x1c 0x2c 0x28 0x20 0x14 0x14 0x0c 0x14 0x08 0x20 0x48 0x30 0x20 0x4c 0x38 0x28 0x48 0x38 0x28 0x48 0x38 0x28 0x48 0x38 0x28 0x48 0x38 0x2c 0x4c 0x3c 0x34 0x54 0x48 0x40 0x3c 0x34 0x2c 0x2c 0x28 0x24 0x28 0x28 0x28 0x24 0x28 0x20 0x28 0x30 0x20 0x34 0x38 0x30 0x2c 0x2c 0x2c 0x2c 0x28 0x28 0x2c 0x24 0x24 0x30 0x28 0x30 0x28 0x20 0x30 0x1c 0x18 0x1c 0x2c 0x2c 0x24 0x3c 0x38 0x34 0x30 0x28 0x28 0x18 0x18 0x18 0x24 0x2c 0x2c 0x38 0x38 0x3c 0x34 0x2c 0x34 0x30 0x28 0x30 0x2c 0x24 0x2c 0x30 0x28 0x2c 0x30 0x28 0x28 0x30 0x28 0x28 0x2c 0x24 0x24 0x30 0x28 0x2c 0x2c 0x24 0x2c 0x34 0x28 0x30 0x34 0x24 0x2c 0x30 0x28 0x2c 0x28 0x28 0x28 0x2c 0x28 0x28 0x30 0x28 0x28 0x2c 0x28 0x28 0x24 0x24 0x24 0x18 0x18 0x18 0x24 0x24 0x24 0x28 0x28 0x20 0x28 0x28 0x18 0x20 0x18 0x10 0x30 0x20 0x20 0x30 0x28 0x28 0x24 0x24 0x24 0x1c 0x18 0x1c 0x28 0x20 0x28 0x30 0x28 0x28 0x28 0x20 0x18 0x1c 0x18 0x14 0x20 0x20 0x20 0x28 0x28 0x2c 0x20 0x20 0x28 0x1c 0x18 0x20 0x28 0x20 0x28 0x2c 0x28 0x2c 0x20 0x20 0x20 0x18 0x18 0x1c 0x20 0x20 0x28 0x28 0x28 0x2c 0x20 0x20 0x20 0x18 0x18 0x18 0x20 0x20 0x20 0x28 0x28 0x2c 0x20 0x20 0x28 0x18 0x18 0x1c 0x20 0x20 0x20 0x2c 0x28 0x2c 0x24 0x1c 0x24 0x1c 0x18 0x1c 0x20 0x20 0x20 0x28 0x28 0x28 0x20 0x20 0x20 0x18 0x18 0x18 0x20 0x20 0x20 0x24 0x28 0x28 0x18 0x20 0x20 0x14 0x18 0x14 0x20 0x20 0x18 0x24 0x28 0x24 0x18 0x20 0x20 0x14 0x18 0x18 0x18 0x18 0x18 0x18 0x18 0x18 0x28 0x28 0x18 0x28 0x20 0x18 0x28 0x18 0x18 0x24 0x1c 0x14 0x18 0x18 0x08 0x1c 0x14 0x04 0x38 0x28 0x18 0x34 0x2c 0x1c 0x38 0x38 0x28 0x38 0x30 0x20 0x38 0x28 0x18 0x38 0x28 0x20 0x38 0x28 0x28 0x3c 0x34 0x34 0x28 0x28 0x28 0x28 0x28 0x30 0x28 0x28 0x38 0x28 0x28 0x28 0x28 0x28 0x18 0x28 0x28 0x20 0x28 0x28 0x28 0x2c 0x24 0x24 0x28 0x18 0x18 0x28 0x20 0x28 0x28 0x28 0x38 0x24 0x24 0x2c 0x28 0x28 0x28 0x34 0x2c 0x2c 0x38 0x28 0x28 0x2c 0x24 0x24 0x28 0x28 0x28 0x34 0x2c 0x34 0x38 0x28 0x38 0x38 0x28 0x38 0x28 0x18 0x28 0x34 0x24 0x2c 0x38 0x28 0x28 0x34 0x24 0x24 0x28 0x18 0x18 0x28 0x20 0x20 0x28 0x28 0x28 0x2c 0x24 0x2c 0x28 0x18 0x28 0x24 0x24 0x24 0x28 0x38 0x28 0x24 0x2c 0x24 0x28 0x28 0x28 0x24 0x24 0x24 0x28 0x28 0x28 0x24 0x24 0x24 0x28 0x28 0x28 0x2c 0x2c 0x24 0x38 0x38 0x28 0x2c 0x24 0x1c 0x28 0x18 0x18 0x28 0x20 0x28 0x28 0x28 0x38 0x28 0x20 0x30 0x28 0x18 0x28 0x28 0x20 0x20 0x28 0x28 0x18 0x20 0x20 0x18 0x18 0x18 0x18 0x20 0x20 0x20 0x28 0x28 0x28 0x28 0x20 0x28 0x28 0x18 0x28 0x28 0x20 0x28 0x28 0x28 0x28 0x20 0x20 0x28 0x18 0x18 0x28 0x20 0x20 0x28 0x28 0x28 0x28 0x20 0x20 0x20 0x18 0x18 0x18 0x20 0x20 0x20 0x28 0x28 0x28 0x20 0x20 0x20 0x18 0x18 0x18 0x24 0x1c 0x24 0x28 0x18 0x28 0x24 0x1c 0x24 0x18 0x18 0x18 0x20 0x20 0x20 0x28 0x28 0x28 0x20 0x20 0x20 0x18 0x18 0x18 0x18 0x20 0x20 0x18 0x28 0x28 0x18 0x20 0x20 0x18 0x18 0x18 0x18 0x20 0x20 0x18 0x28 0x28 0x18 0x20 0x20 0x18 0x18 0x18 0x18 0x18 0x18 0x20 0x20 0x10 0x2c 0x28 0x24 0x20 0x18 0x20 0x1c 0x18 0x18 0x10 0x10 0x08 0x0c 0x08 0x20 0x24 0x1c 0x0c 0x20 0x18 0x0c 0x2c 0x24 0x1c 0x30 0x28 0x20 0x2c 0x24 0x1c 0x20 0x18 0x14 0x30 0x28 0x28 0x3c 0x38 0x3c 0x2c 0x2c 0x34 0x28 0x28 0x30 0x28 0x28 0x30 0x28 0x28 0x24 0x28 0x28 0x18 0x1c 0x18 0x14 0x28 0x20 0x28 0x30 0x28 0x2c 0x28 0x20 0x20 0x1c 0x18 0x18 0x24 0x24 0x24 0x28 0x28 0x28 0x28 0x28 0x28 0x30 0x28 0x2c 0x34 0x24 0x2c 0x30 0x28 0x2c 0x28 0x28 0x28 0x30 0x28 0x30 0x38 0x28 0x38 0x44 0x38 0x44 0x30 0x28 0x30 0x30 0x28 0x2c 0x2c 0x24 0x24 0x30 0x28 0x28 0x28 0x20 0x20 0x1c 0x18 0x1c 0x20 0x20 0x28 0x2c 0x28 0x30 0x28 0x20 0x28 0x1c 0x18 0x1c 0x24 0x24 0x24 0x24 0x28 0x24 0x20 0x28 0x20 0x14 0x18 0x18 0x20 0x20 0x28 0x28 0x28 0x2c 0x28 0x28 0x28 0x2c 0x28 0x24 0x30 0x28 0x20 0x30 0x28 0x24 0x28 0x20 0x20 0x1c 0x18 0x20 0x20 0x20 0x30 0x2c 0x28 0x34 0x28 0x20 0x28 0x1c 0x18 0x18 0x24 0x24 0x1c 0x28 0x28 0x20 0x20 0x20 0x18 0x18 0x18 0x10 0x24 0x24 0x1c 0x2c 0x28 0x28 0x28 0x20 0x28 0x1c 0x18 0x20 0x20 0x20 0x28 0x28 0x28 0x30 0x20 0x20 0x28 0x18 0x18 0x1c 0x20 0x20 0x20 0x28 0x28 0x28 0x20 0x20 0x20 0x18 0x18 0x18 0x20 0x20 0x20 0x28 0x28 0x28 0x20 0x20 0x20 0x1c 0x18 0x1c 0x24 0x1c 0x24 0x2c 0x28 0x2c 0x20 0x20 0x20 0x18 0x18 0x18 0x20 0x20 0x20 0x28 0x28 0x2c 0x1c 0x1c 0x24 0x14 0x18 0x1c 0x18 0x20 0x20 0x24 0x28 0x2c 0x1c 0x1c 0x24 0x14 0x18 0x1c 0x18 0x20 0x20 0x20 0x28 0x28 0x18 0x20 0x20 0x14 0x18 0x18 0x18 0x18 0x08 0x14 0x14 0x14 0x08 0x08 0x18 0x0c 0x0c 0x14 0x08 0x08 0x08 0x10 0x10 0x08 0x28 0x28 0x18 0x28 0x20 0x18 0x28 0x18 0x18 0x28 0x20 0x20 0x28 0x28 0x28 0x24 0x24 0x24 0x28 0x28 0x28 0x2c 0x2c 0x34 0x28 0x28 0x38 0x28 0x28 0x30 0x28 0x28 0x28 0x2c 0x2c 0x24 0x38 0x38 0x28 0x2c 0x24 0x24 0x28 0x18 0x28 0x2c 0x24 0x2c 0x28 0x28 0x28 0x24 0x24 0x1c 0x28 0x28 0x18 0x24 0x24 0x1c 0x28 0x28 0x28 0x2c 0x24 0x2c 0x28 0x18 0x28 0x28 0x20 0x28 0x28 0x28 0x28 0x2c 0x24 0x2c 0x28 0x18 0x28 0x30 0x28 0x30 0x28 0x28 0x28 0x24 0x24 0x24 0x18 0x18 0x18 0x20 0x20 0x20 0x28 0x28 0x28 0x20 0x20 0x28 0x18 0x18 0x28 0x20 0x20 0x28 0x28 0x28 0x28 0x28 0x20 0x28 0x28 0x18 0x28 0x28 0x28 0x28 0x28 0x38 0x28 0x20 0x28 0x28 0x18 0x18 0x28 0x20 0x20 0x28 0x28 0x28 0x28 0x2c 0x24 0x24 0x28 0x18 0x18 0x28 0x20 0x20 0x28 0x28 0x28 0x20 0x20 0x28 0x18 0x18 0x28 0x20 0x20 0x28 0x28 0x28 0x28 0x24 0x24 0x24 0x28 0x28 0x28 0x28 0x28 0x20 0x28 0x28 0x18 0x24 0x24 0x14 0x28 0x28 0x18 0x24 0x24 0x1c 0x28 0x28 0x28 0x20 0x20 0x28 0x18 0x18 0x28 0x20 0x20 0x28 0x28 0x28 0x28 0x20 0x20 0x20 0x18 0x18 0x18 0x20 0x20 0x20 0x28 0x28 0x28 0x20 0x20 0x20 0x18 0x18 0x18 0x20 0x20 0x20 0x28 0x28 0x28 0x20 0x20 0x20 0x18 0x18 0x18 0x20 0x20 0x20 0x28 0x28 0x28 0x20 0x20 0x20 0x18 0x18 0x18 0x1c 0x1c 0x24 0x18 0x18 0x28 0x1c 0x1c 0x24 0x18 0x18 0x18 0x1c 0x1c 0x24 0x18 0x18 0x28 0x1c 0x1c 0x24 0x18 0x18 0x18 0x18 0x20 0x20 0x18 0x28 0x28 0x10 0x18 0x18 0x10 0x10 0x08 0x08 0x08 0x08 0x08 0x08 0x10 0x08 0x08 0x10 0x08 0x08 0x10 0x0c 0x08 0x0c 0x20 0x18 0x18 0x30 0x28 0x28 0x28 0x20 0x20 0x1c 0x18 0x18 0x24 0x24 0x24 0x2c 0x28 0x28 0x30 0x28 0x28 0x2c 0x28 0x28 0x28 0x28 0x28 0x28 0x28 0x2c 0x28 0x28 0x30 0x28 0x28 0x28 0x2c 0x2c 0x24 0x28 0x28 0x24 0x28 0x28 0x28 0x28 0x28 0x28 0x28 0x28 0x28 0x28 0x28 0x24 0x24 0x24 0x1c 0x18 0x18 0x18 0x20 0x20 0x28 0x2c 0x28 0x30 0x28 0x20 0x28 0x1c 0x18 0x1c 0x24 0x24 0x24 0x28 0x28 0x28 0x28 0x28 0x28 0x28 0x28 0x24 0x28 0x28 0x20 0x28 0x28 0x24 0x20 0x20 0x20 0x18 0x18 0x1c 0x20 0x20 0x28 0x28 0x28 0x30 0x20 0x20 0x28 0x18 0x18 0x1c 0x20 0x20 0x20 0x2c 0x28 0x2c 0x2c 0x24 0x2c 0x28 0x28 0x28 0x28 0x30 0x28 0x34 0x38 0x38 0x24 0x24 0x2c 0x18 0x18 0x1c 0x20 0x20 0x20 0x2c 0x28 0x28 0x28 0x20 0x20 0x1c 0x18 0x1c 0x20 0x20 0x28 0x28 0x28 0x30 0x20 0x20 0x28 0x1c 0x18 0x20 0x28 0x20 0x28 0x2c 0x28 0x2c 0x28 0x28 0x28 0x28 0x28 0x24 0x24 0x24 0x1c 0x28 0x28 0x20 0x24 0x24 0x1c 0x1c 0x18 0x14 0x28 0x20 0x20 0x2c 0x28 0x2c 0x20 0x20 0x28 0x18 0x18 0x1c 0x20 0x20 0x20 0x28 0x28 0x28 0x20 0x20 0x20 0x1c 0x18 0x18 0x28 0x20 0x20 0x2c 0x28 0x28 0x20 0x20 0x20 0x18 0x18 0x18 0x20 0x20 0x20 0x28 0x28 0x2c 0x1c 0x1c 0x24 0x18 0x18 0x1c 0x20 0x20 0x20 0x28 0x28 0x28 0x20 0x20 0x20 0x18 0x18 0x1c 0x1c 0x1c 0x24 0x28 0x28 0x30 0x1c 0x1c 0x24 0x18 0x18 0x20 0x1c 0x1c 0x24 0x28 0x28 0x30 0x1c 0x1c 0x24 0x14 0x18 0x1c 0x14 0x1c 0x1c 0x14 0x18 0x18 0x08 0x08 0x08 0x08 0x08 0x08 0x08 0x08 0x08 0x08 0x08 0x10 0x08 0x08 0x18 0x10 0x08 0x18 0x18 0x08 0x18 0x24 0x1c 0x24 0x28 0x28 0x28 0x24 0x24 0x24 0x28 0x28 0x28 0x30 0x28 0x28 0x38 0x28 0x28 0x30 0x28 0x20 0x28 0x28 0x18 0x28 0x28 0x28 0x28 0x28 0x38 0x28 0x28 0x30 0x28 0x28 0x28 0x24 0x2c 0x24 0x28 0x38 0x28 0x28 0x30 0x28 0x28 0x28 0x28 0x28 0x28 0x28 0x28 0x28 0x28 0x20 0x20 0x28 0x18 0x18 0x28 0x20 0x20 0x28 0x28 0x28 0x28 0x24 0x24 0x24 0x28 0x28 0x28 0x24 0x2c 0x24 0x28 0x38 0x28 0x24 0x2c 0x1c 0x28 0x28 0x18 0x24 0x24 0x1c 0x28 0x28 0x28 0x20 0x20 0x28 0x18 0x18 0x28 0x20 0x20 0x28 0x28 0x28 0x28 0x20 0x20 0x20 0x18 0x18 0x18 0x20 0x20 0x20 0x28 0x28 0x28 0x28 0x28 0x28 0x28 0x28 0x28 0x2c 0x2c 0x2c 0x28 0x28 0x28 0x20 0x20 0x20 0x18 0x18 0x18 0x20 0x20 0x20 0x28 0x28 0x28 0x20 0x20 0x28 0x18 0x18 0x28 0x20 0x20 0x28 0x28 0x28 0x28 0x28 0x20 0x28 0x28 0x18 0x28 0x28 0x20 0x28 0x28 0x28 0x28 0x24 0x24 0x24 0x18 0x18 0x18 0x20 0x20 0x20 0x28 0x28 0x28 0x28 0x20 0x20 0x28 0x18 0x18 0x28 0x20 0x20 0x28 0x28 0x28 0x20 0x20 0x20 0x18 0x18 0x18 0x20 0x20 0x20 0x28 0x28 0x28 0x28 0x20 0x20 0x28 0x18 0x18 0x28 0x20 0x20 0x28 0x28 0x28 0x20 0x20 0x20 0x18 0x18 0x18 0x1c 0x1c 0x24 0x18 0x18 0x28 0x1c 0x1c 0x24 0x18 0x18 0x18 0x20 0x20 0x20 0x28 0x28 0x28 0x20 0x20 0x20 0x18 0x18 0x18 0x1c 0x1c 0x24 0x18 0x18 0x28 0x18 0x18 0x20 0x18 0x18 0x18 0x1c 0x1c 0x24 0x18 0x18 0x28 0x1c 0x1c 0x24 0x18 0x18 0x18 0x18 0x18 0x18 0x08 0x08 0x08 0x08 0x08 0x0c 0x08 0x08 0x10 0x08 0x08 0x10 0x08 0x08 0x10 0x0c 0x08 0x0c 0x1c 0x14 0x14 0x1c 0x18 0x14 0x24 0x24 0x1c 0x28 0x28 0x24 0x28 0x28 0x28 0x30 0x28 0x2c 0x34 0x24 0x2c 0x30 0x28 0x28 0x28 0x28 0x20 0x28 0x28 0x28 0x28 0x28 0x30 0x28 0x28 0x2c 0x28 0x28 0x28 0x28 0x28 0x28 0x2c 0x2c 0x2c 0x3c 0x38 0x38 0x34 0x2c 0x2c 0x2c 0x28 0x28 0x28 0x28 0x28 0x28 0x28 0x2c 0x20 0x20 0x28 0x1c 0x18 0x20 0x28 0x20 0x28 0x2c 0x28 0x2c 0x28 0x28 0x28 0x24 0x28 0x20 0x24 0x2c 0x1c 0x24 0x28 0x1c 0x24 0x24 0x1c 0x18 0x18 0x14 0x20 0x20 0x20 0x28 0x28 0x2c 0x20 0x20 0x28 0x18 0x18 0x18 0x24 0x24 0x1c 0x28 0x28 0x24 0x20 0x20 0x20 0x1c 0x18 0x18 0x28 0x20 0x20 0x2c 0x28 0x28 0x28 0x28 0x28 0x2c 0x28 0x2c 0x2c 0x24 0x2c 0x2c 0x28 0x28 0x20 0x20 0x18 0x18 0x18 0x14 0x24 0x24 0x24 0x28 0x28 0x2c 0x20 0x20 0x28 0x1c 0x18 0x20 0x28 0x20 0x28 0x30 0x28 0x30 0x28 0x20 0x28 0x1c 0x18 0x20 0x20 0x20 0x28 0x28 0x28 0x2c 0x20 0x20 0x20 0x1c 0x18 0x18 0x28 0x20 0x20 0x30 0x28 0x28 0x28 0x20 0x20 0x1c 0x18 0x18 0x20 0x20 0x20 0x28 0x28 0x28 0x20 0x20 0x20 0x18 0x18 0x1c 0x20 0x20 0x28 0x28 0x28 0x2c 0x20 0x20 0x20 0x18 0x18 0x18 0x20 0x20 0x20 0x28 0x28 0x28 0x20 0x20 0x20 0x18 0x18 0x1c 0x1c 0x1c 0x24 0x28 0x28 0x28 0x20 0x20 0x18 0x1c 0x18 0x18 0x24 0x1c 0x24 0x28 0x28 0x2c 0x18 0x20 0x20 0x14 0x18 0x1c 0x18 0x18 0x20 0x18 0x18 0x20 0x18 0x18 0x20 0x18 0x18 0x20 0x1c 0x1c 0x24 0x28 0x28 0x30 0x1c 0x1c 0x24 0x18 0x18 0x1c 0x08 0x08 0x08 0x08 0x08 0x10 0x08 0x08 0x18 0x08 0x08 0x10 0x08 0x08 0x08 0x10 0x10 0x08 0x28 0x28 0x18 0x20 0x20 0x10 0x28 0x28 0x18 0x24 0x24 0x1c 0x28 0x28 0x28 0x2c 0x24 0x2c 0x28 0x18 0x28 0x28 0x20 0x28 0x28 0x28 0x28 0x28 0x28 0x28 0x28 0x28 0x28 0x28 0x28 0x28 0x28 0x28 0x28 0x2c 0x24 0x2c 0x28 0x18 0x28 0x38 0x28 0x30 0x38 0x28 0x28 0x30 0x28 0x28 0x28 0x28 0x28 0x28 0x28 0x28 0x28 0x28 0x28 0x28 0x20 0x28 0x28 0x18 0x28 0x28 0x20 0x28 0x28 0x28 0x28 0x28 0x28 0x20 0x28 0x28 0x18 0x24 0x24 0x1c 0x28 0x28 0x28 0x20 0x20 0x20 0x18 0x18 0x18 0x20 0x20 0x20 0x28 0x28 0x28 0x24 0x24 0x1c 0x28 0x28 0x18 0x24 0x24 0x1c 0x28 0x28 0x28 0x28 0x20 0x20 0x28 0x18 0x18 0x28 0x20 0x20 0x28 0x28 0x28 0x2c 0x24 0x2c 0x28 0x18 0x28 0x28 0x20 0x20 0x28 0x28 0x18 0x24 0x24 0x1c 0x28 0x28 0x28 0x24 0x24 0x24 0x28 0x28 0x28 0x28 0x20 0x28 0x28 0x18 0x28 0x28 0x20 0x28 0x28 0x28 0x28 0x20 0x20 0x28 0x18 0x18 0x28 0x20 0x20 0x28 0x28 0x28 0x28 0x28 0x20 0x20 0x28 0x18 0x18 0x28 0x20 0x20 0x28 0x28 0x28 0x20 0x20 0x20 0x18 0x18 0x18 0x20 0x20 0x20 0x28 0x28 0x28 0x20 0x20 0x28 0x18 0x18 0x28 0x18 0x20 0x28 0x18 0x28 0x28 0x18 0x20 0x20 0x18 0x18 0x18 0x20 0x20 0x20 0x28 0x28 0x28 0x1c 0x1c 0x1c 0x18 0x18 0x18 0x20 0x20 0x18 0x28 0x28 0x18 0x24 0x1c 0x1c 0x18 0x08 0x18 0x1c 0x1c 0x24 0x18 0x28 0x28 0x14 0x1c 0x1c 0x18 0x18 0x18 0x18 0x18 0x20 0x18 0x18 0x28 0x18 0x18 0x20 0x18 0x18 0x18 0x1c 0x1c 0x24 0x18 0x18 0x28 0x18 0x18 0x20 0x48 0x48 0x48 0x08 0x08 0x0c 0x08 0x08 0x10 0x08 0x08 0x0c 0x08 0x08 0x08 0x08 0x08 0x04 0x10 0x10 0x08 0x18 0x18 0x10 0x18 0x18 0x10 0x18 0x18 0x14 0x20 0x20 0x20 0x2c 0x28 0x2c 0x28 0x20 0x28 0x1c 0x18 0x1c 0x20 0x20 0x20 0x28 0x28 0x28 0x28 0x28 0x28 0x28 0x28 0x28 0x28 0x28 0x28 0x2c 0x28 0x2c 0x30 0x28 0x30 0x30 0x28 0x2c 0x30 0x28 0x28 0x2c 0x28 0x28 0x28 0x28 0x28 0x28 0x28 0x28 0x28 0x28 0x28 0x2c 0x28 0x2c 0x28 0x20 0x28 0x1c 0x18 0x1c 0x20 0x20 0x20 0x28 0x28 0x24 0x20 0x20 0x18 0x18 0x18 0x14 0x20 0x20 0x20 0x28 0x28 0x28 0x20 0x20 0x20 0x18 0x18 0x18 0x20 0x20 0x20 0x28 0x28 0x24 0x20 0x20 0x18 0x18 0x18 0x14 0x20 0x20 0x20 0x2c 0x28 0x28 0x28 0x20 0x20 0x1c 0x18 0x18 0x20 0x20 0x20 0x2c 0x28 0x2c 0x28 0x20 0x28 0x1c 0x18 0x18 0x20 0x20 0x18 0x28 0x28 0x24 0x20 0x20 0x20 0x18 0x18 0x18 0x20 0x20 0x20 0x2c 0x28 0x2c 0x28 0x20 0x28 0x1c 0x18 0x1c 0x20 0x20 0x20 0x28 0x28 0x2c 0x20 0x20 0x28 0x18 0x18 0x1c 0x20 0x20 0x20 0x2c 0x28 0x28 0x28 0x20 0x20 0x1c 0x18 0x18 0x20 0x20 0x20 0x28 0x28 0x28 0x20 0x20 0x20 0x18 0x18 0x18 0x20 0x20 0x20 0x28 0x28 0x2c 0x20 0x20 0x28 0x14 0x18 0x1c 0x18 0x20 0x20 0x24 0x28 0x28 0x20 0x20 0x20 0x18 0x18 0x18 0x18 0x18 0x18 0x18 0x18 0x18 0x18 0x18 0x18 0x18 0x18 0x14 0x20 0x20 0x18 0x2c 0x28 0x28 0x28 0x20 0x28 0x18 0x18 0x1c 0x10 0x18 0x18 0x14 0x18 0x18 0x18 0x18 0x18 0x18 0x18 0x1c 0x18 0x18 0x20 0x18 0x18 0x1c 0x18 0x18 0x18 0x18 0x18 0x1c 0x18 0x18 0x20 0x18 0x18 0x1c
And yeah... no idea... that'll take a lot of disassembling!
Kodak DC50 Digital Camera
Found this Kodak DC50 at the markets on the weekend for the princely sum of AUD$5.00. Couldn't resist.
It actually has a PCMCIA slot on it! I had only learned recently that PCMCIA cards came as 'storage' modules. I thought they were all peripheral cards (network, modem) or IDE interfaces but hadn't realised that they came as sealed storage. It turns out the camera also has 1-Megabyte of internal storage. Seems that it's also 'FUL'! I wonder whats on there?
I had no cable and no way to get the data off, so I went and found my own media for it.
Turns out I had picked up a 1.2gb sealed PCMCIA 'ATA' Card in Malaysia (actually, I still need to write up Malaysia!), but this card was way too big for this camera. At the same time I'd also picked up a PCMCIA-CF adapter with a 4GB card in it, but that was also way too big... I rummaged around in my desk draw and grabbed the nearest/smallest CF card I could find: 128mb.
It happily started taking photos! On high resolution, the card can store ~760 photos. It just says 999 when I set it to medium or lower. After getting carried away snapping around the apartment, I quickly realised I had no USB CF card readers! Not to worry, I had enough old Windows 9x laptops, and could read the card via the PCMCIA adapter I was using in the camera to store the photos. This all worked fine... the card appeared in my computer, but the images were in KDC format? Turns out Irfanview can read these, so I needed to get them to my main PC.
The laptop had a USB port, but Windows 98 First Edition didn't have the drivers. You'll find that the standard NUSB33e drivers wont work. Instead, follow the instructions here. You'll have to install the unofficial Service Pack and then the USB drivers. All worked perfectly!
Once the files were on the USB, I moved them to my main PC.... here's the end result!
It works perfectly. 64kb of JPEG goodness... I wonder if IrfanView is trashing the quality of if that is just it... I'll take this on the weekend taking photos of the neighbourhood.
Internal Storage and Serial Transfers
Check this site out: It's the Japanese Kodak site for the DC50 serial cable and it's still online? Of course, you can't purchase from it and the picture doesn't help much. Tinker North West seems to also have a cable available... but I don't feel like paying real dollars for this thing. Turns out the pinouts are readily available (over here too.) The cable looks oddly familiar... I wonder if my weird Video plugs fit? Nup... one extra pin...
Wait... is that a Macintosh Serial plug? More rummaging in the drawer and... magic! Let's rig up a cable...
The wiring of the serial cable I had is as follows: 1 = brown, 2 = red, 3 = orange, 4 = yellow, 5 = green, 6 = blue, 7 = purple, 8 = black. Meanwhile the other end is a little controversial. DB-9 serial ports are easy to understand. But if you look here, they recommend RXD to RXD and the same with TXD? That kind of straight-through wiring really should not work. I have previously gone nuts trying to work out the difference between DTE and DCE here, and so didn't want to make the same mistakes again.
All Pinouts seem to have a wiring plan that's crossed over. That makes a lot more sense... but of course, the internet prevails. Back at Christophe Jacquet — Retro-digital photography: using the Kodak DC50, Christophe mentions that his minimal 'straight-through' cable worked perfectly? Maybe the pinout of the camera plug is wrong... i.e. they're mention RXD as the RXD of the computer, and it's actually TXD on the camera side? Let's just build it and see what happens... (Update: The cable needs RXD and TXD swapped. Build is as per this link!)
Ok... I have a cable... now software? Supposedly I need Kodak EasyShare, but that may be too new. Christophe links to Picture Transfer, but that link is dead... the Web Archive saves us again, but the binary isn't available! Grrrr... There's a newer version here of EasyShare, but I have no idea if that'll work. UPDATE: I found the software! (I'll come back to this soon.)
Open Source
Of course, there's a whole sub-culture in Linux regarding camera connectivity. The DC50 seems to be left out though. They mention that it uses standard serial transfer, and that the section will relate to that. But then the next area they say they'll add the documentation in a future HOWTO... but never got around to it?
Either way, that reference to kdcpi is a good hint. Fortunately, Tucows has saved it for future prosperity. Downloading it, one will find it's just a perl script. Three of the files are prepended with DC50... Let's do this! Perl is easy to set up on Windows (I used ActivePerl), with the script open in seconds...
C:\kdcpi-0.0.3>kdcpi.pl Can't locate DC50.pm in @INC (you may need to install the DC50 module) (@INC contains: C:/Perl64/site/lib C:/Perl64/lib) at C:\kdcpi-0.0.3\kdcpi.pl line 32. BEGIN failed--compilation aborted at C:\kdcpi-0.0.3\kdcpi.pl line 32.
First error... include libraries... I then copied all the files starting with DC into C:\Perl64\lib.
C:\kdcpi-0.0.3>kdcpi.pl usage: C:\kdcpi-0.0.3\kdcpi.pl camera port speed command [ command arguments ]
Ok... nice, what are the commands? Looking at the source...
print STDERR "$0: unkown command\n"; print STDERR "implemented commands:\n"; print STDERR " dumpthumb - downloads thumbnails from the camera\n"; print STDERR " dump - downloads picture(s) from the camera\n"; print STDERR " delete - deletes picture(s) from the camera\n"; print STDERR " status - displays the cameras status\n\n"; print STDERR " list - lists name and sizes of pictures in the camera\n\n"; print STDERR " snap - takes a picture\n\n"; print STDERR " set - sets information about the camera\n\n";
If we type in a shit command, we'll get the list above... but we can just see it anyway.. so... list?
C:\kdcpi-0.0.3>kdcpi.pl DC50 COM1 115200 list If you know information about the DC50 file format, please mail bhirt@berkhirt.com and I will work on supporting it. Access is denied. Terminating on signal SIGINT(2)
Access is denied? A little bit of debugging proved that the following line of perl is problematic:
system("stty raw -parenb -parodd -onlcr -iexten -echonl -noflsh -tostop -echoprt -ixoff -olcuc -ocrnl -onocr -onlret -ofill -ofdel -echo -echoe -echok -echoctl -echoke min 255 time 5 cs8 9600 < $tty");
Hahaha... that's not even available on Windows. I'll continue this once I've spooled up an aging Linux laptop.
KODAK Picture Transfer Application
So, it does exist and it works. As mentioned in the update above, I found the application... I just don't trust the sites I downloaded it from. Anyway, that's why it's available here. With this, you'll need a Windows 9x vintage PC or Virtual Machine. I chose the latter....
It needed a serial port. Mapping hte USB Serial port as a standard COM1 wouldn't be found in Windows 98. I therefore chose to feed the usb device to the VM and then gave it the driver here.
Note that I couldn't get file sharing to work... you'll get this if you try to network and share with an SMB1 device:
C:\Users\Steven>net use \\192.168.1.4 System error 384 has occurred. You can't connect to the file share because it's not secure. This share requires the obsolete SMB1 protocol, which is unsafe and could expose your system to attack. Your system requires SMB2 or higher. For more info on resolving this issue, see: https://go.microsoft.com/fwlink/?linkid=852747
So I used Fenix as a webserver after installing the latest Opera from oldversion.com. From there, we had connectivity! The next goal was to download and install the Kodak software.
Oh golly... why does everything say DC120? I don't have that model! Please ... please ... please work!
Oh yeah! There's the 11 photos we were advised of from the back of the camera! Let's download them! (Nice that the app happily translates them to Bitmap for us!)
And we're done! What did we download?
A lovely cat that looks like a cow. I win!
IBM PS/55 Z – ATX Motherboard
So, this ended up being a bigger hack than expected... but I'm happy with the result! I picked up this unit from eBay and hoped to use it as-is, but the motherboard wasn't healthy and Microchannel anything is impossible to find. I therefore replaced the guts with a DX2/66 motherboard! It all worked perfectly and I was happily playing games... but then I found a P166 at the markets and felt it was time for an upgrade.
Power Supplies
I picked up a Pico-ATX adapter on eBay rated at '120w' and had very little success with it. I could get it to boot without any cards... but as soon as I added anything on the ISA bus, let alone actual drives, I had zero action. Seems that it's just not up for the current required. I was also feeding it power from the internal 12v on the IBM's motherboard and this may have been overloading a single 12v rail.
It also needed a floppy connector... seems that these are for mini-atx boards where floppies are a distant memory...
Thinking that it just needed more amperes... I mounted a new 12v supply inside the monitor housing...
I grafted this onto the power rail to the front switch of the machine... it was rated at 110-240v, so there were no issues with step-downs...
This then meant the front power led was no longer lighting up, as the internal power supply had no current draw... I had to then use a resistor and put it on the 5v output of the new supply.
But... it still just didn't work... the actual Pico-ATX unit just wasn't up to the challenge of the old P166 motherboard! I then purchased the '160w' version off eBay, but it was EXACTLY THE SAME unit?
Slightly-larger ATX supply
I happened to be near an old PC shop in the city where I'd previously sourced a 'smaller' ATX power supply. Turns out they still had stock! I wasn't overly sure if it'd fit, but I was happy to have a spare in stock regardless. To my happiness, it fit perfectly!
I mounted it under the lid, as per the previous power supply, and ran the 110v in (flicking the voltage selector switch!) from the main power supply. The ATX cable was then fed straight down the back into the motherboard 'compartment'. It booted and the machine was back to normal... this time with W98SE and more horses!
B&O BeoVision MX 7000 RGB SCART
It all started by finding this beast on the footpath. I saw that it had two scart inputs and had to have it. I built an RGB cable for my MSX a long time back but have always been disappointed by its performance via a scart-to-HDMI converter. So, I set about testing and hooking it all up. Of course, it didn't have a remote, so I had to use an Arduino to translate another remote into the appropriate codes.
With access to all the menus, I started toying with values, but the picture from the MSX was still broken!
What can be configured?
Via the front main menu? Nothing. Via the service menu? A lot more. With my model, I had to pull off the back case and short the service pin header (I'd actually really like to just install a pushbutton switch onto that!)
Once off, and with the TV on TV mode, use something metal to short those two pins in the middle that say Service Mode. You'll then get the following message on the TV...
Last error was a pf? Sure was... I just pulled the plug... total power failure! Here's the other error descriptions...
Code | Description |
---|---|
No | no error registered |
PF | Power Fail |
00 till FF | Error address on the I2C bus |
DF | Data failure (maybe EEPROM 6IC6 on the cpu board defect) |
4E | 1/38IC6 Tuner & IF port expander |
84 | 1/38IC2 A2 Stereo decoder |
40 | 31IC7 NICAM stereo decoder |
42 | 41IC5 D/A converter for cut-off and drive |
22 | 37IC2 Teletext decoder |
8C | 13IC2 Deflection controller |
82 | 14IC1 Audio Controller |
86 | 14IC9 Video Controller (14IC9 means Board 14 Chip IC9) |
Anyway, using the arrow keys, you'll be able to configure the following settings. There's an awesome thread post here on BeoWorld from Die Bogener explaining all sorts of troubleshooting for the TV!
Code | My Default Value | Description |
---|---|---|
Rdr | 50 | Red drive |
Gdr | 45 | Green drive |
Rcu | 28 | Red cut off balance |
Gcu | 29 | Green cut off balance |
BRI | 03 | Brilliance Preset |
COL | 03 | Color Preset |
Hfq | 37 | Horizontal frequency |
Hph | 35 | Horizontal phase |
Ham | 22 | Horizontal amplitude |
Vam | 29 | Vertical amplitude |
Vsc | 32 | Vertical S-correction |
Vsh | 30 | Vertical shift for centering |
Vli | 18 | Vertical linearity |
EWc | 05 | EastWest corner |
EWp | 1 | EW parabola |
EWt | 41 | EW tilt |
With all these settings being adjusted (and then reverted) to no avail... I started to wonder if it wasn't a Japan vs. Australia thing... NTSC vs. PAL? Does the RGB signal have a 50hz/60hz rate or other 'remnants' from the units output? Is it Australia's fault for successfully implementing only one standard? (For once!)
Does RGB care about NTSC or PAL?
Wherever you read, you'll find hot debates over RGB and how the signal differs from a PAL or NTSC console. From what I understand, it's a NO. Any TV with SCART that is RGB capable will take an RGB signal from any device. Do correct me on this, thought!
Can My TV Decode NTSC?
Here's the service manual which points out the following difference between the PAL and PAL/SECAM versions...
Yeah, that's not just PAL/SECAM... it's PAL/SECAM/NTSC! But wait... the MSX works over Composite? Which has to be NTSC-J Composite? What gives?
Maybe it's my RGB Cable?
There's a good bit of information at this post regarding RGB cable issues and required voltages. Supposedly the SYNC signal on the SCART plug can just be fed Composite video, but it needs to be within tolerance. This also goes for the switching which declares what video format is expected on the SCART plug. So, after reading more on Sync for SCART , Sync Strippers and types of Sync from random consoles.. I ended up slightly more confused, but decided to rebuild my cable.
Thankfully, my junk box had a beautiful SCART-to-SCART cable... I didn't know these existed, but it makes total sense that they do. It's wired as a 'crossover' as the output from one machine needs to be fed to the input from another. I'll never be outputting via a SCART plug, so I decided this hefty cable would shield me nicely from interference and provide a great base for a proper RGB cable for the MSX.
With the SCART pinout in one hand and the Japanese MSX RGB pinout, I set out to rebuild the cable... I hooked up the minimal wires: R,G,B and Sync + all their required grounds. This got me nowhere. So I then hooked up Ys to the 'output select' and I received a mis-coloured picture!
I quickly slapped spacebar... the fish are the screensaver for multemente on MSX...
Oh right, I've swapped G and B around... wait... it's reading the RGB channels? But wait... if I then switch the TV to DVD... bang... wrong format!? Wait... this has worked all the time? I hadn't noticed the clearer picture... I'd just thought it was pulling composite over SCART... instead it was actually displaying the correct picture. For some reason, the TV is expecting a different format on V.Aux and that's where it's screwing up. RGB WORKS!
It turns out that, if you have your SCART-connected device turned ON, then the TV tries to switch to its input, even if you've selected the wrong input? Seems to be a bug? Or a problem with my TV configuration? The TV was configured as follows...
I set out to test: PS1 in AV1 and MSX in AV2. The PSX worked perfectly when the MSX was off and the TV was set to 'DVD' (which was the setting of AV1)...
But as soon as I turned on both consoles, the MSX would trigger the AV1 channel to distort. Switching to V.AUX (or AV2, where the MSX was plugged in) worked! So, all this time... everything was working, I just didn't understand (still don't!) how the inputs work on the MX 7000. All I know is that you should only have one input powered up at one time! So, here's some RGB goodness...
SCART cable quality!
This has all occurred because I saw the quality of the original SCART cable and thought it was composite! Here is the old cable plugged back in again. Note that it's just 8-core wire, no shielding... so the quality sorta makes sense...
Compared to the shots above, you can see the distortion. But I admit, it's really hard to take a proper photo of a CRT! So.. it was nice to build a real cable.. although, dealing with the gauge of wire was a little tough. It seriously had a mind of its own!
Both units need an overhaul
Whilst doing all this research, I found notes on both items for overhauls! Seems that an urgent capacitor replacement should be carried out on any Japanese MSX with a specific daughterboard. Also, the BeoVision MX Service Guide indicates a whole bunch of capacitors that could be life-expired!
B&O BeoVision MX 7000 Homebrew Remote
After picking this TV up off the footpath, I found it to be a little tedious without a remote. A quick google saw that it needs a specific B&O remote and not just any universal contraption. From here, I managed to use my PC's serial port and WinLIRC to control the TV, albeit rudimentally. The MSX, whilst over SCART, wasn't displaying a proper picture, so I knew I needed a proper remote to flick through the settings quickly.
Arduino as a remote translator
I found a neat little Arduino Remote at Jaycar and decided on the spot that I'd use an Arduino to translate its buttons to those of the TV. This would require an IR Receiver and an IR Transmitter. I know the B&O tranmission needs to be fast, but the receiver can be anything off-the-shelf as long as it works with this remote below!
Thanks to Sparkfun's great IR tutorial, the build of the actual circuit was very simple. Two modules and a resistor! Make sure you point them in different directions so as to prevent one remote from interfering with the other.
Ken Shirrif's IRRemote Library is the only code library needed to get up and running. I then started searching for help on timings... It turns out that someone else has already requested this functionality but there's no confirmed results. Fortunately, there's a few good hints towards the bottom regarding transmission signal timing. Supposedly the library can be tuned to just output the data at the right frequency... so... let's try! We do get another hint here about setting the right timing, but with a warning that the timing might not be 100%. It seems that the unit can deal with a 10khz difference.
Anyway... I was going to go long-winded with a simple chunk of code to just send a power-on, then a chunk to receive the data from the cheap remote, then a bridge to bring it all together... but instead, here's the answer.
#include <IRremote.h> #define TV_ON 0 #define DVD_ON 1 #define TV_SAT_DVD_GO 2 #define ARROW_UP 3 #define ARROW_DOWN 4 #define ARROW_LEFT 5 #define ARROW_RIGHT 6 #define TV_MENU 7 #define VOL_UP 8 #define VOL_DOWN 9 #define KEY_ZERO 10 #define KEY_ONE 11 #define TAPE_ON 12 #define ALL_OFF 13 #define CHAN_DOWN 14 #define SAT_ON 15 #define V_AUX 16 //now for the button data, each is 2 bytes, but only the second is used, //to use the indexes above to store the second bytes in a 8-bit padded array. unsigned int button_bytes[] = { 200, 9375, 200, 3125, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, //TV_ON 200, 9375, 200, 3125, 200, 6250, 200, 6250, 200, 6250, 200, 9375, 200, 6250, 200, 3125, //DVD_ON 200, 6250, 200, 6250, 200, 9375, 200, 6250, 200, 3125, 200, 9375, 200, 3125, 200, 9375, //TV_SAT_DVD_GO 200, 6250, 200, 6250, 200, 6250, 200, 9375, 200, 6250, 200, 6250, 200, 6250, 200, 3125, //ARROW_UP 200, 6250, 200, 6250, 200, 6250, 200, 9375, 200, 6250, 200, 6250, 200, 6250, 200, 6250, //ARROW_DOWN 200, 6250, 200, 6250, 200, 9375, 200, 6250, 200, 3125, 200, 6250, 200, 9375, 200, 3125, //ARROW_LEFT 200, 6250, 200, 6250, 200, 9375, 200, 6250, 200, 3125, 200, 9375, 200, 3125, 200, 6250, //ARROW_RIGHT 200, 6250, 200, 9375, 200, 3125, 200, 9375, 200, 6250, 200, 6250, 200, 3125, 200, 6250, //TV_MENU 200, 6250, 200, 9375, 200, 6250, 200, 3125, 200, 6250, 200, 6250, 200, 6250, 200, 6250, //VOL_UP 200, 6250, 200, 9375, 200, 6250, 200, 3125, 200, 6250, 200, 9375, 200, 3125, 200, 6250, //VOL_DOWN 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, //KEY_ZERO 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 9375, //KEY_ONE 200, 6250, 200, 3125, 200, 6250, 200, 6250, 200, 6250, 200, 9375, 200, 3125, 200, 9375, //TAPE_ON 200, 3125, 200, 6250, 200, 6250, 200, 6250, 200, 9375, 200, 6250, 200, 3125, 200, 6250, //ALL_OFF 200, 9375, 200, 3125, 200, 6250, 200, 6250, 200, 9375, 200, 3125, 200, 9375, 200, 3125, //CHAN_DOWN 200, 9375, 200, 3125, 200, 6250, 200, 6250, 200, 9375, 200, 3125, 200, 9375, 200, 3125, //SAT_ON 200, 9375, 200, 3125, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 9375, 200, 3125, //V_AUX }; //the following list are the full button suite... I need to update and repair this code... the first 8 bits don't always match above! unsigned int beo4_tv_left[] = {200, 3125, 200, 3125, 200, 15625, 200, 3125, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 9375, 200, 6250, 200, 3125, 200, 6250, 200, 9375, 200, 3125, 200, 12500, 200}; unsigned int beo4_tv_right[] = {200, 3125, 200, 3125, 200, 15625, 200, 3125, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 9375, 200, 6250, 200, 3125, 200, 9375, 200, 3125, 200, 6250, 200, 12500, 200}; unsigned int beo4_tv_up[] = {200, 3125, 200, 3125, 200, 15625, 200, 3125, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 9375, 200, 6250, 200, 6250, 200, 6250, 200, 3125, 200, 12500, 200}; unsigned int beo4_tv_down[] = {200, 3125, 200, 3125, 200, 15625, 200, 3125, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 9375, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 12500, 200}; unsigned int beo4_tv_green[] = {200, 3125, 200, 3125, 200, 15625, 200, 3125, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 9375, 200, 6250, 200, 3125, 200, 9375, 200, 3125, 200, 9375, 200, 2800, 200, 9375, 200, 12500, 200}; unsigned int beo4_tv_yellow[] = {200, 3125, 200, 3125, 200, 15625, 200, 3125, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 9375, 200, 6250, 200, 3125, 200, 9375, 200, 3125, 200, 9375, 200, 3125, 200, 6250, 200, 12500, 200}; unsigned int beo4_tv_red[] = {200, 3125, 200, 3125, 200, 15625, 200, 3125, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 9375, 200, 6250, 200, 3125, 200, 9375, 200, 6250, 200, 3125, 200, 6250, 200, 9375, 200, 12500, 200}; unsigned int beo4_tv_blue[] = {200, 3125, 200, 3125, 200, 15625, 200, 3125, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 9375, 200, 6250, 200, 3125, 200, 9375, 200, 6250, 200, 3125, 200, 6250, 200, 6250, 200, 12500, 200}; unsigned int beo4_tv_exit[] = {200, 3125, 200, 3125, 200, 15625, 200, 3125, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 9375, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 12500, 200}; unsigned int beo4_tv_menu[] = {200, 3125, 200, 3125, 200, 15625, 200, 3125, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 9375, 200, 3125, 200, 9375, 200, 6250, 200, 6250, 200, 3125, 200, 6250, 200, 12500, 200}; unsigned int beo4_tv_stop[] = {200, 3125, 200, 3125, 200, 15625, 200, 3125, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 9375, 200, 6250, 200, 3125, 200, 9375, 200, 6250, 200, 3125, 200, 12500, 200}; unsigned int beo4_tv_0[] = {200, 3125, 200, 3125, 200, 15625, 200, 3125, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 12500, 200}; unsigned int beo4_tv_1[] = {200, 3125, 200, 3125, 200, 15625, 200, 3125, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 9375, 200, 12500, 200}; unsigned int beo4_tv_2[] = {200, 3125, 200, 3125, 200, 15625, 200, 3125, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 9375, 200, 3125, 200, 12500, 200}; unsigned int beo4_tv_3[] = {200, 3125, 200, 3125, 200, 15625, 200, 3125, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 9375, 200, 6250, 200, 12500, 200}; unsigned int beo4_tv_4[] = {200, 3125, 200, 3125, 200, 15625, 200, 3125, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 9375, 200, 3125, 200, 6250, 200, 12500, 200}; unsigned int beo4_tv_5[] = {200, 3125, 200, 3125, 200, 15625, 200, 3125, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 9375, 200, 3125, 200, 9375, 200, 12500, 200}; unsigned int beo4_tv_6[] = {200, 3125, 200, 3125, 200, 15625, 200, 3125, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 9375, 200, 6250, 200, 3125, 200, 12500, 200}; unsigned int beo4_tv_7[] = {200, 3125, 200, 3125, 200, 15625, 200, 3125, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 9375, 200, 6250, 200, 6250, 200, 12500, 200}; unsigned int beo4_tv_8[] = {200, 3125, 200, 3125, 200, 15625, 200, 3125, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 9375, 200, 3125, 200, 6250, 200, 6250, 200, 12500, 200}; unsigned int beo4_tv_9[] = {200, 3125, 200, 3125, 200, 15625, 200, 3125, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 9375, 200, 3125, 200, 6250, 200, 9375, 200, 12500, 200}; unsigned int beo4_video_vol_up[] = {200, 3125, 200, 3125, 200, 15625, 200, 3125, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 9375, 200, 6250, 200, 3125, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 12500, 200}; unsigned int beo4_video_vol_down[] = {200, 3125, 200, 3125, 200, 15625, 200, 3125, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 9375, 200, 6250, 200, 3125, 200, 6250, 200, 9375, 200, 3125, 200, 6250, 200, 12500, 200}; unsigned int beo4_video_record[] = {200, 3125, 200, 3125, 200, 15625, 200, 3125, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 9375, 200, 3125, 200, 9375, 200, 3125, 200, 6250, 200, 9375, 200, 6250, 200, 3125, 200, 9375, 200, 6250, 200, 6250, 200, 12500, 200}; unsigned int beo4_tv_on[] = {200, 3125, 200, 3125, 200, 15625, 200, 3125, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 9375, 200, 3125, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 12500, 200}; unsigned int beo4_dvd_on[] = {200, 3125, 200, 3125, 200, 15625, 200, 3125, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 9375, 200, 3125, 200, 6250, 200, 6250, 200, 6250, 200, 9375, 200, 6250, 200, 3125, 200, 12500, 200}; unsigned int beo4_sat_on[] = {200, 3125, 200, 3125, 200, 15625, 200, 3125, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 9375, 200, 3125, 200, 6250, 200, 6250, 200, 9375, 200, 3125, 200, 9375, 200, 3125, 200, 12500, 200}; unsigned int beo4_cd_on[] = {200, 3125, 200, 3125, 200, 15625, 200, 3125, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 9375, 200, 6250, 200, 3125, 200, 6250, 200, 9375, 200, 3125, 200, 6250, 200, 9375, 200, 3125, 200, 12500, 200}; unsigned int beo4_text_on[] = {200, 3125, 200, 3125, 200, 15625, 200, 3125, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 9375, 200, 3125, 200, 6250, 200, 6250, 200, 9375, 200, 3125, 200, 6250, 200, 6250, 200, 12500, 200}; unsigned int beo4_atape_on[] = {200, 3125, 200, 3125, 200, 15625, 200, 3125, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 9375, 200, 6250, 200, 3125, 200, 6250, 200, 9375, 200, 3125, 200, 6250, 200, 6250, 200, 9375, 200, 12500, 200}; unsigned int beo4_radio_on[] = {200, 3125, 200, 3125, 200, 15625, 200, 3125, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 9375, 200, 6250, 200, 3125, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 9375, 200, 12500, 200}; unsigned int beo4_vtape_on[] = {200, 3125, 200, 3125, 200, 15625, 200, 3125, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 9375, 200, 3125, 200, 9375, 200, 6250, 200, 2800, 200, 6250, 200, 6250, 200, 6250, 200, 9375, 200, 3125, 200, 9375, 200, 12500, 200}; unsigned int beo4_audio_poweroff[] = {200, 3125, 200, 3125, 200, 15625, 200, 3125, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 9375, 200, 3125, 200, 6250, 200, 6250, 200, 6250, 200, 9375, 200, 6250, 200, 3125, 200, 6250, 200, 12500, 200}; unsigned int beo4_video_poweroff[] = {200, 3125, 200, 3125, 200, 15625, 200, 3125, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 9375, 200, 6250, 200, 3125, 200, 6250, 200, 12500, 200}; unsigned int beo4_all_power_off[] = {200, 3125, 200, 3125, 200, 15625, 200, 3125, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 9375, 200, 6250, 200, 6250, 200, 6250, 200, 3125, 200, 6250, 200, 6250, 200, 6250, 200, 9375, 200, 6250, 200, 3125, 200, 6250, 200, 12500, 200}; unsigned int beo4_tv_sat_dvd_go[] = {200, 3125, 200, 3125, 200, 15625, 200, 3125, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 9375, 200, 6250, 200, 3125, 200, 9375, 200, 3125, 200, 9375, 200, 12500, 200, unsigned int beo4_vtape_left[] = {200, 3125, 200, 3125, 200, 15625, 200, 3125, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 9375, 200, 3125, 200, 9375, 200, 3125, 200, 6250, 200, 9375, 200, 6250, 200, 3125, 200, 6250, 200, 9375, 200, 3125, 200, 12500, 200}; unsigned int beo4_vtape_right[] = {200, 3125, 200, 3125, 200, 15625, 200, 3125, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 9375, 200, 3125, 200, 9375, 200, 3125, 200, 6250, 200, 9375, 200, 6250, 200, 2800, 200, 9375, 200, 3125, 200, 6250, 200, 12500, 200}; unsigned int beo4_vtape_up[] = {200, 3125, 200, 3125, 200, 15625, 200, 3125, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 9375, 200, 3125, 200, 9375, 200, 3125, 200, 6250, 200, 6250, 200, 9375, 200, 6250, 200, 6250, 200, 6250, 200, 3125, 200, 12500, 200}; unsigned int beo4_vtape_down[] = {200, 3125, 200, 3125, 200, 15625, 200, 3125, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 9375, 200, 3125, 200, 9375, 200, 3125, 200, 6250, 200, 6250, 200, 9375, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 12500, 200}; unsigned int beo4_vtape_green[] = {200, 3125, 200, 3125, 200, 15625, 200, 3125, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 9375, 200, 3125, 200, 9375, 200, 6250, 200, 6250, 200, 3125, 200, 9375, 200, 3125, 200, 9375, 200, 2800, 200, 9375, 200, 12500, 200}; unsigned int beo4_vtape_yellow[] = {200, 3125, 200, 3125, 200, 15625, 200, 3125, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 9375, 200, 3125, 200, 9375, 200, 6250, 200, 6250, 200, 3125, 200, 9375, 200, 3125, 200, 9375, 200, 3125, 200, 6250, 200, 12500, 200}; unsigned int beo4_vtape_red[] = {200, 3125, 200, 3125, 200, 15625, 200, 3125, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 9375, 200, 3125, 200, 9375, 200, 6250, 200, 6250, 200, 3125, 200, 9375, 200, 6250, 200, 3125, 200, 6250, 200, 9375, 200, 12500, 200}; unsigned int beo4_vtape_blue[] = {200, 3125, 200, 3125, 200, 15625, 200, 3125, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 9375, 200, 3125, 200, 9375, 200, 6250, 200, 6250, 200, 3125, 200, 9375, 200, 6250, 200, 3125, 200, 6250, 200, 6250, 200, 12500, 200}; unsigned int beo4_vtape_exit[] = {200, 3125, 200, 3125, 200, 15625, 200, 3125, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 9375, 200, 2800, 200, 9375, 200, 3125, 200, 9375, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6200, 200, 6250, 200, 12500, 200}; unsigned int beo4_vtape_menu[] = {200, 3125, 200, 3125, 200, 15625, 200, 3125, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 9375, 200, 3125, 200, 9375, 200, 3125, 200, 9375, 200, 3125, 200, 9375, 200, 6250, 200, 6250, 200, 3125, 200, 6250, 200, 12500, 200}; unsigned int beo4_vtape_stop[] = {200, 3125, 200, 3125, 200, 15625, 200, 3125, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 9375, 200, 2800, 200, 9375, 200, 3125, 200, 6250, 200, 9375, 200, 6250, 200, 3125, 200, 9375, 200, 6250, 200, 2800, 200, 12500, 200}; unsigned int beo4_vtape_0[] = {200, 3125, 200, 3125, 200, 15625, 200, 3125, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 9375, 200, 3125, 200, 9375, 200, 3125, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 12500, 200}; unsigned int beo4_vtape_1[] = {200, 3125, 200, 3125, 200, 15625, 200, 3125, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 9375, 200, 2800, 200, 9375, 200, 3125, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 9375, 200, 12500, 200}; unsigned int beo4_vtape_2[] = {200, 3125, 200, 3125, 200, 15625, 200, 3125, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 9375, 200, 3125, 200, 9375, 200, 2800, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 9375, 200, 3125, 200, 12500, 200}; unsigned int beo4_vtape_3[] = {200, 3125, 200, 3125, 200, 15625, 200, 3125, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 9375, 200, 3125, 200, 9375, 200, 3125, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 9375, 200, 6250, 200, 12500, 200}; unsigned int beo4_vtape_4[] = {200, 3125, 200, 3125, 200, 15625, 200, 3125, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 9375, 200, 3125, 200, 9375, 200, 3125, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 9375, 200, 2800, 200, 6250, 200, 12500, 200}; unsigned int beo4_vtape_5[] = {200, 3125, 200, 3125, 200, 15625, 200, 3125, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 9375, 200, 3125, 200, 9375, 200, 3125, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 9375, 200, 2800, 200, 9375, 200, 12500, 200}; unsigned int beo4_vtape_6[] = {200, 3125, 200, 3125, 200, 15625, 200, 3125, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 9375, 200, 3125, 200, 9375, 200, 3125, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 9375, 200, 6250, 200, 3125, 200, 12500, 200}; unsigned int beo4_vtape_7[] = {200, 3125, 200, 3125, 200, 15625, 200, 3125, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 9375, 200, 3125, 200, 9375, 200, 3125, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 9375, 200, 6250, 200, 6250, 200, 12500, 200}; unsigned int beo4_vtape_8[] = {200, 3125, 200, 3125, 200, 15625, 200, 3125, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 9375, 200, 3125, 200, 9375, 200, 3125, 200, 6250, 200, 6250, 200, 6250, 200, 9375, 200, 3125, 200, 6250, 200, 6250, 200, 12500, 200}; unsigned int beo4_vtape_9[] = {200, 3125, 200, 3125, 200, 15625, 200, 3125, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 9375, 200, 3125, 200, 9375, 200, 3125, 200, 6250, 200, 6250, 200, 6250, 200, 9375, 200, 3125, 200, 6250, 200, 9375, 200, 12500, 200}; unsigned int beo4_light_on[] = {200, 3125, 200, 3125, 200, 15625, 200, 3125, 200, 6250, 200, 6250, 200, 6250, 200, 9375, 200, 6250, 200, 3125, 200, 9375, 200, 6250, 200, 6250, 200, 3125, 200, 6250, 200, 9375, 200, 6250, 200, 3125, 200, 9375, 200, 6250, 200, 12500, 200}; unsigned int beo4_light_left[] = {200, 3125, 200, 3125, 200, 15625, 200, 3125, 200, 6250, 200, 6250, 200, 6250, 200, 9375, 200, 6250, 200, 3125, 200, 9375, 200, 6250, 200, 3125, 200, 6250, 200, 9375, 200, 6250, 200, 3125, 200, 6250, 200, 9375, 200, 3125, 200, 12500, 200}; unsigned int beo4_light_right[] = {200, 3125, 200, 3125, 200, 15625, 200, 3125, 200, 6250, 200, 6250, 200, 6250, 200, 9375, 200, 6250, 200, 3125, 200, 9375, 200, 6250, 200, 3125, 200, 6250, 200, 9375, 200, 6250, 200, 3125, 200, 9375, 200, 3125, 200, 6250, 200, 12500, 200}; unsigned int beo4_light_up[] = {200, 3125, 200, 3125, 200, 15625, 200, 3125, 200, 6250, 200, 6250, 200, 6250, 200, 9375, 200, 6250, 200, 3125, 200, 9375, 200, 6250, 200, 3125, 200, 6250, 200, 6250, 200, 9375, 200, 6250, 200, 6250, 200, 6250, 200, 3125, 200, 12500, 200}; unsigned int beo4_light_down[] = {200, 3125, 200, 3125, 200, 15625, 200, 3125, 200, 6250, 200, 6250, 200, 6250, 200, 9375, 200, 6250, 200, 3125, 200, 9375, 200, 6250, 200, 3125, 200, 6250, 200, 6250, 200, 9375, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 12500, 200}; unsigned int beo4_light_green[] = {200, 3125, 200, 3125, 200, 15625, 200, 3125, 200, 6250, 200, 6250, 200, 6250, 200, 9375, 200, 6250, 200, 3125, 200, 9375, 200, 6250, 200, 6250, 200, 6250, 200, 3125, 200, 9375, 200, 3125, 200, 9375, 200, 3125, 200, 9375, 200, 12500, 200}; unsigned int beo4_light_yellow[] = {200, 3125, 200, 3125, 200, 15625, 200, 3125, 200, 6250, 200, 6250, 200, 6250, 200, 9375, 200, 6250, 200, 3125, 200, 9375, 200, 6250, 200, 6250, 200, 6250, 200, 3125, 200, 9375, 200, 3125, 200, 9375, 200, 3125, 200, 6250, 200, 12500, 200}; unsigned int beo4_light_red[] = {200, 3125, 200, 3125, 200, 15625, 200, 3125, 200, 6250, 200, 6250, 200, 6250, 200, 9375, 200, 6250, 200, 3125, 200, 9375, 200, 6250, 200, 6250, 200, 6250, 200, 3125, 200, 9375, 200, 6250, 200, 3125, 200, 6250, 200, 9375, 200, 12500, 200}; unsigned int beo4_light_blue[] = {200, 3125, 200, 3125, 200, 15625, 200, 3125, 200, 6250, 200, 6250, 200, 6250, 200, 9375, 200, 6250, 200, 3125, 200, 9375, 200, 6250, 200, 6250, 200, 6250, 200, 3125, 200, 9375, 200, 6250, 200, 3125, 200, 6250, 200, 6250, 200, 12500, 200}; unsigned int beo4_light_menu[] = {200, 3125, 200, 3125, 200, 15625, 200, 3125, 200, 6250, 200, 6250, 200, 6250, 200, 9375, 200, 6250, 200, 3125, 200, 9375, 200, 6250, 200, 3125, 200, 9375, 200, 3125, 200, 9375, 200, 6250, 200, 6250, 200, 3125, 200, 6250, 200, 12500, 200}; unsigned int beo4_light_stop[] = {200, 3125, 200, 3125, 200, 15625, 200, 3125, 200, 6250, 200, 6250, 200, 6250, 200, 9375, 200, 6250, 200, 3125, 200, 9375, 200, 6250, 200, 3125, 200, 6250, 200, 9375, 200, 6250, 200, 3125, 200, 9375, 200, 6250, 200, 3125, 200, 12500, 200}; unsigned int beo4_light_0[] = {200, 3125, 200, 3125, 200, 15625, 200, 3125, 200, 6250, 200, 6250, 200, 6250, 200, 9375, 200, 6250, 200, 3125, 200, 9375, 200, 6250, 200, 3125, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 12500, 200}; unsigned int beo4_light_1[] = {200, 3125, 200, 3125, 200, 15625, 200, 3125, 200, 6250, 200, 6250, 200, 6250, 200, 9375, 200, 6250, 200, 3125, 200, 9375, 200, 6250, 200, 3125, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 9375, 200, 12500, 200}; unsigned int beo4_light_2[] = {200, 3125, 200, 3125, 200, 15625, 200, 3125, 200, 6250, 200, 6250, 200, 6250, 200, 9375, 200, 6250, 200, 3125, 200, 9375, 200, 6250, 200, 3125, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 9375, 200, 3125, 200, 12500, 200}; unsigned int beo4_light_3[] = {200, 3125, 200, 3125, 200, 15625, 200, 3125, 200, 6250, 200, 6250, 200, 6250, 200, 9375, 200, 6250, 200, 3125, 200, 9375, 200, 6250, 200, 3125, 200, 6250, 200, 6350, 200, 6250, 200, 6250, 200, 6250, 200, 9375, 200, 6250, 200, 12500, 200}; unsigned int beo4_light_4[] = {200, 3125, 200, 3125, 200, 15625, 200, 3125, 200, 6250, 200, 6250, 200, 6250, 200, 9375, 200, 6250, 200, 3125, 200, 9375, 200, 6250, 200, 3125, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 9375, 200, 3125, 200, 6250, 200, 12500, 200}; unsigned int beo4_light_5[] = {200, 3125, 200, 3125, 200, 15625, 200, 3125, 200, 6250, 200, 6250, 200, 6250, 200, 9375, 200, 6250, 200, 3125, 200, 9375, 200, 6250, 200, 3125, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 9375, 200, 3125, 200, 9375, 200, 12500, 200}; unsigned int beo4_light_6[] = {200, 3125, 200, 3125, 200, 15625, 200, 3125, 200, 6250, 200, 6250, 200, 6250, 200, 9375, 200, 6250, 200, 3125, 200, 9375, 200, 6250, 200, 3125, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 9375, 200, 6250, 200, 3125, 200, 12500, 200}; unsigned int beo4_light_7[] = {200, 3125, 200, 3125, 200, 15625, 200, 3125, 200, 6250, 200, 6250, 200, 6250, 200, 9375, 200, 6250, 200, 3125, 200, 9375, 200, 6250, 200, 3125, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 9375, 200, 6250, 200, 6250, 200, 12500, 200}; unsigned int beo4_light_8[] = {200, 3125, 200, 3125, 200, 15625, 200, 3125, 200, 6250, 200, 6250, 200, 6250, 200, 9375, 200, 6250, 200, 3125, 200, 9375, 200, 6250, 200, 3125, 200, 6250, 200, 6250, 200, 6250, 200, 9375, 200, 3125, 200, 6250, 200, 6250, 200, 12500, 200}; unsigned int beo4_light_9[] = {200, 3125, 200, 3125, 200, 15625, 200, 3125, 200, 6250, 200, 6250, 200, 6250, 200, 9375, 200, 6250, 200, 3125, 200, 9375, 200, 6250, 200, 3125, 200, 6250, 200, 6250, 200, 6250, 200, 9375, 200, 3125, 200, 6250, 200, 9375, 200, 12500, 200}; unsigned int beo4_audio_left[] = {200, 3125, 200, 3125, 200, 15625, 200, 3125, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 9375, 200, 3125, 200, 6250, 200, 9375, 200, 6250, 200, 3125, 200, 6250, 200, 9375, 200, 3125, 200, 12500, 200}; unsigned int beo4_audio_right[] = {200, 3125, 200, 3125, 200, 15625, 200, 3125, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 9375, 200, 3125, 200, 6250, 200, 9375, 200, 6250, 200, 3125, 200, 9375, 200, 3125, 200, 6250, 200, 12500, 200}; unsigned int beo4_audio_up[] = {200, 3125, 200, 3125, 200, 15625, 200, 3125, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 9375, 200, 3125, 200, 6250, 200, 6250, 200, 9375, 200, 6250, 200, 6250, 200, 6250, 200, 3125, 200, 12500, 200}; unsigned int beo4_audio_down[] = {200, 3125, 200, 3125, 200, 15625, 200, 3125, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 9375, 200, 3125, 200, 6250, 200, 6250, 200, 9375, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 12500, 200}; unsigned int beo4_audio_green[] = {200, 3125, 200, 3125, 200, 15625, 200, 3125, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 9375, 200, 6250, 200, 6250, 200, 3125, 200, 9375, 200, 3125, 200, 9375, 200, 3125, 200, 9375, 200, 12500, 200}; unsigned int beo4_audio_yellow[] = {200, 3125, 200, 3125, 200, 15625, 200, 3125, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 9375, 200, 6250, 200, 6250, 200, 3125, 200, 9375, 200, 3125, 200, 9375, 200, 3125, 200, 6250, 200, 12500, 200}; unsigned int beo4_audio_red[] = {200, 3125, 200, 3125, 200, 15625, 200, 3125, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 9375, 200, 6250, 200, 6250, 200, 3125, 200, 9375, 200, 6250, 200, 3125, 200, 6250, 200, 9375, 200, 12500, 200}; unsigned int beo4_audio_blue[] = {200, 3125, 200, 3125, 200, 15625, 200, 3125, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 9375, 200, 6250, 200, 6250, 200, 3125, 200, 9375, 200, 6250, 200, 3125, 200, 6250, 200, 6250, 200, 12500, 200}; unsigned int beo4_audio_menu[] = {200, 3125, 200, 3125, 200, 15625, 200, 3125, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 9375, 200, 3125, 200, 9375, 200, 3125, 200, 9375, 200, 6250, 200, 6250, 200, 3125, 200, 6250, 200, 12500, 200}; unsigned int beo4_audio_stop[] = {200, 3125, 200, 3125, 200, 15625, 200, 3125, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 9375, 200, 3125, 200, 6250, 200, 9375, 200, 6250, 200, 3125, 200, 9375, 200, 6250, 200, 3125, 200, 12500, 200}; unsigned int beo4_audio_record[] = {200, 3125, 200, 3125, 200, 15625, 200, 3125, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 9375, 200, 3125, 200, 6250, 200, 9375, 200, 6250, 200, 3125, 200, 9375, 200, 6250, 200, 6250, 200, 12500, 200}; unsigned int beo4_audio_0[] = {200, 3125, 200, 3125, 200, 15625, 200, 3125, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 9375, 200, 3125, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 12500, 200}; unsigned int beo4_audio_1[] = {200, 3125, 200, 3125, 200, 15625, 200, 3125, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 9375, 200, 3125, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 9375, 200, 12500, 200}; unsigned int beo4_audio_2[] = {200, 3125, 200, 3125, 200, 15625, 200, 3125, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 9375, 200, 3125, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 9375, 200, 3125, 200, 12500, 200}; unsigned int beo4_audio_3[] = {200, 3125, 200, 3125, 200, 15625, 200, 3125, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 9375, 200, 3125, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 9375, 200, 6250, 200, 12500, 200}; unsigned int beo4_audio_4[] = {200, 3125, 200, 3125, 200, 15625, 200, 3125, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 9375, 200, 3125, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 9375, 200, 3125, 200, 6250, 200, 12500, 200}; unsigned int beo4_audio_5[] = {200, 3125, 200, 3125, 200, 15625, 200, 3125, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 9375, 200, 3125, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 9375, 200, 3125, 200, 9375, 200, 12500, 200}; unsigned int beo4_audio_6[] = {200, 3125, 200, 3125, 200, 15625, 200, 3125, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 9375, 200, 3125, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 9375, 200, 6250, 200, 3125, 200, 12500, 200}; unsigned int beo4_audio_7[] = {200, 3125, 200, 3125, 200, 15625, 200, 3125, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 9375, 200, 3125, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 9375, 200, 6250, 200, 6250, 200, 12500, 200}; unsigned int beo4_audio_8[] = {200, 3125, 200, 3125, 200, 15625, 200, 3125, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 9375, 200, 3125, 200, 6250, 200, 6250, 200, 6250, 200, 9375, 200, 3125, 200, 6250, 200, 6250, 200, 12500, 200}; unsigned int beo4_audio_9[] = {200, 3125, 200, 3125, 200, 15625, 200, 3125, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 9375, 200, 3125, 200, 6250, 200, 6250, 200, 6250, 200, 9375, 200, 3125, 200, 6250, 200, 9375, 200, 12500, 200}; unsigned int beo4_audio_exit[] = {200, 3125, 200, 3125, 200, 15625, 200, 3125, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 9375, 200, 3125, 200, 9375, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 12500, 200}; unsigned int beo4_audio_vol_up[] = {200, 3125, 200, 3125, 200, 15625, 200, 3125, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 9375, 200, 3125, 200, 9375, 200, 6250, 200, 3125, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 12500, 200}; unsigned int beo4_audio_vol_down[] = {200, 3125, 200, 3125, 200, 15625, 200, 3125, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 9375, 200, 3125, 200, 9375, 200, 6250, 200, 3125, 200, 6250, 200, 9375, 200, 3125, 200, 6250, 200, 12500, 200}; int RECV_PIN = 9; int khz = 455; IRrecv irrecv(RECV_PIN); decode_results results; IRsend irsend; unsigned int irHeader[] = { 200, 3125, 200, 3125, 200, 15625, 200, 3125, //4 start bits 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250, 200, 6250 // 8 0 data bits }; unsigned int irFooter[] = {200, 12500, 250}; void setup() { Serial.begin(9600); Serial.print("Enabling IRin..."); irrecv.enableIRIn(); Serial.println("Done"); } void sendCommand(int cmd) { irsend.sendRaw(irHeader, sizeof(irHeader) / sizeof(irHeader[0]), khz); irsend.sendRaw(button_bytes + (cmd * 16), 16, khz); irsend.sendRaw(irFooter, sizeof(irFooter) / sizeof(irFooter[0]), khz); } int z = 0; unsigned long lastCode = 0; void loop() { if (irrecv.decode(&results)) { switch(results.value) { case 0x00FFA25D: // CH- case 0xE318261B: sendCommand(DVD_ON); break; case 0x00FF629D: // CH case 0x00511DBB: sendCommand(TV_ON); break; case 0x00FFE21D: // CH+ case 0xEE886D7F: sendCommand(V_AUX); break; case 0x00FF22DD: // |<< case 0x52A3D41F: sendCommand(ALL_OFF); break; case 0xD7E84B1B: // >>| case 0x00FF02FD: sendCommand(SAT_ON); break; case 0x20FE4DBB: // >|| case 0x00FFC23D: sendCommand(TAPE_ON); break; case 0x00FFE01F: // VOL- case 0xF076C13B: sendCommand(VOL_DOWN); break; case 0x00FFA857: // VOL+ case 0xA3C8EDDB: sendCommand(VOL_UP); break; case 0x00FF906F: // EQ case 0xE5CFBD7F: sendCommand(TV_MENU); break; case 0x00FF6897: // 0 case 0xC101E57B: sendCommand(KEY_ZERO); break; case 0x00FF9867: // 100+ case 0x97483BFB: sendCommand(KEY_ONE); break; case 0x00FFB04F: // 200+ case 0xF0C41643: break; case 0x00FF30CF: // 1 case 0x9716BE3F: break; case 0x00FF18E7: // 2 case 0x3D9AE3F7: sendCommand(ARROW_UP); break; case 0x00FF7A85: // 3 case 0x6182021B: break; case 0x00FF10EF: // 4 case 0x8C22657B: sendCommand(ARROW_LEFT); break; case 0x00FF38C7: // 5 case 0x488F3CBB: sendCommand(TV_SAT_DVD_GO); break; case 0x00FF5AA5: // 6 case 0x449E79F: sendCommand(ARROW_RIGHT); break; case 0x00FF42BD: // 7 case 0x32C6FDF7: break; case 0x00FF4AB5: // 8 case 0x1BC0157B: sendCommand(ARROW_DOWN); break; case 0x00FF52AD: // 9 case 0x3EC3FC1B: break; case 0xffffffff: //this means we've had a repeat... use the last code and allow volume up/down if (lastCode == 0x00FFE01F || lastCode == 0xF076C13B) sendCommand(VOL_DOWN); if (lastCode == 0x00FFA857 || lastCode == 0xA3C8EDDB) sendCommand(VOL_UP); break; default: if (results.value > 0xF0FFFF and results.value <= 0xffffffff) Serial.println(results.value, HEX); break; } //don't enter on 0xffffffff here, otherwise we'll whack our repeat! if (results.value > 0xF0FFFF and results.value < 0xffffffff) { lastCode = results.value; } //restart the receiving after sending! irrecv.enableIRIn(); irrecv.resume(); } delay(100); }
You'll note that I have a V.Aux button configured up there. Turns out that I couldn't set both SCART plugs to DVD and cycle through... one would default to V.AUX automatically when trying to set the first to DVD. I therefore had to be able to press the button. The base configuration didn't have this coded! Ah! Found the button here. I have a suspicion there's a host of other buttons to map... Maybe I should go and buy a remote.
Meanwhile, turns out that this thread is the source of the correct configuration. Doesn't seem to have all the buttons though!
With all this done, attempting to get to the service menu with MENU,1,1,GO doesn't work. I do get the software version with MENU,0,0,GO... So I may be locked out. Regardless... I wasn't able to fix the issue I actually wanted to: the MSX still hates RGB. Loves Composite though!
B&O BeoVision MX 7000 TV
So this is nothing short of weird... After having to walk half-way across Melbourne to get home (thanks to the train lines being shut for upgrades), I find this unit sitting out the front of my apartment building. The weird part is this: I swear this is the exact same TV I saw in a 'vintage shop' in Geelong around a year ago. Geelong is a long way away... and for this ridiculously heavy unit to appear in front of my apartment... in dirty-but-OK condition, is totally surprising.
Of course, this is Melbourne and just maybe there's a lot of rich people with expensive+vintage TV sets just sitting around...
Does it work?
I threw caution to the wind and found a protected power board to plug it in to. A quick visual inspection before hitting the switch and click... we have a red stand-by light! A quick search of the front panel found a power button bottom-right and, tapping this, the unit came to life!
No remote control
Not a deal-breaker... or so I first thought. Turns out B&O decided to use a non-standard IR frequency and standard universal remotes just won't work. LIRC was fun back in the day, so I installed WinLIRC and tried to load up the easy-to-find Beo4 Configuration. Before even trying to hack together a transmitter, I was hit with errors trying to load the configuration.
Not very helpful at all! I hacked around with configuration file and found that it didn't seem to like the area between the raw_codes begin and end. Darn... maybe it's an archaic Windows version... so I installed Mint on the old Intellistation Z and tried again...
After booting into Linux Mint, I installed lirc with sudo apt install lirc. No issues here, so I downloaded and copied the Beo4 configuration to /etc/lirc/lircd.conf. A quick sudo service lirc restart and syslog tells me:
steven@intelli ~/Downloads $ sudo cp Beo4 /etc/lirc/lircd.conf steven@intelli ~/Downloads $ sudo service lirc restart steven@intelli ~/Downloads $ tail /var/log/syslog Jan 7 19:11:47 intelli lirc[3220]: * Loading LIRC modules Jan 7 19:11:47 intelli lirc[3220]: ...done. Jan 7 19:11:47 intelli lirc[3220]: * Starting remote control daemon(s) : Jan 7 19:11:47 intelli lircd-0.9.0[3230]: error in configfile line 45: Jan 7 19:11:47 intelli lircd-0.9.0[3230]: "KEY_0": must be a valid (unsigned int) number Jan 7 19:11:47 intelli lirc[3220]: ...done. Jan 7 19:11:47 intelli lircd-0.9.0[3230]: reading of file '/etc/lirc/lircd.conf' failed Jan 7 19:11:47 intelli lircd-0.9.0[3230]: reading of config file failed Jan 7 19:11:47 intelli lircd-0.9.0[3231]: lircd(dsp) ready, using /run/lirc/lircd Jan 7 19:11:47 intelli systemd[1]: Started LSB: Starts LIRC daemon..
Oh! Right! Here's the actual error! WinLIRC just 'failed', whereas I get proper verbose logging in Linux. Turns out the configuration file is just no good. I ended up browsing back to the lirc page, in a vain attempt to find a forum or mailing list to whinge to... but then... I found the real remote repo! Scrolling down... lo'n'behold is the Beo4 LIRC Configuration File with happy 'compatible' ticks. Opening it, I can see it's a completely different file!
steven@intelli ~/Downloads $ sudo cp Beo4.lircd.conf /etc/lirc/lircd.conf steven@intelli ~/Downloads $ sudo service lirc restart steven@intelli ~/Downloads $ tail /var/log/syslog Jan 7 19:13:39 intelli lircd-0.9.0[3231]: caught signal Jan 7 19:13:39 intelli lirc[3467]: ...done. Jan 7 19:13:39 intelli systemd[1]: Stopped LSB: Starts LIRC daemon.. Jan 7 19:13:39 intelli systemd[1]: Starting LSB: Starts LIRC daemon.... Jan 7 19:13:39 intelli lirc[3478]: * Loading LIRC modules Jan 7 19:13:39 intelli lirc[3478]: ...done. Jan 7 19:13:39 intelli lirc[3478]: * Starting remote control daemon(s) : Jan 7 19:13:39 intelli lirc[3478]: ...done. Jan 7 19:13:39 intelli lircd-0.9.0[3489]: lircd(dsp) ready, using /run/lirc/lircd Jan 7 19:13:39 intelli systemd[1]: Started LSB: Starts LIRC daemon..
Ok, neat... we loaded! What can we send?
steven@intelli ~/Downloads $ irsend list "Bang&Olufsen_Beo4" "" irsend: 0000000000000001 beo4-tv-on irsend: 0000000000000002 beo4-video-poweroff irsend: 0000000000000003 beo4-tv-left irsend: 0000000000000004 beo4-tv-right irsend: 0000000000000005 beo4-tv-up irsend: 0000000000000006 beo4-tv-down irsend: 0000000000000007 beo4-tv-green irsend: 0000000000000008 beo4-tv-yellow irsend: 0000000000000009 beo4-tv-red irsend: 000000000000000a beo4-tv-blue irsend: 000000000000000b beo4-tv-exit irsend: 000000000000000c beo4-tv-menu ....
And that's as far as I got on Linux... For the life of me it wasn't worth the effort trying to work out how to use /dev/ttyS0. It seems that the kernel hogs it and you have to setserial and stuff... so I just re-booted back into windows... on a machine closer to the TV...
Just because Windows is easier and I'm lazy, I plugged the file into WinLIRC... It worked! We're set... time for some actual hardware to get the IR transmitting.
Transmitting signals...
I found some IR sensors that I had lying around... they're TCRT5000s and I only need the transmitting half. That's the half with the bevelled side (when you're looking at it) and the anode is up top. A 220ohm resistor was tied in-line to prevent excess serial current draw.
The contraption was pointed at the TV, but no amount of clicking would work to turn the TV on. I was about to give up, but decided that the transmit power could be an issue and held the IR LED 5cm from the receiver. Presto! Power-On worked!
I plugged the MSX into the SCART plug and got the following... more research to be done! I also need a better mechanism for pressing remote buttons if I'm going to go through the menu and adjust settings.
What about Arduino?
Having a whole computer to control a TV isn't optimal... so...Arduino time! Well.. it will be in the future... after I read this, this, this, this and this. The goal will be to build a controller with enough buttons to re-configure the input... hopefully... to get the MSX to display!
UPDATE: Arduino Remote works like a charm!
Sony Playstation
I suddenly realised that I actually did have a device to plug into this monstrosity. The original Sony Playstation gathering dust under my coffee table has Composite out! Of course, the TV does not have Composite in... so I had to improvise with a Composite-to-SCART adapter.
Yey! Abe's Odyssey!
Sony HITBIT HB-F1XD Floppy Drive
Hello again Mr HIT BIT. I bought this unit a while back and never got around to testing the floppy drive...
As you can see from the image below, there was a sticker attached that said the Floppy drive was problematic. (フロッピーディスクは動作しません)
This didn't worry me too much, as I intended to use the cartridge slot more than the floppy drive. Regardless, I wanted to eventually test it out. I actually even bought a random second-hand disk from a second-hand shop in Japan whilst purchasing the main unit.
Based on the sticker... the first goal was to inspect the drive!
Pulling the unit apart
In full Sony-style, there's 6 screws (with arrows pointing to them!) on the underneath of the unit that need to be undone. Once they're out, flip the unit back on its base and remove the cover left-to-right. The floppy disk eject button is seated through a hole in the top half of the case, so be careful when removing!
Once off, there's a shield on top of the floppy drive to remove. This has one screw top-right. Undo the screw and then use a flat-head screwdriver to prize off the clips along the back of the floppy drive. After this, there are then three screws that hold down the bracket that the drive is attached to. With these out, you can then perform a back-flip with the drive and expose the wiring. It turns out it's a 34-pin data cable and standard floppy drive power cable!? But with only the 5v wiring.
The drive itself
Things got interesting from here... after removing the top case (more clips, use a flat-head screwdriver), I noticed that there didn't seem to be a drive-belt at all. All articles online indicated that these drives had belts and are known to perish over time. I started pulling the drive apart further and found out that Sony actually chose to split the drive motor across the base PCB!? Talk about a nice way to save space... and not have to need a belt!
Talk about mesmerising... those copper coils are beautiful! But dang... I'd gone and bought a belt and everything... if this still isn't working, as per the sticker, then I'm really in trouble!
Testing the drive
I put it as-back-together-as-needed to test the drive and turned it all on. I put the disk in, but all was very quiet. My MegaFlashROM loaded into Nextor and I hit the number '2' key to switch to the second drive.
What? It works? MENU.BAS sounds like a good place to start...
Ok, here we go... is this a demo disk? "Tanaka Yatsuu Shin"? I'll need a bit of help translating this... regardless, "CG" sounds like fun!
4 Images? Here they are in order...
I had it all working nicely, but the machine was half apart... so I screwed it all back together.
Floppy Drive Issues
Once back together, the drive refused to read. Taking it apart bit-by-bit, it started reading again once the drive shell was off... but this wasn't reliable either...
Gosh-darn... it's time to dig further into this drive... It seems I can wire in a PC drive.. but first I'll open the whole unit up again and give it a proper clean. It felt like it was having issues understanding that the disk was in the drive... I'll start there and determine what sensors are used and if they're functioning correctly... but that's all in the new year!