premier jeu, Last Defenders (nom provisoire) : aides en tout genre

Général

Steph

NEW il y a 5 ans

JFT JFT

I believe that a concrete example, treated in its entirety, will allow you to better understand how to apply everything that has been said:-) Here is a spritesheet that breaks down the progress of a well-known character, which includes 10 images (right-click and then "save image as" to retrieve it):


You will find the original spritesheet on spriters-resource.com. Thanks to Ittan-Momen.

The animation has 10 frames. Each frame measures 20x32 pixels. You can convert this spritesheet to C++ using the Image to code converter tool of our friend gouz. All frames are oriented to the left, but it is useless to copy them by symmetry to obtain the versions oriented to the right. Indeed, you will see below that the drawImage function accepts two optional parameters (w2 and h2) that will allow you to reverse images horizontally.

You will find below a small code detailing an animation technique of the character walking, controllable with the BUTTON_LEFT and BUTTON_RIGHT buttons on the console. Here is a screenshot of what it looks like:

Here is the corresponding code:

#include <Gamebuino-Meta.h>

#define SCREEN_WIDTH            80
#define SCREEN_HEIGHT           64

#define MARIO_WIDTH             20
#define MARIO_HEIGHT            32
#define MARIO_FRAMES            10
#define MARIO_DEFAULT_FRAME     4
#define MARIO_ORIENTATION_LEFT  true
#define MARIO_ORIENTATION_RIGHT false

const uint16_t mariodata[] = {
    MARIO_WIDTH,  // frame width
    MARIO_HEIGHT, // frame height
    MARIO_FRAMES, // number of frames
    0,            // animation speed (no animation)
    0xF81F,       // transparent color
    0,            // color mode: RGB565
    // colored pixels data
     0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0x0,0x0,0x0,0x0,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0xec66,0xec66,0xec66,0xe184,0xe184,0x0,0x0,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0xec66,0xec66,0xe184,0xe184,0xe184,0xe184,0xe184,0xe184,0x0,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0xec66,0xe184,0xffdf,0xffdf,0xffdf,0xe184,0xe184,0xe184,0xe184,0xe184,0x0,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0xe184,0xe184,0xffdf,0xffdf,0xffdf,0xffdf,0xe184,0xe184,0xe184,0xe184,0x80c1,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0xe184,0xe184,0xffdf,0xffdf,0xffdf,0xe184,0xe184,0xe184,0x80c1,0x80c1,0x0,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xe184,0x80c1,0x80c1,0x80c1,0x0,0x0,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x80c1,0x80c1,0xe184,0xe184,0x0,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0x0,0xf616,0xf616,0xf616,0xf616,0xf616,0xf616,0x0,0x0,0x0,0x80c1,0x80c1,0x80c1,0x80c1,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0xffdd,0x0,0xffdd,0x0,0xffdd,0xff5a,0xf616,0x0,0x0,0x0,0x80c1,0x80c1,0x80c1,0x0,0xF81F,0xF81F,0xF81F,0x0,0x0,0x0,0x0,0x0,0xff5a,0x0,0xffdd,0xff5a,0xf616,0xf616,0x0,0xf616,0x0,0x80c1,0x80c1,0x0,0xF81F,0xF81F,0xF81F,0x0,0xffdd,0xffdd,0xffdd,0x0,0xffdd,0xff5a,0xff5a,0xff5a,0xf616,0xf616,0x0,0xf616,0xf616,0x0,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0xffdd,0xffdd,0xf616,0xf616,0x0,0x0,0x0,0x0,0x0,0xf616,0x0,0xf616,0xf616,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xf616,0xf616,0xf616,0x0,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xf616,0xf616,0xf616,0x0,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0xf616,0xf616,0xf616,0xf616,0xf616,0xf616,0x0,0x0,0x0,0x0,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x80c1,0xe184,0xe184,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0x949e,0x0,0xe184,0xe184,0x0,0x949e,0x0,0x80c1,0x80c1,0xe184,0xe184,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0x949e,0x0,0xe184,0xe184,0xe184,0x0,0x949e,0x0,0x0,0x0,0x80c1,0xe184,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0x949e,0x0,0xe184,0xe184,0x0,0x949e,0x949e,0x0,0xec66,0xffdf,0x0,0x80c1,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0x949e,0x949e,0x0,0x0,0x0,0x949e,0x949e,0x0,0xffdf,0xffdf,0xffdf,0xffdf,0x0,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0x949e,0xffdf,0x949e,0x949e,0xffdf,0xffdf,0x949e,0x0,0xff50,0xffdf,0xffdf,0xffdf,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0x949e,0xffdf,0x949e,0x949e,0xffdf,0xffdf,0x949e,0x0,0xff50,0xff50,0xff50,0xff50,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0x7399,0x949e,0x949e,0x949e,0x949e,0x949e,0x949e,0x7399,0x0,0xff50,0xff50,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0x4a51,0x7399,0x7399,0x7399,0x7399,0x7399,0x7399,0x0,0x0,0x0,0x0,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0x4a51,0x4a51,0x4a51,0x4a51,0x4a51,0x0,0xec66,0xe184,0xe184,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0x0,0x0,0x0,0x0,0xec66,0xe184,0xe184,0x80c1,0x80c1,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0x0,0xe184,0x80c1,0x80c1,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0x0,0x0,0x0,0x80c1,0x80c1,0x80c1,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0xec66,0xec66,0xe184,0x0,0x80c1,0x80c1,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0xe184,0xe184,0xe184,0x0,0x80c1,0x80c1,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0x0,0x0,0x0,0x0,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0xec66,0xec66,0xec66,0xe184,0xe184,0x0,0x0,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0xec66,0xec66,0xe184,0xe184,0xe184,0xe184,0xe184,0xe184,0x0,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0xec66,0xe184,0xffdf,0xffdf,0xffdf,0xe184,0xe184,0xe184,0xe184,0xe184,0x0,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0xe184,0xe184,0xffdf,0xffdf,0xffdf,0xffdf,0xe184,0xe184,0xe184,0xe184,0x80c1,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0xe184,0xe184,0xffdf,0xffdf,0xffdf,0xe184,0xe184,0xe184,0x80c1,0x80c1,0x0,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xe184,0x80c1,0x80c1,0x80c1,0x0,0x0,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x80c1,0x80c1,0xe184,0xe184,0x0,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0x0,0xf616,0xf616,0xf616,0xf616,0xf616,0xf616,0x0,0x0,0x0,0x80c1,0x80c1,0x80c1,0x80c1,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0xffdd,0x0,0xffdd,0x0,0xffdd,0xff5a,0xf616,0x0,0x0,0x0,0x80c1,0x80c1,0x80c1,0x0,0xF81F,0xF81F,0xF81F,0x0,0x0,0x0,0x0,0x0,0xff5a,0x0,0xffdd,0xff5a,0xf616,0xf616,0x0,0xf616,0x0,0x80c1,0x80c1,0x0,0xF81F,0xF81F,0xF81F,0x0,0xffdd,0xffdd,0xffdd,0x0,0xffdd,0xff5a,0xff5a,0xff5a,0xf616,0xf616,0x0,0xf616,0xf616,0x0,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0xffdd,0xffdd,0xf616,0xf616,0x0,0x0,0x0,0x0,0x0,0xf616,0x0,0xf616,0xf616,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xf616,0xf616,0xf616,0x0,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xf616,0xf616,0xf616,0x0,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0xf616,0xf616,0xf616,0xf616,0xf616,0xf616,0x0,0x0,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0x949e,0x0,0xe184,0xe184,0x0,0x0,0xe184,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0x949e,0x0,0xe184,0xe184,0xe184,0x0,0x0,0xe184,0xe184,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0x949e,0x0,0xe184,0xe184,0x0,0x949e,0x0,0x80c1,0xe184,0xe184,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0x949e,0x949e,0x0,0x0,0x0,0x949e,0x949e,0x0,0x0,0x0,0x0,0x0,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0x949e,0xffdf,0x949e,0x949e,0xffdf,0xffdf,0x949e,0x0,0xffdf,0xffdf,0xffdf,0xffdf,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0x949e,0xffdf,0x949e,0x949e,0xffdf,0xffdf,0x0,0xff50,0xffdf,0xffdf,0xffdf,0xffdf,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0x7399,0x949e,0x949e,0x949e,0x949e,0x949e,0x0,0xec66,0xff50,0xffdf,0xffdf,0xffdf,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0x4a51,0x7399,0x7399,0x7399,0x7399,0x7399,0x7399,0x0,0xec66,0xff50,0xffdf,0xec66,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0x0,0x0,0x0,0x0,0x4a51,0x7399,0x7399,0x0,0x0,0x0,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0x0,0x0,0xec66,0xe184,0x80c1,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0xec66,0xec66,0xe184,0xe184,0xe184,0x80c1,0x0,0xF81F,0xF81F,0x0,0x0,0x80c1,0x80c1,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0xff50,0xff50,0xe184,0xe184,0x80c1,0x80c1,0x0,0x0,0x0,0x80c1,0x80c1,0x80c1,0x80c1,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0x0,0x0,0xff50,0xff50,0xff50,0xff50,0x0,0xec66,0xe184,0x80c1,0x80c1,0x80c1,0x0,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0x0,0x0,0x0,0x0,0xe184,0xe184,0xe184,0x80c1,0x0,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0x0,0x0,0x0,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0x0,0x0,0x0,0x0,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0xec66,0xec66,0xec66,0xe184,0xe184,0x0,0x0,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0xec66,0xec66,0xe184,0xe184,0xe184,0xe184,0xe184,0xe184,0x0,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0xec66,0xe184,0xffdf,0xffdf,0xffdf,0xe184,0xe184,0xe184,0xe184,0xe184,0x0,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0xe184,0xe184,0xffdf,0xffdf,0xffdf,0xffdf,0xe184,0xe184,0xe184,0xe184,0x80c1,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0xe184,0xe184,0xffdf,0xffdf,0xffdf,0xe184,0xe184,0xe184,0x80c1,0x80c1,0x0,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xe184,0x80c1,0x80c1,0x80c1,0x0,0x0,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x80c1,0x80c1,0xe184,0xe184,0x0,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0x0,0xf616,0xf616,0xf616,0xf616,0xf616,0xf616,0x0,0x0,0x0,0x80c1,0x80c1,0x80c1,0x80c1,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0xffdd,0x0,0xffdd,0x0,0xffdd,0xff5a,0xf616,0x0,0x0,0x0,0x80c1,0x80c1,0x80c1,0x0,0xF81F,0xF81F,0xF81F,0x0,0x0,0x0,0x0,0x0,0xff5a,0x0,0xffdd,0xff5a,0xf616,0xf616,0x0,0xf616,0x0,0x80c1,0x80c1,0x0,0xF81F,0xF81F,0xF81F,0x0,0xffdd,0xffdd,0xffdd,0x0,0xffdd,0xff5a,0xff5a,0xff5a,0xf616,0xf616,0x0,0xf616,0xf616,0x0,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0xffdd,0xffdd,0xf616,0xf616,0x0,0x0,0x0,0x0,0x0,0xf616,0x0,0xf616,0xf616,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xf616,0xf616,0xf616,0x0,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xf616,0xf616,0xf616,0x0,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0xf616,0xf616,0xf616,0xf616,0xf616,0xf616,0x0,0x0,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0x949e,0x0,0xe184,0xe184,0x0,0x949e,0x0,0xe184,0xe184,0x0,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0x949e,0x0,0xe184,0xe184,0xe184,0x0,0x949e,0x0,0xe184,0xe184,0xe184,0xe184,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0x949e,0x0,0xe184,0xe184,0x0,0x949e,0x949e,0x0,0x80c1,0x0,0x0,0x0,0x0,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0x949e,0x949e,0x0,0x0,0x0,0x949e,0x949e,0x949e,0x0,0x80c1,0x0,0xffdf,0xffdf,0xffdf,0xffdf,0x0,0xF81F,0xF81F,0xF81F,0x0,0x949e,0xffdf,0x949e,0x949e,0xffdf,0xffdf,0x949e,0x949e,0x7399,0x0,0xff50,0xffdf,0xffdf,0xffdf,0xffdf,0x0,0xF81F,0xF81F,0xF81F,0x0,0x949e,0xffdf,0x949e,0x949e,0xffdf,0xffdf,0x949e,0x949e,0x7399,0x0,0xec66,0xff50,0xffdf,0xffdf,0xffdf,0x0,0xF81F,0xF81F,0xF81F,0x0,0x7399,0x949e,0x949e,0x949e,0x949e,0x949e,0x949e,0x7399,0x7399,0x7399,0x0,0xff50,0xff50,0xffdf,0xff50,0x0,0xF81F,0xF81F,0x0,0x0,0x0,0x7399,0x7399,0x7399,0x7399,0x7399,0x7399,0x7399,0x7399,0x7399,0x4a51,0x0,0xff50,0xff50,0x0,0xF81F,0xF81F,0x0,0xff50,0xec66,0x0,0x4a51,0x4a51,0x4a51,0x4a51,0x4a51,0x7399,0x7399,0x0,0x0,0x0,0xF81F,0x0,0x0,0xF81F,0xF81F,0xF81F,0x0,0xff50,0xff50,0xe184,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xec66,0xe184,0x80c1,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0xff50,0xff50,0xe184,0x80c1,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0xec66,0xe184,0x80c1,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0xff50,0xff50,0x80c1,0x80c1,0x80c1,0x0,0xF81F,0xF81F,0xF81F,0x0,0xe184,0x80c1,0x80c1,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0xff50,0xff50,0x80c1,0x80c1,0x0,0xF81F,0xF81F,0x0,0xec66,0xe184,0x80c1,0x80c1,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0xff50,0xff50,0x80c1,0x0,0xF81F,0xF81F,0xF81F,0x0,0xe184,0x80c1,0x80c1,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0x0,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0x0,0x0,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0x0,0x0,0x0,0x0,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0xec66,0xec66,0xec66,0xe184,0xe184,0x0,0x0,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0xec66,0xec66,0xe184,0xe184,0xe184,0xe184,0xe184,0xe184,0x0,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0xec66,0xe184,0xffdf,0xffdf,0xffdf,0xe184,0xe184,0xe184,0xe184,0xe184,0x0,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0xe184,0xe184,0xffdf,0xffdf,0xffdf,0xffdf,0xe184,0xe184,0xe184,0xe184,0x80c1,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0xe184,0xe184,0xffdf,0xffdf,0xffdf,0xe184,0xe184,0xe184,0x80c1,0x80c1,0x0,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xe184,0x80c1,0x80c1,0x80c1,0x0,0x0,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x80c1,0x80c1,0xe184,0xe184,0x0,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0x0,0xf616,0xf616,0xf616,0xf616,0xf616,0xf616,0x0,0x0,0x0,0x80c1,0x80c1,0x80c1,0x80c1,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0xffdd,0x0,0xffdd,0x0,0xffdd,0xff5a,0xf616,0x0,0x0,0x0,0x80c1,0x80c1,0x80c1,0x0,0xF81F,0xF81F,0xF81F,0x0,0x0,0x0,0x0,0x0,0xff5a,0x0,0xffdd,0xff5a,0xf616,0xf616,0x0,0xf616,0x0,0x80c1,0x80c1,0x0,0xF81F,0xF81F,0xF81F,0x0,0xffdd,0xffdd,0xffdd,0x0,0xffdd,0xff5a,0xff5a,0xff5a,0xf616,0xf616,0x0,0xf616,0xf616,0x0,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0xffdd,0xffdd,0xf616,0xf616,0x0,0x0,0x0,0x0,0x0,0xf616,0x0,0xf616,0xf616,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xf616,0xf616,0xf616,0x0,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xf616,0xf616,0xf616,0x0,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0xf616,0xf616,0xf616,0xf616,0xf616,0xf616,0x0,0x0,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0x949e,0x0,0xe184,0xe184,0x0,0x0,0xe184,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0x949e,0x0,0xe184,0xe184,0xe184,0x0,0x0,0xe184,0xe184,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0x949e,0x0,0xe184,0xe184,0x0,0x949e,0x0,0x80c1,0xe184,0xe184,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0x949e,0x949e,0x0,0x0,0x0,0x949e,0x949e,0x0,0x0,0x0,0x0,0x0,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0x949e,0xffdf,0x949e,0x949e,0xffdf,0xffdf,0x949e,0x0,0xffdf,0xffdf,0xffdf,0xffdf,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0x949e,0xffdf,0x949e,0x949e,0xffdf,0xffdf,0x0,0xff50,0xffdf,0xffdf,0xffdf,0xffdf,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0x7399,0x949e,0x949e,0x949e,0x949e,0x949e,0x0,0xec66,0xff50,0xffdf,0xffdf,0xffdf,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0x4a51,0x7399,0x7399,0x7399,0x7399,0x7399,0x7399,0x0,0xec66,0x0,0x0,0x0,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0x4a51,0x4a51,0x4a51,0x4a51,0x4a51,0x7399,0x7399,0x0,0xec66,0xec66,0xe184,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xe184,0xe184,0xe184,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0xec66,0xec66,0xe184,0x0,0xF81F,0xF81F,0xF81F,0x0,0x80c1,0x80c1,0x80c1,0xe184,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0xff50,0x0,0xe184,0x80c1,0x80c1,0x0,0xF81F,0xF81F,0xF81F,0x0,0x0,0x80c1,0xe184,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0xff50,0x0,0x0,0x80c1,0x80c1,0x0,0xF81F,0xF81F,0x0,0x80c1,0x80c1,0x80c1,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0xff50,0xff50,0x0,0x80c1,0x0,0xF81F,0xF81F,0x0,0x80c1,0x80c1,0x80c1,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0x0,0x0,0x0,0x0,0xF81F,0xF81F,0xF81F,0x0,0x0,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0x0,0x0,0x0,0x0,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0xec66,0xec66,0xec66,0xe184,0xe184,0x0,0x0,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0xec66,0xec66,0xe184,0xe184,0xe184,0xe184,0xe184,0xe184,0x0,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0xec66,0xe184,0xffdf,0xffdf,0xffdf,0xe184,0xe184,0xe184,0xe184,0xe184,0x0,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0xe184,0xe184,0xffdf,0xffdf,0xffdf,0xffdf,0xe184,0xe184,0xe184,0xe184,0x80c1,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0xe184,0xe184,0xffdf,0xffdf,0xffdf,0xe184,0xe184,0xe184,0x80c1,0x80c1,0x0,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xe184,0x80c1,0x80c1,0x80c1,0x0,0x0,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x80c1,0x80c1,0xe184,0xe184,0x0,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0x0,0xf616,0xf616,0xf616,0xf616,0xf616,0xf616,0x0,0x0,0x0,0x80c1,0x80c1,0x80c1,0x80c1,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0xffdd,0x0,0xffdd,0x0,0xffdd,0xff5a,0xf616,0x0,0x0,0x0,0x80c1,0x80c1,0x80c1,0x0,0xF81F,0xF81F,0xF81F,0x0,0x0,0x0,0x0,0x0,0xff5a,0x0,0xffdd,0xff5a,0xf616,0xf616,0x0,0xf616,0x0,0x80c1,0x80c1,0x0,0xF81F,0xF81F,0xF81F,0x0,0xffdd,0xffdd,0xffdd,0x0,0xffdd,0xff5a,0xff5a,0xff5a,0xf616,0xf616,0x0,0xf616,0xf616,0x0,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0xffdd,0xffdd,0xf616,0xf616,0x0,0x0,0x0,0x0,0x0,0xf616,0x0,0xf616,0xf616,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xf616,0xf616,0xf616,0x0,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xf616,0xf616,0xf616,0x0,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0xf616,0xf616,0xf616,0xf616,0xf616,0xf616,0x0,0x0,0x0,0x0,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x80c1,0xe184,0xe184,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0x949e,0x0,0xe184,0xe184,0x0,0x949e,0x0,0x80c1,0x80c1,0xe184,0xe184,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0x949e,0x0,0xe184,0xe184,0xe184,0x0,0x949e,0x0,0x0,0x0,0x80c1,0xe184,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0x949e,0x0,0xe184,0xe184,0x0,0x949e,0x949e,0x0,0xec66,0xffdf,0x0,0x80c1,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0x949e,0x949e,0x0,0x0,0x0,0x949e,0x949e,0x0,0xffdf,0xffdf,0xffdf,0xffdf,0x0,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0x949e,0xffdf,0x949e,0x949e,0xffdf,0xffdf,0x949e,0x0,0xff50,0xffdf,0xffdf,0xffdf,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0x949e,0xffdf,0x949e,0x949e,0xffdf,0xffdf,0x949e,0x0,0xff50,0xff50,0xff50,0xff50,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0x7399,0x949e,0x949e,0x949e,0x949e,0x949e,0x949e,0x7399,0x0,0xff50,0xff50,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0x4a51,0x7399,0x7399,0x7399,0x7399,0x7399,0x7399,0x7399,0x7399,0x0,0x0,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0x4a51,0x4a51,0x4a51,0x4a51,0x4a51,0x7399,0x7399,0x0,0xec66,0xe184,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xec66,0xe184,0xe184,0x80c1,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0xe184,0x80c1,0x80c1,0x80c1,0x80c1,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0x0,0x0,0x0,0xF81F,0xF81F,0x0,0x80c1,0x0,0x80c1,0x80c1,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0xec66,0xec66,0xe184,0x80c1,0x0,0x0,0x0,0x0,0x0,0x80c1,0x80c1,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0xe184,0xe184,0xe184,0xe184,0x80c1,0x80c1,0x0,0xF81F,0xF81F,0x0,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0x0,0x0,0x0,0x0,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0xec66,0xec66,0xec66,0xe184,0xe184,0x0,0x0,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0xec66,0xec66,0xe184,0xe184,0xe184,0xe184,0xe184,0xe184,0x0,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0xec66,0xe184,0xffdf,0xffdf,0xffdf,0xe184,0xe184,0xe184,0xe184,0xe184,0x0,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0xe184,0xe184,0xffdf,0xffdf,0xffdf,0xffdf,0xe184,0xe184,0xe184,0xe184,0x80c1,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0xe184,0xe184,0xffdf,0xffdf,0xffdf,0xe184,0xe184,0xe184,0x80c1,0x80c1,0x0,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xe184,0x80c1,0x80c1,0x80c1,0x0,0x0,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x80c1,0x80c1,0xe184,0xe184,0x0,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0x0,0xf616,0xf616,0xf616,0xf616,0xf616,0xf616,0x0,0x0,0x0,0x80c1,0x80c1,0x80c1,0x80c1,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0xffdd,0x0,0xffdd,0x0,0xffdd,0xff5a,0xf616,0x0,0x0,0x0,0x80c1,0x80c1,0x80c1,0x0,0xF81F,0xF81F,0xF81F,0x0,0x0,0x0,0x0,0x0,0xff5a,0x0,0xffdd,0xff5a,0xf616,0xf616,0x0,0xf616,0x0,0x80c1,0x80c1,0x0,0xF81F,0xF81F,0xF81F,0x0,0xffdd,0xffdd,0xffdd,0x0,0xffdd,0xff5a,0xff5a,0xff5a,0xf616,0xf616,0x0,0xf616,0xf616,0x0,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0xffdd,0xffdd,0xf616,0xf616,0x0,0x0,0x0,0x0,0x0,0xf616,0x0,0xf616,0xf616,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xf616,0xf616,0xf616,0x0,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xf616,0xf616,0xf616,0x0,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0xf616,0xf616,0xf616,0xf616,0xf616,0xf616,0x0,0x0,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0x949e,0x0,0xe184,0xe184,0x0,0x0,0xe184,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0x949e,0x0,0xe184,0xe184,0xe184,0x0,0x0,0xe184,0xe184,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0x949e,0x0,0xe184,0xe184,0x0,0x949e,0x0,0x80c1,0xe184,0xe184,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0x949e,0x949e,0x0,0x0,0x0,0x949e,0x949e,0x0,0x0,0x0,0x0,0x0,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0x949e,0xffdf,0x949e,0x949e,0xffdf,0xffdf,0x949e,0x0,0xffdf,0xffdf,0xffdf,0xffdf,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0x949e,0xffdf,0x949e,0x949e,0xffdf,0xffdf,0x0,0xff50,0xffdf,0xffdf,0xffdf,0xffdf,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0x7399,0x949e,0x949e,0x949e,0x949e,0x949e,0x0,0xec66,0xff50,0xffdf,0xffdf,0xffdf,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0x4a51,0x7399,0x7399,0x7399,0x7399,0x7399,0x0,0x0,0x0,0xff50,0xffdf,0xec66,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0x4a51,0x4a51,0x4a51,0x4a51,0x0,0xec66,0xe184,0xe184,0x0,0x0,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0x0,0x0,0x0,0xec66,0xe184,0xe184,0x80c1,0x80c1,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0xe184,0x80c1,0x80c1,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0x0,0x0,0x0,0x80c1,0x80c1,0x80c1,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0xec66,0xec66,0xe184,0x0,0x80c1,0x80c1,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0xe184,0xe184,0xe184,0x0,0x80c1,0x80c1,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0x0,0x0,0x0,0x0,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0xec66,0xec66,0xec66,0xe184,0xe184,0x0,0x0,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0xec66,0xec66,0xe184,0xe184,0xe184,0xe184,0xe184,0xe184,0x0,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0xec66,0xe184,0xffdf,0xffdf,0xffdf,0xe184,0xe184,0xe184,0xe184,0xe184,0x0,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0xe184,0xe184,0xffdf,0xffdf,0xffdf,0xffdf,0xe184,0xe184,0xe184,0xe184,0x80c1,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0xe184,0xe184,0xffdf,0xffdf,0xffdf,0xe184,0xe184,0xe184,0x80c1,0x80c1,0x0,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xe184,0x80c1,0x80c1,0x80c1,0x0,0x0,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x80c1,0x80c1,0xe184,0xe184,0x0,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0x0,0xf616,0xf616,0xf616,0xf616,0xf616,0xf616,0x0,0x0,0x0,0x80c1,0x80c1,0x80c1,0x80c1,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0xffdd,0x0,0xffdd,0x0,0xffdd,0xff5a,0xf616,0x0,0x0,0x0,0x80c1,0x80c1,0x80c1,0x0,0xF81F,0xF81F,0xF81F,0x0,0x0,0x0,0x0,0x0,0xff5a,0x0,0xffdd,0xff5a,0xf616,0xf616,0x0,0xf616,0x0,0x80c1,0x80c1,0x0,0xF81F,0xF81F,0xF81F,0x0,0xffdd,0xffdd,0xffdd,0x0,0xffdd,0xff5a,0xff5a,0xff5a,0xf616,0xf616,0x0,0xf616,0xf616,0x0,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0xffdd,0xffdd,0xf616,0xf616,0x0,0x0,0x0,0x0,0x0,0xf616,0x0,0xf616,0xf616,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xf616,0xf616,0xf616,0x0,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xf616,0xf616,0xf616,0x0,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0xf616,0xf616,0xf616,0xf616,0xf616,0xf616,0x0,0x0,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0x949e,0x0,0xe184,0xe184,0x0,0x949e,0x0,0xe184,0xe184,0x0,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0x949e,0x0,0xe184,0xe184,0xe184,0x0,0x949e,0x0,0xe184,0xe184,0xe184,0xe184,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0x949e,0x0,0xe184,0xe184,0x0,0x949e,0x949e,0x0,0x80c1,0x0,0x0,0x0,0x0,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0x949e,0x949e,0x0,0x0,0x0,0x949e,0x949e,0x949e,0x0,0x80c1,0x0,0xffdf,0xffdf,0xffdf,0xffdf,0x0,0xF81F,0xF81F,0xF81F,0x0,0x949e,0xffdf,0x949e,0x949e,0xffdf,0xffdf,0x949e,0x949e,0x7399,0x0,0xff50,0xffdf,0xffdf,0xffdf,0xffdf,0x0,0xF81F,0xF81F,0xF81F,0x0,0x949e,0xffdf,0x949e,0x949e,0xffdf,0xffdf,0x949e,0x949e,0x7399,0x0,0xec66,0xff50,0xffdf,0xffdf,0xffdf,0x0,0xF81F,0xF81F,0xF81F,0x0,0x7399,0x949e,0x949e,0x949e,0x949e,0x949e,0x949e,0x7399,0x7399,0x7399,0x0,0xff50,0xff50,0xffdf,0xff50,0x0,0xF81F,0xF81F,0xF81F,0x0,0x4a51,0x7399,0x7399,0x7399,0x7399,0x7399,0x7399,0x7399,0x7399,0x7399,0x4a51,0x0,0xff50,0xff50,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0x4a51,0x0,0x0,0x0,0x0,0x7399,0x7399,0x7399,0x4a51,0x0,0xF81F,0x0,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0x0,0x0,0xec66,0xe184,0x80c1,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0xec66,0xec66,0xe184,0xe184,0xe184,0x80c1,0x0,0xF81F,0xF81F,0x0,0x0,0x80c1,0x80c1,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0xff50,0xff50,0xe184,0xe184,0x80c1,0x80c1,0x0,0x0,0x0,0x80c1,0x80c1,0x80c1,0x80c1,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0x0,0x0,0xff50,0xff50,0xff50,0xff50,0x0,0xec66,0xe184,0x80c1,0x80c1,0x80c1,0x0,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0x0,0x0,0x0,0x0,0xe184,0xe184,0xe184,0x80c1,0x0,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0x0,0x0,0x0,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0x0,0x0,0x0,0x0,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0xec66,0xec66,0xec66,0xe184,0xe184,0x0,0x0,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0xec66,0xec66,0xe184,0xe184,0xe184,0xe184,0xe184,0xe184,0x0,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0xec66,0xe184,0xffdf,0xffdf,0xffdf,0xe184,0xe184,0xe184,0xe184,0xe184,0x0,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0xe184,0xe184,0xffdf,0xffdf,0xffdf,0xffdf,0xe184,0xe184,0xe184,0xe184,0x80c1,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0xe184,0xe184,0xffdf,0xffdf,0xffdf,0xe184,0xe184,0xe184,0x80c1,0x80c1,0x0,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xe184,0x80c1,0x80c1,0x80c1,0x0,0x0,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x80c1,0x80c1,0xe184,0xe184,0x0,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0x0,0xf616,0xf616,0xf616,0xf616,0xf616,0xf616,0x0,0x0,0x0,0x80c1,0x80c1,0x80c1,0x80c1,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0xffdd,0x0,0xffdd,0x0,0xffdd,0xff5a,0xf616,0x0,0x0,0x0,0x80c1,0x80c1,0x80c1,0x0,0xF81F,0xF81F,0xF81F,0x0,0x0,0x0,0x0,0x0,0xff5a,0x0,0xffdd,0xff5a,0xf616,0xf616,0x0,0xf616,0x0,0x80c1,0x80c1,0x0,0xF81F,0xF81F,0xF81F,0x0,0xffdd,0xffdd,0xffdd,0x0,0xffdd,0xff5a,0xff5a,0xff5a,0xf616,0xf616,0x0,0xf616,0xf616,0x0,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0xffdd,0xffdd,0xf616,0xf616,0x0,0x0,0x0,0x0,0x0,0xf616,0x0,0xf616,0xf616,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xf616,0xf616,0xf616,0x0,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xf616,0xf616,0xf616,0x0,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0xf616,0xf616,0xf616,0xf616,0xf616,0xf616,0x0,0x0,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0x949e,0x0,0xe184,0xe184,0x0,0x0,0xe184,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0x949e,0x0,0xe184,0xe184,0xe184,0x0,0x0,0xe184,0xe184,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0x949e,0x0,0xe184,0xe184,0x0,0x949e,0x0,0x80c1,0xe184,0xe184,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0x949e,0x949e,0x0,0x0,0x0,0x949e,0x949e,0x0,0x0,0x0,0x0,0x0,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0x949e,0xffdf,0x949e,0x949e,0xffdf,0xffdf,0x949e,0x0,0xffdf,0xffdf,0xffdf,0xffdf,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0x949e,0xffdf,0x949e,0x949e,0xffdf,0xffdf,0x0,0xff50,0xffdf,0xffdf,0xffdf,0xffdf,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0x7399,0x949e,0x949e,0x949e,0x949e,0x949e,0x0,0xec66,0xff50,0xffdf,0xffdf,0xffdf,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0x0,0x7399,0x7399,0x7399,0x7399,0x7399,0x7399,0x0,0xec66,0xff50,0xffdf,0xec66,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0xff50,0xec66,0x0,0x4a51,0x4a51,0x4a51,0x4a51,0x7399,0x7399,0x0,0x0,0x0,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0xff50,0xff50,0xe184,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xec66,0xe184,0x80c1,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0xff50,0xff50,0xe184,0x80c1,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0xec66,0xe184,0x80c1,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0xff50,0xff50,0x80c1,0x80c1,0x80c1,0x0,0xF81F,0xF81F,0xF81F,0x0,0xe184,0x80c1,0x80c1,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0xff50,0xff50,0x80c1,0x80c1,0x0,0xF81F,0xF81F,0x0,0xec66,0xe184,0x80c1,0x80c1,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0xff50,0xff50,0x80c1,0x0,0xF81F,0xF81F,0xF81F,0x0,0xe184,0x80c1,0x80c1,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0x0,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0x0,0x0,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0x0,0x0,0x0,0x0,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0xec66,0xec66,0xec66,0xe184,0xe184,0x0,0x0,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0xec66,0xec66,0xe184,0xe184,0xe184,0xe184,0xe184,0xe184,0x0,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0xec66,0xe184,0xffdf,0xffdf,0xffdf,0xe184,0xe184,0xe184,0xe184,0xe184,0x0,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0xe184,0xe184,0xffdf,0xffdf,0xffdf,0xffdf,0xe184,0xe184,0xe184,0xe184,0x80c1,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0xe184,0xe184,0xffdf,0xffdf,0xffdf,0xe184,0xe184,0xe184,0x80c1,0x80c1,0x0,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xe184,0x80c1,0x80c1,0x80c1,0x0,0x0,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x80c1,0x80c1,0xe184,0xe184,0x0,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0x0,0xf616,0xf616,0xf616,0xf616,0xf616,0xf616,0x0,0x0,0x0,0x80c1,0x80c1,0x80c1,0x80c1,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0xffdd,0x0,0xffdd,0x0,0xffdd,0xff5a,0xf616,0x0,0x0,0x0,0x80c1,0x80c1,0x80c1,0x0,0xF81F,0xF81F,0xF81F,0x0,0x0,0x0,0x0,0x0,0xff5a,0x0,0xffdd,0xff5a,0xf616,0xf616,0x0,0xf616,0x0,0x80c1,0x80c1,0x0,0xF81F,0xF81F,0xF81F,0x0,0xffdd,0xffdd,0xffdd,0x0,0xffdd,0xff5a,0xff5a,0xff5a,0xf616,0xf616,0x0,0xf616,0xf616,0x0,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0xffdd,0xffdd,0xf616,0xf616,0x0,0x0,0x0,0x0,0x0,0xf616,0x0,0xf616,0xf616,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xf616,0xf616,0xf616,0x0,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xf616,0xf616,0xf616,0x0,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0xf616,0xf616,0xf616,0xf616,0xf616,0xf616,0x0,0x0,0x0,0x0,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x80c1,0xe184,0xe184,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0x949e,0x0,0xe184,0xe184,0x0,0x949e,0x0,0x80c1,0x80c1,0xe184,0xe184,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0x949e,0x0,0xe184,0xe184,0xe184,0x0,0x949e,0x0,0x0,0x0,0x80c1,0xe184,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0x949e,0x0,0xe184,0xe184,0x0,0x949e,0x949e,0x0,0xec66,0xffdf,0x0,0x80c1,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0x949e,0x949e,0x0,0x0,0x0,0x949e,0x949e,0x0,0xffdf,0xffdf,0xffdf,0xffdf,0x0,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0x949e,0xffdf,0x949e,0x949e,0xffdf,0xffdf,0x949e,0x0,0xff50,0xffdf,0xffdf,0xffdf,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0x949e,0xffdf,0x949e,0x949e,0xffdf,0xffdf,0x949e,0x0,0xff50,0xff50,0xff50,0xff50,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0x7399,0x949e,0x949e,0x949e,0x949e,0x949e,0x949e,0x7399,0x0,0xff50,0xff50,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0x4a51,0x7399,0x7399,0x7399,0x7399,0x7399,0x7399,0x7399,0x7399,0x0,0x0,0x0,0x0,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0x4a51,0x4a51,0x4a51,0x4a51,0x4a51,0x7399,0x7399,0x7399,0x0,0xec66,0xec66,0xe184,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xe184,0xe184,0xe184,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0x0,0xec66,0xec66,0xe184,0x0,0xF81F,0xF81F,0xF81F,0x0,0x80c1,0x80c1,0x80c1,0xe184,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0xff50,0x0,0xe184,0x80c1,0x80c1,0x0,0xF81F,0xF81F,0xF81F,0x0,0x0,0x80c1,0xe184,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0xff50,0x0,0x0,0x80c1,0x80c1,0x0,0xF81F,0xF81F,0x0,0x80c1,0x80c1,0x80c1,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0xff50,0xff50,0x0,0x80c1,0x0,0xF81F,0xF81F,0x0,0x80c1,0x80c1,0x80c1,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0x0,0x0,0x0,0x0,0xF81F,0xF81F,0xF81F,0x0,0x0,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0x0,0x0,0x0,0x0,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0xec66,0xec66,0xec66,0xe184,0xe184,0x0,0x0,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0xec66,0xec66,0xe184,0xe184,0xe184,0xe184,0xe184,0xe184,0x0,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0xec66,0xe184,0xffdf,0xffdf,0xffdf,0xe184,0xe184,0xe184,0xe184,0xe184,0x0,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0xe184,0xe184,0xffdf,0xffdf,0xffdf,0xffdf,0xe184,0xe184,0xe184,0xe184,0x80c1,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0xe184,0xe184,0xffdf,0xffdf,0xffdf,0xe184,0xe184,0xe184,0x80c1,0x80c1,0x0,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xe184,0x80c1,0x80c1,0x80c1,0x0,0x0,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x80c1,0x80c1,0xe184,0xe184,0x0,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0x0,0xf616,0xf616,0xf616,0xf616,0xf616,0xf616,0x0,0x0,0x0,0x80c1,0x80c1,0x80c1,0x80c1,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0xffdd,0x0,0xffdd,0x0,0xffdd,0xff5a,0xf616,0x0,0x0,0x0,0x80c1,0x80c1,0x80c1,0x0,0xF81F,0xF81F,0xF81F,0x0,0x0,0x0,0x0,0x0,0xff5a,0x0,0xffdd,0xff5a,0xf616,0xf616,0x0,0xf616,0x0,0x80c1,0x80c1,0x0,0xF81F,0xF81F,0xF81F,0x0,0xffdd,0xffdd,0xffdd,0x0,0xffdd,0xff5a,0xff5a,0xff5a,0xf616,0xf616,0x0,0xf616,0xf616,0x0,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0xffdd,0xffdd,0xf616,0xf616,0x0,0x0,0x0,0x0,0x0,0xf616,0x0,0xf616,0xf616,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xf616,0xf616,0xf616,0x0,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xf616,0xf616,0xf616,0x0,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0xf616,0xf616,0xf616,0xf616,0xf616,0xf616,0x0,0x0,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0x949e,0x0,0xe184,0xe184,0x0,0x0,0xe184,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0x949e,0x0,0xe184,0xe184,0xe184,0x0,0x0,0xe184,0xe184,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0x949e,0x0,0xe184,0xe184,0x0,0x949e,0x0,0x80c1,0xe184,0xe184,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0x949e,0x949e,0x0,0x0,0x0,0x949e,0x949e,0x0,0x0,0x0,0x0,0x0,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0x949e,0xffdf,0x949e,0x949e,0xffdf,0xffdf,0x949e,0x0,0xffdf,0xffdf,0xffdf,0xffdf,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0x949e,0xffdf,0x949e,0x949e,0xffdf,0xffdf,0x0,0xff50,0xffdf,0xffdf,0xffdf,0xffdf,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0x7399,0x949e,0x949e,0x949e,0x949e,0x949e,0x0,0xec66,0xff50,0xffdf,0xffdf,0xffdf,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0x4a51,0x7399,0x7399,0x7399,0x7399,0x7399,0x7399,0x0,0x0,0x0,0xffdf,0xec66,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0x4a51,0x4a51,0x4a51,0x4a51,0x4a51,0x7399,0x0,0xec66,0xe184,0x0,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0x0,0x0,0x0,0x0,0x0,0xec66,0xe184,0xe184,0x80c1,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0xe184,0x80c1,0x80c1,0x80c1,0x80c1,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0x0,0x0,0x0,0x0,0xF81F,0x0,0x80c1,0x0,0x80c1,0x80c1,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0xec66,0xec66,0xe184,0x80c1,0x0,0x0,0x0,0x0,0x0,0x80c1,0x80c1,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0xe184,0xe184,0xe184,0xe184,0x80c1,0x80c1,0x0,0xF81F,0xF81F,0x0,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F,0xF81F
};

typedef struct {
    uint8_t           x;
    uint8_t           y;
    uint8_t           w; // width
    uint8_t           h; // height
    bool    orientation; // left | right
    int8_t           vx; // horizontal velocity
    uint8_t       frame; // current frame
    uint8_t      frames; // number of frames
    Image         sheet; // spritesheet
} Sprite;

Sprite mario = {
    .5*(SCREEN_WIDTH  - MARIO_WIDTH),  // x
    .5*(SCREEN_HEIGHT - MARIO_HEIGHT), // y
    MARIO_WIDTH,                       // w
    MARIO_HEIGHT,                      // h
    MARIO_ORIENTATION_RIGHT,           // orientation
    0,                                 // vx
    MARIO_DEFAULT_FRAME,               // frame
    MARIO_FRAMES,                      // frames
    Image(mariodata)                   // sheet
};

void setup() {
    gb.begin();
}

void loop() {
    while (!gb.update());
    gb.display.clear();

    checkButtons();
    moveMario();
    drawMario();
}

void checkButtons() {
    if (gb.buttons.repeat(BUTTON_LEFT, 0)) {
        mario.orientation = MARIO_ORIENTATION_LEFT;
        mario.vx = -2;
    } else if (gb.buttons.repeat(BUTTON_RIGHT, 0)) {
        mario.orientation = MARIO_ORIENTATION_RIGHT;
        mario.vx = 2;
    } else if (gb.buttons.released(BUTTON_LEFT) || gb.buttons.released(BUTTON_RIGHT)) {
        mario.vx    = 0;
        mario.frame = MARIO_DEFAULT_FRAME;
    }
}

void moveMario() {
    if (mario.vx != 0) {
        mario.x += mario.vx;
        if (mario.x < 0 || mario.x + mario.w > SCREEN_WIDTH-1) {
            mario.x -= mario.vx;
        }
        mario.frame = ++mario.frame % mario.frames;
    }
}

void drawMario() {
    mario.sheet.setFrame(mario.frame);
    gb.display.drawImage(
        mario.x,
        mario.y,
        mario.sheet,
        mario.w * (mario.orientation == MARIO_ORIENTATION_LEFT ? 1 : -1),
        mario.h
    ); 
}

I hope you'll see it through now. Feel free to come back to us if you have any new questions ;-)

JFT

NEW il y a 5 ans

thank you all, I'll check this later. I'm at work but I wanted to thanks :)

jicehel

NEW il y a 5 ans

This example is more complete than the solution i gave and more easy to modify.

If you have all your sprite and you want reuse some in the animation you want do then you have to manage the array with the number of the frames in your animation

uint16_t Marche[3]={1,4,8};

After you have to replace in last prog the gestion of the frame by the next frame in this array (can be done with a few modifications)

(With the example given by steph, it's not useful as the frame are a same sequence it's could really only have a sens if you had alot srites to use often in your animations else duplicate pictures with the full animation if you don't have a memory need)



JFT

NEW il y a 4 ans

I had a computer crash and the code on my main file disapeared, it's now empty...
I uploaded it before the crash on my gamebuino Meta. Is it possible to recover it from the Gamebuino to the PC ?
Thank you

Steph

il y a 4 ans

Unfortunately, the code uploaded to the META has been compiled. The source code was on your PC.

I encourage you to use GitHub to manage your projects. That way, you'll always have a copy of your projects in the cloud!

Steph

NEW il y a 4 ans

JFT JFT

Unfortunately, the code uploaded to the META has been compiled. The source code was on your PC.

I encourage you to use GitHub to manage your projects. That way, you'll always have a copy of your projects in the cloud!

JFT

NEW il y a 4 ans

ok, I will :) I finally could find my file using R-Studio, great recovery tool :)

Steph

il y a 4 ans

Good for you! With macOS, we have Time Machine... which is integrated into the system :-)

Steph

NEW il y a 4 ans

JFT JFT

Good for you! With macOS, we have Time Machine... which is integrated into the system :-)

JFT

NEW il y a 4 ans

on Windows too we have a recovery, but I deactivated it as it takes space on the Hard Drive as I do not have a lot of space :) ...

JFT

NEW il y a 4 ans

Alright, player and enemies animations are done, collisions almost.
I wonder if I should show a preview of the game in its unfinished form :)
Let me know if you want to have a look at it !
If there are some yes, I'll post it (tell me how to do) when collision detection will be 100% done.
Thank you

jicehel

NEW il y a 4 ans

Sure, i'll maybe not comment as i'll not be connected for a little more than a week but ill have a look when i'll be back and then i'll be able to say a lot of bad things on your project because i like do that, because i'm bad ....   :D

JFT

NEW il y a 4 ans

ahah, so I'll try to do my best :)

Here is a picture of the player and the enemies.
Enemies will come from the right side to attack a machine that is on the left side of the player.
There is no scrolling on that game, all takes place on the same screen.
You have to protect this machine as long as possible. You can crouch, jump, punch, kick etc.
Game is over when you are dead or the machine is destroyed.
The aim is to get the highest score.

jicehel

NEW il y a 4 ans

Good luck for your dev. I hope be able to test it when i'll be back

JFT

il y a 4 ans

Thank you !

JFT

NEW il y a 4 ans

jicehel jicehel

Thank you !

JFT

NEW il y a 4 ans

Still in progress.

However, I wanted to simplify my code.
Is there a way to use an image name as an argument in a function ?

I first declare my set of images for an animation in my main code :
Image enemy_anim[4]={aen1, aen2, aen3, aen4};
Then I want to use a function with several arguments to load the animation.
Among the arguments, I want my image name, lest's call this argument ANIM (here I would use enemy_anim to declare the argument).
And in the function, among other lines of code, I want to use gb.display.drawImage(X,Y, ANIM[number_of _frames]);

I searched and tested long time but didn't get any result.
Thank you

Steph

il y a 4 ans

I have the feeling that you're trying to reinvent the wheel... awkwardly!

Take a look at this tutorial instead....

Steph

il y a 4 ans

I just reread the discussion... and I realize that I had already given you the solution on the right way to proceed, with setFrame() function...

All this is explained in the tutorial, which I encourage you to read... or to reread it again!

Steph

il y a 4 ans

I just wanted to say that, from now on, you could use the new Image Transcoder, which a priori is not buggy like the gouz tool was.

Image Transcoder allows you to encode spritesheets or tilesets for all META display modes... including high resolution for use with gb.tft.

Steph

NEW il y a 4 ans

JFT JFT

I have the feeling that you're trying to reinvent the wheel... awkwardly!

Take a look at this tutorial instead....