#ifdef __has_include
    #if __has_include("lvgl.h")
        #ifndef LV_LVGL_H_INCLUDE_SIMPLE
            #define LV_LVGL_H_INCLUDE_SIMPLE
        #endif
    #endif
#endif

#include "lvgl.h"

#ifndef LV_ATTRIBUTE_MEM_ALIGN
#define LV_ATTRIBUTE_MEM_ALIGN
#endif

/*------------------ canvas_before ------------------*/
#ifndef LV_ATTRIBUTE_IMG_CANVAS_BEFORE
#define LV_ATTRIBUTE_IMG_CANVAS_BEFORE
#endif

const LV_ATTRIBUTE_MEM_ALIGN LV_ATTRIBUTE_LARGE_CONST LV_ATTRIBUTE_IMG_CANVAS_BEFORE uint8_t canvas_before_map[] = {
	0x00, 0x00, 0x00, 
	0x01, 0xf8, 0x00, 
	0x07, 0xfe, 0x00, 
	0x0e, 0x07, 0x00, 
	0x58, 0x01, 0x80, 
	0x70, 0x00, 0xc0, 
	0x70, 0x00, 0xc0, 
	0x78, 0x00, 0x60, 
	0x00, 0x00, 0x60, 
	0x00, 0x00, 0x60, 
	0x00, 0x00, 0x60, 
	0x00, 0x00, 0x60, 
	0x00, 0x00, 0x60, 
	0x30, 0x00, 0xc0, 
	0x30, 0x00, 0xc0, 
	0x18, 0x01, 0x80, 
	0x0e, 0x07, 0x00, 
	0x07, 0xfe, 0x00, 
	0x01, 0xf8, 0x00, 
	0x00, 0x00, 0x00, 
};

const lv_img_dsc_t canvas_before = {
	.header.cf = LV_IMG_CF_ALPHA_1BIT,
	.header.always_zero = 0,
	.header.reserved = 0,
	.header.w = 20,
	.header.h = 20,
	.data_size = 60,
	.data = canvas_before_map,
};

/*------------------ canvas_big ------------------*/
#ifndef LV_ATTRIBUTE_IMG_CANVAS_BIG
#define LV_ATTRIBUTE_IMG_CANVAS_BIG
#endif

const LV_ATTRIBUTE_MEM_ALIGN LV_ATTRIBUTE_LARGE_CONST LV_ATTRIBUTE_IMG_CANVAS_BIG uint8_t canvas_big_map[] = {
	0x00, 0x00, 0x00, 
	0x01, 0xf8, 0x00, 
	0x06, 0x06, 0x00, 
	0x08, 0x61, 0x00, 
	0x10, 0x60, 0x80, 
	0x20, 0x60, 0x40, 
	0x20, 0x60, 0x40, 
	0x40, 0x60, 0x20, 
	0x40, 0x60, 0x20, 
	0x5f, 0xff, 0xa0, 
	0x5f, 0xff, 0xa0, 
	0x40, 0x60, 0x20, 
	0x40, 0x60, 0x20, 
	0x20, 0x60, 0x40, 
	0x20, 0x60, 0x40, 
	0x10, 0x60, 0x80, 
	0x08, 0x61, 0x00, 
	0x06, 0x06, 0x00, 
	0x01, 0xf8, 0x00, 
	0x00, 0x00, 0x00, 
};

const lv_img_dsc_t canvas_big = {
	.header.cf = LV_IMG_CF_ALPHA_1BIT,
	.header.always_zero = 0,
	.header.reserved = 0,
	.header.w = 20,
	.header.h = 20,
	.data_size = 60,
	.data = canvas_big_map,
};

/*------------------ canvas_exit ------------------*/
#ifndef LV_ATTRIBUTE_IMG_CANVAS_EXIT
#define LV_ATTRIBUTE_IMG_CANVAS_EXIT
#endif

const LV_ATTRIBUTE_MEM_ALIGN LV_ATTRIBUTE_LARGE_CONST LV_ATTRIBUTE_IMG_CANVAS_EXIT uint8_t canvas_exit_map[] = {
	0x00, 0x00, 0x00, 
	0x01, 0xf8, 0x00, 
	0x06, 0x06, 0x00, 
	0x08, 0x01, 0x00, 
	0x10, 0x00, 0x80, 
	0x26, 0x06, 0x40, 
	0x27, 0x0e, 0x40, 
	0x43, 0x9c, 0x20, 
	0x41, 0xd8, 0x20, 
	0x40, 0xe0, 0x20, 
	0x40, 0x70, 0x20, 
	0x41, 0xb8, 0x20, 
	0x43, 0x9c, 0x20, 
	0x27, 0x0e, 0x40, 
	0x26, 0x06, 0x40, 
	0x10, 0x00, 0x80, 
	0x08, 0x01, 0x00, 
	0x06, 0x06, 0x00, 
	0x01, 0xf8, 0x00, 
	0x00, 0x00, 0x00, 
};

const lv_img_dsc_t canvas_exit = {
	.header.cf = LV_IMG_CF_ALPHA_1BIT,
	.header.always_zero = 0,
	.header.reserved = 0,
	.header.w = 20,
	.header.h = 20,
	.data_size = 60,
	.data = canvas_exit_map,
};

/*------------------ canvas_load ------------------*/
#ifndef LV_ATTRIBUTE_IMG_CANVAS_LOAD
#define LV_ATTRIBUTE_IMG_CANVAS_LOAD
#endif

const LV_ATTRIBUTE_MEM_ALIGN LV_ATTRIBUTE_LARGE_CONST LV_ATTRIBUTE_IMG_CANVAS_LOAD uint8_t canvas_load_map[] = {
	0x00, 0x00, 0x00, 
	0x00, 0x00, 0x00, 
	0x3f, 0xf0, 0x00, 
	0x20, 0x00, 0x80, 
	0x20, 0x01, 0x00, 
	0x20, 0x02, 0x00, 
	0x20, 0x04, 0x00, 
	0x20, 0x08, 0x00, 
	0x20, 0x90, 0x40, 
	0x20, 0xa0, 0x40, 
	0x20, 0xc0, 0x40, 
	0x20, 0xf0, 0x40, 
	0x20, 0x00, 0x40, 
	0x20, 0x00, 0x40, 
	0x20, 0x00, 0x40, 
	0x20, 0x00, 0x40, 
	0x20, 0x00, 0x40, 
	0x3f, 0xff, 0xc0, 
	0x00, 0x00, 0x00, 
	0x00, 0x00, 0x00, 
};

const lv_img_dsc_t canvas_load = {
	.header.cf = LV_IMG_CF_ALPHA_1BIT,
	.header.always_zero = 0,
	.header.reserved = 0,
	.header.w = 20,
	.header.h = 20,
	.data_size = 60,
	.data = canvas_load_map,
};

/*------------------ canvas_next ------------------*/
#ifndef LV_ATTRIBUTE_IMG_CANVAS_NEXT
#define LV_ATTRIBUTE_IMG_CANVAS_NEXT
#endif

const LV_ATTRIBUTE_MEM_ALIGN LV_ATTRIBUTE_LARGE_CONST LV_ATTRIBUTE_IMG_CANVAS_NEXT uint8_t canvas_next_map[] = {
	0x00, 0x00, 0x00, 
	0x01, 0xf8, 0x00, 
	0x07, 0xfe, 0x00, 
	0x0e, 0x07, 0x00, 
	0x18, 0x01, 0xa0, 
	0x30, 0x00, 0xe0, 
	0x30, 0x00, 0xe0, 
	0x60, 0x01, 0xe0, 
	0x60, 0x00, 0x00, 
	0x60, 0x00, 0x00, 
	0x60, 0x00, 0x00, 
	0x60, 0x00, 0x00, 
	0x60, 0x00, 0x00, 
	0x30, 0x00, 0xc0, 
	0x30, 0x00, 0xc0, 
	0x18, 0x01, 0x80, 
	0x0e, 0x07, 0x00, 
	0x07, 0xfe, 0x00, 
	0x01, 0xf8, 0x00, 
	0x00, 0x00, 0x00, 
};

const lv_img_dsc_t canvas_next = {
	.header.cf = LV_IMG_CF_ALPHA_1BIT,
	.header.always_zero = 0,
	.header.reserved = 0,
	.header.w = 20,
	.header.h = 20,
	.data_size = 60,
	.data = canvas_next_map,
};

/*------------------ canvas_pencil ------------------*/
#ifndef LV_ATTRIBUTE_IMG_CANVAS_PENCIL
#define LV_ATTRIBUTE_IMG_CANVAS_PENCIL
#endif

const LV_ATTRIBUTE_MEM_ALIGN LV_ATTRIBUTE_LARGE_CONST LV_ATTRIBUTE_IMG_CANVAS_PENCIL uint8_t canvas_pencil_map[] = {
	0x00, 0x00, 0x00, 
	0x00, 0x01, 0x80, 
	0x00, 0x02, 0x40, 
	0x00, 0x04, 0x20, 
	0x00, 0x08, 0x20, 
	0x00, 0x10, 0x40, 
	0x00, 0x20, 0x80, 
	0x00, 0x41, 0x00, 
	0x00, 0x82, 0x00, 
	0x01, 0x04, 0x00, 
	0x02, 0x08, 0x00, 
	0x04, 0x10, 0x00, 
	0x08, 0x20, 0x00, 
	0x10, 0x40, 0x00, 
	0x28, 0x80, 0x00, 
	0x45, 0x00, 0x00, 
	0x52, 0x00, 0x00, 
	0x44, 0x00, 0x00, 
	0x78, 0x00, 0x00, 
	0x00, 0x00, 0x00, 
};

const lv_img_dsc_t canvas_pencil = {
	.header.cf = LV_IMG_CF_ALPHA_1BIT,
	.header.always_zero = 0,
	.header.reserved = 0,
	.header.w = 20,
	.header.h = 20,
	.data_size = 60,
	.data = canvas_pencil_map,
};

/*------------------ canvas_rubber ------------------*/
#ifndef LV_ATTRIBUTE_IMG_CANVAS_RUBBER
#define LV_ATTRIBUTE_IMG_CANVAS_RUBBER
#endif

const LV_ATTRIBUTE_MEM_ALIGN LV_ATTRIBUTE_LARGE_CONST LV_ATTRIBUTE_IMG_CANVAS_RUBBER uint8_t canvas_rubber_map[] = {
	0x00, 0x00, 0x00, 
	0x00, 0x0c, 0x00, 
	0x00, 0x12, 0x00, 
	0x00, 0x21, 0x00, 
	0x00, 0x40, 0x80, 
	0x00, 0x80, 0x40, 
	0x01, 0x00, 0x20, 
	0x02, 0x00, 0x20, 
	0x04, 0x00, 0x40, 
	0x08, 0x00, 0x80, 
	0x10, 0x01, 0x00, 
	0x28, 0x02, 0x00, 
	0x44, 0x04, 0x00, 
	0x42, 0x08, 0x00, 
	0x21, 0x10, 0x00, 
	0x10, 0xa0, 0x00, 
	0x08, 0x40, 0x00, 
	0x04, 0x80, 0x00, 
	0x03, 0x00, 0x00, 
	0x00, 0x00, 0x00, 
};

const lv_img_dsc_t canvas_rubber = {
	.header.cf = LV_IMG_CF_ALPHA_1BIT,
	.header.always_zero = 0,
	.header.reserved = 0,
	.header.w = 20,
	.header.h = 20,
	.data_size = 60,
	.data = canvas_rubber_map,
};

/*------------------ canvas_save ------------------*/
#ifndef LV_ATTRIBUTE_IMG_CANVAS_SAVE
#define LV_ATTRIBUTE_IMG_CANVAS_SAVE
#endif

const LV_ATTRIBUTE_MEM_ALIGN LV_ATTRIBUTE_LARGE_CONST LV_ATTRIBUTE_IMG_CANVAS_SAVE uint8_t canvas_save_map[] = {
	0x00, 0x00, 0x00, 
	0x00, 0x00, 0x00, 
	0x1f, 0xfc, 0x00, 
	0x2f, 0x12, 0x00, 
	0x2f, 0x11, 0x00, 
	0x2f, 0x10, 0x80, 
	0x2f, 0xf0, 0x40, 
	0x20, 0x00, 0x40, 
	0x20, 0x00, 0x40, 
	0x20, 0x00, 0x40, 
	0x20, 0x00, 0x40, 
	0x20, 0x00, 0x40, 
	0x2f, 0xff, 0x40, 
	0x28, 0x01, 0x40, 
	0x28, 0x01, 0x40, 
	0x28, 0x01, 0x40, 
	0x28, 0x01, 0x40, 
	0x1f, 0xff, 0x80, 
	0x00, 0x00, 0x00, 
	0x00, 0x00, 0x00, 
};

const lv_img_dsc_t canvas_save = {
	.header.cf = LV_IMG_CF_ALPHA_1BIT,
	.header.always_zero = 0,
	.header.reserved = 0,
	.header.w = 20,
	.header.h = 20,
	.data_size = 60,
	.data = canvas_save_map,
};

/*------------------ canvas_small ------------------*/
#ifndef LV_ATTRIBUTE_IMG_CANVAS_SMALL
#define LV_ATTRIBUTE_IMG_CANVAS_SMALL
#endif

const LV_ATTRIBUTE_MEM_ALIGN LV_ATTRIBUTE_LARGE_CONST LV_ATTRIBUTE_IMG_CANVAS_SMALL uint8_t canvas_small_map[] = {
	0x00, 0x00, 0x00, 
	0x01, 0xf8, 0x00, 
	0x06, 0x06, 0x00, 
	0x08, 0x01, 0x00, 
	0x10, 0x00, 0x80, 
	0x20, 0x00, 0x40, 
	0x20, 0x00, 0x40, 
	0x40, 0x00, 0x20, 
	0x40, 0x00, 0x20, 
	0x5f, 0xff, 0xa0, 
	0x5f, 0xff, 0xa0, 
	0x40, 0x00, 0x20, 
	0x40, 0x00, 0x20, 
	0x20, 0x00, 0x40, 
	0x20, 0x00, 0x40, 
	0x10, 0x00, 0x80, 
	0x08, 0x01, 0x00, 
	0x06, 0x06, 0x00, 
	0x01, 0xf8, 0x00, 
	0x00, 0x00, 0x00, 
};

const lv_img_dsc_t canvas_small = {
	.header.cf = LV_IMG_CF_ALPHA_1BIT,
	.header.always_zero = 0,
	.header.reserved = 0,
	.header.w = 20,
	.header.h = 20,
	.data_size = 60,
	.data = canvas_small_map,
};

