/*
 * intro one-shot animation
 * auto-generated by xbmtool.sh
 */
#include <avr/pgmspace.h>
#include <stdint.h>
#include "intro.h"

/* full frame for frame_01.xbm */
const uint8_t intro_frame_01[] PROGMEM = {
        0xfe, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 
        0x02, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0x02, 0x02, 
        0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0xfe, 0xfe, 
        0xfe, 0xfe, 0xfe, 0x02, 0x02, 0x02, 0x02, 0x02, 
        0x02, 0x02, 0x02, 0x02, 0xfe, 0x02, 0x02, 0x02, 
        0x02, 0x02, 0x02, 0x02, 0x02, 0xfe, 0xfe, 0xfe, 
        0xfe, 0xfe, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 
        0x02, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0x02, 0x02, 
        0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0xfe, 0xfe, 
        0xfe, 0xfe, 0xfe, 0x02, 0x02, 0x02, 0x02, 0x02, 
        0x02, 0x02, 0x02, 0xfe, 0xff, 0x00, 0x00, 0x00, 
        0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 
        0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 
        0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 
        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 
        0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 
        0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 
        0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 
        0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 
        0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 
        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 
        0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 
        0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 
        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 
        0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 
        0x00, 0x00, 0x00, 0x00, 0xff, 0x00, 0x00, 0x00, 
        0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 
        0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 
        0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 
        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 
        0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 
        0x00, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0x00, 
        0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x03, 0x03, 
        0xff, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 
        0x00, 0x00, 0x03, 0xff, 0x03, 0x03, 0x03, 0x00, 
        0xf0, 0xf8, 0x0c, 0x04, 0x04, 0x0c, 0x08, 0x00, 
        0xff, 0x00, 0xff, 0xff, 0x08, 0x04, 0x04, 0xfc, 
        0xfc, 0xf3, 0x03, 0xff, 0x03, 0x43, 0xf0, 0xf8, 
        0x0c, 0x04, 0x04, 0x0c, 0xf8, 0xf3, 0x03, 0xff, 
        0x03, 0x03, 0x00, 0x00, 0xfc, 0xfc, 0x18, 0x0c, 
        0x0c, 0x00, 0x03, 0xff, 0x03, 0x03, 0xfb, 0xf8, 
        0x0c, 0x04, 0x04, 0xff, 0xff, 0xfe, 0x00, 0xff, 
        0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 
        0x00, 0x00, 0x00, 0x00, 0xff, 0x00, 0x00, 0x00, 
        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 
        0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x03, 0x02, 
        0x02, 0x03, 0x01, 0x00, 0xff, 0xf8, 0xfb, 0x3b, 
        0xe0, 0xc0, 0x00, 0x83, 0xc3, 0x71, 0xf8, 0xff, 
        0x00, 0x00, 0x01, 0x03, 0x03, 0xfa, 0xfa, 0x03, 
        0x01, 0x00, 0x00, 0xff, 0x00, 0xf8, 0xf8, 0x18, 
        0x1b, 0x1b, 0x18, 0x18, 0x30, 0xf0, 0xc0, 0xff, 
        0x00, 0x00, 0x01, 0x03, 0xfb, 0xfa, 0x02, 0x03, 
        0x03, 0x01, 0x00, 0xff, 0x1f, 0x10, 0x10, 0x10, 
        0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 
        0x1f, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 
        0x10, 0x10, 0x10, 0x1f, 0x10, 0x10, 0x10, 0x10, 
        0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 
        0x1f, 0x17, 0x17, 0x10, 0x10, 0x13, 0x17, 0x17, 
        0x11, 0x10, 0x17, 0x1f, 0x10, 0x10, 0x10, 0x10, 
        0x10, 0x17, 0x17, 0x10, 0x10, 0x10, 0x10, 0x1f, 
        0x10, 0x17, 0x17, 0x16, 0x16, 0x16, 0x16, 0x16, 
        0x13, 0x13, 0x11, 0x1f, 0x10, 0x10, 0x10, 0x10, 
        0x17, 0x17, 0x10, 0x10, 0x10, 0x10, 0x10, 0x1f, 
};

/* diff frame for frame_01.xbm -> frame_02.xbm */
const struct xbmlib_diff_frame intro_frame_01__frame_02 PROGMEM = {
    .diffcnt = 8,
    .diffs = {
        {255, 0x00}, {185, 0x00}, {186, 0xf0}, {187, 0xf7},
        {188, 0xf0}, {189, 0xf0}, {190, 0xf0}, {191, 0x00}
    }
};

/* diff frame for frame_02.xbm -> frame_03.xbm */
const struct xbmlib_diff_frame intro_frame_02__frame_03 PROGMEM = {
    .diffcnt = 7,
    .diffs = {
        {255, 0x00}, {103, 0x7f}, {186, 0xff}, {187, 0xff},
        {188, 0xff}, {189, 0xff}, {190, 0xff}
    }
};

/* diff frame for frame_03.xbm -> frame_04.xbm */
const struct xbmlib_diff_frame intro_frame_03__frame_04 PROGMEM = {
    .diffcnt = 6,
    .diffs = {
        {255, 0x00}, {102, 0xf0}, {103, 0xf7}, {104, 0xf0},
        {105, 0xf0}, {106, 0xf0}
    }
};

/* diff frame for frame_04.xbm -> frame_05.xbm */
const struct xbmlib_diff_frame intro_frame_04__frame_05 PROGMEM = {
    .diffcnt = 7,
    .diffs = {
        {255, 0x00}, { 19, 0x7f}, {102, 0xff}, {103, 0xff},
        {104, 0xff}, {105, 0xff}, {106, 0xff}
    }
};

/* diff frame for frame_05.xbm -> frame_06.xbm */
const struct xbmlib_diff_frame intro_frame_05__frame_06 PROGMEM = {
    .diffcnt = 6,
    .diffs = {
        {255, 0x00}, { 18, 0xf3}, { 19, 0xf7}, { 20, 0xf3},
        { 21, 0xf3}, { 22, 0xf3}
    }
};

/* diff frame for frame_06.xbm -> frame_07.xbm */
const struct xbmlib_diff_frame intro_frame_06__frame_07 PROGMEM = {
    .diffcnt = 10,
    .diffs = {
        {190, 0x7f}, {191, 0x7f}, {192, 0x7f}, {193, 0x7f},
        {194, 0x7f}, { 18, 0xff}, { 19, 0xff}, { 20, 0xff},
        { 21, 0xff}, { 22, 0xff}
    }
};

/* diff frame for frame_07.xbm -> frame_08.xbm */
const struct xbmlib_diff_frame intro_frame_07__frame_08 PROGMEM = {
    .diffcnt = 10,
    .diffs = {
        {190, 0xf7}, {191, 0xf7}, {192, 0xf7}, {193, 0xf7},
        {194, 0xf7}, {186, 0x7f}, {187, 0x7f}, {188, 0x7f},
        {189, 0x7f}, {190, 0x7f}
    }
};

/* diff frame for frame_08.xbm -> frame_09.xbm */
const struct xbmlib_diff_frame intro_frame_08__frame_09 PROGMEM = {
    .diffcnt = 11,
    .diffs = {
        {255, 0x00}, { 98, 0xf0}, { 99, 0xf8}, {100, 0xfc},
        {101, 0xff}, {107, 0xc0}, {182, 0x11}, {183, 0x11},
        {184, 0x11}, {185, 0x01}, {191, 0x01}
    }
};

/* diff frame for frame_09.xbm -> frame_10.xbm */
const struct xbmlib_diff_frame intro_frame_09__frame_10 PROGMEM = {
    .diffcnt = 19,
    .diffs = {
        {255, 0x00}, { 14, 0xc0}, { 15, 0xe0}, { 16, 0xf0},
        { 17, 0xf8}, { 94, 0xf0}, { 95, 0xf8}, { 96, 0xfc},
        { 97, 0xff}, { 98, 0xff}, { 99, 0xcf}, {100, 0xc3},
        {101, 0xc1}, {108, 0xc0}, {178, 0x11}, {179, 0x11},
        {180, 0x11}, {181, 0x11}, {192, 0x11}
    }
};

/* diff frame for frame_10.xbm -> frame_11.xbm */
const struct xbmlib_diff_frame intro_frame_10__frame_11 PROGMEM = {
    .diffcnt = 31,
    .diffs = {
        {188, 0xc0}, {189, 0xe0}, {  8, 0x7f}, { 10, 0xc0},
        { 11, 0xe0}, { 12, 0xf0}, { 13, 0xf8}, { 14, 0xfe},
        { 15, 0x3f}, { 16, 0x1f}, { 17, 0x07}, { 90, 0xf0},
        { 91, 0xf8}, { 92, 0xfc}, { 93, 0xff}, { 94, 0xff},
        { 95, 0xcf}, { 96, 0xc3}, { 97, 0xc1}, { 98, 0xc0},
        { 99, 0xc0}, {100, 0xc0}, {101, 0xc0}, {109, 0xc1},
        {110, 0xc3}, {174, 0x11}, {175, 0x11}, {176, 0x1d},
        {177, 0x11}, {193, 0x11}, {194, 0x11}
    }
};

/* diff frame for frame_11.xbm -> frame_12.xbm */
const struct xbmlib_diff_frame intro_frame_11__frame_12 PROGMEM = {
    .diffcnt = 28,
    .diffs = {
        {186, 0xc0}, {187, 0xe0}, {188, 0xf0}, {189, 0xf0},
        {  8, 0xcf}, {  9, 0xe3}, { 10, 0xf0}, { 11, 0xf8},
        { 12, 0xfe}, { 13, 0x3f}, { 14, 0x1f}, { 15, 0x07},
        { 16, 0x03}, { 17, 0x01}, { 88, 0xf0}, { 89, 0xf8},
        { 90, 0xfc}, { 91, 0xff}, { 92, 0xff}, { 93, 0xcf},
        { 94, 0xc3}, { 95, 0xc1}, { 96, 0xc0}, { 97, 0xc0},
        {111, 0xc2}, {172, 0x11}, {173, 0x11}, {195, 0x11}
    }
};


/* one-shot animation frame mapping */
const struct xbmlib_frame intro_frames[] PROGMEM = {
    {TYPE_FULL, &intro_frame_01},
    {TYPE_DIFF, &intro_frame_01__frame_02},
    {TYPE_DIFF, &intro_frame_02__frame_03},
    {TYPE_DIFF, &intro_frame_03__frame_04},
    {TYPE_DIFF, &intro_frame_04__frame_05},
    {TYPE_DIFF, &intro_frame_05__frame_06},
    {TYPE_DIFF, &intro_frame_06__frame_07},
    {TYPE_DIFF, &intro_frame_07__frame_08},
    {TYPE_DIFF, &intro_frame_08__frame_09},
    {TYPE_DIFF, &intro_frame_09__frame_10},
    {TYPE_DIFF, &intro_frame_10__frame_11},
    {TYPE_DIFF, &intro_frame_11__frame_12}
};

/* one-shot animation number of frames */
const uint8_t intro_frames_count = 12;