From abc8a7292ac816bac8f78e9918876cf608c48de1 Mon Sep 17 00:00:00 2001 From: Zoltan Janosy Date: Sat, 20 Apr 2024 13:14:25 +0200 Subject: [PATCH] feat(draw/sw): added support for LV_COLOR_FORMAT_L8 (#5800) Signed-off-by: pengyiqiang Signed-off-by: qinshijing Co-authored-by: Zoltan Janosy Co-authored-by: Gabor Kiss-Vamosi Co-authored-by: VIFEX Co-authored-by: pengyiqiang Co-authored-by: Niklas Fiekas Co-authored-by: qinshijing <51692568+qinshijing@users.noreply.github.com> Co-authored-by: qinshijing Co-authored-by: Neo Xu --- .pre-commit-config.yaml | 3 +- demos/render/assets/img_render_lvgl_logo_l8.c | 67 ++ .../render/assets/img_render_lvgl_logo_l8.png | Bin 0 -> 240 bytes demos/render/lv_demo_render.c | 52 +- demos/render/lv_demo_render.h | 8 +- examples/assets/img_star.c | 92 +- examples/widgets/canvas/lv_example_canvas_5.c | 2 +- examples/widgets/canvas/lv_example_canvas_6.c | 4 +- scripts/LVGLImage.py | 15 +- src/draw/sw/blend/lv_draw_sw_blend.c | 16 +- src/draw/sw/blend/lv_draw_sw_blend_to_al88.c | 871 ++++++++++++++++++ src/draw/sw/blend/lv_draw_sw_blend_to_al88.h | 45 + .../sw/blend/lv_draw_sw_blend_to_argb8888.c | 246 ++++- src/draw/sw/blend/lv_draw_sw_blend_to_l8.c | 734 +++++++++++++++ src/draw/sw/blend/lv_draw_sw_blend_to_l8.h | 45 + .../sw/blend/lv_draw_sw_blend_to_rgb565.c | 296 +++++- .../sw/blend/lv_draw_sw_blend_to_rgb888.c | 214 ++++- src/draw/sw/lv_draw_sw_img.c | 28 +- src/draw/sw/lv_draw_sw_transform.c | 177 +++- src/misc/lv_color.c | 4 +- src/misc/lv_color.h | 52 +- src/others/snapshot/lv_snapshot.c | 1 + src/widgets/canvas/lv_canvas.c | 38 +- .../al88/demo_render_arc_image_opa_128.png | Bin 0 -> 14358 bytes .../al88/demo_render_arc_image_opa_255.png | Bin 0 -> 16311 bytes .../al88/demo_render_arc_normal_opa_128.png | Bin 0 -> 12334 bytes .../al88/demo_render_arc_normal_opa_255.png | Bin 0 -> 13379 bytes .../al88/demo_render_blend_mode_opa_128.png | Bin 0 -> 36991 bytes .../al88/demo_render_blend_mode_opa_255.png | Bin 0 -> 42923 bytes .../al88/demo_render_border_opa_128.png | Bin 0 -> 9050 bytes .../al88/demo_render_border_opa_255.png | Bin 0 -> 9304 bytes .../al88/demo_render_box_shadow_opa_128.png | Bin 0 -> 12995 bytes .../al88/demo_render_box_shadow_opa_255.png | Bin 0 -> 14861 bytes .../render/al88/demo_render_fill_opa_128.png | Bin 0 -> 13895 bytes .../render/al88/demo_render_fill_opa_255.png | Bin 0 -> 15857 bytes .../demo_render_image_normal_1_opa_128.png | Bin 0 -> 39692 bytes .../demo_render_image_normal_1_opa_255.png | Bin 0 -> 48115 bytes .../demo_render_image_normal_2_opa_128.png | Bin 0 -> 13461 bytes .../demo_render_image_normal_2_opa_255.png | Bin 0 -> 15161 bytes .../demo_render_image_recolor_1_opa_128.png | Bin 0 -> 33238 bytes .../demo_render_image_recolor_1_opa_255.png | Bin 0 -> 41175 bytes .../demo_render_image_recolor_2_opa_128.png | Bin 0 -> 11603 bytes .../demo_render_image_recolor_2_opa_255.png | Bin 0 -> 13450 bytes .../al88/demo_render_layer_normal_opa_128.png | Bin 0 -> 54701 bytes .../al88/demo_render_layer_normal_opa_255.png | Bin 0 -> 62362 bytes .../render/al88/demo_render_line_opa_128.png | Bin 0 -> 10448 bytes .../render/al88/demo_render_line_opa_255.png | Bin 0 -> 10868 bytes .../render/al88/demo_render_text_opa_128.png | Bin 0 -> 16180 bytes .../render/al88/demo_render_text_opa_255.png | Bin 0 -> 16261 bytes .../al88/demo_render_triangle_opa_128.png | Bin 0 -> 13474 bytes .../al88/demo_render_triangle_opa_255.png | Bin 0 -> 18174 bytes ...=> demo_render_image_normal_1_opa_128.png} | Bin ...=> demo_render_image_normal_1_opa_255.png} | Bin .../demo_render_image_normal_2_opa_128.png | Bin 0 -> 14539 bytes .../demo_render_image_normal_2_opa_255.png | Bin 0 -> 15680 bytes ...> demo_render_image_recolor_1_opa_128.png} | Bin ...> demo_render_image_recolor_1_opa_255.png} | Bin .../demo_render_image_recolor_2_opa_128.png | Bin 0 -> 13935 bytes .../demo_render_image_recolor_2_opa_255.png | Bin 0 -> 15348 bytes .../l8/demo_render_arc_image_opa_128.png | Bin 0 -> 14453 bytes .../l8/demo_render_arc_image_opa_255.png | Bin 0 -> 16476 bytes .../l8/demo_render_arc_normal_opa_128.png | Bin 0 -> 12455 bytes .../l8/demo_render_arc_normal_opa_255.png | Bin 0 -> 13451 bytes .../l8/demo_render_blend_mode_opa_128.png | Bin 0 -> 36906 bytes .../l8/demo_render_blend_mode_opa_255.png | Bin 0 -> 42887 bytes .../render/l8/demo_render_border_opa_128.png | Bin 0 -> 9050 bytes .../render/l8/demo_render_border_opa_255.png | Bin 0 -> 9304 bytes .../l8/demo_render_box_shadow_opa_128.png | Bin 0 -> 13115 bytes .../l8/demo_render_box_shadow_opa_255.png | Bin 0 -> 14951 bytes .../render/l8/demo_render_fill_opa_128.png | Bin 0 -> 13895 bytes .../render/l8/demo_render_fill_opa_255.png | Bin 0 -> 15857 bytes .../l8/demo_render_image_normal_1_opa_128.png | Bin 0 -> 39725 bytes .../l8/demo_render_image_normal_1_opa_255.png | Bin 0 -> 48180 bytes .../l8/demo_render_image_normal_2_opa_128.png | Bin 0 -> 13466 bytes .../l8/demo_render_image_normal_2_opa_255.png | Bin 0 -> 15216 bytes .../demo_render_image_recolor_1_opa_128.png | Bin 0 -> 33274 bytes .../demo_render_image_recolor_1_opa_255.png | Bin 0 -> 41188 bytes .../demo_render_image_recolor_2_opa_128.png | Bin 0 -> 11603 bytes .../demo_render_image_recolor_2_opa_255.png | Bin 0 -> 13455 bytes .../l8/demo_render_layer_normal_opa_128.png | Bin 0 -> 54713 bytes .../l8/demo_render_layer_normal_opa_255.png | Bin 0 -> 62413 bytes .../render/l8/demo_render_line_opa_128.png | Bin 0 -> 10897 bytes .../render/l8/demo_render_line_opa_255.png | Bin 0 -> 10923 bytes .../render/l8/demo_render_text_opa_128.png | Bin 0 -> 16180 bytes .../render/l8/demo_render_text_opa_255.png | Bin 0 -> 16261 bytes .../l8/demo_render_triangle_opa_128.png | Bin 0 -> 13550 bytes .../l8/demo_render_triangle_opa_255.png | Bin 0 -> 18186 bytes ...=> demo_render_image_normal_1_opa_128.png} | Bin ...=> demo_render_image_normal_1_opa_255.png} | Bin .../demo_render_image_normal_2_opa_128.png | Bin 0 -> 12205 bytes .../demo_render_image_normal_2_opa_255.png | Bin 0 -> 13750 bytes ...> demo_render_image_recolor_1_opa_128.png} | Bin ...> demo_render_image_recolor_1_opa_255.png} | Bin .../demo_render_image_recolor_2_opa_128.png | Bin 0 -> 11052 bytes .../demo_render_image_recolor_2_opa_255.png | Bin 0 -> 13042 bytes ...=> demo_render_image_normal_1_opa_128.png} | Bin ...=> demo_render_image_normal_1_opa_255.png} | Bin .../demo_render_image_normal_2_opa_128.png | Bin 0 -> 14539 bytes .../demo_render_image_normal_2_opa_255.png | Bin 0 -> 15680 bytes ...> demo_render_image_recolor_1_opa_128.png} | Bin ...> demo_render_image_recolor_1_opa_255.png} | Bin .../demo_render_image_recolor_2_opa_128.png | Bin 0 -> 13935 bytes .../demo_render_image_recolor_2_opa_255.png | Bin 0 -> 15356 bytes ...=> demo_render_image_normal_1_opa_128.png} | Bin ...=> demo_render_image_normal_1_opa_255.png} | Bin .../demo_render_image_normal_2_opa_128.png | Bin 0 -> 14539 bytes .../demo_render_image_normal_2_opa_255.png | Bin 0 -> 15680 bytes ...> demo_render_image_recolor_1_opa_128.png} | Bin ...> demo_render_image_recolor_1_opa_255.png} | Bin .../demo_render_image_recolor_2_opa_128.png | Bin 0 -> 13935 bytes .../demo_render_image_recolor_2_opa_255.png | Bin 0 -> 15356 bytes .../src/test_cases/draw/test_render_to_al88.c | 37 + tests/src/test_cases/draw/test_render_to_l8.c | 37 + tests/unity/unity_support.c | 32 +- 114 files changed, 3033 insertions(+), 83 deletions(-) create mode 100644 demos/render/assets/img_render_lvgl_logo_l8.c create mode 100644 demos/render/assets/img_render_lvgl_logo_l8.png create mode 100644 src/draw/sw/blend/lv_draw_sw_blend_to_al88.c create mode 100644 src/draw/sw/blend/lv_draw_sw_blend_to_al88.h create mode 100644 src/draw/sw/blend/lv_draw_sw_blend_to_l8.c create mode 100644 src/draw/sw/blend/lv_draw_sw_blend_to_l8.h create mode 100644 tests/ref_imgs/draw/render/al88/demo_render_arc_image_opa_128.png create mode 100644 tests/ref_imgs/draw/render/al88/demo_render_arc_image_opa_255.png create mode 100644 tests/ref_imgs/draw/render/al88/demo_render_arc_normal_opa_128.png create mode 100644 tests/ref_imgs/draw/render/al88/demo_render_arc_normal_opa_255.png create mode 100644 tests/ref_imgs/draw/render/al88/demo_render_blend_mode_opa_128.png create mode 100644 tests/ref_imgs/draw/render/al88/demo_render_blend_mode_opa_255.png create mode 100644 tests/ref_imgs/draw/render/al88/demo_render_border_opa_128.png create mode 100644 tests/ref_imgs/draw/render/al88/demo_render_border_opa_255.png create mode 100644 tests/ref_imgs/draw/render/al88/demo_render_box_shadow_opa_128.png create mode 100644 tests/ref_imgs/draw/render/al88/demo_render_box_shadow_opa_255.png create mode 100644 tests/ref_imgs/draw/render/al88/demo_render_fill_opa_128.png create mode 100644 tests/ref_imgs/draw/render/al88/demo_render_fill_opa_255.png create mode 100644 tests/ref_imgs/draw/render/al88/demo_render_image_normal_1_opa_128.png create mode 100644 tests/ref_imgs/draw/render/al88/demo_render_image_normal_1_opa_255.png create mode 100644 tests/ref_imgs/draw/render/al88/demo_render_image_normal_2_opa_128.png create mode 100644 tests/ref_imgs/draw/render/al88/demo_render_image_normal_2_opa_255.png create mode 100644 tests/ref_imgs/draw/render/al88/demo_render_image_recolor_1_opa_128.png create mode 100644 tests/ref_imgs/draw/render/al88/demo_render_image_recolor_1_opa_255.png create mode 100644 tests/ref_imgs/draw/render/al88/demo_render_image_recolor_2_opa_128.png create mode 100644 tests/ref_imgs/draw/render/al88/demo_render_image_recolor_2_opa_255.png create mode 100644 tests/ref_imgs/draw/render/al88/demo_render_layer_normal_opa_128.png create mode 100644 tests/ref_imgs/draw/render/al88/demo_render_layer_normal_opa_255.png create mode 100644 tests/ref_imgs/draw/render/al88/demo_render_line_opa_128.png create mode 100644 tests/ref_imgs/draw/render/al88/demo_render_line_opa_255.png create mode 100644 tests/ref_imgs/draw/render/al88/demo_render_text_opa_128.png create mode 100644 tests/ref_imgs/draw/render/al88/demo_render_text_opa_255.png create mode 100644 tests/ref_imgs/draw/render/al88/demo_render_triangle_opa_128.png create mode 100644 tests/ref_imgs/draw/render/al88/demo_render_triangle_opa_255.png rename tests/ref_imgs/draw/render/argb8888/{demo_render_image_normal_opa_128.png => demo_render_image_normal_1_opa_128.png} (100%) rename tests/ref_imgs/draw/render/argb8888/{demo_render_image_normal_opa_255.png => demo_render_image_normal_1_opa_255.png} (100%) create mode 100644 tests/ref_imgs/draw/render/argb8888/demo_render_image_normal_2_opa_128.png create mode 100644 tests/ref_imgs/draw/render/argb8888/demo_render_image_normal_2_opa_255.png rename tests/ref_imgs/draw/render/argb8888/{demo_render_image_recolor_opa_128.png => demo_render_image_recolor_1_opa_128.png} (100%) rename tests/ref_imgs/draw/render/argb8888/{demo_render_image_recolor_opa_255.png => demo_render_image_recolor_1_opa_255.png} (100%) create mode 100644 tests/ref_imgs/draw/render/argb8888/demo_render_image_recolor_2_opa_128.png create mode 100644 tests/ref_imgs/draw/render/argb8888/demo_render_image_recolor_2_opa_255.png create mode 100644 tests/ref_imgs/draw/render/l8/demo_render_arc_image_opa_128.png create mode 100644 tests/ref_imgs/draw/render/l8/demo_render_arc_image_opa_255.png create mode 100644 tests/ref_imgs/draw/render/l8/demo_render_arc_normal_opa_128.png create mode 100644 tests/ref_imgs/draw/render/l8/demo_render_arc_normal_opa_255.png create mode 100644 tests/ref_imgs/draw/render/l8/demo_render_blend_mode_opa_128.png create mode 100644 tests/ref_imgs/draw/render/l8/demo_render_blend_mode_opa_255.png create mode 100644 tests/ref_imgs/draw/render/l8/demo_render_border_opa_128.png create mode 100644 tests/ref_imgs/draw/render/l8/demo_render_border_opa_255.png create mode 100644 tests/ref_imgs/draw/render/l8/demo_render_box_shadow_opa_128.png create mode 100644 tests/ref_imgs/draw/render/l8/demo_render_box_shadow_opa_255.png create mode 100644 tests/ref_imgs/draw/render/l8/demo_render_fill_opa_128.png create mode 100644 tests/ref_imgs/draw/render/l8/demo_render_fill_opa_255.png create mode 100644 tests/ref_imgs/draw/render/l8/demo_render_image_normal_1_opa_128.png create mode 100644 tests/ref_imgs/draw/render/l8/demo_render_image_normal_1_opa_255.png create mode 100644 tests/ref_imgs/draw/render/l8/demo_render_image_normal_2_opa_128.png create mode 100644 tests/ref_imgs/draw/render/l8/demo_render_image_normal_2_opa_255.png create mode 100644 tests/ref_imgs/draw/render/l8/demo_render_image_recolor_1_opa_128.png create mode 100644 tests/ref_imgs/draw/render/l8/demo_render_image_recolor_1_opa_255.png create mode 100644 tests/ref_imgs/draw/render/l8/demo_render_image_recolor_2_opa_128.png create mode 100644 tests/ref_imgs/draw/render/l8/demo_render_image_recolor_2_opa_255.png create mode 100644 tests/ref_imgs/draw/render/l8/demo_render_layer_normal_opa_128.png create mode 100644 tests/ref_imgs/draw/render/l8/demo_render_layer_normal_opa_255.png create mode 100644 tests/ref_imgs/draw/render/l8/demo_render_line_opa_128.png create mode 100644 tests/ref_imgs/draw/render/l8/demo_render_line_opa_255.png create mode 100644 tests/ref_imgs/draw/render/l8/demo_render_text_opa_128.png create mode 100644 tests/ref_imgs/draw/render/l8/demo_render_text_opa_255.png create mode 100644 tests/ref_imgs/draw/render/l8/demo_render_triangle_opa_128.png create mode 100644 tests/ref_imgs/draw/render/l8/demo_render_triangle_opa_255.png rename tests/ref_imgs/draw/render/rgb565/{demo_render_image_normal_opa_128.png => demo_render_image_normal_1_opa_128.png} (100%) rename tests/ref_imgs/draw/render/rgb565/{demo_render_image_normal_opa_255.png => demo_render_image_normal_1_opa_255.png} (100%) create mode 100644 tests/ref_imgs/draw/render/rgb565/demo_render_image_normal_2_opa_128.png create mode 100644 tests/ref_imgs/draw/render/rgb565/demo_render_image_normal_2_opa_255.png rename tests/ref_imgs/draw/render/rgb565/{demo_render_image_recolor_opa_128.png => demo_render_image_recolor_1_opa_128.png} (100%) rename tests/ref_imgs/draw/render/rgb565/{demo_render_image_recolor_opa_255.png => demo_render_image_recolor_1_opa_255.png} (100%) create mode 100644 tests/ref_imgs/draw/render/rgb565/demo_render_image_recolor_2_opa_128.png create mode 100644 tests/ref_imgs/draw/render/rgb565/demo_render_image_recolor_2_opa_255.png rename tests/ref_imgs/draw/render/rgb888/{demo_render_image_normal_opa_128.png => demo_render_image_normal_1_opa_128.png} (100%) rename tests/ref_imgs/draw/render/rgb888/{demo_render_image_normal_opa_255.png => demo_render_image_normal_1_opa_255.png} (100%) create mode 100644 tests/ref_imgs/draw/render/rgb888/demo_render_image_normal_2_opa_128.png create mode 100644 tests/ref_imgs/draw/render/rgb888/demo_render_image_normal_2_opa_255.png rename tests/ref_imgs/draw/render/rgb888/{demo_render_image_recolor_opa_128.png => demo_render_image_recolor_1_opa_128.png} (100%) rename tests/ref_imgs/draw/render/rgb888/{demo_render_image_recolor_opa_255.png => demo_render_image_recolor_1_opa_255.png} (100%) create mode 100644 tests/ref_imgs/draw/render/rgb888/demo_render_image_recolor_2_opa_128.png create mode 100644 tests/ref_imgs/draw/render/rgb888/demo_render_image_recolor_2_opa_255.png rename tests/ref_imgs/draw/render/xrgb8888/{demo_render_image_normal_opa_128.png => demo_render_image_normal_1_opa_128.png} (100%) rename tests/ref_imgs/draw/render/xrgb8888/{demo_render_image_normal_opa_255.png => demo_render_image_normal_1_opa_255.png} (100%) create mode 100644 tests/ref_imgs/draw/render/xrgb8888/demo_render_image_normal_2_opa_128.png create mode 100644 tests/ref_imgs/draw/render/xrgb8888/demo_render_image_normal_2_opa_255.png rename tests/ref_imgs/draw/render/xrgb8888/{demo_render_image_recolor_opa_128.png => demo_render_image_recolor_1_opa_128.png} (100%) rename tests/ref_imgs/draw/render/xrgb8888/{demo_render_image_recolor_opa_255.png => demo_render_image_recolor_1_opa_255.png} (100%) create mode 100644 tests/ref_imgs/draw/render/xrgb8888/demo_render_image_recolor_2_opa_128.png create mode 100644 tests/ref_imgs/draw/render/xrgb8888/demo_render_image_recolor_2_opa_255.png create mode 100644 tests/src/test_cases/draw/test_render_to_al88.c create mode 100644 tests/src/test_cases/draw/test_render_to_l8.c diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml index 6cd58791a..658ff571f 100644 --- a/.pre-commit-config.yaml +++ b/.pre-commit-config.yaml @@ -27,7 +27,8 @@ repos: exclude: | (?x)^( src/libs/ | - src/lv_conf_internal.h + src/lv_conf_internal.h | + tests/test_images ) types_or: ["c", "header"] - repo: https://github.com/crate-ci/typos diff --git a/demos/render/assets/img_render_lvgl_logo_l8.c b/demos/render/assets/img_render_lvgl_logo_l8.c new file mode 100644 index 000000000..14d090850 --- /dev/null +++ b/demos/render/assets/img_render_lvgl_logo_l8.c @@ -0,0 +1,67 @@ +#ifdef __has_include + #if __has_include("lvgl.h") + #ifndef LV_LVGL_H_INCLUDE_SIMPLE + #define LV_LVGL_H_INCLUDE_SIMPLE + #endif + #endif +#endif + +#if defined(LV_LVGL_H_INCLUDE_SIMPLE) + #include "lvgl.h" +#else + #include "lvgl/lvgl.h" +#endif + + +#ifndef LV_ATTRIBUTE_MEM_ALIGN + #define LV_ATTRIBUTE_MEM_ALIGN +#endif + +#ifndef LV_ATTRIBUTE_IMG_IMG_RENDER_LVGL_LOGO_L8 + #define LV_ATTRIBUTE_IMG_IMG_RENDER_LVGL_LOGO_L8 +#endif + +const LV_ATTRIBUTE_MEM_ALIGN LV_ATTRIBUTE_LARGE_CONST LV_ATTRIBUTE_IMG_IMG_RENDER_LVGL_LOGO_L8 uint8_t +img_render_lvgl_logo_l8_map[] = { + /*Pixel format: Grayscale 8 bit*/ + 0xfd,0xfd,0xdf,0xcb,0xcb,0xcb,0xcb,0xcb,0xcb,0xcb,0xcb,0xcb,0xcb,0xcb,0xcb,0xcb,0xcb,0xcb,0xcb,0xcb,0xcb,0xcb,0xcb,0xcb,0xcb,0xcb,0xcb,0xed,0xfd,0xfd, + 0xfd,0xa8,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x22,0xcf,0xfd, + 0xdf,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x46,0xfc, + 0xcb,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x3f,0xbf,0xb1,0x1d,0x1d,0x1d,0xe7, + 0xcb,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0xb9,0xfd,0xfd,0x8d,0x1d,0x1d,0xe6, + 0xcb,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x97,0xfd,0xfa,0x67,0x1d,0x1d,0xe6, + 0xcb,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x72,0x64,0x1d,0x1d,0x1d,0xe6, + 0xcb,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0xe6, + 0xe0,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0xe6, + 0xfd,0xf1,0xe6,0xe6,0xe6,0xe6,0xe6,0xe6,0xe6,0xe1,0x7c,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0xe6, + 0xfa,0xd2,0xd2,0xd2,0xd2,0xd2,0xd2,0xd2,0xdb,0xfd,0xc7,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0xe6, + 0xd2,0x6a,0x6a,0x6a,0x6a,0x6a,0x6a,0x6a,0x6a,0xed,0xcb,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0xe6, + 0xd2,0x6a,0x6a,0x6a,0x6a,0x6a,0x6a,0x6a,0x6a,0xe9,0xcb,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0xe6, + 0xd2,0x6a,0x6a,0x6a,0x6a,0x6a,0x6a,0x6a,0x6a,0xe9,0xcb,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0xe6, + 0xd2,0x6a,0x6a,0x6a,0x6a,0x6a,0x6a,0x6a,0x6a,0xe9,0xcb,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0xe6, + 0xd2,0x6a,0x6a,0x6a,0x6a,0x6a,0x6a,0x6a,0x6a,0xe9,0xcb,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0xe6, + 0xd2,0x6a,0x6a,0x6a,0x6a,0x6a,0x6a,0x6a,0x6a,0xe9,0xcb,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0xe6, + 0xd2,0x6a,0x6a,0x6a,0x6a,0x6a,0x6a,0x6a,0x6a,0xe9,0xcb,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0xe6, + 0xd7,0x6a,0x6a,0x6a,0x6a,0x6a,0x6a,0x6a,0x6a,0xf2,0xdd,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0xe6, + 0xfd,0xe9,0xe9,0xe9,0xe9,0xe9,0xe9,0xe9,0xf1,0xfd,0xfd,0xf0,0xe6,0xe6,0xe6,0xe6,0xe6,0xe6,0xe6,0xde,0x78,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0xe6, + 0xfa,0xd5,0xd2,0xd2,0xd2,0xd2,0xd2,0xd2,0xdd,0xfd,0xfa,0xd5,0xd2,0xd2,0xd2,0xd2,0xd2,0xd2,0xdd,0xfd,0xc7,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0xe6, + 0xd2,0x6a,0x6a,0x6a,0x6a,0x6a,0x6a,0x6a,0x6a,0xee,0xd2,0x6a,0x6a,0x6a,0x6a,0x6a,0x6a,0x6a,0x6a,0xee,0xcb,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0xe6, + 0xd2,0x6a,0x6a,0x6a,0x6a,0x6a,0x6a,0x6a,0x6a,0xe9,0xd2,0x6a,0x6a,0x6a,0x6a,0x6a,0x6a,0x6a,0x6a,0xe9,0xcb,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0xe6, + 0xd2,0x6a,0x6a,0x6a,0x6a,0x6a,0x6a,0x6a,0x6a,0xe9,0xd2,0x6a,0x6a,0x6a,0x6a,0x6a,0x6a,0x6a,0x6a,0xe9,0xcb,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0xe6, + 0xd2,0x6a,0x6a,0x6a,0x6a,0x6a,0x6a,0x6a,0x6a,0xe9,0xd2,0x6a,0x6a,0x6a,0x6a,0x6a,0x6a,0x6a,0x6a,0xe9,0xcb,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0xe6, + 0xd2,0x6a,0x6a,0x6a,0x6a,0x6a,0x6a,0x6a,0x6a,0xe9,0xd2,0x6a,0x6a,0x6a,0x6a,0x6a,0x6a,0x6a,0x6a,0xe9,0xcb,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0xe6, + 0xd2,0x6a,0x6a,0x6a,0x6a,0x6a,0x6a,0x6a,0x6a,0xe9,0xd2,0x6a,0x6a,0x6a,0x6a,0x6a,0x6a,0x6a,0x6a,0xe9,0xcb,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0xea, + 0xd2,0x6a,0x6a,0x6a,0x6a,0x6a,0x6a,0x6a,0x6a,0xe9,0xd2,0x6a,0x6a,0x6a,0x6a,0x6a,0x6a,0x6a,0x6a,0xe9,0xcb,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x64,0xfd, + 0xd7,0x6a,0x6a,0x6a,0x6a,0x6a,0x6a,0x6a,0x6a,0xf2,0xd7,0x6a,0x6a,0x6a,0x6a,0x6a,0x6a,0x6a,0x6a,0xf2,0xdc,0x1d,0x1d,0x1d,0x1d,0x1d,0x1d,0x56,0xe1,0xfd, + 0xfd,0xe9,0xe9,0xe9,0xe9,0xe9,0xe9,0xe9,0xee,0xfd,0xfd,0xe9,0xe9,0xe9,0xe9,0xe9,0xe9,0xe9,0xee,0xfd,0xfd,0xed,0xe6,0xe6,0xe6,0xe6,0xe6,0xfa,0xfd,0xfd, + +}; + +const lv_image_dsc_t img_render_lvgl_logo_l8 = { + .header.cf = LV_COLOR_FORMAT_L8, + .header.w = 30, + .header.h = 30, + .data = img_render_lvgl_logo_l8_map, + .data_size = sizeof(img_render_lvgl_logo_l8_map), +}; + diff --git a/demos/render/assets/img_render_lvgl_logo_l8.png b/demos/render/assets/img_render_lvgl_logo_l8.png new file mode 100644 index 0000000000000000000000000000000000000000..f5db880fbfe1400fdf3eefc14dfc901d9c14c964 GIT binary patch literal 240 zcmV1y@HW#|{~Uf;eccT_P1ytYh$j($prypRD2= z!h>(f&l5l)1JQuMnnD@uA&Q_9jb1|XGTd!G?=8ezU`eDxyn>lTm}UvZxQ!CmIHOTE z<$`0A*_@DaoK3rE<_eFif8*nqpE<{9o0000dest_w; + int32_t h = dsc->dest_h; + lv_opa_t opa = dsc->opa; + const lv_opa_t * mask = dsc->mask_buf; + int32_t mask_stride = dsc->mask_stride; + int32_t dest_stride = dsc->dest_stride; + + lv_color_mix_alpha_cache_t cache; + lv_color_mix_with_alpha_cache_init(&cache); + + int32_t x; + int32_t y; + + LV_UNUSED(w); + LV_UNUSED(h); + LV_UNUSED(x); + LV_UNUSED(y); + LV_UNUSED(opa); + LV_UNUSED(mask); + LV_UNUSED(mask_stride); + LV_UNUSED(dest_stride); + + /*Simple fill*/ + if(mask == NULL && opa >= LV_OPA_MAX) { + if(LV_RESULT_INVALID == LV_DRAW_SW_COLOR_BLEND_TO_AL88(dsc)) { + lv_color16a_t color16a; + color16a.lumi = lv_color_luminance(dsc->color); + color16a.alpha = 255; + lv_color16a_t * dest_buf = dsc->dest_buf; + for(y = 0; y < h; y++) { + for(x = 0; x < w - 16; x += 16) { + dest_buf[x + 0] = color16a; + dest_buf[x + 1] = color16a; + dest_buf[x + 2] = color16a; + dest_buf[x + 3] = color16a; + + dest_buf[x + 4] = color16a; + dest_buf[x + 5] = color16a; + dest_buf[x + 6] = color16a; + dest_buf[x + 7] = color16a; + + dest_buf[x + 8] = color16a; + dest_buf[x + 9] = color16a; + dest_buf[x + 10] = color16a; + dest_buf[x + 11] = color16a; + + dest_buf[x + 12] = color16a; + dest_buf[x + 13] = color16a; + dest_buf[x + 14] = color16a; + dest_buf[x + 15] = color16a; + } + for(; x < w; x ++) { + dest_buf[x] = color16a; + } + + dest_buf = drawbuf_next_row(dest_buf, dest_stride); + } + } + } + /*Opacity only*/ + else if(mask == NULL && opa < LV_OPA_MAX) { + if(LV_RESULT_INVALID == LV_DRAW_SW_COLOR_BLEND_TO_AL88_WITH_OPA(dsc)) { + lv_color16a_t color16a; + color16a.lumi = lv_color_luminance(dsc->color); + color16a.alpha = opa; + lv_color16a_t * dest_buf = dsc->dest_buf; + for(y = 0; y < h; y++) { + for(x = 0; x < w; x++) { + lv_color_16a_16a_mix(color16a, &dest_buf[x], &cache); + } + dest_buf = drawbuf_next_row(dest_buf, dest_stride); + } + } + + } + /*Masked with full opacity*/ + else if(mask && opa >= LV_OPA_MAX) { + if(LV_RESULT_INVALID == LV_DRAW_SW_COLOR_BLEND_TO_AL88_WITH_MASK(dsc)) { + lv_color16a_t color16a; + color16a.lumi = lv_color_luminance(dsc->color); + lv_color16a_t * dest_buf = (lv_color16a_t *)dsc->dest_buf; + for(y = 0; y < h; y++) { + for(x = 0; x < w; x++) { + color16a.alpha = mask[x]; + lv_color_16a_16a_mix(color16a, &dest_buf[x], &cache); + } + dest_buf = drawbuf_next_row(dest_buf, dest_stride); + mask += mask_stride; + } + } + + } + /*Masked with opacity*/ + else { + if(LV_RESULT_INVALID == LV_DRAW_SW_COLOR_BLEND_TO_AL88_MIX_MASK_OPA(dsc)) { + lv_color16a_t color16a; + color16a.lumi = lv_color_luminance(dsc->color); + lv_color16a_t * dest_buf = (lv_color16a_t *)dsc->dest_buf; + for(y = 0; y < h; y++) { + for(x = 0; x < w; x++) { + color16a.alpha = LV_OPA_MIX2(mask[x], opa); + lv_color_16a_16a_mix(color16a, &dest_buf[x], &cache); + } + dest_buf = drawbuf_next_row(dest_buf, dest_stride); + mask += mask_stride; + } + } + } +} + +void LV_ATTRIBUTE_FAST_MEM lv_draw_sw_blend_image_to_al88(_lv_draw_sw_blend_image_dsc_t * dsc) +{ + switch(dsc->src_color_format) { + case LV_COLOR_FORMAT_RGB565: + rgb565_image_blend(dsc); + break; + case LV_COLOR_FORMAT_RGB888: + rgb888_image_blend(dsc, 3); + break; + case LV_COLOR_FORMAT_XRGB8888: + rgb888_image_blend(dsc, 4); + break; + case LV_COLOR_FORMAT_ARGB8888: + argb8888_image_blend(dsc); + break; + case LV_COLOR_FORMAT_L8: + l8_image_blend(dsc); + break; + case LV_COLOR_FORMAT_AL88: + al88_image_blend(dsc); + break; + default: + LV_LOG_WARN("Not supported source color format"); + break; + } +} + +/********************** + * STATIC FUNCTIONS + **********************/ + +static void LV_ATTRIBUTE_FAST_MEM l8_image_blend(_lv_draw_sw_blend_image_dsc_t * dsc) +{ + int32_t w = dsc->dest_w; + int32_t h = dsc->dest_h; + lv_opa_t opa = dsc->opa; + lv_color16a_t * dest_buf_al88 = dsc->dest_buf; + int32_t dest_stride = dsc->dest_stride; + const uint8_t * src_buf_l8 = dsc->src_buf; + int32_t src_stride = dsc->src_stride; + const lv_opa_t * mask_buf = dsc->mask_buf; + int32_t mask_stride = dsc->mask_stride; + + lv_color_mix_alpha_cache_t cache; + lv_color_mix_with_alpha_cache_init(&cache); + + int32_t x, y; + + if(dsc->blend_mode == LV_BLEND_MODE_NORMAL) { + if(mask_buf == NULL && opa >= LV_OPA_MAX) { + if(LV_RESULT_INVALID == LV_DRAW_SW_AL88_BLEND_NORMAL_TO_AL88(dsc)) { + for(y = 0; y < h; y++) { + for(x = 0; x < w; x++) { + dest_buf_al88[x].lumi = src_buf_l8[x]; + dest_buf_al88[x].alpha = 255; + } + dest_buf_al88 = drawbuf_next_row(dest_buf_al88, dest_stride); + src_buf_l8 = drawbuf_next_row(src_buf_l8, src_stride); + } + } + } + else if(mask_buf == NULL && opa < LV_OPA_MAX) { + if(LV_RESULT_INVALID == LV_DRAW_SW_AL88_BLEND_NORMAL_TO_AL88_WITH_OPA(dsc)) { + for(y = 0; y < h; y++) { + for(x = 0; x < w; x++) { + lv_color16a_t src_color; + src_color.lumi = src_buf_l8[x]; + src_color.alpha = opa; + lv_color_16a_16a_mix(src_color, &dest_buf_al88[x], &cache); + } + dest_buf_al88 = drawbuf_next_row(dest_buf_al88, dest_stride); + src_buf_l8 = drawbuf_next_row(src_buf_l8, src_stride); + } + } + } + else if(mask_buf && opa >= LV_OPA_MAX) { + if(LV_RESULT_INVALID == LV_DRAW_SW_AL88_BLEND_NORMAL_TO_AL88_WITH_MASK(dsc)) { + for(y = 0; y < h; y++) { + for(x = 0; x < w; x++) { + lv_color16a_t src_color; + src_color.lumi = src_buf_l8[x]; + src_color.alpha = mask_buf[x]; + lv_color_16a_16a_mix(src_color, &dest_buf_al88[x], &cache); + } + dest_buf_al88 = drawbuf_next_row(dest_buf_al88, dest_stride); + src_buf_l8 = drawbuf_next_row(src_buf_l8, src_stride); + mask_buf += mask_stride; + } + } + } + else if(mask_buf && opa < LV_OPA_MAX) { + if(LV_RESULT_INVALID == LV_DRAW_SW_AL88_BLEND_NORMAL_TO_AL88_MIX_MASK_OPA(dsc)) { + for(y = 0; y < h; y++) { + for(x = 0; x < w; x++) { + lv_color16a_t src_color; + src_color.lumi = src_buf_l8[x]; + src_color.alpha = LV_OPA_MIX2(mask_buf[x], opa); + lv_color_16a_16a_mix(src_color, &dest_buf_al88[x], &cache); + } + dest_buf_al88 = drawbuf_next_row(dest_buf_al88, dest_stride); + src_buf_l8 = drawbuf_next_row(src_buf_l8, src_stride); + mask_buf += mask_stride; + } + } + } + } + else { + for(y = 0; y < h; y++) { + for(x = 0; x < w; x++) { + lv_color16a_t src_color; + src_color.lumi = src_buf_l8[x]; + if(mask_buf == NULL) src_color.alpha = opa; + else src_color.alpha = LV_OPA_MIX2(mask_buf[x], opa); + blend_non_normal_pixel(&dest_buf_al88[x], src_color, dsc->blend_mode, &cache); + } + if(mask_buf) mask_buf += mask_stride; + dest_buf_al88 = drawbuf_next_row(dest_buf_al88, dest_stride); + src_buf_l8 = drawbuf_next_row(src_buf_l8, src_stride); + } + } +} + +static void LV_ATTRIBUTE_FAST_MEM al88_image_blend(_lv_draw_sw_blend_image_dsc_t * dsc) +{ + int32_t w = dsc->dest_w; + int32_t h = dsc->dest_h; + lv_opa_t opa = dsc->opa; + lv_color16a_t * dest_buf_al88 = dsc->dest_buf; + int32_t dest_stride = dsc->dest_stride; + const lv_color16a_t * src_buf_al88 = dsc->src_buf; + int32_t src_stride = dsc->src_stride; + const lv_opa_t * mask_buf = dsc->mask_buf; + int32_t mask_stride = dsc->mask_stride; + + lv_color_mix_alpha_cache_t cache; + lv_color_mix_with_alpha_cache_init(&cache); + + int32_t x, y; + + if(dsc->blend_mode == LV_BLEND_MODE_NORMAL) { + if(mask_buf == NULL && opa >= LV_OPA_MAX) { + if(LV_RESULT_INVALID == LV_DRAW_SW_AL88_BLEND_NORMAL_TO_AL88(dsc)) { + for(y = 0; y < h; y++) { + for(x = 0; x < w; x++) { + lv_color_16a_16a_mix(src_buf_al88[x], &dest_buf_al88[x], &cache); + } + dest_buf_al88 = drawbuf_next_row(dest_buf_al88, dest_stride); + src_buf_al88 = drawbuf_next_row(src_buf_al88, src_stride); + } + } + } + else if(mask_buf == NULL && opa < LV_OPA_MAX) { + if(LV_RESULT_INVALID == LV_DRAW_SW_AL88_BLEND_NORMAL_TO_AL88_WITH_OPA(dsc)) { + for(y = 0; y < h; y++) { + for(x = 0; x < w; x++) { + lv_color16a_t src_color = src_buf_al88[x]; + src_color.alpha = LV_OPA_MIX2(src_color.alpha, opa); + lv_color_16a_16a_mix(src_color, &dest_buf_al88[x], &cache); + } + dest_buf_al88 = drawbuf_next_row(dest_buf_al88, dest_stride); + src_buf_al88 = drawbuf_next_row(src_buf_al88, src_stride); + } + } + } + else if(mask_buf && opa >= LV_OPA_MAX) { + if(LV_RESULT_INVALID == LV_DRAW_SW_AL88_BLEND_NORMAL_TO_AL88_WITH_MASK(dsc)) { + for(y = 0; y < h; y++) { + for(x = 0; x < w; x++) { + lv_color16a_t src_color = src_buf_al88[x]; + src_color.alpha = LV_OPA_MIX2(src_color.alpha, mask_buf[x]); + lv_color_16a_16a_mix(src_color, &dest_buf_al88[x], &cache); + } + dest_buf_al88 = drawbuf_next_row(dest_buf_al88, dest_stride); + src_buf_al88 = drawbuf_next_row(src_buf_al88, src_stride); + mask_buf += mask_stride; + } + } + } + else if(mask_buf && opa < LV_OPA_MAX) { + if(LV_RESULT_INVALID == LV_DRAW_SW_AL88_BLEND_NORMAL_TO_AL88_MIX_MASK_OPA(dsc)) { + for(y = 0; y < h; y++) { + for(x = 0; x < w; x++) { + lv_color16a_t src_color = src_buf_al88[x]; + src_color.alpha = LV_OPA_MIX3(src_color.alpha, mask_buf[x], opa); + lv_color_16a_16a_mix(src_color, &dest_buf_al88[x], &cache); + } + dest_buf_al88 = drawbuf_next_row(dest_buf_al88, dest_stride); + src_buf_al88 = drawbuf_next_row(src_buf_al88, src_stride); + mask_buf += mask_stride; + } + } + } + } + else { + for(y = 0; y < h; y++) { + for(x = 0; x < w; x++) { + lv_color16a_t src_color = src_buf_al88[x]; + if(mask_buf == NULL) src_color.alpha = LV_OPA_MIX2(src_color.alpha, opa); + else src_color.alpha = LV_OPA_MIX3(src_color.alpha, mask_buf[x], opa); + blend_non_normal_pixel(&dest_buf_al88[x], src_color, dsc->blend_mode, &cache); + } + if(mask_buf) mask_buf += mask_stride; + dest_buf_al88 = drawbuf_next_row(dest_buf_al88, dest_stride); + src_buf_al88 = drawbuf_next_row(src_buf_al88, src_stride); + } + } +} + +static void LV_ATTRIBUTE_FAST_MEM rgb565_image_blend(_lv_draw_sw_blend_image_dsc_t * dsc) +{ + int32_t w = dsc->dest_w; + int32_t h = dsc->dest_h; + lv_opa_t opa = dsc->opa; + lv_color16a_t * dest_buf_al88 = dsc->dest_buf; + int32_t dest_stride = dsc->dest_stride; + const lv_color16_t * src_buf_c16 = (const lv_color16_t *)dsc->src_buf; + int32_t src_stride = dsc->src_stride; + const lv_opa_t * mask_buf = dsc->mask_buf; + int32_t mask_stride = dsc->mask_stride; + + lv_color_mix_alpha_cache_t cache; + lv_color_mix_with_alpha_cache_init(&cache); + + int32_t x, y; + + if(dsc->blend_mode == LV_BLEND_MODE_NORMAL) { + if(mask_buf == NULL && opa >= LV_OPA_MAX) { + if(LV_RESULT_INVALID == LV_DRAW_SW_RGB565_BLEND_NORMAL_TO_AL88(dsc)) { + for(y = 0; y < h; y++) { + for(x = 0; x < w; x++) { + dest_buf_al88[x].lumi = lv_color16_luminance(src_buf_c16[x]); + dest_buf_al88[x].alpha = 255; + } + dest_buf_al88 = drawbuf_next_row(dest_buf_al88, dest_stride); + src_buf_c16 = drawbuf_next_row(src_buf_c16, src_stride); + } + } + } + else if(mask_buf == NULL && opa < LV_OPA_MAX) { + if(LV_RESULT_INVALID == LV_DRAW_SW_RGB565_BLEND_NORMAL_TO_AL88_WITH_OPA(dsc, dest_px_size)) { + for(y = 0; y < h; y++) { + for(x = 0; x < w; x++) { + lv_color16a_t src_color; + src_color.lumi = lv_color16_luminance(src_buf_c16[x]); + src_color.alpha = opa; + lv_color_16a_16a_mix(src_color, &dest_buf_al88[x], &cache); + } + dest_buf_al88 = drawbuf_next_row(dest_buf_al88, dest_stride); + src_buf_c16 = drawbuf_next_row(src_buf_c16, src_stride); + } + } + } + else if(mask_buf && opa >= LV_OPA_MAX) { + if(LV_RESULT_INVALID == LV_DRAW_SW_RGB565_BLEND_NORMAL_TO_AL88_WITH_MASK(dsc, dest_px_size)) { + for(y = 0; y < h; y++) { + for(x = 0; x < w; x++) { + lv_color16a_t src_color; + src_color.lumi = lv_color16_luminance(src_buf_c16[x]); + src_color.alpha = mask_buf[x]; + lv_color_16a_16a_mix(src_color, &dest_buf_al88[x], &cache); + } + dest_buf_al88 = drawbuf_next_row(dest_buf_al88, dest_stride); + src_buf_c16 = drawbuf_next_row(src_buf_c16, src_stride); + mask_buf += mask_stride; + } + } + } + else { + if(LV_RESULT_INVALID == LV_DRAW_SW_RGB565_BLEND_NORMAL_TO_AL88_MIX_MASK_OPA(dsc, dest_px_size)) { + for(y = 0; y < h; y++) { + for(x = 0; x < w; x++) { + lv_color16a_t src_color; + src_color.lumi = lv_color16_luminance(src_buf_c16[x]); + src_color.alpha = LV_OPA_MIX2(mask_buf[x], opa); + lv_color_16a_16a_mix(src_color, &dest_buf_al88[x], &cache); + } + dest_buf_al88 = drawbuf_next_row(dest_buf_al88, dest_stride); + src_buf_c16 = drawbuf_next_row(src_buf_c16, src_stride); + mask_buf += mask_stride; + } + } + } + } + else { + for(y = 0; y < h; y++) { + for(x = 0; x < w; x++) { + lv_color16a_t src_color; + src_color.lumi = lv_color16_luminance(src_buf_c16[x]); + if(mask_buf == NULL) src_color.alpha = opa; + else src_color.alpha = LV_OPA_MIX2(mask_buf[x], opa); + blend_non_normal_pixel(&dest_buf_al88[x], src_color, dsc->blend_mode, &cache); + } + if(mask_buf) mask_buf += mask_stride; + dest_buf_al88 = drawbuf_next_row(dest_buf_al88, dest_stride); + src_buf_c16 = drawbuf_next_row(src_buf_c16, src_stride); + } + } +} + +static void LV_ATTRIBUTE_FAST_MEM rgb888_image_blend(_lv_draw_sw_blend_image_dsc_t * dsc, + const uint8_t src_px_size) +{ + int32_t w = dsc->dest_w; + int32_t h = dsc->dest_h; + lv_opa_t opa = dsc->opa; + lv_color16a_t * dest_buf_al88 = dsc->dest_buf; + int32_t dest_stride = dsc->dest_stride; + const uint8_t * src_buf_u8 = dsc->src_buf; + int32_t src_stride = dsc->src_stride; + const lv_opa_t * mask_buf = dsc->mask_buf; + int32_t mask_stride = dsc->mask_stride; + + lv_color_mix_alpha_cache_t cache; + lv_color_mix_with_alpha_cache_init(&cache); + + int32_t dest_x; + int32_t src_x; + int32_t y; + + if(dsc->blend_mode == LV_BLEND_MODE_NORMAL) { + /*Special case*/ + if(mask_buf == NULL && opa >= LV_OPA_MAX) { + if(LV_RESULT_INVALID == LV_DRAW_SW_RGB888_BLEND_NORMAL_TO_AL88(dsc, src_px_size)) { + for(y = 0; y < h; y++) { + for(dest_x = 0, src_x = 0; dest_x < w; dest_x++, src_x += src_px_size) { + dest_buf_al88[dest_x].lumi = lv_color24_luminance(&src_buf_u8[src_x]); + dest_buf_al88[dest_x].alpha = 255; + } + dest_buf_al88 = drawbuf_next_row(dest_buf_al88, dest_stride); + src_buf_u8 += src_stride; + } + } + } + if(mask_buf == NULL && opa < LV_OPA_MAX) { + if(LV_RESULT_INVALID == LV_DRAW_SW_RGB888_BLEND_NORMAL_TO_AL88_WITH_OPA(dsc, dest_px_size, src_px_size)) { + for(y = 0; y < h; y++) { + for(dest_x = 0, src_x = 0; dest_x < w; dest_x++, src_x += src_px_size) { + lv_color16a_t src_color; + src_color.lumi = lv_color24_luminance(&src_buf_u8[src_x]); + src_color.alpha = opa; + lv_color_16a_16a_mix(src_color, &dest_buf_al88[dest_x], &cache); + } + dest_buf_al88 = drawbuf_next_row(dest_buf_al88, dest_stride); + src_buf_u8 += src_stride; + } + } + } + if(mask_buf && opa >= LV_OPA_MAX) { + if(LV_RESULT_INVALID == LV_DRAW_SW_RGB888_BLEND_NORMAL_TO_AL88_WITH_MASK(dsc, dest_px_size, src_px_size)) { + uint32_t mask_x; + for(y = 0; y < h; y++) { + for(mask_x = 0, dest_x = 0, src_x = 0; dest_x < w; mask_x++, dest_x++, src_x += src_px_size) { + lv_color16a_t src_color; + src_color.lumi = lv_color24_luminance(&src_buf_u8[src_x]); + src_color.alpha = mask_buf[mask_x]; + lv_color_16a_16a_mix(src_color, &dest_buf_al88[dest_x], &cache); + } + dest_buf_al88 = drawbuf_next_row(dest_buf_al88, dest_stride); + src_buf_u8 += src_stride; + mask_buf += mask_stride; + } + } + } + if(mask_buf && opa < LV_OPA_MAX) { + if(LV_RESULT_INVALID == LV_DRAW_SW_RGB888_BLEND_NORMAL_TO_AL88_MIX_MASK_OPA(dsc, dest_px_size, src_px_size)) { + uint32_t mask_x; + for(y = 0; y < h; y++) { + for(mask_x = 0, dest_x = 0, src_x = 0; dest_x < w; mask_x++, dest_x++, src_x += src_px_size) { + lv_color16a_t src_color; + src_color.lumi = lv_color24_luminance(&src_buf_u8[src_x]); + src_color.alpha = LV_OPA_MIX2(mask_buf[mask_x], opa); + lv_color_16a_16a_mix(src_color, &dest_buf_al88[dest_x], &cache); + } + dest_buf_al88 = drawbuf_next_row(dest_buf_al88, dest_stride); + src_buf_u8 += src_stride; + mask_buf += mask_stride; + } + } + } + } + else { + for(y = 0; y < h; y++) { + for(dest_x = 0, src_x = 0; dest_x < w; dest_x++, src_x += src_px_size) { + lv_color16a_t src_color; + src_color.lumi = lv_color24_luminance(&src_buf_u8[src_x]); + if(mask_buf == NULL) src_color.alpha = opa; + else src_color.alpha = LV_OPA_MIX2(mask_buf[dest_x], opa); + + blend_non_normal_pixel(&dest_buf_al88[dest_x], src_color, dsc->blend_mode, &cache); + } + if(mask_buf) mask_buf += mask_stride; + dest_buf_al88 = drawbuf_next_row(dest_buf_al88, dest_stride); + src_buf_u8 += src_stride; + } + } +} + +static void LV_ATTRIBUTE_FAST_MEM argb8888_image_blend(_lv_draw_sw_blend_image_dsc_t * dsc) +{ + int32_t w = dsc->dest_w; + int32_t h = dsc->dest_h; + lv_opa_t opa = dsc->opa; + lv_color16a_t * dest_buf_al88 = dsc->dest_buf; + int32_t dest_stride = dsc->dest_stride; + const lv_color32_t * src_buf_c32 = dsc->src_buf; + int32_t src_stride = dsc->src_stride; + const lv_opa_t * mask_buf = dsc->mask_buf; + int32_t mask_stride = dsc->mask_stride; + + lv_color_mix_alpha_cache_t cache; + lv_color_mix_with_alpha_cache_init(&cache); + + int32_t x; + int32_t y; + + if(dsc->blend_mode == LV_BLEND_MODE_NORMAL) { + if(mask_buf == NULL && opa >= LV_OPA_MAX) { + if(LV_RESULT_INVALID == LV_DRAW_SW_ARGB8888_BLEND_NORMAL_TO_AL88(dsc)) { + for(y = 0; y < h; y++) { + for(x = 0; x < w; x++) { + lv_color16a_t src_color; + src_color.lumi = lv_color32_luminance(src_buf_c32[x]); + src_color.alpha = src_buf_c32[x].alpha; + lv_color_16a_16a_mix(src_color, &dest_buf_al88[x], &cache); + } + dest_buf_al88 = drawbuf_next_row(dest_buf_al88, dest_stride); + src_buf_c32 = drawbuf_next_row(src_buf_c32, src_stride); + } + } + } + else if(mask_buf == NULL && opa < LV_OPA_MAX) { + if(LV_RESULT_INVALID == LV_DRAW_SW_ARGB8888_BLEND_NORMAL_TO_AL88_WITH_OPA(dsc)) { + for(y = 0; y < h; y++) { + for(x = 0; x < w; x++) { + lv_color16a_t src_color; + src_color.lumi = lv_color32_luminance(src_buf_c32[x]); + src_color.alpha = LV_OPA_MIX2(src_buf_c32[x].alpha, opa); + lv_color_16a_16a_mix(src_color, &dest_buf_al88[x], &cache); + } + dest_buf_al88 = drawbuf_next_row(dest_buf_al88, dest_stride); + src_buf_c32 = drawbuf_next_row(src_buf_c32, src_stride); + } + } + } + else if(mask_buf && opa >= LV_OPA_MAX) { + if(LV_RESULT_INVALID == LV_DRAW_SW_ARGB8888_BLEND_NORMAL_TO_AL88_WITH_MASK(dsc)) { + for(y = 0; y < h; y++) { + for(x = 0; x < w; x++) { + lv_color16a_t src_color; + src_color.lumi = lv_color32_luminance(src_buf_c32[x]); + src_color.alpha = LV_OPA_MIX2(src_buf_c32[x].alpha, mask_buf[x]); + lv_color_16a_16a_mix(src_color, &dest_buf_al88[x], &cache); + } + dest_buf_al88 = drawbuf_next_row(dest_buf_al88, dest_stride); + src_buf_c32 = drawbuf_next_row(src_buf_c32, src_stride); + mask_buf += mask_stride; + } + } + } + else if(mask_buf && opa < LV_OPA_MAX) { + if(LV_RESULT_INVALID == LV_DRAW_SW_ARGB8888_BLEND_NORMAL_TO_AL88_MIX_MASK_OPA(dsc)) { + for(y = 0; y < h; y++) { + for(x = 0; x < w; x++) { + lv_color16a_t src_color; + src_color.lumi = lv_color32_luminance(src_buf_c32[x]); + src_color.alpha = LV_OPA_MIX3(src_buf_c32[x].alpha, mask_buf[x], opa); + lv_color_16a_16a_mix(src_color, &dest_buf_al88[x], &cache); + } + dest_buf_al88 = drawbuf_next_row(dest_buf_al88, dest_stride); + src_buf_c32 = drawbuf_next_row(src_buf_c32, src_stride); + mask_buf += mask_stride; + } + } + } + } + else { + for(y = 0; y < h; y++) { + for(x = 0; x < w; x++) { + lv_color16a_t src_color; + src_color.lumi = lv_color32_luminance(src_buf_c32[x]); + src_color.alpha = src_buf_c32[x].alpha; + if(mask_buf == NULL) src_color.alpha = LV_OPA_MIX2(src_color.alpha, opa); + else src_color.alpha = LV_OPA_MIX3(src_color.alpha, mask_buf[x], opa); + blend_non_normal_pixel(&dest_buf_al88[x], src_color, dsc->blend_mode, &cache); + } + if(mask_buf) mask_buf += mask_stride; + dest_buf_al88 = drawbuf_next_row(dest_buf_al88, dest_stride); + src_buf_c32 = drawbuf_next_row(src_buf_c32, src_stride); + } + } +} + +/** + * Check if two AL88 colors are equal + * @param c1 the first color + * @param c2 the second color + * @return true: equal + */ +static inline bool lv_color16a_eq(lv_color16a_t c1, lv_color16a_t c2) +{ + return *((uint16_t *)&c1) == *((uint16_t *)&c2); +} + +static inline lv_color16a_t LV_ATTRIBUTE_FAST_MEM lv_color_mix16a(lv_color16a_t fg, lv_color16a_t bg) +{ +#if 0 + if(fg.alpha >= LV_OPA_MAX) { + fg.alpha = bg.alpha; + return fg; + } + if(fg.alpha <= LV_OPA_MIN) { + return bg; + } +#endif + bg.lumi = (uint32_t)((uint32_t)fg.lumi * fg.alpha + (uint32_t)bg.lumi * (255 - fg.alpha)) >> 8; + return bg; +} + +static inline void LV_ATTRIBUTE_FAST_MEM lv_color_16a_16a_mix(lv_color16a_t fg, lv_color16a_t * bg, + lv_color_mix_alpha_cache_t * cache) +{ + /*Pick the foreground if it's fully opaque or the Background is fully transparent*/ + if(fg.alpha >= LV_OPA_MAX || bg->alpha <= LV_OPA_MIN) { + *bg = fg; + } + /*Transparent foreground: use the Background*/ + else if(fg.alpha <= LV_OPA_MIN) { + /* no need to copy */ + } + /*Opaque background: use simple mix*/ + else if(bg->alpha == 255) { + *bg = lv_color_mix16a(fg, *bg); + } + /*Both colors have alpha. Expensive calculation needs to be applied*/ + else { + /*Save the parameters and the result. If they will be asked again don't compute again*/ + + /*Update the ratio and the result alpha value if the input alpha values change*/ + if(bg->alpha != cache->bg_saved.alpha || fg.alpha != cache->fg_saved.alpha) { + /*Info: + * https://en.wikipedia.org/wiki/Alpha_compositing#Analytical_derivation_of_the_over_operator*/ + cache->res_alpha_saved = 255 - LV_OPA_MIX2(255 - fg.alpha, 255 - bg->alpha); + LV_ASSERT(cache->res_alpha_saved != 0); + cache->ratio_saved = (uint32_t)((uint32_t)fg.alpha * 255) / cache->res_alpha_saved; + } + + if(!lv_color16a_eq(*bg, cache->bg_saved) || !lv_color16a_eq(fg, cache->fg_saved)) { + cache->fg_saved = fg; + cache->bg_saved = *bg; + fg.alpha = cache->ratio_saved; + cache->res_saved = lv_color_mix16a(fg, *bg); + cache->res_saved.alpha = cache->res_alpha_saved; + } + + *bg = cache->res_saved; + } +} + +void lv_color_mix_with_alpha_cache_init(lv_color_mix_alpha_cache_t * cache) +{ + lv_memzero(&cache->fg_saved, sizeof(lv_color16a_t)); + lv_memzero(&cache->bg_saved, sizeof(lv_color16a_t)); + lv_memzero(&cache->res_saved, sizeof(lv_color16a_t)); + cache->res_alpha_saved = 255; + cache->ratio_saved = 255; +} + +static inline void LV_ATTRIBUTE_FAST_MEM blend_non_normal_pixel(lv_color16a_t * dest, lv_color16a_t src, + lv_blend_mode_t mode, lv_color_mix_alpha_cache_t * cache) +{ + lv_color16a_t res; + switch(mode) { + case LV_BLEND_MODE_ADDITIVE: + res.lumi = LV_MIN(dest->lumi + src.lumi, 255); + break; + case LV_BLEND_MODE_SUBTRACTIVE: + res.lumi = LV_MAX(dest->lumi - src.lumi, 0); + break; + case LV_BLEND_MODE_MULTIPLY: + res.lumi = (dest->lumi * src.lumi) >> 8; + break; + default: + LV_LOG_WARN("Not supported blend mode: %d", mode); + return; + } + res.alpha = src.alpha; + lv_color_16a_16a_mix(res, dest, cache); +} + +static inline void * LV_ATTRIBUTE_FAST_MEM drawbuf_next_row(const void * buf, uint32_t stride) +{ + return (void *)((uint8_t *)buf + stride); +} + +#endif diff --git a/src/draw/sw/blend/lv_draw_sw_blend_to_al88.h b/src/draw/sw/blend/lv_draw_sw_blend_to_al88.h new file mode 100644 index 000000000..85720ab8b --- /dev/null +++ b/src/draw/sw/blend/lv_draw_sw_blend_to_al88.h @@ -0,0 +1,45 @@ +/** + * @file lv_draw_sw_blend_al88.h + * + */ + +#ifndef LV_DRAW_SW_BLEND_AL88_H +#define LV_DRAW_SW_BLEND_AL88_H + +#ifdef __cplusplus +extern "C" { +#endif + +/********************* + * INCLUDES + *********************/ +#include "../lv_draw_sw.h" +#if LV_USE_DRAW_SW + +/********************* + * DEFINES + *********************/ + +/********************** + * TYPEDEFS + **********************/ + +/********************** + * GLOBAL PROTOTYPES + **********************/ + +void /* LV_ATTRIBUTE_FAST_MEM */ lv_draw_sw_blend_color_to_al88(_lv_draw_sw_blend_fill_dsc_t * dsc); + +void /* LV_ATTRIBUTE_FAST_MEM */ lv_draw_sw_blend_image_to_al88(_lv_draw_sw_blend_image_dsc_t * dsc); + +/********************** + * MACROS + **********************/ + +#endif /*LV_USE_DRAW_SW*/ + +#ifdef __cplusplus +} /*extern "C"*/ +#endif + +#endif /*LV_DRAW_SW_BLEND_AL88_H*/ diff --git a/src/draw/sw/blend/lv_draw_sw_blend_to_argb8888.c b/src/draw/sw/blend/lv_draw_sw_blend_to_argb8888.c index c78c10cfd..6a0306657 100644 --- a/src/draw/sw/blend/lv_draw_sw_blend_to_argb8888.c +++ b/src/draw/sw/blend/lv_draw_sw_blend_to_argb8888.c @@ -1,4 +1,4 @@ -/** +/** * @file lv_draw_sw_blend.c * */ @@ -44,6 +44,10 @@ typedef struct { * STATIC PROTOTYPES **********************/ +static void /* LV_ATTRIBUTE_FAST_MEM */ al88_image_blend(_lv_draw_sw_blend_image_dsc_t * dsc); + +static void /* LV_ATTRIBUTE_FAST_MEM */ l8_image_blend(_lv_draw_sw_blend_image_dsc_t * dsc); + static void /* LV_ATTRIBUTE_FAST_MEM */ rgb565_image_blend(_lv_draw_sw_blend_image_dsc_t * dsc); static void /* LV_ATTRIBUTE_FAST_MEM */ rgb888_image_blend(_lv_draw_sw_blend_image_dsc_t * dsc, @@ -51,6 +55,8 @@ static void /* LV_ATTRIBUTE_FAST_MEM */ rgb888_image_blend(_lv_draw_sw_blend_ima static void /* LV_ATTRIBUTE_FAST_MEM */ argb8888_image_blend(_lv_draw_sw_blend_image_dsc_t * dsc); +static inline void /* LV_ATTRIBUTE_FAST_MEM */ lv_color_8_32_mix(const uint8_t src, lv_color32_t * dest, uint8_t mix); + static inline lv_color32_t /* LV_ATTRIBUTE_FAST_MEM */ lv_color_32_32_mix(lv_color32_t fg, lv_color32_t bg, lv_color_mix_alpha_cache_t * cache); @@ -84,6 +90,38 @@ static inline void * /* LV_ATTRIBUTE_FAST_MEM */ drawbuf_next_row(const void * b #define LV_DRAW_SW_COLOR_BLEND_TO_ARGB8888_MIX_MASK_OPA(...) LV_RESULT_INVALID #endif +#ifndef LV_DRAW_SW_L8_BLEND_NORMAL_TO_ARGB8888 + #define LV_DRAW_SW_L8_BLEND_NORMAL_TO_ARGB8888(...) LV_RESULT_INVALID +#endif + +#ifndef LV_DRAW_SW_L8_BLEND_NORMAL_TO_ARGB8888_WITH_OPA + #define LV_DRAW_SW_L8_BLEND_NORMAL_TO_ARGB8888_WITH_OPA(...) LV_RESULT_INVALID +#endif + +#ifndef LV_DRAW_SW_L8_BLEND_NORMAL_TO_ARGB8888_WITH_MASK + #define LV_DRAW_SW_L8_BLEND_NORMAL_TO_ARGB8888_WITH_MASK(...) LV_RESULT_INVALID +#endif + +#ifndef LV_DRAW_SW_L8_BLEND_NORMAL_TO_ARGB8888_MIX_MASK_OPA + #define LV_DRAW_SW_L8_BLEND_NORMAL_TO_ARGB8888_MIX_MASK_OPA(...) LV_RESULT_INVALID +#endif + +#ifndef LV_DRAW_SW_AL88_BLEND_NORMAL_TO_ARGB8888 + #define LV_DRAW_SW_AL88_BLEND_NORMAL_TO_ARGB8888(...) LV_RESULT_INVALID +#endif + +#ifndef LV_DRAW_SW_AL88_BLEND_NORMAL_TO_ARGB8888_WITH_OPA + #define LV_DRAW_SW_AL88_BLEND_NORMAL_TO_ARGB8888_WITH_OPA(...) LV_RESULT_INVALID +#endif + +#ifndef LV_DRAW_SW_AL88_BLEND_NORMAL_TO_ARGB8888_WITH_MASK + #define LV_DRAW_SW_AL88_BLEND_NORMAL_TO_ARGB8888_WITH_MASK(...) LV_RESULT_INVALID +#endif + +#ifndef LV_DRAW_SW_AL88_BLEND_NORMAL_TO_ARGB8888_MIX_MASK_OPA + #define LV_DRAW_SW_AL88_BLEND_NORMAL_TO_ARGB8888_MIX_MASK_OPA(...) LV_RESULT_INVALID +#endif + #ifndef LV_DRAW_SW_RGB565_BLEND_NORMAL_TO_ARGB8888 #define LV_DRAW_SW_RGB565_BLEND_NORMAL_TO_ARGB8888(...) LV_RESULT_INVALID #endif @@ -260,6 +298,12 @@ void LV_ATTRIBUTE_FAST_MEM lv_draw_sw_blend_image_to_argb8888(_lv_draw_sw_blend_ case LV_COLOR_FORMAT_ARGB8888: argb8888_image_blend(dsc); break; + case LV_COLOR_FORMAT_L8: + l8_image_blend(dsc); + break; + case LV_COLOR_FORMAT_AL88: + al88_image_blend(dsc); + break; default: LV_LOG_WARN("Not supported source color format"); break; @@ -270,6 +314,185 @@ void LV_ATTRIBUTE_FAST_MEM lv_draw_sw_blend_image_to_argb8888(_lv_draw_sw_blend_ * STATIC FUNCTIONS **********************/ +static void LV_ATTRIBUTE_FAST_MEM al88_image_blend(_lv_draw_sw_blend_image_dsc_t * dsc) +{ + int32_t w = dsc->dest_w; + int32_t h = dsc->dest_h; + lv_opa_t opa = dsc->opa; + lv_color32_t * dest_buf_c32 = dsc->dest_buf; + int32_t dest_stride = dsc->dest_stride; + const lv_color16a_t * src_buf_al88 = dsc->src_buf; + int32_t src_stride = dsc->src_stride; + const lv_opa_t * mask_buf = dsc->mask_buf; + int32_t mask_stride = dsc->mask_stride; + + int32_t dest_x; + int32_t src_x; + int32_t y; + + if(dsc->blend_mode == LV_BLEND_MODE_NORMAL) { + if(mask_buf == NULL && opa >= LV_OPA_MAX) { + if(LV_RESULT_INVALID == LV_DRAW_SW_AL88_BLEND_NORMAL_TO_ARGB8888(dsc)) { + for(y = 0; y < h; y++) { + for(dest_x = 0, src_x = 0; src_x < w; dest_x++, src_x++) { + /* + dest_buf_c32[dest_x].alpha = src_buf_al88[src_x].alpha; + dest_buf_c32[dest_x].red = src_buf_al88[src_x].lumi; + dest_buf_c32[dest_x].green = src_buf_al88[src_x].lumi; + dest_buf_c32[dest_x].blue = src_buf_al88[src_x].lumi; + */ + lv_color_8_32_mix(src_buf_al88[src_x].lumi, &dest_buf_c32[dest_x], src_buf_al88[src_x].alpha); + } + dest_buf_c32 = drawbuf_next_row(dest_buf_c32, dest_stride); + src_buf_al88 = drawbuf_next_row(src_buf_al88, src_stride); + } + } + } + else if(mask_buf == NULL && opa < LV_OPA_MAX) { + if(LV_RESULT_INVALID == LV_DRAW_SW_AL88_BLEND_NORMAL_TO_ARGB8888_WITH_OPA(dsc)) { + for(y = 0; y < h; y++) { + for(dest_x = 0, src_x = 0; src_x < w; dest_x++, src_x++) { + lv_color_8_32_mix(src_buf_al88[src_x].lumi, &dest_buf_c32[dest_x], LV_OPA_MIX2(src_buf_al88[src_x].alpha, opa)); + } + dest_buf_c32 = drawbuf_next_row(dest_buf_c32, dest_stride); + src_buf_al88 = drawbuf_next_row(src_buf_al88, src_stride); + } + } + } + else if(mask_buf && opa >= LV_OPA_MAX) { + if(LV_RESULT_INVALID == LV_DRAW_SW_AL88_BLEND_NORMAL_TO_ARGB8888_WITH_MASK(dsc)) { + for(y = 0; y < h; y++) { + for(dest_x = 0, src_x = 0; src_x < w; dest_x++, src_x++) { + lv_color_8_32_mix(src_buf_al88[src_x].lumi, &dest_buf_c32[dest_x], LV_OPA_MIX2(src_buf_al88[src_x].alpha, + mask_buf[src_x])); + } + dest_buf_c32 = drawbuf_next_row(dest_buf_c32, dest_stride); + src_buf_al88 = drawbuf_next_row(src_buf_al88, src_stride); + mask_buf += mask_stride; + } + } + } + else if(mask_buf && opa < LV_OPA_MAX) { + if(LV_RESULT_INVALID == LV_DRAW_SW_AL88_BLEND_NORMAL_TO_ARGB8888_MIX_MASK_OPA(dsc)) { + for(y = 0; y < h; y++) { + for(dest_x = 0, src_x = 0; src_x < w; dest_x++, src_x++) { + lv_color_8_32_mix(src_buf_al88[src_x].lumi, &dest_buf_c32[dest_x], LV_OPA_MIX3(src_buf_al88[src_x].alpha, + mask_buf[src_x], opa)); + } + dest_buf_c32 = drawbuf_next_row(dest_buf_c32, dest_stride); + src_buf_al88 = drawbuf_next_row(src_buf_al88, src_stride); + mask_buf += mask_stride; + } + } + } + } + else { + lv_color32_t src_argb; + lv_color_mix_alpha_cache_t cache; + lv_color_mix_with_alpha_cache_init(&cache); + for(y = 0; y < h; y++) { + for(dest_x = 0, src_x = 0; src_x < w; dest_x++, src_x++) { + src_argb.red = src_buf_al88[src_x].lumi; + src_argb.green = src_buf_al88[src_x].lumi; + src_argb.blue = src_buf_al88[src_x].lumi; + if(mask_buf == NULL) src_argb.alpha = LV_OPA_MIX2(src_buf_al88[src_x].alpha, opa); + else src_argb.alpha = LV_OPA_MIX3(src_buf_al88[src_x].alpha, mask_buf[dest_x], opa); + blend_non_normal_pixel(&dest_buf_c32[dest_x], src_argb, dsc->blend_mode, &cache); + } + if(mask_buf) mask_buf += mask_stride; + dest_buf_c32 = drawbuf_next_row(dest_buf_c32, dest_stride); + src_buf_al88 = drawbuf_next_row(src_buf_al88, src_stride); + } + } +} + +static void LV_ATTRIBUTE_FAST_MEM l8_image_blend(_lv_draw_sw_blend_image_dsc_t * dsc) +{ + int32_t w = dsc->dest_w; + int32_t h = dsc->dest_h; + lv_opa_t opa = dsc->opa; + lv_color32_t * dest_buf_c32 = dsc->dest_buf; + int32_t dest_stride = dsc->dest_stride; + const uint8_t * src_buf_l8 = dsc->src_buf; + int32_t src_stride = dsc->src_stride; + const lv_opa_t * mask_buf = dsc->mask_buf; + int32_t mask_stride = dsc->mask_stride; + + int32_t dest_x; + int32_t src_x; + int32_t y; + + if(dsc->blend_mode == LV_BLEND_MODE_NORMAL) { + if(mask_buf == NULL && opa >= LV_OPA_MAX) { + if(LV_RESULT_INVALID == LV_DRAW_SW_L8_BLEND_NORMAL_TO_ARGB8888(dsc)) { + for(y = 0; y < h; y++) { + for(dest_x = 0, src_x = 0; src_x < w; dest_x++, src_x++) { + dest_buf_c32[dest_x].alpha = src_buf_l8[src_x]; + dest_buf_c32[dest_x].red = src_buf_l8[src_x]; + dest_buf_c32[dest_x].green = src_buf_l8[src_x]; + dest_buf_c32[dest_x].blue = src_buf_l8[src_x]; + } + dest_buf_c32 = drawbuf_next_row(dest_buf_c32, dest_stride); + src_buf_l8 = drawbuf_next_row(src_buf_l8, src_stride); + } + } + } + else if(mask_buf == NULL && opa < LV_OPA_MAX) { + if(LV_RESULT_INVALID == LV_DRAW_SW_L8_BLEND_NORMAL_TO_ARGB8888_WITH_OPA(dsc)) { + for(y = 0; y < h; y++) { + for(dest_x = 0, src_x = 0; src_x < w; dest_x++, src_x++) { + lv_color_8_32_mix(src_buf_l8[src_x], &dest_buf_c32[dest_x], opa); + } + dest_buf_c32 = drawbuf_next_row(dest_buf_c32, dest_stride); + src_buf_l8 = drawbuf_next_row(src_buf_l8, src_stride); + } + } + } + else if(mask_buf && opa >= LV_OPA_MAX) { + if(LV_RESULT_INVALID == LV_DRAW_SW_L8_BLEND_NORMAL_TO_ARGB8888_WITH_MASK(dsc)) { + for(y = 0; y < h; y++) { + for(dest_x = 0, src_x = 0; src_x < w; dest_x++, src_x++) { + lv_color_8_32_mix(src_buf_l8[src_x], &dest_buf_c32[dest_x], mask_buf[src_x]); + } + dest_buf_c32 = drawbuf_next_row(dest_buf_c32, dest_stride); + src_buf_l8 = drawbuf_next_row(src_buf_l8, src_stride); + mask_buf += mask_stride; + } + } + } + else if(mask_buf && opa < LV_OPA_MAX) { + if(LV_RESULT_INVALID == LV_DRAW_SW_L8_BLEND_NORMAL_TO_ARGB8888_MIX_MASK_OPA(dsc)) { + for(y = 0; y < h; y++) { + for(dest_x = 0, src_x = 0; src_x < w; dest_x++, src_x++) { + lv_color_8_32_mix(src_buf_l8[src_x], &dest_buf_c32[dest_x], LV_OPA_MIX2(mask_buf[src_x], opa)); + } + dest_buf_c32 = drawbuf_next_row(dest_buf_c32, dest_stride); + src_buf_l8 = drawbuf_next_row(src_buf_l8, src_stride); + mask_buf += mask_stride; + } + } + } + } + else { + lv_color32_t src_argb; + lv_color_mix_alpha_cache_t cache; + lv_color_mix_with_alpha_cache_init(&cache); + for(y = 0; y < h; y++) { + for(dest_x = 0, src_x = 0; src_x < w; dest_x++, src_x++) { + src_argb.red = src_buf_l8[src_x]; + src_argb.green = src_buf_l8[src_x]; + src_argb.blue = src_buf_l8[src_x]; + if(mask_buf == NULL) src_argb.alpha = opa; + else src_argb.alpha = LV_OPA_MIX2(mask_buf[dest_x], opa); + blend_non_normal_pixel(&dest_buf_c32[dest_x], src_argb, dsc->blend_mode, &cache); + } + if(mask_buf) mask_buf += mask_stride; + dest_buf_c32 = drawbuf_next_row(dest_buf_c32, dest_stride); + src_buf_l8 = drawbuf_next_row(src_buf_l8, src_stride); + } + } +} + static void LV_ATTRIBUTE_FAST_MEM rgb565_image_blend(_lv_draw_sw_blend_image_dsc_t * dsc) { int32_t w = dsc->dest_w; @@ -571,6 +794,25 @@ static void LV_ATTRIBUTE_FAST_MEM argb8888_image_blend(_lv_draw_sw_blend_image_d } } +static inline void LV_ATTRIBUTE_FAST_MEM lv_color_8_32_mix(const uint8_t src, lv_color32_t * dest, uint8_t mix) +{ + + if(mix == 0) return; + + dest->alpha = 255; + if(mix >= LV_OPA_MAX) { + dest->red = src; + dest->green = src; + dest->blue = src; + } + else { + lv_opa_t mix_inv = 255 - mix; + dest->red = (uint32_t)((uint32_t)src * mix + dest->red * mix_inv) >> 8; + dest->green = (uint32_t)((uint32_t)src * mix + dest->green * mix_inv) >> 8; + dest->blue = (uint32_t)((uint32_t)src * mix + dest->blue * mix_inv) >> 8; + } +} + static inline lv_color32_t LV_ATTRIBUTE_FAST_MEM lv_color_32_32_mix(lv_color32_t fg, lv_color32_t bg, lv_color_mix_alpha_cache_t * cache) { @@ -595,7 +837,7 @@ static inline lv_color32_t LV_ATTRIBUTE_FAST_MEM lv_color_32_32_mix(lv_color32_t /*Info: * https://en.wikipedia.org/wiki/Alpha_compositing#Analytical_derivation_of_the_over_operator*/ cache->res_alpha_saved = 255 - LV_OPA_MIX2(255 - fg.alpha, 255 - bg.alpha); - LV_ASSERT(cache->ratio_saved != 0); + LV_ASSERT(cache->res_alpha_saved != 0); cache->ratio_saved = (uint32_t)((uint32_t)fg.alpha * 255) / cache->res_alpha_saved; } diff --git a/src/draw/sw/blend/lv_draw_sw_blend_to_l8.c b/src/draw/sw/blend/lv_draw_sw_blend_to_l8.c new file mode 100644 index 000000000..2886fbf54 --- /dev/null +++ b/src/draw/sw/blend/lv_draw_sw_blend_to_l8.c @@ -0,0 +1,734 @@ +/** + * @file lv_draw_sw_blend_l8.c + * + */ + +/********************* + * INCLUDES + *********************/ +#include "lv_draw_sw_blend_to_l8.h" +#if LV_USE_DRAW_SW + +#include "lv_draw_sw_blend.h" +#include "../../../misc/lv_math.h" +#include "../../../display/lv_display.h" +#include "../../../core/lv_refr.h" +#include "../../../misc/lv_color.h" +#include "../../../stdlib/lv_string.h" + +#if LV_USE_DRAW_SW_ASM == LV_DRAW_SW_ASM_NEON + #include "neon/lv_blend_neon.h" +#elif LV_USE_DRAW_SW_ASM == LV_DRAW_SW_ASM_HELIUM + #include "helium/lv_blend_helium.h" +#elif LV_USE_DRAW_SW_ASM == LV_DRAW_SW_ASM_CUSTOM + #include LV_DRAW_SW_ASM_CUSTOM_INCLUDE +#endif + +/********************* + * DEFINES + *********************/ + +/********************** + * TYPEDEFS + **********************/ + +/********************** + * STATIC PROTOTYPES + **********************/ + +static void /* LV_ATTRIBUTE_FAST_MEM */ l8_image_blend(_lv_draw_sw_blend_image_dsc_t * dsc); + +static void /* LV_ATTRIBUTE_FAST_MEM */ al88_image_blend(_lv_draw_sw_blend_image_dsc_t * dsc); + +static void /* LV_ATTRIBUTE_FAST_MEM */ rgb565_image_blend(_lv_draw_sw_blend_image_dsc_t * dsc); + +static void /* LV_ATTRIBUTE_FAST_MEM */ rgb888_image_blend(_lv_draw_sw_blend_image_dsc_t * dsc, + const uint8_t src_px_size); + +static void /* LV_ATTRIBUTE_FAST_MEM */ argb8888_image_blend(_lv_draw_sw_blend_image_dsc_t * dsc); + +static inline void /* LV_ATTRIBUTE_FAST_MEM */ lv_color_8_8_mix(const uint8_t src, uint8_t * dest, uint8_t mix); + +static inline void /* LV_ATTRIBUTE_FAST_MEM */ blend_non_normal_pixel(uint8_t * dest, lv_color32_t src, + lv_blend_mode_t mode); + +static inline void * /* LV_ATTRIBUTE_FAST_MEM */ drawbuf_next_row(const void * buf, uint32_t stride); + +/********************** + * STATIC VARIABLES + **********************/ + +/********************** + * MACROS + **********************/ + +#ifndef LV_DRAW_SW_COLOR_BLEND_TO_L8 + #define LV_DRAW_SW_COLOR_BLEND_TO_L8(...) LV_RESULT_INVALID +#endif + +#ifndef LV_DRAW_SW_COLOR_BLEND_TO_L8_WITH_OPA + #define LV_DRAW_SW_COLOR_BLEND_TO_L8_WITH_OPA(...) LV_RESULT_INVALID +#endif + +#ifndef LV_DRAW_SW_COLOR_BLEND_TO_L8_WITH_MASK + #define LV_DRAW_SW_COLOR_BLEND_TO_L8_WITH_MASK(...) LV_RESULT_INVALID +#endif + +#ifndef LV_DRAW_SW_COLOR_BLEND_TO_L8_MIX_MASK_OPA + #define LV_DRAW_SW_COLOR_BLEND_TO_L8_MIX_MASK_OPA(...) LV_RESULT_INVALID +#endif + +#ifndef LV_DRAW_SW_RGB565_BLEND_NORMAL_TO_L8 + #define LV_DRAW_SW_RGB565_BLEND_NORMAL_TO_L8(...) LV_RESULT_INVALID +#endif + +#ifndef LV_DRAW_SW_RGB565_BLEND_NORMAL_TO_L8_WITH_OPA + #define LV_DRAW_SW_RGB565_BLEND_NORMAL_TO_L8_WITH_OPA(...) LV_RESULT_INVALID +#endif + +#ifndef LV_DRAW_SW_RGB565_BLEND_NORMAL_TO_L8_WITH_MASK + #define LV_DRAW_SW_RGB565_BLEND_NORMAL_TO_L8_WITH_MASK(...) LV_RESULT_INVALID +#endif + +#ifndef LV_DRAW_SW_RGB565_BLEND_NORMAL_TO_L8_MIX_MASK_OPA + #define LV_DRAW_SW_RGB565_BLEND_NORMAL_TO_L8_MIX_MASK_OPA(...) LV_RESULT_INVALID +#endif + +#ifndef LV_DRAW_SW_RGB888_BLEND_NORMAL_TO_L8 + #define LV_DRAW_SW_RGB888_BLEND_NORMAL_TO_L8(...) LV_RESULT_INVALID +#endif + +#ifndef LV_DRAW_SW_RGB888_BLEND_NORMAL_TO_L8_WITH_OPA + #define LV_DRAW_SW_RGB888_BLEND_NORMAL_TO_L8_WITH_OPA(...) LV_RESULT_INVALID +#endif + +#ifndef LV_DRAW_SW_RGB888_BLEND_NORMAL_TO_L8_WITH_MASK + #define LV_DRAW_SW_RGB888_BLEND_NORMAL_TO_L8_WITH_MASK(...) LV_RESULT_INVALID +#endif + +#ifndef LV_DRAW_SW_RGB888_BLEND_NORMAL_TO_L8_MIX_MASK_OPA + #define LV_DRAW_SW_RGB888_BLEND_NORMAL_TO_L8_MIX_MASK_OPA(...) LV_RESULT_INVALID +#endif + +#ifndef LV_DRAW_SW_L8_BLEND_NORMAL_TO_L8 + #define LV_DRAW_SW_L8_BLEND_NORMAL_TO_L8(...) LV_RESULT_INVALID +#endif + +#ifndef LV_DRAW_SW_L8_BLEND_NORMAL_TO_L8_WITH_OPA + #define LV_DRAW_SW_L8_BLEND_NORMAL_TO_L8_WITH_OPA(...) LV_RESULT_INVALID +#endif + +#ifndef LV_DRAW_SW_L8_BLEND_NORMAL_TO_L8_WITH_MASK + #define LV_DRAW_SW_L8_BLEND_NORMAL_TO_L8_WITH_MASK(...) LV_RESULT_INVALID +#endif + +#ifndef LV_DRAW_SW_L8_BLEND_NORMAL_TO_L8_MIX_MASK_OPA + #define LV_DRAW_SW_L8_BLEND_NORMAL_TO_L8_MIX_MASK_OPA(...) LV_RESULT_INVALID +#endif + +#ifndef LV_DRAW_SW_AL88_BLEND_NORMAL_TO_L8 + #define LV_DRAW_SW_AL88_BLEND_NORMAL_TO_L8(...) LV_RESULT_INVALID +#endif + +#ifndef LV_DRAW_SW_AL88_BLEND_NORMAL_TO_L8_WITH_OPA + #define LV_DRAW_SW_AL88_BLEND_NORMAL_TO_L8_WITH_OPA(...) LV_RESULT_INVALID +#endif + +#ifndef LV_DRAW_SW_AL88_BLEND_NORMAL_TO_L8_WITH_MASK + #define LV_DRAW_SW_AL88_BLEND_NORMAL_TO_L8_WITH_MASK(...) LV_RESULT_INVALID +#endif + +#ifndef LV_DRAW_SW_AL88_BLEND_NORMAL_TO_L8_MIX_MASK_OPA + #define LV_DRAW_SW_AL88_BLEND_NORMAL_TO_L8_MIX_MASK_OPA(...) LV_RESULT_INVALID +#endif + +/********************** + * GLOBAL FUNCTIONS + **********************/ + +void LV_ATTRIBUTE_FAST_MEM lv_draw_sw_blend_color_to_l8(_lv_draw_sw_blend_fill_dsc_t * dsc) +{ + int32_t w = dsc->dest_w; + int32_t h = dsc->dest_h; + lv_opa_t opa = dsc->opa; + const lv_opa_t * mask = dsc->mask_buf; + int32_t mask_stride = dsc->mask_stride; + int32_t dest_stride = dsc->dest_stride; + + int32_t x; + int32_t y; + + LV_UNUSED(w); + LV_UNUSED(h); + LV_UNUSED(x); + LV_UNUSED(y); + LV_UNUSED(opa); + LV_UNUSED(mask); + LV_UNUSED(mask_stride); + LV_UNUSED(dest_stride); + + /*Simple fill*/ + if(mask == NULL && opa >= LV_OPA_MAX) { + if(LV_RESULT_INVALID == LV_DRAW_SW_COLOR_BLEND_TO_L8(dsc)) { + uint8_t color8 = lv_color_luminance(dsc->color); + uint8_t * dest_buf = dsc->dest_buf; + for(y = 0; y < h; y++) { + for(x = 0; x < w - 16; x += 16) { + dest_buf[x + 0] = color8; + dest_buf[x + 1] = color8; + dest_buf[x + 2] = color8; + dest_buf[x + 3] = color8; + + dest_buf[x + 4] = color8; + dest_buf[x + 5] = color8; + dest_buf[x + 6] = color8; + dest_buf[x + 7] = color8; + + dest_buf[x + 8] = color8; + dest_buf[x + 9] = color8; + dest_buf[x + 10] = color8; + dest_buf[x + 11] = color8; + + dest_buf[x + 12] = color8; + dest_buf[x + 13] = color8; + dest_buf[x + 14] = color8; + dest_buf[x + 15] = color8; + } + for(; x < w; x ++) { + dest_buf[x] = color8; + } + + dest_buf = drawbuf_next_row(dest_buf, dest_stride); + } + } + } + /*Opacity only*/ + else if(mask == NULL && opa < LV_OPA_MAX) { + if(LV_RESULT_INVALID == LV_DRAW_SW_COLOR_BLEND_TO_L8_WITH_OPA(dsc)) { + uint8_t color8 = lv_color_luminance(dsc->color); + uint8_t * dest_buf = dsc->dest_buf; + + for(y = 0; y < h; y++) { + for(x = 0; x < w; x++) { + lv_color_8_8_mix(color8, &dest_buf[x], opa); + } + dest_buf = drawbuf_next_row(dest_buf, dest_stride); + } + } + + } + /*Masked with full opacity*/ + else if(mask && opa >= LV_OPA_MAX) { + if(LV_RESULT_INVALID == LV_DRAW_SW_COLOR_BLEND_TO_L8_WITH_MASK(dsc)) { + uint8_t color8 = lv_color_luminance(dsc->color); + uint8_t * dest_buf = dsc->dest_buf; + for(y = 0; y < h; y++) { + for(x = 0; x < w; x++) { + lv_color_8_8_mix(color8, &dest_buf[x], mask[x]); + } + dest_buf = drawbuf_next_row(dest_buf, dest_stride); + mask += mask_stride; + } + } + + } + /*Masked with opacity*/ + else { + if(LV_RESULT_INVALID == LV_DRAW_SW_COLOR_BLEND_TO_L8_MIX_MASK_OPA(dsc)) { + uint8_t color8 = lv_color_luminance(dsc->color); + uint8_t * dest_buf = dsc->dest_buf; + for(y = 0; y < h; y++) { + for(x = 0; x < w; x++) { + lv_color_8_8_mix(color8, &dest_buf[x], LV_OPA_MIX2(mask[x], opa)); + } + dest_buf = drawbuf_next_row(dest_buf, dest_stride); + mask += mask_stride; + } + } + } +} + +void LV_ATTRIBUTE_FAST_MEM lv_draw_sw_blend_image_to_l8(_lv_draw_sw_blend_image_dsc_t * dsc) +{ + switch(dsc->src_color_format) { + case LV_COLOR_FORMAT_RGB565: + rgb565_image_blend(dsc); + break; + case LV_COLOR_FORMAT_RGB888: + rgb888_image_blend(dsc, 3); + break; + case LV_COLOR_FORMAT_XRGB8888: + rgb888_image_blend(dsc, 4); + break; + case LV_COLOR_FORMAT_ARGB8888: + argb8888_image_blend(dsc); + break; + case LV_COLOR_FORMAT_L8: + l8_image_blend(dsc); + break; + case LV_COLOR_FORMAT_AL88: + al88_image_blend(dsc); + break; + default: + LV_LOG_WARN("Not supported source color format"); + break; + } +} + +/********************** + * STATIC FUNCTIONS + **********************/ + +static void LV_ATTRIBUTE_FAST_MEM l8_image_blend(_lv_draw_sw_blend_image_dsc_t * dsc) +{ + int32_t w = dsc->dest_w; + int32_t h = dsc->dest_h; + lv_opa_t opa = dsc->opa; + uint8_t * dest_buf_l8 = dsc->dest_buf; + int32_t dest_stride = dsc->dest_stride; + const uint8_t * src_buf_l8 = dsc->src_buf; + int32_t src_stride = dsc->src_stride; + const lv_opa_t * mask_buf = dsc->mask_buf; + int32_t mask_stride = dsc->mask_stride; + + int32_t dest_x; + int32_t src_x; + int32_t y; + + if(dsc->blend_mode == LV_BLEND_MODE_NORMAL) { + if(mask_buf == NULL && opa >= LV_OPA_MAX) { + if(LV_RESULT_INVALID == LV_DRAW_SW_L8_BLEND_NORMAL_TO_L8(dsc)) { + for(y = 0; y < h; y++) { + lv_memcpy(dest_buf_l8, src_buf_l8, w); + dest_buf_l8 = drawbuf_next_row(dest_buf_l8, dest_stride); + src_buf_l8 = drawbuf_next_row(src_buf_l8, src_stride); + } + } + } + else if(mask_buf == NULL && opa < LV_OPA_MAX) { + if(LV_RESULT_INVALID == LV_DRAW_SW_L8_BLEND_NORMAL_TO_L8_WITH_OPA(dsc)) { + for(y = 0; y < h; y++) { + for(dest_x = 0, src_x = 0; src_x < w; dest_x++, src_x++) { + lv_color_8_8_mix(src_buf_l8[src_x], &dest_buf_l8[dest_x], opa); + } + dest_buf_l8 = drawbuf_next_row(dest_buf_l8, dest_stride); + src_buf_l8 = drawbuf_next_row(src_buf_l8, src_stride); + } + } + } + else if(mask_buf && opa >= LV_OPA_MAX) { + if(LV_RESULT_INVALID == LV_DRAW_SW_L8_BLEND_NORMAL_TO_L8_WITH_MASK(dsc)) { + for(y = 0; y < h; y++) { + for(dest_x = 0, src_x = 0; src_x < w; dest_x++, src_x++) { + lv_color_8_8_mix(src_buf_l8[src_x], &dest_buf_l8[dest_x], mask_buf[src_x]); + } + dest_buf_l8 = drawbuf_next_row(dest_buf_l8, dest_stride); + src_buf_l8 = drawbuf_next_row(src_buf_l8, src_stride); + mask_buf += mask_stride; + } + } + } + else if(mask_buf && opa < LV_OPA_MAX) { + if(LV_RESULT_INVALID == LV_DRAW_SW_L8_BLEND_NORMAL_TO_L8_MIX_MASK_OPA(dsc)) { + for(y = 0; y < h; y++) { + for(dest_x = 0, src_x = 0; src_x < w; dest_x++, src_x++) { + lv_color_8_8_mix(src_buf_l8[src_x], &dest_buf_l8[dest_x], LV_OPA_MIX2(mask_buf[src_x], opa)); + } + dest_buf_l8 = drawbuf_next_row(dest_buf_l8, dest_stride); + src_buf_l8 = drawbuf_next_row(src_buf_l8, src_stride); + mask_buf += mask_stride; + } + } + } + } + else { + lv_color32_t src_argb; + for(y = 0; y < h; y++) { + for(dest_x = 0, src_x = 0; src_x < w; dest_x++, src_x++) { + src_argb.red = src_buf_l8[src_x]; + src_argb.green = src_buf_l8[src_x]; + src_argb.blue = src_buf_l8[src_x]; + if(mask_buf == NULL) src_argb.alpha = opa; + else src_argb.alpha = LV_OPA_MIX2(mask_buf[dest_x], opa); + blend_non_normal_pixel(&dest_buf_l8[dest_x], src_argb, dsc->blend_mode); + } + if(mask_buf) mask_buf += mask_stride; + dest_buf_l8 = drawbuf_next_row(dest_buf_l8, dest_stride); + src_buf_l8 = drawbuf_next_row(src_buf_l8, src_stride); + } + } +} + +static void LV_ATTRIBUTE_FAST_MEM al88_image_blend(_lv_draw_sw_blend_image_dsc_t * dsc) +{ + int32_t w = dsc->dest_w; + int32_t h = dsc->dest_h; + lv_opa_t opa = dsc->opa; + uint8_t * dest_buf_l8 = dsc->dest_buf; + int32_t dest_stride = dsc->dest_stride; + const lv_color16a_t * src_buf_al88 = dsc->src_buf; + int32_t src_stride = dsc->src_stride; + const lv_opa_t * mask_buf = dsc->mask_buf; + int32_t mask_stride = dsc->mask_stride; + + int32_t dest_x; + int32_t src_x; + int32_t y; + + if(dsc->blend_mode == LV_BLEND_MODE_NORMAL) { + if(mask_buf == NULL && opa >= LV_OPA_MAX) { + if(LV_RESULT_INVALID == LV_DRAW_SW_AL88_BLEND_NORMAL_TO_L8(dsc)) { + for(y = 0; y < h; y++) { + for(dest_x = 0, src_x = 0; src_x < w; dest_x++, src_x++) { + lv_color_8_8_mix(src_buf_al88[src_x].lumi, &dest_buf_l8[dest_x], src_buf_al88[src_x].alpha); + } + dest_buf_l8 = drawbuf_next_row(dest_buf_l8, dest_stride); + src_buf_al88 = drawbuf_next_row(src_buf_al88, src_stride); + } + } + } + else if(mask_buf == NULL && opa < LV_OPA_MAX) { + if(LV_RESULT_INVALID == LV_DRAW_SW_AL88_BLEND_NORMAL_TO_L8_WITH_OPA(dsc)) { + for(y = 0; y < h; y++) { + for(dest_x = 0, src_x = 0; src_x < w; dest_x++, src_x++) { + lv_color_8_8_mix(src_buf_al88[src_x].lumi, &dest_buf_l8[dest_x], LV_OPA_MIX2(src_buf_al88[src_x].alpha, opa)); + } + dest_buf_l8 = drawbuf_next_row(dest_buf_l8, dest_stride); + src_buf_al88 = drawbuf_next_row(src_buf_al88, src_stride); + } + } + } + else if(mask_buf && opa >= LV_OPA_MAX) { + if(LV_RESULT_INVALID == LV_DRAW_SW_AL88_BLEND_NORMAL_TO_L8_WITH_MASK(dsc)) { + for(y = 0; y < h; y++) { + for(dest_x = 0, src_x = 0; src_x < w; dest_x++, src_x++) { + lv_color_8_8_mix(src_buf_al88[src_x].lumi, &dest_buf_l8[dest_x], LV_OPA_MIX2(src_buf_al88[src_x].alpha, + mask_buf[src_x])); + } + dest_buf_l8 = drawbuf_next_row(dest_buf_l8, dest_stride); + src_buf_al88 = drawbuf_next_row(src_buf_al88, src_stride); + mask_buf += mask_stride; + } + } + } + else if(mask_buf && opa < LV_OPA_MAX) { + if(LV_RESULT_INVALID == LV_DRAW_SW_AL88_BLEND_NORMAL_TO_L8_MIX_MASK_OPA(dsc)) { + for(y = 0; y < h; y++) { + for(dest_x = 0, src_x = 0; src_x < w; dest_x++, src_x++) { + lv_color_8_8_mix(src_buf_al88[src_x].lumi, &dest_buf_l8[dest_x], LV_OPA_MIX3(src_buf_al88[src_x].alpha, mask_buf[src_x], + opa)); + } + dest_buf_l8 = drawbuf_next_row(dest_buf_l8, dest_stride); + src_buf_al88 = drawbuf_next_row(src_buf_al88, src_stride); + mask_buf += mask_stride; + } + } + } + } + else { + lv_color32_t src_argb; + for(y = 0; y < h; y++) { + for(dest_x = 0, src_x = 0; src_x < w; dest_x++, src_x++) { + src_argb.red = src_buf_al88[src_x].lumi; + src_argb.green = src_buf_al88[src_x].lumi; + src_argb.blue = src_buf_al88[src_x].lumi; + if(mask_buf == NULL) src_argb.alpha = opa; + else src_argb.alpha = LV_OPA_MIX2(mask_buf[dest_x], opa); + blend_non_normal_pixel(&dest_buf_l8[dest_x], src_argb, dsc->blend_mode); + } + if(mask_buf) mask_buf += mask_stride; + dest_buf_l8 = drawbuf_next_row(dest_buf_l8, dest_stride); + src_buf_al88 = drawbuf_next_row(src_buf_al88, src_stride); + } + } +} + +static void LV_ATTRIBUTE_FAST_MEM rgb565_image_blend(_lv_draw_sw_blend_image_dsc_t * dsc) +{ + int32_t w = dsc->dest_w; + int32_t h = dsc->dest_h; + lv_opa_t opa = dsc->opa; + uint8_t * dest_buf_u8 = dsc->dest_buf; + int32_t dest_stride = dsc->dest_stride; + const lv_color16_t * src_buf_c16 = (const lv_color16_t *)dsc->src_buf; + int32_t src_stride = dsc->src_stride; + const lv_opa_t * mask_buf = dsc->mask_buf; + int32_t mask_stride = dsc->mask_stride; + + int32_t src_x; + int32_t dest_x; + int32_t y; + + if(dsc->blend_mode == LV_BLEND_MODE_NORMAL) { + if(mask_buf == NULL && opa >= LV_OPA_MAX) { + if(LV_RESULT_INVALID == LV_DRAW_SW_RGB565_BLEND_NORMAL_TO_L8(dsc)) { + for(y = 0; y < h; y++) { + for(src_x = 0, dest_x = 0; src_x < w; dest_x++, src_x++) { + dest_buf_u8[dest_x] = lv_color16_luminance(src_buf_c16[src_x]); + } + dest_buf_u8 += dest_stride; + src_buf_c16 = drawbuf_next_row(src_buf_c16, src_stride); + } + } + } + else if(mask_buf == NULL && opa < LV_OPA_MAX) { + if(LV_RESULT_INVALID == LV_DRAW_SW_RGB565_BLEND_NORMAL_TO_L8_WITH_OPA(dsc, dest_px_size)) { + for(y = 0; y < h; y++) { + for(src_x = 0, dest_x = 0; src_x < w; dest_x++, src_x++) { + lv_color_8_8_mix(lv_color16_luminance(src_buf_c16[src_x]), &dest_buf_u8[dest_x], opa); + } + dest_buf_u8 += dest_stride; + src_buf_c16 = drawbuf_next_row(src_buf_c16, src_stride); + } + } + } + else if(mask_buf && opa >= LV_OPA_MAX) { + if(LV_RESULT_INVALID == LV_DRAW_SW_RGB565_BLEND_NORMAL_TO_L8_WITH_MASK(dsc, dest_px_size)) { + for(y = 0; y < h; y++) { + for(src_x = 0, dest_x = 0; src_x < w; dest_x++, src_x++) { + lv_color_8_8_mix(lv_color16_luminance(src_buf_c16[src_x]), &dest_buf_u8[dest_x], mask_buf[src_x]); + } + dest_buf_u8 += dest_stride; + src_buf_c16 = drawbuf_next_row(src_buf_c16, src_stride); + mask_buf += mask_stride; + } + } + } + else { + if(LV_RESULT_INVALID == LV_DRAW_SW_RGB565_BLEND_NORMAL_TO_L8_MIX_MASK_OPA(dsc, dest_px_size)) { + for(y = 0; y < h; y++) { + for(src_x = 0, dest_x = 0; src_x < w; dest_x++, src_x++) { + lv_color_8_8_mix(lv_color16_luminance(src_buf_c16[src_x]), &dest_buf_u8[dest_x], LV_OPA_MIX2(opa, mask_buf[src_x])); + } + dest_buf_u8 += dest_stride; + src_buf_c16 = drawbuf_next_row(src_buf_c16, src_stride); + mask_buf += mask_stride; + } + } + } + } + else { + lv_color32_t src_argb; + for(y = 0; y < h; y++) { + for(src_x = 0, dest_x = 0; src_x < w; src_x++, dest_x++) { + src_argb.red = (src_buf_c16[src_x].red * 2106) >> 8; + src_argb.green = (src_buf_c16[src_x].green * 1037) >> 8; + src_argb.blue = (src_buf_c16[src_x].blue * 2106) >> 8; + if(mask_buf == NULL) src_argb.alpha = opa; + else src_argb.alpha = LV_OPA_MIX2(mask_buf[src_x], opa); + blend_non_normal_pixel(&dest_buf_u8[dest_x], src_argb, dsc->blend_mode); + } + if(mask_buf) mask_buf += mask_stride; + dest_buf_u8 += dest_stride; + src_buf_c16 = drawbuf_next_row(src_buf_c16, src_stride); + } + } +} + +static void LV_ATTRIBUTE_FAST_MEM rgb888_image_blend(_lv_draw_sw_blend_image_dsc_t * dsc, + const uint8_t src_px_size) +{ + int32_t w = dsc->dest_w; + int32_t h = dsc->dest_h; + lv_opa_t opa = dsc->opa; + uint8_t * dest_buf_l8 = dsc->dest_buf; + int32_t dest_stride = dsc->dest_stride; + const uint8_t * src_buf_u8 = dsc->src_buf; + int32_t src_stride = dsc->src_stride; + const lv_opa_t * mask_buf = dsc->mask_buf; + int32_t mask_stride = dsc->mask_stride; + + int32_t dest_x; + int32_t src_x; + int32_t y; + + if(dsc->blend_mode == LV_BLEND_MODE_NORMAL) { + /*Special case*/ + if(mask_buf == NULL && opa >= LV_OPA_MAX) { + if(LV_RESULT_INVALID == LV_DRAW_SW_RGB888_BLEND_NORMAL_TO_L8(dsc, src_px_size)) { + for(y = 0; y < h; y++) { + for(dest_x = 0, src_x = 0; dest_x < w; dest_x++, src_x += src_px_size) { + dest_buf_l8[dest_x] = lv_color24_luminance(&src_buf_u8[src_x]); + } + dest_buf_l8 += dest_stride; + src_buf_u8 += src_stride; + } + } + } + if(mask_buf == NULL && opa < LV_OPA_MAX) { + if(LV_RESULT_INVALID == LV_DRAW_SW_RGB888_BLEND_NORMAL_TO_L8_WITH_OPA(dsc, dest_px_size, src_px_size)) { + for(y = 0; y < h; y++) { + for(dest_x = 0, src_x = 0; dest_x < w; dest_x++, src_x += src_px_size) { + lv_color_8_8_mix(lv_color24_luminance(&src_buf_u8[src_x]), &dest_buf_l8[dest_x], opa); + } + dest_buf_l8 += dest_stride; + src_buf_u8 += src_stride; + } + } + } + if(mask_buf && opa >= LV_OPA_MAX) { + if(LV_RESULT_INVALID == LV_DRAW_SW_RGB888_BLEND_NORMAL_TO_L8_WITH_MASK(dsc, dest_px_size, src_px_size)) { + uint32_t mask_x; + for(y = 0; y < h; y++) { + for(mask_x = 0, dest_x = 0, src_x = 0; dest_x < w; mask_x++, dest_x++, src_x += src_px_size) { + lv_color_8_8_mix(lv_color24_luminance(&src_buf_u8[src_x]), &dest_buf_l8[dest_x], mask_buf[mask_x]); + } + dest_buf_l8 += dest_stride; + src_buf_u8 += src_stride; + mask_buf += mask_stride; + } + } + } + if(mask_buf && opa < LV_OPA_MAX) { + if(LV_RESULT_INVALID == LV_DRAW_SW_RGB888_BLEND_NORMAL_TO_L8_MIX_MASK_OPA(dsc, dest_px_size, src_px_size)) { + uint32_t mask_x; + for(y = 0; y < h; y++) { + for(mask_x = 0, dest_x = 0, src_x = 0; dest_x < w; mask_x++, dest_x++, src_x += src_px_size) { + lv_color_8_8_mix(lv_color24_luminance(&src_buf_u8[src_x]), &dest_buf_l8[dest_x], LV_OPA_MIX2(opa, mask_buf[mask_x])); + } + dest_buf_l8 += dest_stride; + src_buf_u8 += src_stride; + mask_buf += mask_stride; + } + } + } + } + else { + lv_color32_t src_argb; + for(y = 0; y < h; y++) { + for(dest_x = 0, src_x = 0; dest_x < w; dest_x++, src_x += src_px_size) { + src_argb.red = src_buf_u8[src_x + 2]; + src_argb.green = src_buf_u8[src_x + 1]; + src_argb.blue = src_buf_u8[src_x + 0]; + if(mask_buf == NULL) src_argb.alpha = opa; + else src_argb.alpha = LV_OPA_MIX2(mask_buf[dest_x], opa); + + blend_non_normal_pixel(&dest_buf_l8[dest_x], src_argb, dsc->blend_mode); + } + if(mask_buf) mask_buf += mask_stride; + dest_buf_l8 += dest_stride; + src_buf_u8 += src_stride; + } + } +} + +static void LV_ATTRIBUTE_FAST_MEM argb8888_image_blend(_lv_draw_sw_blend_image_dsc_t * dsc) +{ + int32_t w = dsc->dest_w; + int32_t h = dsc->dest_h; + lv_opa_t opa = dsc->opa; + uint8_t * dest_buf_l8 = dsc->dest_buf; + int32_t dest_stride = dsc->dest_stride; + const lv_color32_t * src_buf_c32 = dsc->src_buf; + int32_t src_stride = dsc->src_stride; + const lv_opa_t * mask_buf = dsc->mask_buf; + int32_t mask_stride = dsc->mask_stride; + + int32_t x; + int32_t y; + + if(dsc->blend_mode == LV_BLEND_MODE_NORMAL) { + if(mask_buf == NULL && opa >= LV_OPA_MAX) { + if(LV_RESULT_INVALID == LV_DRAW_SW_L8_BLEND_NORMAL_TO_L8(dsc)) { + for(y = 0; y < h; y++) { + for(x = 0; x < w; x++) { + lv_color_8_8_mix(lv_color32_luminance(src_buf_c32[x]), &dest_buf_l8[x], src_buf_c32[x].alpha); + } + dest_buf_l8 = drawbuf_next_row(dest_buf_l8, dest_stride); + src_buf_c32 = drawbuf_next_row(src_buf_c32, src_stride); + } + } + } + else if(mask_buf == NULL && opa < LV_OPA_MAX) { + if(LV_RESULT_INVALID == LV_DRAW_SW_L8_BLEND_NORMAL_TO_L8_WITH_OPA(dsc)) { + for(y = 0; y < h; y++) { + for(x = 0; x < w; x++) { + lv_color_8_8_mix(lv_color32_luminance(src_buf_c32[x]), &dest_buf_l8[x], LV_OPA_MIX2(src_buf_c32[x].alpha, opa)); + } + dest_buf_l8 = drawbuf_next_row(dest_buf_l8, dest_stride); + src_buf_c32 = drawbuf_next_row(src_buf_c32, src_stride); + } + } + } + else if(mask_buf && opa >= LV_OPA_MAX) { + if(LV_RESULT_INVALID == LV_DRAW_SW_L8_BLEND_NORMAL_TO_L8_WITH_MASK(dsc)) { + for(y = 0; y < h; y++) { + for(x = 0; x < w; x++) { + lv_color_8_8_mix(lv_color32_luminance(src_buf_c32[x]), &dest_buf_l8[x], LV_OPA_MIX2(src_buf_c32[x].alpha, mask_buf[x])); + } + dest_buf_l8 = drawbuf_next_row(dest_buf_l8, dest_stride); + src_buf_c32 = drawbuf_next_row(src_buf_c32, src_stride); + mask_buf += mask_stride; + } + } + } + else if(mask_buf && opa < LV_OPA_MAX) { + if(LV_RESULT_INVALID == LV_DRAW_SW_L8_BLEND_NORMAL_TO_L8_MIX_MASK_OPA(dsc)) { + for(y = 0; y < h; y++) { + for(x = 0; x < w; x++) { + lv_color_8_8_mix(lv_color32_luminance(src_buf_c32[x]), &dest_buf_l8[x], LV_OPA_MIX3(src_buf_c32[x].alpha, opa, + mask_buf[x])); + } + dest_buf_l8 = drawbuf_next_row(dest_buf_l8, dest_stride); + src_buf_c32 = drawbuf_next_row(src_buf_c32, src_stride); + mask_buf += mask_stride; + } + } + } + } + else { + for(y = 0; y < h; y++) { + for(x = 0; x < w; x++) { + lv_color32_t color_argb = src_buf_c32[x]; + if(mask_buf == NULL) color_argb.alpha = LV_OPA_MIX2(color_argb.alpha, opa); + else color_argb.alpha = LV_OPA_MIX3(color_argb.alpha, mask_buf[x], opa); + blend_non_normal_pixel(&dest_buf_l8[x], color_argb, dsc->blend_mode); + } + if(mask_buf) mask_buf += mask_stride; + dest_buf_l8 = drawbuf_next_row(dest_buf_l8, dest_stride); + src_buf_c32 = drawbuf_next_row(src_buf_c32, src_stride); + } + } +} + +static inline void LV_ATTRIBUTE_FAST_MEM lv_color_8_8_mix(const uint8_t src, uint8_t * dest, uint8_t mix) +{ + + if(mix == 0) return; + + if(mix >= LV_OPA_MAX) { + *dest = src; + } + else { + lv_opa_t mix_inv = 255 - mix; + *dest = (uint32_t)((uint32_t)src * mix + dest[0] * mix_inv) >> 8; + } +} + +static inline void LV_ATTRIBUTE_FAST_MEM blend_non_normal_pixel(uint8_t * dest, lv_color32_t src, lv_blend_mode_t mode) +{ + uint8_t res; + int32_t src_lumi = lv_color32_luminance(src); + switch(mode) { + case LV_BLEND_MODE_ADDITIVE: + res = LV_MIN(*dest + src_lumi, 255); + break; + case LV_BLEND_MODE_SUBTRACTIVE: + res = LV_MAX(*dest - src_lumi, 0); + break; + case LV_BLEND_MODE_MULTIPLY: + res = (*dest * src_lumi) >> 8; + break; + default: + LV_LOG_WARN("Not supported blend mode: %d", mode); + return; + } + lv_color_8_8_mix(res, dest, src.alpha); +} + +static inline void * LV_ATTRIBUTE_FAST_MEM drawbuf_next_row(const void * buf, uint32_t stride) +{ + return (void *)((uint8_t *)buf + stride); +} + +#endif diff --git a/src/draw/sw/blend/lv_draw_sw_blend_to_l8.h b/src/draw/sw/blend/lv_draw_sw_blend_to_l8.h new file mode 100644 index 000000000..4adab9f16 --- /dev/null +++ b/src/draw/sw/blend/lv_draw_sw_blend_to_l8.h @@ -0,0 +1,45 @@ +/** + * @file lv_draw_sw_blend_l8.h + * + */ + +#ifndef LV_DRAW_SW_BLEND_L8_H +#define LV_DRAW_SW_BLEND_L8_H + +#ifdef __cplusplus +extern "C" { +#endif + +/********************* + * INCLUDES + *********************/ +#include "../lv_draw_sw.h" +#if LV_USE_DRAW_SW + +/********************* + * DEFINES + *********************/ + +/********************** + * TYPEDEFS + **********************/ + +/********************** + * GLOBAL PROTOTYPES + **********************/ + +void /* LV_ATTRIBUTE_FAST_MEM */ lv_draw_sw_blend_color_to_l8(_lv_draw_sw_blend_fill_dsc_t * dsc); + +void /* LV_ATTRIBUTE_FAST_MEM */ lv_draw_sw_blend_image_to_l8(_lv_draw_sw_blend_image_dsc_t * dsc); + +/********************** + * MACROS + **********************/ + +#endif /*LV_USE_DRAW_SW*/ + +#ifdef __cplusplus +} /*extern "C"*/ +#endif + +#endif /*LV_DRAW_SW_BLEND_L8_H*/ diff --git a/src/draw/sw/blend/lv_draw_sw_blend_to_rgb565.c b/src/draw/sw/blend/lv_draw_sw_blend_to_rgb565.c index 84c19398d..a44ba4945 100644 --- a/src/draw/sw/blend/lv_draw_sw_blend_to_rgb565.c +++ b/src/draw/sw/blend/lv_draw_sw_blend_to_rgb565.c @@ -1,4 +1,4 @@ -/** +/** * @file lv_draw_sw_blend_to_rgb565.c * */ @@ -36,6 +36,10 @@ * STATIC PROTOTYPES **********************/ +static void /* LV_ATTRIBUTE_FAST_MEM */ al88_image_blend(_lv_draw_sw_blend_image_dsc_t * dsc); + +static void /* LV_ATTRIBUTE_FAST_MEM */ l8_image_blend(_lv_draw_sw_blend_image_dsc_t * dsc); + static void /* LV_ATTRIBUTE_FAST_MEM */ rgb565_image_blend(_lv_draw_sw_blend_image_dsc_t * dsc); static void /* LV_ATTRIBUTE_FAST_MEM */ rgb888_image_blend(_lv_draw_sw_blend_image_dsc_t * dsc, @@ -43,6 +47,10 @@ static void /* LV_ATTRIBUTE_FAST_MEM */ rgb888_image_blend(_lv_draw_sw_blend_ima static void /* LV_ATTRIBUTE_FAST_MEM */ argb8888_image_blend(_lv_draw_sw_blend_image_dsc_t * dsc); +static inline uint16_t /* LV_ATTRIBUTE_FAST_MEM */ l8_to_rgb565(const uint8_t c1); + +static inline uint16_t /* LV_ATTRIBUTE_FAST_MEM */ lv_color_8_16_mix(const uint8_t c1, uint16_t c2, uint8_t mix); + static inline uint16_t /* LV_ATTRIBUTE_FAST_MEM */ lv_color_24_16_mix(const uint8_t * c1, uint16_t c2, uint8_t mix); static inline void * /* LV_ATTRIBUTE_FAST_MEM */ drawbuf_next_row(const void * buf, uint32_t stride); @@ -71,6 +79,38 @@ static inline void * /* LV_ATTRIBUTE_FAST_MEM */ drawbuf_next_row(const void * b #define LV_DRAW_SW_COLOR_BLEND_TO_RGB565_MIX_MASK_OPA(...) LV_RESULT_INVALID #endif +#ifndef LV_DRAW_SW_L8_BLEND_NORMAL_TO_RGB565 + #define LV_DRAW_SW_L8_BLEND_NORMAL_TO_RGB565(...) LV_RESULT_INVALID +#endif + +#ifndef LV_DRAW_SW_L8_BLEND_NORMAL_TO_RGB565_WITH_OPA + #define LV_DRAW_SW_L8_BLEND_NORMAL_TO_RGB565_WITH_OPA(...) LV_RESULT_INVALID +#endif + +#ifndef LV_DRAW_SW_L8_BLEND_NORMAL_TO_RGB565_WITH_MASK + #define LV_DRAW_SW_L8_BLEND_NORMAL_TO_RGB565_WITH_MASK(...) LV_RESULT_INVALID +#endif + +#ifndef LV_DRAW_SW_L8_BLEND_NORMAL_TO_RGB565_MIX_MASK_OPA + #define LV_DRAW_SW_L8_BLEND_NORMAL_TO_RGB565_MIX_MASK_OPA(...) LV_RESULT_INVALID +#endif + +#ifndef LV_DRAW_SW_AL88_BLEND_NORMAL_TO_RGB565 + #define LV_DRAW_SW_AL88_BLEND_NORMAL_TO_RGB565(...) LV_RESULT_INVALID +#endif + +#ifndef LV_DRAW_SW_AL88_BLEND_NORMAL_TO_RGB565_WITH_OPA + #define LV_DRAW_SW_AL88_BLEND_NORMAL_TO_RGB565_WITH_OPA(...) LV_RESULT_INVALID +#endif + +#ifndef LV_DRAW_SW_AL88_BLEND_NORMAL_TO_RGB565_WITH_MASK + #define LV_DRAW_SW_AL88_BLEND_NORMAL_TO_RGB565_WITH_MASK(...) LV_RESULT_INVALID +#endif + +#ifndef LV_DRAW_SW_AL88_BLEND_NORMAL_TO_RGB565_MIX_MASK_OPA + #define LV_DRAW_SW_AL88_BLEND_NORMAL_TO_RGB565_MIX_MASK_OPA(...) LV_RESULT_INVALID +#endif + #ifndef LV_DRAW_SW_RGB565_BLEND_NORMAL_TO_RGB565 #define LV_DRAW_SW_RGB565_BLEND_NORMAL_TO_RGB565(...) LV_RESULT_INVALID #endif @@ -302,6 +342,12 @@ void LV_ATTRIBUTE_FAST_MEM lv_draw_sw_blend_image_to_rgb565(_lv_draw_sw_blend_im case LV_COLOR_FORMAT_ARGB8888: argb8888_image_blend(dsc); break; + case LV_COLOR_FORMAT_L8: + l8_image_blend(dsc); + break; + case LV_COLOR_FORMAT_AL88: + al88_image_blend(dsc); + break; default: LV_LOG_WARN("Not supported source color format"); break; @@ -312,6 +358,231 @@ void LV_ATTRIBUTE_FAST_MEM lv_draw_sw_blend_image_to_rgb565(_lv_draw_sw_blend_im * STATIC FUNCTIONS **********************/ +static void LV_ATTRIBUTE_FAST_MEM al88_image_blend(_lv_draw_sw_blend_image_dsc_t * dsc) +{ + int32_t w = dsc->dest_w; + int32_t h = dsc->dest_h; + lv_opa_t opa = dsc->opa; + uint16_t * dest_buf_u16 = dsc->dest_buf; + int32_t dest_stride = dsc->dest_stride; + const lv_color16a_t * src_buf_al88 = dsc->src_buf; + int32_t src_stride = dsc->src_stride; + const lv_opa_t * mask_buf = dsc->mask_buf; + int32_t mask_stride = dsc->mask_stride; + + int32_t dest_x; + int32_t src_x; + int32_t y; + + if(dsc->blend_mode == LV_BLEND_MODE_NORMAL) { + if(mask_buf == NULL && opa >= LV_OPA_MAX) { + if(LV_RESULT_INVALID == LV_DRAW_SW_AL88_BLEND_NORMAL_TO_RGB565(dsc)) { + for(y = 0; y < h; y++) { + for(dest_x = 0, src_x = 0; dest_x < w; dest_x++, src_x++) { + dest_buf_u16[dest_x] = lv_color_8_16_mix(src_buf_al88[src_x].lumi, dest_buf_u16[dest_x], src_buf_al88[src_x].alpha); + } + dest_buf_u16 = drawbuf_next_row(dest_buf_u16, dest_stride); + src_buf_al88 = drawbuf_next_row(src_buf_al88, src_stride); + } + } + } + else if(mask_buf == NULL && opa < LV_OPA_MAX) { + if(LV_RESULT_INVALID == LV_DRAW_SW_AL88_BLEND_NORMAL_TO_RGB565_WITH_OPA(dsc)) { + for(y = 0; y < h; y++) { + for(dest_x = 0, src_x = 0; dest_x < w; dest_x++, src_x++) { + dest_buf_u16[dest_x] = lv_color_8_16_mix(src_buf_al88[src_x].lumi, dest_buf_u16[dest_x], + LV_OPA_MIX2(src_buf_al88[src_x].alpha, opa)); + } + dest_buf_u16 = drawbuf_next_row(dest_buf_u16, dest_stride); + src_buf_al88 = drawbuf_next_row(src_buf_al88, src_stride); + } + } + } + else if(mask_buf && opa >= LV_OPA_MAX) { + if(LV_RESULT_INVALID == LV_DRAW_SW_AL88_BLEND_NORMAL_TO_RGB565_WITH_MASK(dsc)) { + for(y = 0; y < h; y++) { + for(dest_x = 0, src_x = 0; dest_x < w; dest_x++, src_x++) { + dest_buf_u16[dest_x] = lv_color_8_16_mix(src_buf_al88[src_x].lumi, dest_buf_u16[dest_x], + LV_OPA_MIX2(src_buf_al88[src_x].alpha, mask_buf[dest_x])); + } + dest_buf_u16 = drawbuf_next_row(dest_buf_u16, dest_stride); + src_buf_al88 = drawbuf_next_row(src_buf_al88, src_stride); + mask_buf += mask_stride; + } + } + } + else if(mask_buf && opa < LV_OPA_MAX) { + if(LV_RESULT_INVALID == LV_DRAW_SW_AL88_BLEND_NORMAL_TO_RGB565_MIX_MASK_OPA(dsc)) { + for(y = 0; y < h; y++) { + for(dest_x = 0, src_x = 0; dest_x < w; dest_x++, src_x++) { + dest_buf_u16[dest_x] = lv_color_8_16_mix(src_buf_al88[src_x].lumi, dest_buf_u16[dest_x], + LV_OPA_MIX3(src_buf_al88[src_x].alpha, mask_buf[dest_x], opa)); + } + dest_buf_u16 = drawbuf_next_row(dest_buf_u16, dest_stride); + src_buf_al88 = drawbuf_next_row(src_buf_al88, src_stride); + mask_buf += mask_stride; + } + } + } + } + else { + uint16_t res = 0; + for(y = 0; y < h; y++) { + lv_color16_t * dest_buf_c16 = (lv_color16_t *)dest_buf_u16; + for(dest_x = 0, src_x = 0; dest_x < w; dest_x++, src_x += 4) { + uint8_t rb = src_buf_al88[src_x].lumi >> 3; + uint8_t g = src_buf_al88[src_x].lumi >> 2; + switch(dsc->blend_mode) { + case LV_BLEND_MODE_ADDITIVE: + res = (LV_MIN(dest_buf_c16[dest_x].red + rb, 31)) << 11; + res += (LV_MIN(dest_buf_c16[dest_x].green + g, 63)) << 5; + res += LV_MIN(dest_buf_c16[dest_x].blue + rb, 31); + break; + case LV_BLEND_MODE_SUBTRACTIVE: + res = (LV_MAX(dest_buf_c16[dest_x].red - rb, 0)) << 11; + res += (LV_MAX(dest_buf_c16[dest_x].green - g, 0)) << 5; + res += LV_MAX(dest_buf_c16[dest_x].blue - rb, 0); + break; + case LV_BLEND_MODE_MULTIPLY: + res = ((dest_buf_c16[dest_x].red * rb) >> 5) << 11; + res += ((dest_buf_c16[dest_x].green * g) >> 6) << 5; + res += (dest_buf_c16[dest_x].blue * rb) >> 5; + break; + default: + LV_LOG_WARN("Not supported blend mode: %d", dsc->blend_mode); + return; + } + if(mask_buf == NULL && opa >= LV_OPA_MAX) { + dest_buf_u16[dest_x] = lv_color_16_16_mix(res, dest_buf_u16[dest_x], src_buf_al88[src_x].alpha); + } + else if(mask_buf == NULL && opa < LV_OPA_MAX) { + dest_buf_u16[dest_x] = lv_color_16_16_mix(res, dest_buf_u16[dest_x], LV_OPA_MIX2(opa, src_buf_al88[src_x].alpha)); + } + else { + if(opa >= LV_OPA_MAX) dest_buf_u16[dest_x] = lv_color_16_16_mix(res, dest_buf_u16[dest_x], mask_buf[dest_x]); + else dest_buf_u16[dest_x] = lv_color_16_16_mix(res, dest_buf_u16[dest_x], LV_OPA_MIX3(mask_buf[dest_x], opa, + src_buf_al88[src_x].alpha)); + } + } + + dest_buf_u16 = drawbuf_next_row(dest_buf_u16, dest_stride); + src_buf_al88 = drawbuf_next_row(src_buf_al88, src_stride); + if(mask_buf) mask_buf += mask_stride; + } + } +} + +static void LV_ATTRIBUTE_FAST_MEM l8_image_blend(_lv_draw_sw_blend_image_dsc_t * dsc) +{ + int32_t w = dsc->dest_w; + int32_t h = dsc->dest_h; + lv_opa_t opa = dsc->opa; + uint16_t * dest_buf_u16 = dsc->dest_buf; + int32_t dest_stride = dsc->dest_stride; + const uint8_t * src_buf_l8 = dsc->src_buf; + int32_t src_stride = dsc->src_stride; + const lv_opa_t * mask_buf = dsc->mask_buf; + int32_t mask_stride = dsc->mask_stride; + + int32_t dest_x; + int32_t src_x; + int32_t y; + + if(dsc->blend_mode == LV_BLEND_MODE_NORMAL) { + if(mask_buf == NULL && opa >= LV_OPA_MAX) { + if(LV_RESULT_INVALID == LV_DRAW_SW_L8_BLEND_NORMAL_TO_RGB565(dsc)) { + for(y = 0; y < h; y++) { + for(dest_x = 0, src_x = 0; dest_x < w; dest_x++, src_x++) { + dest_buf_u16[dest_x] = l8_to_rgb565(src_buf_l8[src_x]); + } + dest_buf_u16 = drawbuf_next_row(dest_buf_u16, dest_stride); + src_buf_l8 += src_stride; + } + } + } + else if(mask_buf == NULL && opa < LV_OPA_MAX) { + if(LV_RESULT_INVALID == LV_DRAW_SW_L8_BLEND_NORMAL_TO_RGB565_WITH_OPA(dsc)) { + for(y = 0; y < h; y++) { + for(dest_x = 0, src_x = 0; dest_x < w; dest_x++, src_x++) { + dest_buf_u16[dest_x] = lv_color_8_16_mix(src_buf_l8[src_x], dest_buf_u16[dest_x], opa); + } + dest_buf_u16 = drawbuf_next_row(dest_buf_u16, dest_stride); + src_buf_l8 += src_stride; + } + } + } + else if(mask_buf && opa >= LV_OPA_MAX) { + if(LV_RESULT_INVALID == LV_DRAW_SW_L8_BLEND_NORMAL_TO_RGB565_WITH_MASK(dsc)) { + for(y = 0; y < h; y++) { + for(dest_x = 0, src_x = 0; dest_x < w; dest_x++, src_x++) { + dest_buf_u16[dest_x] = lv_color_8_16_mix(src_buf_l8[src_x], dest_buf_u16[dest_x], mask_buf[dest_x]); + } + dest_buf_u16 = drawbuf_next_row(dest_buf_u16, dest_stride); + src_buf_l8 += src_stride; + mask_buf += mask_stride; + } + } + } + else if(mask_buf && opa < LV_OPA_MAX) { + if(LV_RESULT_INVALID == LV_DRAW_SW_L8_BLEND_NORMAL_TO_RGB565_MIX_MASK_OPA(dsc)) { + for(y = 0; y < h; y++) { + for(dest_x = 0, src_x = 0; dest_x < w; dest_x++, src_x++) { + dest_buf_u16[dest_x] = lv_color_8_16_mix(src_buf_l8[src_x], dest_buf_u16[dest_x], LV_OPA_MIX2(mask_buf[dest_x], opa)); + } + dest_buf_u16 = drawbuf_next_row(dest_buf_u16, dest_stride); + src_buf_l8 += src_stride; + mask_buf += mask_stride; + } + } + } + } + else { + uint16_t res = 0; + for(y = 0; y < h; y++) { + lv_color16_t * dest_buf_c16 = (lv_color16_t *)dest_buf_u16; + for(dest_x = 0, src_x = 0; dest_x < w; dest_x++, src_x += 4) { + uint8_t rb = src_buf_l8[src_x] >> 3; + uint8_t g = src_buf_l8[src_x] >> 2; + switch(dsc->blend_mode) { + case LV_BLEND_MODE_ADDITIVE: + res = (LV_MIN(dest_buf_c16[dest_x].red + rb, 31)) << 11; + res += (LV_MIN(dest_buf_c16[dest_x].green + g, 63)) << 5; + res += LV_MIN(dest_buf_c16[dest_x].blue + rb, 31); + break; + case LV_BLEND_MODE_SUBTRACTIVE: + res = (LV_MAX(dest_buf_c16[dest_x].red - rb, 0)) << 11; + res += (LV_MAX(dest_buf_c16[dest_x].green - g, 0)) << 5; + res += LV_MAX(dest_buf_c16[dest_x].blue - rb, 0); + break; + case LV_BLEND_MODE_MULTIPLY: + res = ((dest_buf_c16[dest_x].red * rb) >> 5) << 11; + res += ((dest_buf_c16[dest_x].green * g) >> 6) << 5; + res += (dest_buf_c16[dest_x].blue * rb) >> 5; + break; + default: + LV_LOG_WARN("Not supported blend mode: %d", dsc->blend_mode); + return; + } + + if(mask_buf == NULL && opa >= LV_OPA_MAX) { + dest_buf_u16[dest_x] = res; + } + else if(mask_buf == NULL && opa < LV_OPA_MAX) { + dest_buf_u16[dest_x] = lv_color_16_16_mix(res, dest_buf_u16[dest_x], opa); + } + else { + if(opa >= LV_OPA_MAX) dest_buf_u16[dest_x] = lv_color_16_16_mix(res, dest_buf_u16[dest_x], mask_buf[dest_x]); + else dest_buf_u16[dest_x] = lv_color_16_16_mix(res, dest_buf_u16[dest_x], LV_OPA_MIX2(mask_buf[dest_x], opa)); + } + } + + dest_buf_u16 = drawbuf_next_row(dest_buf_u16, dest_stride); + src_buf_l8 += src_stride; + if(mask_buf) mask_buf += mask_stride; + } + } +} + static void LV_ATTRIBUTE_FAST_MEM rgb565_image_blend(_lv_draw_sw_blend_image_dsc_t * dsc) { int32_t w = dsc->dest_w; @@ -641,6 +912,29 @@ static void LV_ATTRIBUTE_FAST_MEM argb8888_image_blend(_lv_draw_sw_blend_image_d } } +static inline uint16_t LV_ATTRIBUTE_FAST_MEM l8_to_rgb565(const uint8_t c1) +{ + return ((c1 & 0xF8) << 8) + ((c1 & 0xFC) << 3) + ((c1 & 0xF8) >> 3); +} + +static inline uint16_t LV_ATTRIBUTE_FAST_MEM lv_color_8_16_mix(const uint8_t c1, uint16_t c2, uint8_t mix) +{ + + if(mix == 0) { + return c2; + } + else if(mix == 255) { + return ((c1 & 0xF8) << 8) + ((c1 & 0xFC) << 3) + ((c1 & 0xF8) >> 3); + } + else { + lv_opa_t mix_inv = 255 - mix; + + return ((((c1 >> 3) * mix + ((c2 >> 11) & 0x1F) * mix_inv) << 3) & 0xF800) + + ((((c1 >> 2) * mix + ((c2 >> 5) & 0x3F) * mix_inv) >> 3) & 0x07E0) + + (((c1 >> 3) * mix + (c2 & 0x1F) * mix_inv) >> 8); + } +} + static inline uint16_t LV_ATTRIBUTE_FAST_MEM lv_color_24_16_mix(const uint8_t * c1, uint16_t c2, uint8_t mix) { if(mix == 0) { diff --git a/src/draw/sw/blend/lv_draw_sw_blend_to_rgb888.c b/src/draw/sw/blend/lv_draw_sw_blend_to_rgb888.c index 84e087f9e..5a832cc0b 100644 --- a/src/draw/sw/blend/lv_draw_sw_blend_to_rgb888.c +++ b/src/draw/sw/blend/lv_draw_sw_blend_to_rgb888.c @@ -1,4 +1,4 @@ -/** +/** * @file lv_draw_sw_blend_to_rgb888.c * */ @@ -36,6 +36,10 @@ * STATIC PROTOTYPES **********************/ +static void /* LV_ATTRIBUTE_FAST_MEM */ al88_image_blend(_lv_draw_sw_blend_image_dsc_t * dsc, uint32_t dest_px_size); + +static void /* LV_ATTRIBUTE_FAST_MEM */ l8_image_blend(_lv_draw_sw_blend_image_dsc_t * dsc, uint32_t dest_px_size); + static void /* LV_ATTRIBUTE_FAST_MEM */ rgb565_image_blend(_lv_draw_sw_blend_image_dsc_t * dsc, uint32_t dest_px_size); static void /* LV_ATTRIBUTE_FAST_MEM */ rgb888_image_blend(_lv_draw_sw_blend_image_dsc_t * dsc, @@ -45,6 +49,8 @@ static void /* LV_ATTRIBUTE_FAST_MEM */ rgb888_image_blend(_lv_draw_sw_blend_ima static void /* LV_ATTRIBUTE_FAST_MEM */ argb8888_image_blend(_lv_draw_sw_blend_image_dsc_t * dsc, uint32_t dest_px_size); +static inline void /* LV_ATTRIBUTE_FAST_MEM */ lv_color_8_24_mix(const uint8_t src, uint8_t * dest, uint8_t mix); + static inline void /* LV_ATTRIBUTE_FAST_MEM */ lv_color_24_24_mix(const uint8_t * src, uint8_t * dest, uint8_t mix); static inline void /* LV_ATTRIBUTE_FAST_MEM */ blend_non_normal_pixel(uint8_t * dest, lv_color32_t src, @@ -75,6 +81,22 @@ static inline void * /* LV_ATTRIBUTE_FAST_MEM */ drawbuf_next_row(const void * b #define LV_DRAW_SW_COLOR_BLEND_TO_RGB888_MIX_MASK_OPA(...) LV_RESULT_INVALID #endif +#ifndef LV_DRAW_SW_L8_BLEND_NORMAL_TO_RGB888 + #define LV_DRAW_SW_L8_BLEND_NORMAL_TO_RGB888(...) LV_RESULT_INVALID +#endif + +#ifndef LV_DRAW_SW_L8_BLEND_NORMAL_TO_RGB888_WITH_OPA + #define LV_DRAW_SW_L8_BLEND_NORMAL_TO_RGB888_WITH_OPA(...) LV_RESULT_INVALID +#endif + +#ifndef LV_DRAW_SW_L8_BLEND_NORMAL_TO_RGB888_WITH_MASK + #define LV_DRAW_SW_L8_BLEND_NORMAL_TO_RGB888_WITH_MASK(...) LV_RESULT_INVALID +#endif + +#ifndef LV_DRAW_SW_L8_BLEND_NORMAL_TO_RGB888_MIX_MASK_OPA + #define LV_DRAW_SW_L8_BLEND_NORMAL_TO_RGB888_MIX_MASK_OPA(...) LV_RESULT_INVALID +#endif + #ifndef LV_DRAW_SW_RGB565_BLEND_NORMAL_TO_RGB888 #define LV_DRAW_SW_RGB565_BLEND_NORMAL_TO_RGB888(...) LV_RESULT_INVALID #endif @@ -270,6 +292,12 @@ void LV_ATTRIBUTE_FAST_MEM lv_draw_sw_blend_image_to_rgb888(_lv_draw_sw_blend_im case LV_COLOR_FORMAT_ARGB8888: argb8888_image_blend(dsc, dest_px_size); break; + case LV_COLOR_FORMAT_L8: + l8_image_blend(dsc, dest_px_size); + break; + case LV_COLOR_FORMAT_AL88: + al88_image_blend(dsc, dest_px_size); + break; default: LV_LOG_WARN("Not supported source color format"); break; @@ -280,6 +308,172 @@ void LV_ATTRIBUTE_FAST_MEM lv_draw_sw_blend_image_to_rgb888(_lv_draw_sw_blend_im * STATIC FUNCTIONS **********************/ +static void LV_ATTRIBUTE_FAST_MEM al88_image_blend(_lv_draw_sw_blend_image_dsc_t * dsc, uint32_t dest_px_size) +{ + int32_t w = dsc->dest_w; + int32_t h = dsc->dest_h; + lv_opa_t opa = dsc->opa; + uint8_t * dest_buf_u8 = dsc->dest_buf; + int32_t dest_stride = dsc->dest_stride; + const lv_color16a_t * src_buf_al88 = dsc->src_buf; + int32_t src_stride = dsc->src_stride; + const lv_opa_t * mask_buf = dsc->mask_buf; + int32_t mask_stride = dsc->mask_stride; + + int32_t dest_x; + int32_t src_x; + int32_t y; + + if(dsc->blend_mode == LV_BLEND_MODE_NORMAL) { + if(mask_buf == NULL && opa >= LV_OPA_MAX) { + if(LV_RESULT_INVALID == LV_DRAW_SW_L8_BLEND_NORMAL_TO_RGB888(dsc, dest_px_size)) { + for(y = 0; y < h; y++) { + for(dest_x = 0, src_x = 0; src_x < w; dest_x += dest_px_size, src_x++) { + lv_color_8_24_mix(src_buf_al88[src_x].lumi, &dest_buf_u8[dest_x], src_buf_al88[src_x].alpha); + } + dest_buf_u8 += dest_stride; + src_buf_al88 = drawbuf_next_row(src_buf_al88, src_stride); + } + } + } + else if(mask_buf == NULL && opa < LV_OPA_MAX) { + if(LV_RESULT_INVALID == LV_DRAW_SW_L8_BLEND_NORMAL_TO_RGB888_WITH_OPA(dsc, dest_px_size)) { + for(y = 0; y < h; y++) { + for(dest_x = 0, src_x = 0; src_x < w; dest_x += dest_px_size, src_x++) { + lv_color_8_24_mix(src_buf_al88[src_x].lumi, &dest_buf_u8[dest_x], LV_OPA_MIX2(src_buf_al88[src_x].alpha, opa)); + } + dest_buf_u8 += dest_stride; + src_buf_al88 = drawbuf_next_row(src_buf_al88, src_stride); + } + } + } + else if(mask_buf && opa >= LV_OPA_MAX) { + if(LV_RESULT_INVALID == LV_DRAW_SW_L8_BLEND_NORMAL_TO_RGB888_WITH_MASK(dsc, dest_px_size)) { + for(y = 0; y < h; y++) { + for(dest_x = 0, src_x = 0; src_x < w; dest_x += dest_px_size, src_x++) { + lv_color_8_24_mix(src_buf_al88[src_x].lumi, &dest_buf_u8[dest_x], LV_OPA_MIX2(src_buf_al88[src_x].alpha, + mask_buf[src_x])); + } + dest_buf_u8 += dest_stride; + src_buf_al88 = drawbuf_next_row(src_buf_al88, src_stride); + mask_buf += mask_stride; + } + } + } + else if(mask_buf && opa < LV_OPA_MAX) { + if(LV_RESULT_INVALID == LV_DRAW_SW_L8_BLEND_NORMAL_TO_RGB888_MIX_MASK_OPA(dsc, dest_px_size)) { + for(y = 0; y < h; y++) { + for(dest_x = 0, src_x = 0; src_x < w; dest_x += dest_px_size, src_x++) { + lv_color_8_24_mix(src_buf_al88[src_x].lumi, &dest_buf_u8[dest_x], LV_OPA_MIX3(src_buf_al88[src_x].alpha, + mask_buf[src_x], opa)); + } + dest_buf_u8 += dest_stride; + src_buf_al88 = drawbuf_next_row(src_buf_al88, src_stride); + mask_buf += mask_stride; + } + } + } + } + else { + for(y = 0; y < h; y++) { + for(dest_x = 0, src_x = 0; src_x < w; dest_x += dest_px_size, src_x++) { + lv_color32_t src_argb; + src_argb.red = src_argb.green = src_argb.blue = src_buf_al88[src_x].lumi; + if(mask_buf == NULL) src_argb.alpha = LV_OPA_MIX2(src_buf_al88[src_x].alpha, opa); + else src_argb.alpha = LV_OPA_MIX3(src_buf_al88[src_x].alpha, mask_buf[dest_x], opa); + blend_non_normal_pixel(&dest_buf_u8[dest_x], src_argb, dsc->blend_mode); + } + if(mask_buf) mask_buf += mask_stride; + dest_buf_u8 += dest_stride; + src_buf_al88 = drawbuf_next_row(src_buf_al88, src_stride); + } + } +} + +static void LV_ATTRIBUTE_FAST_MEM l8_image_blend(_lv_draw_sw_blend_image_dsc_t * dsc, uint32_t dest_px_size) +{ + int32_t w = dsc->dest_w; + int32_t h = dsc->dest_h; + lv_opa_t opa = dsc->opa; + uint8_t * dest_buf_u8 = dsc->dest_buf; + int32_t dest_stride = dsc->dest_stride; + const uint8_t * src_buf_l8 = dsc->src_buf; + int32_t src_stride = dsc->src_stride; + const lv_opa_t * mask_buf = dsc->mask_buf; + int32_t mask_stride = dsc->mask_stride; + + int32_t dest_x; + int32_t src_x; + int32_t y; + + if(dsc->blend_mode == LV_BLEND_MODE_NORMAL) { + if(mask_buf == NULL && opa >= LV_OPA_MAX) { + if(LV_RESULT_INVALID == LV_DRAW_SW_L8_BLEND_NORMAL_TO_RGB888(dsc, dest_px_size)) { + for(y = 0; y < h; y++) { + for(dest_x = 0, src_x = 0; src_x < w; dest_x += dest_px_size, src_x++) { + dest_buf_u8[dest_x + 2] = src_buf_l8[src_x]; + dest_buf_u8[dest_x + 1] = src_buf_l8[src_x]; + dest_buf_u8[dest_x + 0] = src_buf_l8[src_x]; + } + dest_buf_u8 += dest_stride; + src_buf_l8 = drawbuf_next_row(src_buf_l8, src_stride); + } + } + } + else if(mask_buf == NULL && opa < LV_OPA_MAX) { + if(LV_RESULT_INVALID == LV_DRAW_SW_L8_BLEND_NORMAL_TO_RGB888_WITH_OPA(dsc, dest_px_size)) { + for(y = 0; y < h; y++) { + for(dest_x = 0, src_x = 0; src_x < w; dest_x += dest_px_size, src_x++) { + lv_color_8_24_mix(src_buf_l8[src_x], &dest_buf_u8[dest_x], opa); + } + dest_buf_u8 += dest_stride; + src_buf_l8 = drawbuf_next_row(src_buf_l8, src_stride); + } + } + } + else if(mask_buf && opa >= LV_OPA_MAX) { + if(LV_RESULT_INVALID == LV_DRAW_SW_L8_BLEND_NORMAL_TO_RGB888_WITH_MASK(dsc, dest_px_size)) { + for(y = 0; y < h; y++) { + for(dest_x = 0, src_x = 0; src_x < w; dest_x += dest_px_size, src_x++) { + lv_color_8_24_mix(src_buf_l8[src_x], &dest_buf_u8[dest_x], mask_buf[src_x]); + } + dest_buf_u8 += dest_stride; + src_buf_l8 = drawbuf_next_row(src_buf_l8, src_stride); + mask_buf += mask_stride; + } + } + } + else if(mask_buf && opa < LV_OPA_MAX) { + if(LV_RESULT_INVALID == LV_DRAW_SW_L8_BLEND_NORMAL_TO_RGB888_MIX_MASK_OPA(dsc, dest_px_size)) { + for(y = 0; y < h; y++) { + for(dest_x = 0, src_x = 0; src_x < w; dest_x += dest_px_size, src_x++) { + lv_color_8_24_mix(src_buf_l8[src_x], &dest_buf_u8[dest_x], LV_OPA_MIX2(opa, mask_buf[src_x])); + } + dest_buf_u8 += dest_stride; + src_buf_l8 = drawbuf_next_row(src_buf_l8, src_stride); + mask_buf += mask_stride; + } + } + } + } + else { + lv_color32_t src_argb; + for(y = 0; y < h; y++) { + for(dest_x = 0, src_x = 0; src_x < w; dest_x += dest_px_size, src_x++) { + src_argb.red = src_buf_l8[src_x]; + src_argb.green = src_buf_l8[src_x]; + src_argb.blue = src_buf_l8[src_x]; + if(mask_buf == NULL) src_argb.alpha = opa; + else src_argb.alpha = LV_OPA_MIX2(mask_buf[dest_x], opa); + blend_non_normal_pixel(&dest_buf_u8[dest_x], src_argb, dsc->blend_mode); + } + if(mask_buf) mask_buf += mask_stride; + dest_buf_u8 += dest_stride; + src_buf_l8 = drawbuf_next_row(src_buf_l8, src_stride); + } + } +} + static void LV_ATTRIBUTE_FAST_MEM rgb565_image_blend(_lv_draw_sw_blend_image_dsc_t * dsc, uint32_t dest_px_size) { int32_t w = dsc->dest_w; @@ -583,6 +777,24 @@ static inline void LV_ATTRIBUTE_FAST_MEM blend_non_normal_pixel(uint8_t * dest, lv_color_24_24_mix(res, dest, src.alpha); } +static inline void LV_ATTRIBUTE_FAST_MEM lv_color_8_24_mix(const uint8_t src, uint8_t * dest, uint8_t mix) +{ + + if(mix == 0) return; + + if(mix >= LV_OPA_MAX) { + dest[0] = src; + dest[1] = src; + dest[2] = src; + } + else { + lv_opa_t mix_inv = 255 - mix; + dest[0] = (uint32_t)((uint32_t)src * mix + dest[0] * mix_inv) >> 8; + dest[1] = (uint32_t)((uint32_t)src * mix + dest[1] * mix_inv) >> 8; + dest[2] = (uint32_t)((uint32_t)src * mix + dest[2] * mix_inv) >> 8; + } +} + static inline void LV_ATTRIBUTE_FAST_MEM lv_color_24_24_mix(const uint8_t * src, uint8_t * dest, uint8_t mix) { diff --git a/src/draw/sw/lv_draw_sw_img.c b/src/draw/sw/lv_draw_sw_img.c index b84085979..e13e34321 100644 --- a/src/draw/sw/lv_draw_sw_img.c +++ b/src/draw/sw/lv_draw_sw_img.c @@ -1,4 +1,4 @@ -/** +/** * @file lv_draw_sw_img.c * */ @@ -289,9 +289,13 @@ static void img_draw_core(lv_draw_unit_t * draw_unit, const lv_draw_image_dsc_t int32_t blend_h = lv_area_get_height(&blend_area); lv_color_format_t cf_final = cf; + if((cf == LV_COLOR_FORMAT_L8) && (draw_dsc->recolor_opa > LV_OPA_MIN)) { + cf_final = LV_COLOR_FORMAT_ARGB8888; + } if(transformed) { - if(cf == LV_COLOR_FORMAT_RGB888 || cf == LV_COLOR_FORMAT_XRGB8888) cf_final = LV_COLOR_FORMAT_ARGB8888; - else if(cf == LV_COLOR_FORMAT_RGB565) cf_final = LV_COLOR_FORMAT_RGB565A8; + if(cf_final == LV_COLOR_FORMAT_RGB888 || cf_final == LV_COLOR_FORMAT_XRGB8888) cf_final = LV_COLOR_FORMAT_ARGB8888; + else if(cf_final == LV_COLOR_FORMAT_RGB565) cf_final = LV_COLOR_FORMAT_RGB565A8; + else if(cf_final == LV_COLOR_FORMAT_L8) cf_final = LV_COLOR_FORMAT_AL88; } uint8_t * tmp_buf; @@ -350,7 +354,23 @@ static void img_draw_core(lv_draw_unit_t * draw_unit, const lv_draw_image_dsc_t } else if(draw_dsc->recolor_opa >= LV_OPA_MIN) { int32_t h = lv_area_get_height(&relative_area); - if(cf_final == LV_COLOR_FORMAT_RGB565A8) { + if(cf == LV_COLOR_FORMAT_L8) { + /* L8 is recolored, but not transformed: copy L8 image into ARGB8888 temporary buffer */ + const uint8_t * src_buf_tmp = src_buf + img_stride * relative_area.y1 + relative_area.x1 * 1; + lv_color32_t * dest_buf_tmp = (lv_color32_t *)tmp_buf; + int32_t i, x; + for(i = 0; i < h; i++) { + for(x = 0; x < blend_w; x++) { + dest_buf_tmp[x].red = src_buf_tmp[x]; + dest_buf_tmp[x].green = src_buf_tmp[x]; + dest_buf_tmp[x].blue = src_buf_tmp[x]; + dest_buf_tmp[x].alpha = 255; + } + dest_buf_tmp += blend_w; + src_buf_tmp += img_stride; + } + } + else if(cf_final == LV_COLOR_FORMAT_RGB565A8) { uint32_t stride_px = img_stride / 2; const uint8_t * rgb_src_buf = src_buf + stride_px * 2 * relative_area.y1 + relative_area.x1 * 2; const uint8_t * a_src_buf = src_buf + stride_px * 2 * src_h + stride_px * relative_area.y1 + diff --git a/src/draw/sw/lv_draw_sw_transform.c b/src/draw/sw/lv_draw_sw_transform.c index 71fadd7de..c553f20c3 100644 --- a/src/draw/sw/lv_draw_sw_transform.c +++ b/src/draw/sw/lv_draw_sw_transform.c @@ -1,4 +1,4 @@ -/** +/** * @file lv_draw_sw_transform.c * */ @@ -67,6 +67,14 @@ static void transform_a8(const uint8_t * src, int32_t src_w, int32_t src_h, int3 int32_t xs_ups, int32_t ys_ups, int32_t xs_step, int32_t ys_step, int32_t x_end, uint8_t * abuf, bool aa); +static void transform_l8_to_al88(const uint8_t * src, int32_t src_w, int32_t src_h, int32_t src_stride, + int32_t xs_ups, int32_t ys_ups, int32_t xs_step, int32_t ys_step, + int32_t x_end, uint8_t * abuf, bool aa); + +static void transform_l8_to_argb8888(const uint8_t * src, int32_t src_w, int32_t src_h, int32_t src_stride, + int32_t xs_ups, int32_t ys_ups, int32_t xs_step, int32_t ys_step, + int32_t x_end, uint8_t * abuf, bool aa); + /********************** * STATIC VARIABLES **********************/ @@ -114,10 +122,13 @@ void lv_draw_sw_transform(lv_draw_unit_t * draw_unit, const lv_area_t * dest_are int32_t dest_stride_a8 = dest_w; int32_t dest_stride; - if(src_cf == LV_COLOR_FORMAT_RGB888) { + if(src_cf == LV_COLOR_FORMAT_L8) { + dest_stride = dest_w * ((draw_dsc->recolor_opa >= LV_OPA_MIN) ? 4 : 2); + } + else if(src_cf == LV_COLOR_FORMAT_RGB888) { dest_stride = dest_w * lv_color_format_get_size(LV_COLOR_FORMAT_ARGB8888); } - else if(src_cf == LV_COLOR_FORMAT_RGB565A8) { + else if((src_cf == LV_COLOR_FORMAT_RGB565A8) || (src_cf == LV_COLOR_FORMAT_L8)) { dest_stride = dest_w * 2; } else { @@ -228,6 +239,13 @@ void lv_draw_sw_transform(lv_draw_unit_t * draw_unit, const lv_area_t * dest_are (uint16_t *)dest_buf, alpha_buf, true, aa); break; + case LV_COLOR_FORMAT_L8: + if(draw_dsc->recolor_opa >= LV_OPA_MIN) + transform_l8_to_argb8888(src_buf, src_w, src_h, src_stride, xs_ups, ys_ups, xs_step_256, ys_step_256, dest_w, dest_buf, + aa); + else + transform_l8_to_al88(src_buf, src_w, src_h, src_stride, xs_ups, ys_ups, xs_step_256, ys_step_256, dest_w, dest_buf, aa); + break; default: break; } @@ -611,6 +629,159 @@ static void transform_a8(const uint8_t * src, int32_t src_w, int32_t src_h, int3 } } +/* L8 will be transformed into an AL88 buffer, because it will not be recolored */ +static void transform_l8_to_al88(const uint8_t * src, int32_t src_w, int32_t src_h, int32_t src_stride, + int32_t xs_ups, int32_t ys_ups, int32_t xs_step, int32_t ys_step, + int32_t x_end, uint8_t * dest_buf, bool aa) +{ + int32_t xs_ups_start = xs_ups; + int32_t ys_ups_start = ys_ups; + lv_color16a_t * dest_al88 = (lv_color16a_t *)dest_buf; + + int32_t x; + for(x = 0; x < x_end; x++) { + xs_ups = xs_ups_start + ((xs_step * x) >> 8); + ys_ups = ys_ups_start + ((ys_step * x) >> 8); + + int32_t xs_int = xs_ups >> 8; + int32_t ys_int = ys_ups >> 8; + + /*Fully out of the image*/ + if(xs_int < 0 || xs_int >= src_w || ys_int < 0 || ys_int >= src_h) { + dest_al88[x].lumi = 0x00; + dest_al88[x].alpha = 0x00; + continue; + } + + /*Get the direction the hor and ver neighbor + *`fract` will be in range of 0x00..0xFF and `next` (+/-1) indicates the direction*/ + int32_t xs_fract = xs_ups & 0xFF; + int32_t ys_fract = ys_ups & 0xFF; + + int32_t x_next; + int32_t y_next; + if(xs_fract < 0x80) { + x_next = -1; + xs_fract = (0x7F - xs_fract) * 2; + } + else { + x_next = 1; + xs_fract = (xs_fract - 0x80) * 2; + } + if(ys_fract < 0x80) { + y_next = -1; + ys_fract = (0x7F - ys_fract) * 2; + } + else { + y_next = 1; + ys_fract = (ys_fract - 0x80) * 2; + } + + const uint8_t * src_tmp = src; + src_tmp += ys_int * src_stride + xs_int; + dest_al88[x].lumi = src_tmp[0]; + dest_al88[x].alpha = 255; + if(aa && + xs_int + x_next >= 0 && + xs_int + x_next <= src_w - 1 && + ys_int + y_next >= 0 && + ys_int + y_next <= src_h - 1) { + + lv_opa_t a_ver = src_tmp[x_next]; + lv_opa_t a_hor = src_tmp[y_next * src_stride]; + + if(a_ver != dest_al88[x].lumi) a_ver = ((a_ver * ys_fract) + (dest_al88[x].lumi * (0x100 - ys_fract))) >> 8; + if(a_hor != dest_al88[x].lumi) a_hor = ((a_hor * xs_fract) + (dest_al88[x].lumi * (0x100 - xs_fract))) >> 8; + dest_al88[x].lumi = (a_ver + a_hor) >> 1; + } + else { + /*Partially out of the image*/ + if((xs_int == 0 && x_next < 0) || (xs_int == src_w - 1 && x_next > 0)) { + dest_al88[x].alpha = (src_tmp[0] * (0xFF - xs_fract)) >> 8; + } + else if((ys_int == 0 && y_next < 0) || (ys_int == src_h - 1 && y_next > 0)) { + dest_al88[x].alpha = (src_tmp[0] * (0xFF - ys_fract)) >> 8; + } + } + } +} + +/* L8 has to be transformed into an ARGB8888 buffer, because it will be recolored as well */ +static void transform_l8_to_argb8888(const uint8_t * src, int32_t src_w, int32_t src_h, int32_t src_stride, + int32_t xs_ups, int32_t ys_ups, int32_t xs_step, int32_t ys_step, + int32_t x_end, uint8_t * dest_buf, bool aa) +{ + int32_t xs_ups_start = xs_ups; + int32_t ys_ups_start = ys_ups; + lv_color32_t * dest_c32 = (lv_color32_t *)dest_buf; + + int32_t x; + for(x = 0; x < x_end; x++) { + xs_ups = xs_ups_start + ((xs_step * x) >> 8); + ys_ups = ys_ups_start + ((ys_step * x) >> 8); + + int32_t xs_int = xs_ups >> 8; + int32_t ys_int = ys_ups >> 8; + + /*Fully out of the image*/ + if(xs_int < 0 || xs_int >= src_w || ys_int < 0 || ys_int >= src_h) { + *((uint32_t *)&dest_c32[x]) = 0L; + continue; + } + + /*Get the direction the hor and ver neighbor + *`fract` will be in range of 0x00..0xFF and `next` (+/-1) indicates the direction*/ + int32_t xs_fract = xs_ups & 0xFF; + int32_t ys_fract = ys_ups & 0xFF; + + int32_t x_next; + int32_t y_next; + if(xs_fract < 0x80) { + x_next = -1; + xs_fract = (0x7F - xs_fract) * 2; + } + else { + x_next = 1; + xs_fract = (xs_fract - 0x80) * 2; + } + if(ys_fract < 0x80) { + y_next = -1; + ys_fract = (0x7F - ys_fract) * 2; + } + else { + y_next = 1; + ys_fract = (ys_fract - 0x80) * 2; + } + + const uint8_t * src_tmp = src; + src_tmp += ys_int * src_stride + xs_int; + dest_c32[x].red = dest_c32[x].green = dest_c32[x].blue = src_tmp[0]; + dest_c32[x].alpha = 255; + if(aa && + xs_int + x_next >= 0 && + xs_int + x_next <= src_w - 1 && + ys_int + y_next >= 0 && + ys_int + y_next <= src_h - 1) { + + lv_opa_t a_ver = src_tmp[x_next]; + lv_opa_t a_hor = src_tmp[y_next * src_stride]; + + if(a_ver != src_tmp[0]) a_ver = ((a_ver * ys_fract) + (src_tmp[0] * (0x100 - ys_fract))) >> 8; + if(a_hor != src_tmp[0]) a_hor = ((a_hor * xs_fract) + (src_tmp[0] * (0x100 - xs_fract))) >> 8; + dest_c32[x].red = dest_c32[x].green = dest_c32[x].blue = (a_ver + a_hor) >> 1; + } + else { + /*Partially out of the image*/ + if((xs_int == 0 && x_next < 0) || (xs_int == src_w - 1 && x_next > 0)) { + dest_c32[x].alpha = (src_tmp[0] * (0xFF - xs_fract)) >> 8; + } + else if((ys_int == 0 && y_next < 0) || (ys_int == src_h - 1 && y_next > 0)) { + dest_c32[x].alpha = (src_tmp[0] * (0xFF - ys_fract)) >> 8; + } + } + } +} + static void transform_point_upscaled(point_transform_dsc_t * t, int32_t xin, int32_t yin, int32_t * xout, int32_t * yout) { diff --git a/src/misc/lv_color.c b/src/misc/lv_color.c index 74b964f30..8e63d3c56 100644 --- a/src/misc/lv_color.c +++ b/src/misc/lv_color.c @@ -1,4 +1,4 @@ -/** +/** * @file lv_color.c * */ @@ -60,6 +60,7 @@ uint8_t lv_color_format_get_bpp(lv_color_format_t cf) case LV_COLOR_FORMAT_RGB565A8: case LV_COLOR_FORMAT_RGB565: + case LV_COLOR_FORMAT_AL88: return 16; case LV_COLOR_FORMAT_ARGB8565: @@ -88,6 +89,7 @@ bool lv_color_format_has_alpha(lv_color_format_t cf) case LV_COLOR_FORMAT_I8: case LV_COLOR_FORMAT_RGB565A8: case LV_COLOR_FORMAT_ARGB8888: + case LV_COLOR_FORMAT_AL88: return true; default: return false; diff --git a/src/misc/lv_color.h b/src/misc/lv_color.h index 8fe2558e3..9f22f3072 100644 --- a/src/misc/lv_color.h +++ b/src/misc/lv_color.h @@ -1,4 +1,4 @@ -/** +/** * @file lv_color.h * */ @@ -72,6 +72,7 @@ typedef uint8_t lv_opa_t; (cf) == LV_COLOR_FORMAT_L8 ? 8 : \ (cf) == LV_COLOR_FORMAT_A8 ? 8 : \ (cf) == LV_COLOR_FORMAT_I8 ? 8 : \ + (cf) == LV_COLOR_FORMAT_AL88 ? 16 : \ (cf) == LV_COLOR_FORMAT_RGB565 ? 16 : \ (cf) == LV_COLOR_FORMAT_RGB565A8 ? 16 : \ (cf) == LV_COLOR_FORMAT_ARGB8565 ? 24 : \ @@ -110,6 +111,11 @@ typedef struct { uint8_t v; } lv_color_hsv_t; +typedef struct { + uint8_t lumi; + uint8_t alpha; +} lv_color16a_t; + enum _lv_color_format_t { LV_COLOR_FORMAT_UNKNOWN = 0, @@ -127,7 +133,8 @@ enum _lv_color_format_t { /*2 byte (+alpha) formats*/ LV_COLOR_FORMAT_RGB565 = 0x12, LV_COLOR_FORMAT_ARGB8565 = 0x13, /**< Not supported by sw renderer yet. */ - LV_COLOR_FORMAT_RGB565A8 = 0x14 /**< Color array followed by Alpha array*/, + LV_COLOR_FORMAT_RGB565A8 = 0x14, /**< Color array followed by Alpha array*/ + LV_COLOR_FORMAT_AL88 = 0x15, /**< L8 with alpha >*/ /*3 byte (+alpha) formats*/ LV_COLOR_FORMAT_RGB888 = 0x0F, @@ -158,6 +165,7 @@ enum _lv_color_format_t { /*Color formats in which LVGL can render*/ #if LV_COLOR_DEPTH == 8 LV_COLOR_FORMAT_NATIVE = LV_COLOR_FORMAT_L8, + LV_COLOR_FORMAT_NATIVE_WITH_ALPHA = LV_COLOR_FORMAT_AL88, #elif LV_COLOR_DEPTH == 16 LV_COLOR_FORMAT_NATIVE = LV_COLOR_FORMAT_RGB565, LV_COLOR_FORMAT_NATIVE_WITH_ALPHA = LV_COLOR_FORMAT_RGB565A8, @@ -439,6 +447,46 @@ static inline void lv_color16_premultiply(lv_color16_t * c, lv_opa_t a) c->blue = LV_OPA_MIX2(c->blue, a); } +/** + * Get the luminance of a color: luminance = 0.3 R + 0.59 G + 0.11 B + * @param color a color + * @return the brightness [0..255] + */ +static inline uint8_t lv_color_luminance(lv_color_t c) +{ + return (uint8_t)((uint16_t)(77u * c.red + 151u * c.green + 28u * c.blue) >> 8); +} + +/** + * Get the luminance of a color16: luminance = 0.3 R + 0.59 G + 0.11 B + * @param color a color + * @return the brightness [0..255] + */ +static inline uint8_t lv_color16_luminance(const lv_color16_t c) +{ + return (uint8_t)((uint16_t)(635u * c.red + 613u * c.green + 231u * c.blue) >> 8); +} + +/** + * Get the luminance of a color24: luminance = 0.3 R + 0.59 G + 0.11 B + * @param color a color + * @return the brightness [0..255] + */ +static inline uint8_t lv_color24_luminance(const uint8_t * c) +{ + return (uint8_t)((uint16_t)(77u * c[2] + 151u * c[1] + 28u * c[0]) >> 8); +} + +/** + * Get the luminance of a color32: luminance = 0.3 R + 0.59 G + 0.11 B + * @param color a color + * @return the brightness [0..255] + */ +static inline uint8_t lv_color32_luminance(lv_color32_t c) +{ + return (uint8_t)((uint16_t)(77u * c.red + 151u * c.green + 28u * c.blue) >> 8); +} + /********************** * MACROS **********************/ diff --git a/src/others/snapshot/lv_snapshot.c b/src/others/snapshot/lv_snapshot.c index 021467bea..e467cf4b5 100644 --- a/src/others/snapshot/lv_snapshot.c +++ b/src/others/snapshot/lv_snapshot.c @@ -80,6 +80,7 @@ lv_result_t lv_snapshot_take_to_draw_buf(lv_obj_t * obj, lv_color_format_t cf, l case LV_COLOR_FORMAT_RGB888: case LV_COLOR_FORMAT_XRGB8888: case LV_COLOR_FORMAT_ARGB8888: + case LV_COLOR_FORMAT_L8: break; default: LV_LOG_WARN("Not supported color format"); diff --git a/src/widgets/canvas/lv_canvas.c b/src/widgets/canvas/lv_canvas.c index b7094226f..877f6bfa9 100644 --- a/src/widgets/canvas/lv_canvas.c +++ b/src/widgets/canvas/lv_canvas.c @@ -1,4 +1,4 @@ -/** +/** * @file lv_canvas.c * */ @@ -122,6 +122,9 @@ void lv_canvas_set_px(lv_obj_t * obj, int32_t x, int32_t y, lv_color_t color, lv *buf &= ~(1 << bit); *buf |= c_int << bit; } + else if(cf == LV_COLOR_FORMAT_L8) { + *data = lv_color_luminance(color); + } else if(cf == LV_COLOR_FORMAT_A8) { *data = opa; } @@ -149,6 +152,11 @@ void lv_canvas_set_px(lv_obj_t * obj, int32_t x, int32_t y, lv_color_t color, lv buf->blue = color.blue; buf->alpha = opa; } + else if(cf == LV_COLOR_FORMAT_AL88) { + lv_color16a_t * buf = (lv_color16a_t *)data; + buf->lumi = lv_color_luminance(color); + buf->alpha = 255; + } lv_obj_invalidate(obj); } @@ -212,6 +220,13 @@ lv_color32_t lv_canvas_get_px(lv_obj_t * obj, int32_t x, int32_t y) ret.alpha = px[0]; break; } + case LV_COLOR_FORMAT_L8: { + ret.red = *px; + ret.green = *px; + ret.blue = *px; + ret.alpha = 0xFF; + break; + } default: lv_memzero(&ret, sizeof(lv_color32_t)); break; @@ -303,6 +318,27 @@ void lv_canvas_fill_bg(lv_obj_t * obj, lv_color_t color, lv_opa_t opa) } } } + else if(header->cf == LV_COLOR_FORMAT_L8) { + uint8_t c8 = lv_color_luminance(color); + for(y = 0; y < header->h; y++) { + uint8_t * buf = (uint8_t *)(data + y * stride); + for(x = 0; x < header->w; x++) { + buf[x] = c8; + } + } + } + else if(header->cf == LV_COLOR_FORMAT_AL88) { + lv_color16a_t c; + c.lumi = lv_color_luminance(color); + c.alpha = 255; + for(y = 0; y < header->h; y++) { + lv_color16a_t * buf = (lv_color16a_t *)(data + y * stride); + for(x = 0; x < header->w; x++) { + buf[x] = c; + } + } + } + else { for(y = 0; y < header->h; y++) { for(x = 0; x < header->w; x++) { diff --git a/tests/ref_imgs/draw/render/al88/demo_render_arc_image_opa_128.png b/tests/ref_imgs/draw/render/al88/demo_render_arc_image_opa_128.png new file mode 100644 index 0000000000000000000000000000000000000000..c8af23f5c0df073d5f05afa875c269603c1f4490 GIT binary patch literal 14358 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 literal 0 HcmV?d00001 diff --git a/tests/ref_imgs/draw/render/al88/demo_render_arc_normal_opa_128.png b/tests/ref_imgs/draw/render/al88/demo_render_arc_normal_opa_128.png new file mode 100644 index 0000000000000000000000000000000000000000..8d11fdd534b1d3fcf0d4f29551023a4dc4b108ac GIT binary patch literal 12334 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 literal 0 HcmV?d00001 diff --git a/tests/ref_imgs/draw/render/al88/demo_render_arc_normal_opa_255.png b/tests/ref_imgs/draw/render/al88/demo_render_arc_normal_opa_255.png new file mode 100644 index 0000000000000000000000000000000000000000..d589ca5c0da1d5ec613a09da4ff44d23fe169fd0 GIT binary patch literal 13379 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 Fe*kT1BDeqm literal 0 HcmV?d00001 diff --git a/tests/ref_imgs/draw/render/al88/demo_render_blend_mode_opa_128.png b/tests/ref_imgs/draw/render/al88/demo_render_blend_mode_opa_128.png new file mode 100644 index 0000000000000000000000000000000000000000..e57e11954a0c7c95d94eb6cd81809c09844ddb13 GIT binary patch literal 36991 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 literal 0 HcmV?d00001 diff --git a/tests/ref_imgs/draw/render/al88/demo_render_border_opa_128.png b/tests/ref_imgs/draw/render/al88/demo_render_border_opa_128.png new file mode 100644 index 0000000000000000000000000000000000000000..48cf917c35d169651b87a7912c6baa28ff56a917 GIT binary patch literal 9050 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%0D0QLGDNgS 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 literal 0 HcmV?d00001 diff --git a/tests/ref_imgs/draw/render/al88/demo_render_fill_opa_128.png b/tests/ref_imgs/draw/render/al88/demo_render_fill_opa_128.png new file mode 100644 index 0000000000000000000000000000000000000000..3ae976faa76178ffcc3e18b4a54c2ea14f7be4f5 GIT binary patch literal 13895 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 z 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 E12Mnq!vFvP literal 0 HcmV?d00001 diff --git a/tests/ref_imgs/draw/render/al88/demo_render_fill_opa_255.png b/tests/ref_imgs/draw/render/al88/demo_render_fill_opa_255.png new file mode 100644 index 0000000000000000000000000000000000000000..011b15bd5533761d3d3699ab4351290075815bc1 GIT binary patch literal 15857 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%0AG<9p!2?%9qI#phT_8CzuAJWtCzs>{4qV0-U5H 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 z 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 literal 0 HcmV?d00001 diff --git a/tests/ref_imgs/draw/render/al88/demo_render_image_normal_2_opa_255.png b/tests/ref_imgs/draw/render/al88/demo_render_image_normal_2_opa_255.png new file mode 100644 index 0000000000000000000000000000000000000000..1b6c70471cde1a78f2d39ca56c0a8ddfd475c4bc GIT binary patch literal 15161 zcmeHOg;$k%x5fgSF;PHp3=9yEZcI>80qIgwx{=lqMa2Um0@8z&EkLn#w+J5!T;plcVg~^nw z2}=vvIbXjN#R;}$=RCGFof4Jpunk!-JbTyjaE9^H#k&W}4;;1LM#p!(efinLaKb8i zR#3--QH`ppEx1F$!WE@vHJ1j$BvGUxVSh^PtSpYN15#tB$CFxdwu==e+E_W+q?J7nKSr) zs%D-I`QF2a4=>0^*f}`(`1<<3ef!qiJ1HR{Z?Zzr3a)pLd)6 zPWQ=2Ff2ZP^sim}OiWE{4Q+4UEVC>8Zg=O-9V-Wiy4qS%$Eh&oq$0bq_YKCH`F3M| zXC+--UH^LiykvDG^tSi$O8tyXqx!hm*p{}ooSYn@dRAgu+Py?VnHR0(?b~_z`AnkD zb}fkysGmpW=R4yIIu31~U>WHkcJfH5<;KRw_8mKX83oUr8t=-pZH&qBATod@b2Bra>*7s+_C2n z7j>Sddz+Rcd4#`Y&%uLYPiFppr`K~@NT|awbJwn2YHWd@KArKeVavn*8lidf{w2 z!>LoJEG#S%5)yC^rx+Q-eE1Ku;xPI7b8>TYV`F1KeR{;wtIi%&Jv{dyNtwJ-AwKo{ zciPsz_(2yvHk&+=^XG4~_y+_AYWwbIW@c7VY17#lpj%?TaQ^%-?(xtAPn$f~*@5r% zV(VtAs=w@Z25PeVzIyeew)OySotDYl^`#4y$v++1c3%%ns)Q zq_RxgQd3je$9!=Uf`Wp0-(+v^YPL;!bKln1R@>3KT34+~eXh`2!_4-P`p7LjwjSGh z(Itn%%L+T7e^Vq!XQ;DAwGn4rg|tAs>(oNVZVvzxK;?=W)K*UnCt`Uuh6w{LR= zPc$bePEAdXjg2`M_0-my*ZG_*WwcwT3H(D|oczTuF*-4Ee04N3s8XLV)Lf|NH;GtM ztgUj`zw$$9Xo1uG$kV4!86rXy#WrScrYH;Vupb^72@D8$prsZ5{{8!R@6s%Li&3i8 z`WduhE4nxAdCS~qy>-r=JNH9BV`b&ZFF%`h_EJFA$jAtP&yztsj}J_h_4Uh3OPdQ#^2}}v4PU-|>FLqV zY-ihWi@!r`leRxUHa_mW-0c_|8p`baJL>Ph|IQOMq_X|vnL*I_xJj^#VU~J4@9D0t zE{Sjf9aYMei+9HD9Aj0ksbyuGot@=CZSF5@=$)x|SF zpC>5B2VT+O+oAW-v#P4<=~Jq)_w8d%@mcDVLq12CnZ>{R?LT->yTGCL>(@WIxD=d+ z(1eO2BcH#hPomMq)_zC#(-v=SuH!kRYmF02cPLAMCw$_MSiOI=4C-yrzIW;Y_)3Iw_WMg9_wWG>pSp0`a zM|)kSi}viIyQb7hMj!5%mNR>h<#FNFA{OI86b_P4asD zIsyE#K_=rng+)c?d>SZlR$}4dW5*sSDSZeGj8`Z>dMNuZ{IEkR0Tg?NLNj1O@A|!57bA6 z1O^5+H!A_yNP5(qM%|nH2x}`VHA{b3)b;j?b8yses?*ccSD|?Icy6LSlRzNk z{pZ3LnF1)P_Q|c~8+Y#fc(IR8B0L8@uj9TtjF!_Ik+gr_*Vk7tUEB%us14yo!$yhj zyEZgRxro|D9lgCC`0GsftWPN^wYV?pscP;M`zbv%QXAUc-L2!c*aD=<&legS_`9TJ z%k$u|!-waXw`Q58VjCZ&pCCv8+R&F=!R`yu%m6R7l-BqN=PHvdDGo8KzH642L_6;? zwve^SBiI0Dk>^+E)rv5 ziOb7VV-F&#WwHngwi{;FI_tLEz8Q|w)Y3w)q)OJ@63>}^oYjGM@#Xb@%!prWRL@}G zwdc~?{o8^OuBd?zIGHi zT0VHtf?ECb=~H52B5;{NGG(lZ$;ilnV3>{;Tdd)(uX$m+j*p1vKUz;=5r6>TsIszh zx^Q0Z_U-Re-37wJ!j{gSFJHbC-{_}RPg(j-rvpF(ORq_~MFZE{v|Y>%d!#!wpn`^9 zR?spEq&ZBgulp)0D=#g!>G-;83K7rxSElMLXlCfYR!9h|QN1lKEzLk$Z+FLAmo1M9 zTJ@FUh6KOsNddj}^@mEf)=PZXGzg+SIA$=lV!Yhg;u?X0e`#^Cwv^16o}PZTBz(ds zOFj0rn#X*m zknMGPes*?jYN~j%0^ou3dG_oXNEw2(g4tukrFT6d+zUF=4g5qRk&HHZqGVVKY=*0n zIsD#*gb2w>7Q07TwaQk|`jyt36f0Opt`JV zZ9}x=@>I75a9CSAwZ$ZUaEqv(qI@~P-Q67$3u+k55mwc3kWpZ!-6*mMA0Mhl)M4VI za#DCeQzg~NUylo~WxFg-X%#q3cI7FqMN33GP34WoO;1|f2C$U1y=6+x$e6<;H8(d8 z=eLXqr{kC^+1iYVh*(-$`s+VeVPPS9@06&s((iW_Uks`P(c;V-eKh_3{WP>pnkDW< z&}RI-uJeu39K8JeZOzRSxDECAYa#l_>FGlvBRQ68U>f?%XvNuPp4$GTu)jr@z+41% zXf2T#>(1R;F93g7veY$rsW-@htZmxK9jkLDr>|%J$CpIo_#A9>RBP=|8 z8g~R=Q2VR?^ix3t`W>b?B$O7aaejF@$f4#}rjc){d9#JRN!HqAPA`+`vkE90T`zY}~qa>rN=G*w)6pfq{Xd;L7VG7hK)kN^rv! zOfF_)jj^AWlI|z9;E}+)?c2Zq?VC3l>M5ao=5OArc16w{PEm{EGSlPzk6qQ{82cRt+1@ z#3Kj^2}#v1G8q+&fHTB#i7YlN;?__(H*elVH4wf`mDX6<*a+E=E8!D+cx-`nLPA5q zh2R|aE74X<6KejIO84(u_y4o&!i5W96^MzKFR9b@PKa5rJHXTO%w31Z=L>ys`N6$= zKhOCHF4oH?C;@O#jSEAS{y3t5fB>BR^XJc#lvCai2;Bva)682d6|hS(!&jgd&p!V; z^UppG*O{+0Fw$U|z2B9#*0_RYptInN;^iY#laoapr!=8%pd<_pN5EPX)`2oz_YHji zey)4k-Epv-@cQ*@uHc%=%CX-K(cG@FOr>2{ZI^%6Zv4Y%t7c=90dZET-$+_K%klFT zWQ3%o2V_`>gzdpd9#Q_4k01+_$C8=eI7nO zK3-nbmMhA_-yLl51;zumYqB#3^2Er%K-Sq*&e3t1B(8&Zg{X;r{`{tl%-gTJuU@^H zSz0={d-v}B`#%`^^(Z}hG*C`ppkq@_Gpr5S*l=y%3TKO^p`k%>DdED7QVdZw`yYpzJPu%atYzQ6wVwKWaxy@H zn3!mScY&ev+w@mSQ9qy3da)|sp2V`?3{8hx0|u0rm&e4!babd^wlgv?XecNQ02U`F zwGZM z|9u*|sI>H2X8T6bwA=Jo8fH6)n#D!(L}vZVUJ>E@0AC@y-}j7-KNE@5ryRTfOgSRl z@Ej@%jo0t1N{J9Yq3!TO1PMh&MZK-tOK4V4&z-RfV}pZd!wr-Ylt5C;P@F;y&$i`? zzS@(FQqtL4Yb#@R8jB6mhG3|O+S*!0MFmzFna5avzh6WI!mCSH7-lmg$u;_1 zygWR=G9%Wl%C@q0@7Z%G<4i0WQPgDnp7q99X21eCmR^0)4I+z8r&vTxOglkINI-xhT%oE< zpY2f8yf6#|1)|_lbrid~+`D%V(wj`P0O>I*z9l$kJ+{mU4KO}F4&TyyPj~RANfx99 zzzeO_DEVjic99_d(=?nZ5Yo}U6qD=gv(~IAFUq?(DDT%|0-MC_WGxxpV4S6%)Y9?u zC+B!38U^Tnm`T;g$A=C-?!UcteU51&Dc|uSe41d|*Kzc|a zUT*J19iw#B3AL;iXi9yqyQj{YdtP`a6&v!Cl%i~EZJlm+#x^;iE4KR;7}%mndwOU{ z39?98`8X4kMY<}0KZXw0V=VDAeuv*u8wOM^UIYAS*Y!zU`KAD5v{`ngxrj(Zy}1Aq zj?G5RMzxx=l0NWcY#P}zDas7{UxF2R_$fSjDfQ#|Zco5=&*#sdAtzsYdM+$2_1N*! zphFzsTzj^b%dKfTzq+>7&mVCZmyu@KLY#mWSN5gq&@s3R4^bqCl+kwDhC8y9&)q}05U3&9)6&og4GR<542}n0SWlVA$jVMmOn``j ze|kCfm2LxgR8>ihEtLaV#`mrShL*pO7%iTiUWo8jwIX)V`6SaH^jup%MX0?-|T{0_J9B0PAFWIBSPGxST3G{p5DaR_+C9~38~e9^RNS2$JV+u5 z*O>)CiB(io=;YZLY;BSu)XmMz_8&OVUE;A-LhdYSFOlwm#f-}^SyK8X7%!Egyu7?D zJ+I_B9c(;p z>&ht;D48S`A|*gmfhk8C2|#p100Ko6b?+PtOQO={7dNhs?-GOQc&xH`-@woiHdD&G zLEiaEnSA256~41+hOcf!0mo08YWoxv6krPQRX2B&_)jMQ6ixzFo}!U6MM=Oj>%}O6 z=WOpI^4cOL9MvY$iP){*l9cSUU5i0JbLmn-Nr?v{_(v|QbxCWEd-KUgm`$4($N`ZwxbHst~v?| zXToVS)l(28bt08R$^Te9bad~F24hCjKp%((Dn1zv$0ZUj7Ze`e-O|E4c9tsF{0~)s zo`y>`(68UWe}|UcN5{^%IsskvCpq(~E4?Bd^8NdMU-IotOvaZcJ1fL*A7x||@pl>Q z`Wp#*vd6lYw2TbfrAuHf2;kZw6J16{&HBe9NI5i13Jv1ZS@O@but2`L&DZk#pC~^k zmIGKp0ZKAConvR8isR7!V%&i6z??5sJ!Nxc(DwrW5s%zAZ{FYpFqR3eRo2pSLo<;` zCro)l%saCQ&LJj?<1N>(U)Lk=Pt__=CblsP*%@Cp%``AF$}Hff+VhO}WN>gWxW<3w zA7tmhfBzPBS=zrf_wCy)@9#EC6YYMiC$x%P^U~605T`bpP!Nh%bm6C}xYLyXCMF8|r7`wda4v!@MY`CuFYzmw5*ES5 z0hYo7Gmz=2Da^yR<|DTNmgc4^yaYD7&brn%RQemampk6fA#3lvah9ce9#>{*lI-`~d z`2zm%Mm#x=8%72B`4%6QCnhITlr9@^wbSXiUj3eaMKulGbB3395lU)MvkNJu3uuuN zoN$zE*fi52L#HS)2a6CsSuQTFx(LyvdlxaHla`V~a)NwURarUk!-wXUmX@BLi1+Um zkd-JW!Hnqg&?D=0aal+Ht&*xK_}@|IBB_mXLInjbu#YwHsHc@f}x`{)HI;{>Hdl5NVFvuBYDB`IB& z+&rC|mxq*C1x9kmjvZI8UPa;n07Jw7H$sHRfrXqdTJB-qobkF#E0NT)Imo>A$0j#s zH`M7gJ2~|%wzyRl>;E3Jg%3w_$10pWdX%TtH0FRY#tr3(tidu%{a(y_d*2&;Vmx)~ z?3pt-C`Lv`L@%-CMwlvq@02bFfCe<#BfVCf6 z&vwbRqGRvcOTw)R561v0`=K9)inNJsBpMo;APyaO@E7zXngcSw9N1k^0ZzW#w2dI4 z_vq0lm`3Y?TXJ$fzp9P+C+<%U4`bwUl%8H_E0*~Lkg|>x-jhjdOfxPD3yFZ?P)vdqc<==U6r1cSBDD1F>D#Z_x?1TcO47h^n z85ktp_{7BA0S(cqmrS-sNBaA%QB0)J8clR5Vl#|4)l>KoP&PFo_f!bk*c=Yh0nGv# zFv#++9GadMPx1HXGw=A|=hr_v%5NhUj1j;L;WH#Lt|1#IWKhTnO-vH)ZU~({JBZnE zgE7z9QOoY;wM7!8#qxN$sJc>jCksX;C6NHZ@Wz+CBS65QvQNBT$ z_RLl=NAB~;#6+^Sxp`r65!0kFaRhF~?ufg=_lT@qhVi(odY4iEdoV|XWMQzD3a7hlI%XOZn!)er<}wA z|28K=&?XX5exE-BznrYB(i)8I?Cr^$%O%qo+HrE~rmOlOp>l26WH4*b_+DLYI&}2n ziyQZ~wZ&}O=mE#@62E?_BC>)NYiKz1#~*37qjCg^c_i!5?)-dw9jmQq{Py{obJYgghK85KwRtC7ZpcR~*owcF75hfHDQ$p~p z(eBs>NH~q&396Q+cpK1ajFI z@ew>cF-n(XPZ0y8hOs^3zBwPsdbDXShX5LfiUX>0XQX0Igy&5u{^a2n`NKh*L*iU+!H zDqcLw;!p7zOI^~|BQ?PoZehg)D=Q3e*P0XL<=zt5VvONwn4a{-Nq&3>?&8qMHfuKh zjm?6vtadJLZUkZSVFC}if)Q{)D9S~Ob+@;x-M`<^+iS@eikucdQ=wC1Mruv59X0x+ zH0*|MtrmcXl2jmzqhzIi-Z5UDo;3+6%W!rRYCAv2#GJcy>2AJ8PedD5K<;+Zb=bP} zP4pZS;4WAHoC)I>t3a4fR!?CfaTktJfTp3d6VchD`rYVMQ4ta3b=d3ZFY|&sK#lIF zE<-Gohg-pt0tC(dORkiS7|g}}D)rCS|B1BHcfR^ARz+YvF>R^Tf6vrFT0HK3yDAyk z2I?|P{mK=0zSip^qN1bClo0<#X$T4PGgK00*zd!`$vLd)dk=87zL*<#N6(A1P< z<~z0J=r&wAixNkE0i)Zwx`yBS`t>@F*(LDs9a-5d)8w3tbPLB&MfsAU>9>leDN+MpYevH1J@1LHC7>JO|TfmR(SJ9y*W zskhZ!>bm{JG#9BZJX{-5rx$Y8dC>&ncwV;Q7clHknGdgvdzgA(CU6c~wsGeXX3Dp^ zD6oOaKxmK8>DO=H%E-y_(G&K*I3p;Shw6!skI&AA$NtvR@*q}W7d5pMzq!ad(nayD z4P^4E9BZ8SDLUokNqc+yvys>wqaV#~!UP7|0e$7OcykE0VPc{Sv6IciHIn;E88bBv zO=qU)(WjOd>U6ug*4EcCg_(o+-9UUv87Y9*H#b^V^mY&)cXCqL2|uSSp5|&oe2m$343AXg~?7; zO%38ltVK*tPL`=eB0j;^S!H!KD+dSviT#ZVn-mVF%>LnC^IofgcxtPv==1Uj_(5Oa zdR6X?8#iyl%&)Jnd(lo)!xMqYkl5)>Zho;IEQbU0%-_y=5O?zkuRS^v(}AH6Zrg9) z!S2)OhK{~zWR**W#W6AZkQ?-b@`%+3Sl~EvVm2iqBg3Y-A~x83P^1(1-|8TPZ|Ip< zscC7!$px{g9cEx~0T<7fEW_v^(>l(ssfr(gnJdeuZQQwv$A`RSXh=U+;c=Ea*5~M9 z0O;uAl`i*sY>}-GxlM{2O%ciM&@!cQ9@MS|9iRUe|`+1ZsrTj)cnndh_a4?wG{0 zoM-p>Ph;kcpTeMgP=xgRH>Drk`Jk>b;&gU$LM?+Ydei% zt@DZxz914UF=GbsmItRrhJ(IBS6T;fBZy7`qx^2c zUp4{|G|p4_6rUA?sg;9O(dgo(t$l7Juv4^{1?PzmQo{oENNeA&oy^b8{r3GkAxk#u zn?4sL;BUKpjN~90N1zCmm3yrG)~W(nv6=vFZ)t3tJN9-3-t2L@J1wm*c!09;lb6>X zF->#V*?A3%9V>C~1dmH$Ez?Wv%F7n2xxW{-x{Dcz;6#3uS4sXD&mNE3ws4Z2? zG+hf`E%!f&9_n&5ASAsb?DeJ{KVO_XCGW{L4WMnz8zZ@ zNS6BH`7L`2u|x#d?E zDJ*ogu{_Y%`BK`GiiKEIL`JZin2^vgW{0ZDv=wbchKA8M5C?D?78aJC&0TUGv)tAc zjf(uddUtG4e*X@h$7lf535v$XGLyKwYgltUO9v@F660wT>W%SD7!-q36GhxxO8v5=kq&WTlml#({}lJ=JZb z-}~pEe_}H(t;J+=d>s4V{t*=R43@zj1^g1?r?|NCh#gY0I$IKiFNi7Nwf`9@k2KP)Wl?6AR>=?W(D=RC0g~?;X8c>0j z1HxowXEO;{mDU;DZZWY(w_*~5W8v$L4!GlA2{|dgIZGR>(B9UDL5kr>%C;`K-E34% z)w-Nvg0?KDPwT?&{>L!RV75t5axY?Vop$NeSL%S*8mhve?XK zI6l+1vc3+-PgygS4rB`sSUfbcd;7jz`>QnjO4%R@ae*6M(A;=1@ZK@u2T+`EC8CMM zX!kV>7 z7Unwc*)+ST{3Y?8te6G;Qao8Y+2851#Z5(3%JXL${_(=jv;Y42?+N^S0{@=C|BDmw z?=;J9XTrbADm8z>tqOem>(IY{{(A!dp1{8+@c-xp$R6+7NZ+#t7)pU~RCjO7-AcWo H``7;f16Op* literal 0 HcmV?d00001 diff --git a/tests/ref_imgs/draw/render/al88/demo_render_image_recolor_1_opa_128.png b/tests/ref_imgs/draw/render/al88/demo_render_image_recolor_1_opa_128.png new file mode 100644 index 0000000000000000000000000000000000000000..65f35073e8da7b296bfd23d9cc2fb7a2fba154fa GIT binary patch literal 33238 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 z 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

wz4((thq$7EDu(HJHq)?Ow}th8>Fa2wa z%7=}+E_H&qjJq|myfD~xI1;gNa)%F}CoGMu%Gl9-6-_y| zWt_sm=UAlNt((Lm)A~SGOVe7k%A=%>olG4)PA4EBO;k}t*riEr9 z_M}kmgKy|BfNy9XB9VlHN#mc$95s(g&yF2AxwJ<}1Fq}Wb&8!j5W7KXtKryR;LB=y1P0sTh}|{s z@BGn=^ghW4Ic}iqsY_DRQ#~xq9*OLY_On=~W)#3;-kr$cKB$_uLCJs%kv@JY75dt6YzQVgSX zR-xh{Dq+}(4TSY#lDg^5G9;+cV&G&@kK!(%E{_vL`}^Lt7Y^JEg`0quWs{uIRQP&W z+RHJJK5ZA-67oH}@Kc$pK#l8_V==G&r(()fjmrqhP(3E7HUU75K5`LaM!s$0ETz}J){tJU4X2(ax1se0=-0YeBch$0F=%j zo|nt}=t5J!OiE zXvT{R(h$!Z4N8sy<+0AhfQvNp`50R;ZZ>KIm#(wl`fWv?H3= za+B!O5O|3I5zIxkDtP;2A4+iVVujNQ7}Emw7Aajg8W2{xpAWqqUVgyr_}^Q}JR}!= z>_3plG~32lA#(iT0lknNE964V8y+i$2|Pv|iM@oQC?}46$nOZLTDJbaAs)cHRUSR} z!5F}I0<9$M7NDR|-Iw%OyZ+}WhA?VF$G7;#A4D(d6>Jy20p+P~9d#|U9-jRRK2G~D(zC38e0KvT zV228Nk(BnKEJc86hfs!tZ+`^dXH>6~H);PXdNQT0H4)TcW@0kQ>m)#kdnd)2PL2M> z>4HHJzyHROg0^lv2f@+)T32qWDA)^VanT~hMHAu~Lj{SODl_*!w zCZ~0zSFY;_sTDc(8G&iIxD>33s1PR^nTCBQegUwqC2=33c^#86cL4h%KZA5M^(#MV zz=Y65H6H-&Q<}q!i@R{^E1`@cHQN&3fG>$1kTVirT6Fjw_)@y99E6)j{F6O_+f(ap z*CO}MO)Nn#Nvmu{XjSgJz3zh`;7ihv&ohS*WhuAj^q%2ANuTSqQX8Oa2Rv6tJcDyZT*Mfd-j`xh zQk}mq74U^yC+>vO$rDq>A+aqk9TtJBn=pNvB;a-P_Wop3$bBRHA7HG&-47mwr(xGd zqaU8-+F78UijN@21MC9E9Z`20dVrUM83jic{(N{5S%=@Fp-bY{5853mpv;POpQJtP zCWG9hHuvS~6qKJR@ene7?PSMN|WjcF$elX?;l!qXEfqB2LRxc7kq)@bQ z*=tc;I#M*sXr3U8H&K$GyH1iz3*}dfJv$NQ0JsHWv1d*gk~nT4(x|PaCF$jj+7pHK zdxbqJao^s(JIT)q`}@=aPQD0gOGgLrq;4tOSj`MLQp6aoQTzfCSS2KSy1PzX9om=$ z*1@~-v)5;z^RBKf!!s+$s6(VnPkII{e0T~xH5iYvZ?(6rZ3e~7f&Ke=EP^`N;blM? zE9?p}F~p41hy~Tyo`kno2cJ}U-he5b5EbLUzNBLdjZ6%mj-!TCq)=4gI{1-3czA6X5# zeXB!Hy{b|Vgz&$6_wI*}J$!j~b{OdTGB-E(f8yjaaV&d~{ognvlm;`^nk|VW_+)6V%;6Gfg(9vQb43qJo@1V-c_jF|_|H zYwj0N5~kVJP#ZsPS!)~-6yC}Mza98iVfpSA*_3f(j3=tt}CbG=D(?#F>T-A$`<~$uOd%MePc< zsH8#|jHY$&I?7+D3}CoiOHe+ROvJBOeY7f%BCchOxxn+JGGN{Kna^!)p=&u~Rb2)> zmkX{aS|Uvic~wx;X=Y3la-xxZ^NF^N_IzE~1i|qQ&M#V6I3L{vVS-qa_F+%q41J$Z zuIhdOZR}6~y!EV;RvGiHCF$Z}+zJzcFcM^Vwo!lc_fRh56Fs)?NI{;R{~mZf&EB3L zFt_ji`)~na+>O!J3=kax>~H_oFzVV@X)v9b#yVW0RIpeKLgqVbV81q0AA3zcv;%o9?HI5}GkS1~@7mocwQPj$#>tuw40KA14C& z-DdiU3Xaq1@JWU6OGoEE6YLY!W8V?Jk(Q=7%QLmsi#?y)Fb@5ZO0At^JM&pO((@wq z1ct_6Z9Pbug9vC90v**E2$x57`iTio{a0q7%|yT^wE&}Hb8_}dlo}!e^;&>Z7_T!X z1rNTBTED`!+;utpDCB+y!ucQlzO7486#x~0@h@;hWVM+?Ml`h$INx=?_|Yi(1H7)X z+|h8w*6rDQ)ta-qKgO+q`EEMILm1PFe0V{PH3w(Y%rSlS;?d?!*EByJUip?r4p&K~ z>pWVrM@EJ_+Q{hL<7d^6%61Va;(H!)J@91YO&$q=p0c6H2t4fMGBP&^F%z=7*4|`< z&-pJ;BQyu`z~>fI;OluCwNp-$B4v!pPmsVB45tzf#cbP|7DSk0L!}lVf`4Wacp>oO zW&@+B8onjJ&i?)*($cUK@I~aeXmu?ooP<N$z?q@jt_}k#eugBj)5_x$pY&%kVyNN*Al>}_D@tcZwVKAF!Mv%h- zH3s9$k15ce6o?fO5s6k_s34}|!zh`EvLytA0^j-Jxf~tIHs?4*9B}!0N1o`&8<6em z^!e8WIY?AP+A;FzZ3^3~L~5V?SXo{`Q2Dsuk2R-6l(otJ;ubyUxt0WBX@HAib%Qyx z0+0{yx?;FDQh>q6#RWofTrg&^aodWDG(zp0-g@f5ofCOReCq!qk;g!ohl>kJgjC%T z;9C<%&XHafu4!vHZdm%ybtFe%N=CRf5Zol~kDTVIpQA@E5ZRr*{r#&^m#(CL;qjbH zBR@uq-hiZLn&4LenD1}TchtdvQ5aj%>o=t%Vj;rd<6{o=k(>9SW(U9NS-vvRLxZkS zn9|+bs~Xn6H_~zPBg(_Dr;;f33QcaRpWRvq^AjXmEsN_&F*_mHz&@s*(c}uj4B?(P zfnWx!72*~NF2q)^RwGB4iP~&bevaAe2+`?g2zx1Q9L(0cshtJ+*B*ZBin;kKu>@q? z;9SCI7!<})4zc!{(}-3XTB|hkw*l3wL6WZ;RvewA&KMhS@2m)rgbZNu%4f%7DZ6(P zTF{?LDDPyB=y3Fy+s}^LnTh7fE*!O(G|UArB-&e775Hvmx;zsh!4rl zjM^_Dj}3Z#&BmE(l=EjMdjLXDPIivE=kc-4dpLwcmH`QDi#0S#@uI>-K^_X=iKvL_Z8)S(<3~=hQU00}+htqu7i?oIS+likRWK-VH z2c+A!d_94WjN8NZLDBTUo(FwUU#|E1_3QCGUZ0RmzGZz^myE32hP`jsVyMPWX=-6` zJi6>ExoNaLc}Dx5Fi9bwy1u?%fd$gE7v7?F;Fxv@F;PLN$|gnE4FXa0EKd^DNX*0o zgOeQ@S5`J0R8ew0rnO;f2#puQ$uJZrR$hlR66k)zR3y(;!N~z{Pm=Z>zH9}iV? zA@QD>^XEqVJN8>dru)=QK&glwP$&`zl%WI{B9A)wTCpg56a!G#?r1SlX{H~Qxz5^kSyB^MXhw72{(@7_TmkN4h= zY3>5dhT*+;8YM5a@8PI(EjDmFw$3QW0PJVSCYw~-%jqr0S!t=FF-L>KxNaHCHmqgj z$@9YMg^oJA(+7*#cQ=c4%_)2cYom!3$A*ss&Tu^z6&<==-`>%$aPK5^?axGR_|n!8 zLKC@H!a7`ESn&8CE91v!lWop8VL|6cl@lJ<37zHsg`5 z#v@eR-B)9q3j$WgEzc6Y8{ll1ZUZ2SU!5;egcE5mc=I zI*zfCo5;-_B4!-`LW3hgl&Rcv!nCvrqz)0xjJf0}s*_n{+9y9;yup7>c+*yFJ#UE_ zcK#4~p*`^T_vg4VgtixvbC3W^PHvl;n)*2Eez8@OtFZM1!S4s|wH)a3nHBZLPb?%6Wkfs4|ua!juP4c`38pQe_U`Ry<1 z%tHap@h_hk;G!kPcZh|evCbokROITd&DZ8IEGffuvT$oC5r0F{ilQI!{-y%pk5B+W zR_vbqB&dwH&CVzGmn zGKfenzvxAjRor#^p$)V3CR9)jV+;k&j00%8Fi-^pJs=7|c*KSH`simx02zEROCCvi zmQ`0!T#vEHbjtIxsOe?rUo^)N=;c)cx&H>P<|tsL*jkdbr%JsGQ6Ro}F%Q8HbPUk- zjJEaLOJLVC?w9XSjIJ;{e;+I@EY8>WIK8h@Lyns(Jgj(IjB-6LUfj>gWYm56Se)&# zV-bjjeT@<^y45m?z(4A zWOheQ7R~5EY?Hw7iP^-6eVVPvJ~x$oBb14Xp|I_l8;d8q6u*NLH%R=#PuUgSLNLF< zxBG7t=y@;ikp2|2IgYi>LWd3E4m=jvjwl18cqJ;k4fnzS*KteFa9Z{eJ8@Rew z%in$f9W~yBj&hqjp0KI_hUQ`ZtESgX87LV>1*d8OawMR4`%K5W6)+w^vjIQW4GxJx zG4oLD6gxasm;upnX3Ngz|B+MdoJ@HAQ%VIDsK_vA>&h<4ND z;oQ|IqGB|JR{Z&;`&_8MD4KJ=3U#jZF-+P_(Sx4GHER3)3mT$Q@vZOA$qk%3As9EY zQHLl)m=Vci2QvdS7ijOY7spK}4d={tOm+vC++P8%q39~rh zI6Q)2wRaHHLR6b!zmC+S9Mr*~8_O#?Cf27tn-0`+h9fQbh1uxYrgVDCKGe+R z<1a8W$5#BhjY#}AP)4Ah&_s(Q@N}2zfYABeL8wDb;(qa|-75cq*A3i|FnE&y9y)B`0(`1oBK?ou;qkO`; zad@U z24#2+%3=jI0Q^WveP38++4b(VYejDEiS(8qT}j`;B2zv)WqUNie);X&BS2W-vvMh! z4);z17r2BBoPbrhoihoc!Uq0Vj>m}fEyyPH?xkpYA+I)+P$#63zt1e9H9NuUCC_^- z>8@Vh6Pvq?Y$Khc&?vm%vAx4?L0N0#z$yVCn z5X2G#i2H)WP=ZABWFA%rWMmQhPesKaq>fG8t%HggfJ}n9H;J1ydJu05S5&9lc|d_B z2>Ke3hGQa1P@~cUZaoMAky~>=@3UZ*uzljZZ>4nfRP<9Yw@_qYS7ujB^%$FuLR{L= zxzvl{SR=lH!bCY>s1(#O$r)bQ6uM#ncs@uel+t;Dg*3Zf=x@Xj9~vG2gnZ zEYfWrc`KZm4YM6EP!a`z0nNJ3U$+{EAmKtqIz9ails}mr1rCqqp`fiX{P0Q@`tACh zj3?eW1Y%OY3B<2KGqR>3C`*5xJd)Rg$0fmqF+j-P-T8C^9NoTcRbVy@GxHI52umqH zYc_i@!0175q1!&ce_ChU#!;jp7}qx^4q}H;V1Q>4x}93VDv{&TzKdoLpPC+S&D;GC zh(b=LI4Z|HWdNVdyTD#>(j!(FK=jGA=Hs9Z5^NU3rDX| zJLCposAl;lF($ZuRNt=`Rk)~QH>3BZkUi9d~;_H2I%o0(FKUt|A;Ow{^O!@ORy_mDmEr{Ow9~=ko*i#`w%-l zluQ{Fml88!=fuv`WW0AI=v+7!2(N-Kf+p4U1T|Wr;1NmaUR?lc{>$4w@#%9FV~2O> zC7q<8fHAaGQjJR4muC)8(Ep4+Vh3nV2ChPolz1`8Y>Xg{;0w^5J*vk(rh9r5;^;ifbC1+ciZ$9kL%D5`nA&g; zTnS=sQ&RHXQxIsTaKRbGpl5+9gDL(vty4*|dtvGT5n6+%6hU<@NKJC_%hYd?=}?1$6BUh4g5Aat@MV(c%G)F+etA1Sc~Is5 z4o9?nQ+{5aVfU8ngUCo0ZF~kZ4n_M@e?PPhlUP0~wi@_e#vHp3A$0*NPbb()zsy=7X5JwuV+Ff*3n9 zZ$=9G9>R@ClwAZps-B^bVRMxh2V;+W#-GbhGizSAe{W}1VDp6M{rBI){Z6NKr!t1w zp!Iim$03`*lKMf0*x}Rm0XOW&pyYfKNit-&3Q37@A`vMP6t~g}1K}14^Ap0`ghvpL zS?7xL_pMMf-a*V{uUG(l0(0+L@*;eL06XFY@tPs~hSEEa)LP{*c9PP>T7U@@Cy*0> z)3z0d6b3SOVQUT)=c(e2&kWg;J&zz7u4gcSFdot6?k}lgbNa70i#7HGGsplhllf^SjQ3t3KBMtCsBNokxV40 z5gikgexN;|y824|S{g58|Mn{zN!go-JRYHa*nn)dcz8ke489AnU-rZGRMB7Fm?z!t ztrAmrwy29)as#85F3NtCWY|s0bYWgtYmQCM=3gL@$OKjH0#YmlY6ss+jvIC!9+I3) zV5jdi*1A4ev+lMARPtb7M*gJMFZbv{Tk+GDmMO^5$k2zR!@1+@q6CMSq^2oWCWvjXXT?8QBQZU^TJ|-OtW!_O|9@t94jfPj(hFfYGgQl?ucOn=P`92l{mc0f9a@<2l1QGRL{5+q0-ShbFggrAuaDzUNma3=IskAx zk?~W3mE`j0)t>F7haS(mM4|@)JK>yz%L)M!4F<@4Forqg`qaUVBn$HW_IPKMy1mwVl62?VdswKF`cRjQB9=28kprNi02{K> z{#ymzgk`}ET>UJqG5{aOu(axGOQGAbg7@leqkVOuNsuPQ70)-dr?akz#2%0K6h%S| zD-naUCRq4?X&Qt;DrVOae@Svld&TsB7dWiu_sOpPH|MuY3fGg=w!Aut>pvH=fh4+B zgcNiS@`!h|n@CndkVhQCFTJ~wgY>`u$^X7D|Nnj&v^7;9Vlmlhs45%$f4UktBu;&O U#7575k661JYTBw#Rjfk(4{1B;tN;K2 literal 0 HcmV?d00001 diff --git a/tests/ref_imgs/draw/render/al88/demo_render_image_recolor_2_opa_128.png b/tests/ref_imgs/draw/render/al88/demo_render_image_recolor_2_opa_128.png new file mode 100644 index 0000000000000000000000000000000000000000..2a88492a467dfd4408c99d4ed536919b9b50fd81 GIT binary patch literal 11603 zcmeHt`#;p_|Grw4EmEy5Bvi;@99EO_VQs0#ah)4yn~~#;GvhREiXzlF<-8HH4DHBi z7(=#ZnPi!moyHh7h8PSp&g1aC?fd&zd>%VLcz6uP^L`$#`?{{@>(S44HzbbA9u*N0 zk$~O2<|rcajiQLifl0B0;GGdfd8LSmq6qAog>!uA0<$yjVvsv|nNVn@To?TZqJxoK z#^k)$2^SNio8OI^)>bUa5>vcz&;RDbhl(->6@7L2Fh%c&hN5Q|AVjJ@>k~f4&C7DB zbaeR-&6ZGe{3w%U|1k_!9ZAQhB(P?Zy#+!ZNnb>yWTw8Uo4|7t3BNj)Tmjc z7x@xGkvB_H&2ir;O;wCv{_-GQ?S0`y`eRmDkKRfEVf&-~(FIX6PlY`(S2=RV?10YW zN>%T!_+?I^kGi~|>vMQ~eEhSTI<`TJJB}XeK6XSW*Vx_-hJ8%Fy;=Eq@I{c3Y?gT6 z*L5L(l}dHmBrh-jv3+%diFi!bdEDH5d6V4V-=8R{%)>B|ac0uZl?K@@*nz~N8nx%) zP}%`_ZnlAglx;25vF>&MjJPi~Y5Rcn+o~Hmm8!bpw^1nGDwoDhtOTubEZ5W0 zLGIkSFcb<57xVcsFWv+(x2QM9{3+XDFd)jP%vC*KM?5Dd2hq;m*l4GRHVWyeP!y`k zQ|oM+gI3{@)L-APFeeSbpLKGI{yGH0sjaOglgZ6=n|B3B^goo0%7^TYm6d2SUvzBj zG-0v7A682Zg38teA$|Re>}mze4t+Wx*=A;T*lXUYCFl<#dM6HqC{t&hcmEg@agchO zAEUFALSpgS+%<;;?zpjl-DJtWrGQ7D2^p0)u`j5z@#Td|pl;nf>)~}@oqy=`j?}33 zU;F*Ppv(QFEl!9ZPCa{vqa%(&t6&ptsE~Xse*WhB1}*rJ@bf1JUMvj{gArJWW$1`g zq55~CTU9eQU$2gDdxU$rd8eL@0r7kX;?ef$&U^a{=p$SEA4&$5ZfX)zoiCP^m4VJo zAa)1+U_J0FZ}O2Gc{bWe*T+e#(B9sj!ijW{3MxkOi<{h$v9gu z*_-N)17*W18Jd`Ql4CS7eo|>~>bgR~gW;|Y`ZODzK%5vG8&laf8wzOd_0>^8b^e%= z)Eaig;)zoK;qJo+LZuFl{jP;+97PmQt5e!la{IZoCRP_(K&{yQxV|&EDQzk({`=@$ zi_!6Mn`*~p6O>*_M`MWeb)vVqfq~dPMO!L}eDMw`%eyH~m`sc0W3jW842^{3DO1}Wqguz~P2_XP zJ1Kjk^=?(eszU;yY#Jov%jBeQzP%X0-fYm=?5e6Nq3Iowl6kg5FF$!NXKy2?Y5SNe z#*rl~T0MTNU^EcwNehF@g2wgWNbu(OUk$^7@#SqqVlq#miV9sd;T<32AmD3j3yg(@ zFmlB4DcldR%gxk)M1t{)AqAH`m2jx#YzjEs!L4O_^J z*ik>mc(K;o+S=6K9}F-5sb{MVBWwdF*xOjg?5!X3Q4l}ON?vDTc4(Na>s319dsFti zQ`{y}qicN|<{g*7cdA3cs~zj;p%aNc;5I-_bUl@~^OH71^QUI1wWO`lCf7|J&D9G4 z?91$G-EkAQ-)FG@5p*$}&)`0^F0k3RS?gXjTWWN<;j{~*{;c@nnjk`>ahaVL?TYQ? zY_?-v-VC~Y#xd-+^!2LY_T-q3qxrB~v#0eGcDs6GJbuwD84Yf+%(t>J@2VMSa!bflpLi-1@op)_CsjmmK=#I~-Cf?^Zn{Fs#um2;!_TeQUh0$FKcA%e z_R@agxQXvHvdC=9dPccfGU3|_gY-VX0)%e=75N-+@$@YThRhXm$lBgrw-A3`$Yv{G zwjJDEt*mbC!F{AGhs!Ko)Lc8q;lD8!%;J}PSJ{urY>lX%q`KZNR#1yO^S;mbeL9t@ zgq`5Qe*ehs$tK1^xk7!XGA+i3m~h1>KG6%n8D0@e!MoNY7;ERQorXV6V5d{^lCeto zrvNAagouQQ-`W$B_Jn6J%V#iKwU}V(w3Xj?Yr(gxrc8;@H`k#fa|ydFC7A!@pE{3q z#Er{7%rW0pZ|jNox#MEjF)RRyIM}^(z z#3W!admu8Bxp2N21d|@9SMoL@>3N%L`3#EHZE9+o#cl^9XjMIG?Qdsi=iQyOIX7B= z1xNI0q=%;5I>i24d64*NVQpffJd9ChH=}o>#6|`5O_Mhfi;=SYqx%_`u(-I`h=8|w zen(x1wYRg&&dCw(>@F`ay8~cI^I(gO`RuLw?2Y>DjPA!o!Sv~Dr(-tK_rn3>Yl)Ll z$%WOAT2TRNeSb;2wY8ORVo!Zd11yC|rBcne`^-IWq%Uf;FhFOrV>{1@{%T_gFBs*n zrmQtrD8qEi?AF)T{O1oC+1EPNRguPykDmdJv0uf^%9{yMFHwlEgvPGJ$*jFp^NmyxMssts zK{m>Xt5;;>O-w+*0XB~n6Q;iTCka%al_UW7?IvhoP}<(!-Z;>|gZiv(E@_v$RleMJ zA?9r6sq0dftzjgzAmHt0Z$L9W5DI8ui~G6b=`}&u9ij^p7r=)GLh%rdj9HYz!qqSch!@Y|5gs%M1$Rf0hi%&>WL0#(}sgvlum(0V45n}QpYDI z%nS{mj(*cjp9gF^F)^{t++IYXGUiZ&&n~|(Jv|+>9*1e`>czSn-;%@W+luu0ghQyHELV-`@Mp zQ!B2MIqDIo0^@^OAm=Eo3zN~b2(NW5t~nrgp<>T!f=-CCmv6Px!8xzSg=zVX0>q7@)p}0my)S`T*+7Z@zZp8%k z_O45vGhh(XX+g#1+68WV%14%-|9tG$p1^!BYL{fbw>d=GS!1BOH>bCy{G`+3%#&KC zE;n{9vpD_l`)_z`8q25oHPK3jp8qv&g;k;jCxSzfSbL*QDfu&KtP+F45Fm@oP=++I)%8mWE>iE&LQ=+{<#Asodc*r9I>#Z&xkH`AWe}m|6 zrcA*D&VrI$O-R-)x+#xE6AiMPI)ClojLR&s{hpb|6V^Yr0WwAH{qLi}04qmK(*c0Q zb`rOCQWal8tOJTODxYX>1~kKg5F7+(&_ECUz=Cizw<+4B_jntX?##+(_HWFRx13Wl zUzog9%>dXH6YcG_l6x+P>>vg1*RwWVZHP03=C)#7#pASc0) zvXbsBOSfBNK@*`p^8{L$T`L`sRbCknNH`#AiV5J>0v8d~7A2szg?Z=_U#mPdJ)k^o zh1kK82Mo0dEw1&|K?&jE;kZn6LP9WO&0qIv?F55y(d$4(yM4j~3ZL|b8~9O8qfMLC zx!nCJg8cXzM`wNjKj5OZ9EA?v7^PYyA|*J{{Stw1z`Ps2A~om4=5a zUL^tGc~`5Q`%}H;qn}Uv$tfuKwAFVu{FY}f>nE+15GzuVZExhuG=+P_aco<|tP}f& z1M>ij2daPOaORtoJwRO-6WhFf4BJ@Krhj|$+e#E@Pdil142I^ZXUFXES}DXtt5q{0TZT%C#24<=q=yWyU?}V zcOVHW-AlMQ@@tfXS2py}6U$wGJ`gE@&_HcV2B(|v41tSH%T&A&5VRb5Q$mxst>Z3# zqO%`6QmI<0>d2BwNOrnka(h_n^FBx522jS3;Y|OYnAHQ#2}EzL!e)rE;r^>*ky>`? z@+;lBX@l(7qfc%^O9p|G+;=9}zc;8YBZsGaajx~w>XB*sX8N<&W7+B7Y&<*h3i*|w z{JthA0DjtXIRDUF!RYQx2&($~v2cU;f-cwk7^5=I)oa~6)@{buet-N|;$D}Ixbo4J z1k=@+ScP#{!;$*}cS(3&kW%XeTmeFh$*g?hMPwz;>=PJg|Hp!Am#*^KGf(67gJFUCa4-FT;nST_yoe)aXkzq-k)*R=ql z9upZMC%JF4#79RfmCW3H>jLz`r%!~)%b^tfi(vrr*!dyS;dA7EL6U)-JZRF52BR`N zpoqx-Glysm5Z+Yx6b|7~v96jSZ=RA=;)KmI>p@SivoILe%qwq;6A%=XussH$XgOaQG~bx$ zPS0f<^nKRJs6@7PDwRP?Y=;CB-N~IVT?kwPFfZTkEauG!yI0n+JAPAxp}Ix){hlG< z#Wnd>2orfmtEL4|O#ky%EuT(V)9Z{VcyJdi#GWI6dv9`O#hE|2Z+jU3G=^;3msK-e zU*p&&==$;-3oeTov%)*@)~~N;uApgKme{a6TIT!5`g3)_C357|+~nlsz~c#In}S(V z`!5Dhj@RS8wZ*T}`Hp%85ngd-QI`fdktalfEs-*Y&zhWL%}18c^hY{xqE3hom78`( z9^Bj=B+!h=$)W+dT4#aGdC=@`SPr$qq+Gz@-i^Hn9O9s^dLW~9qF+&iqUsv( zW=gqr4%j68^&kEQ)n@r%!&KNo&%xTIp)4$W_60_?TzIUeUw($ zYypJ>U`Pshl-j3FJr`f?Qj>D%yqo#?P}>%WhOHBtW>5Xt8a8|3{CVHqv^%95Pk#`< zI25&+Zu0ZHP}d^&Pxra6kOFS(udmavvmZ22nuV0C>+FF;sWbv|Ck3-B1?Y;2yfH9o zV}WUAaYHSo@WZt3j+fMf8Fa{?0?5#6g4ckI_IR`(qgM&0R0JbKirRo%kx{v`v$Gk> zZUI2JuEjsJRCnGtOtgrOUYZ213{X@8NveYsy%m^cr}H(y^&DcGfwM24!9TN(HR$eY zs`#kapQ7@Pw`F?#aH_`oYHt5Ewc7)N@%0^-!_s4~cUaduBF96zhX9)>{J4aRXZn{f z^ADP;-3Js4j7ZJrPzJJ%At+_?)<-=eJ^x0wHIXc-WR@1rWd1i z=);E>9A1XKSDo|P+8PqQD`I9Q+8}Y^%123glP7A@YEM7lL;IIpsvSEl+SX&h8iI*j z=NpedNZyen)0xctLkMu786JkyodQ%G9tXAxq^<$}JrDu14YfxM#RFfFqw;4q`{w60 ztj8IzJ}{J>ox+LQavPP@-pPSqRX0WcUWoOg;hfd+K6vOhRJ^ZsLHWD!Hh@tdH?)mr zG!(8B*#J|ixF+%leBrBsU7a(~57}&xWtVcVgoan~CwdNvHe}__bbQo-9Rh}Lf2E8Z zIReOfJ%4Y=P?SuVdx}0e!oM;6t?&+9g-5No8HcDLgn?agb+eTo2&X9xloyB4KYdwO zyyL5xuJbGbS?64A&j*_ntwP|jt!%AwW8R+v79!Aw`2(CY_g2n%t-NqN_78W}-{FOy zH1Gz3TOvCk+C2fyn|uyM**Z?5?4&#!d(2S%vX2BchBt6^`&5w z10TbBgfYCMCEPlYBk583m!rMhg69M#=ElYp3~=(y64!u@dClR)YQ0AjO~E97(%=I} zhQMJQA9!al^W8J3zYH*Xdwsi?z6{hzM(MiNE+>m@i2Y#MKFc?0a#km;Cz9fll0dyk zEPLw8reLPUJ?yG%VWvSgqH3HIm+Q$vmq&j};_Y0@eH0yTKsph65`JGS)H0ztO^o?Mi-i*WH+;Ocz3T3849-K1AwfhAbvo4F; zIK^roP9iT!c=G9B+e^iL)t3a1 z!ga;j!&NtQe~xZ`(-7O4%=xA|A=%+Uh18_=>S*OfeOU>^JdTLWo zHb~kOAkJR7Y@lCeSB)9vcY?JbeG+9N-xP`I5M*$-5l?vR)<8#>cUcAFgctCTX1eD` z#E-5KuJxml9pk+9!ooqr?2Da7$J6^j7=8!sb{Pw?eL8uFgqomMMi{&_uy`8ybJ$cL z#gZjYxUZH3in~gf*G8Ye3A5bx*M+~Xag=SgRms&j>-`XDyR;_Zp0j_FWtE01^X8XR%EH|H)?svQD5CDZZ0lysf4bB);QRuJv&vY$tc2D_+}s~^l` z4@SYWZb?0e{t?XLDV{6uYXD=dFI}>5+~-4wv$~~&KYVQaY++U#pj=pL?m;{dN|uF| zgd|-2?;>XK$G#S1bz9tHRtp7tw`E{wCQ+KyR-5`d$ZIv){8r|Lym{@{+hZC{IS4o> zk{-k4p!J6YiefM3UNRQ!RC154gN5tJhA(;+`{XglAe(KFb^W%Ev=R)z_3TNghRuuD|)&--Q1GG{fJ3fgYj4=1hBJtYSU;TF5sLXp&IRY5$MK&s} zVNLOvqN~wfasA%+yLl8Swf5ERek`m9=-w$;Dpb4a!b zJ_njJ<*2dlfp*h_r=vwJd>O4DU(kZD3<*4GS(P`}_QGbR7LP;g1_rk{vv0ua`R3e9Wb7M!$&;Ys)dXfl>1K*qn%^}CB@c|2mD@tB zamIzyk_T^{JaDXM5cat+ufAy_CmO7gy^V7Fr@;2Be#{Y0IX*OJ;`24Mq>cq@UKw?fb#vq{QS+c4_nHkz0TNW6hBvjtx#kiBUB^p-pK3D1tLgF7LttIQfc{EMG#0zp z@Be1PK%_DA?jc_@P8)*QFw0h39czrzJ;Wu*g+L$<-PF@EMIiQ^ zMj&?m;M@(r`F1xu7lAm9xT*Drd1%%g^_KCSduaAz-Vli;b7n86)>*-fXY~TA1>V)N z$3pV|_BSmm`flJVZjo)lpKM{-{%OD^#p2z4{+l>nf_&KR$zT3i32n6OcZSu}KqApZ z5y^Sv^tmIoquo)9z1Unt(Y_B4Ygw$>gnt82q6b&VOpS%*8IA4rJNpn{AB==8)Rouo zMd<#kNk0g$7D^I`+$3YO8CSE4o#foAhde87YV3SI{|F{heX6NGvV2?;fnAXe4OY_G zUq2e@$q5uwJa9Nmsg#9!Cd%ZMe~oZbTZyHo3dX^~Ay@?ytK}RJK=!EAh}?Q_Q=%Z4 zsGB5`Zctz+v$jGrBU0;YYisN4=lyGb{rbff{rIEP^R|hw!(PP8R? zR%VcC6$4&}WAeVEfy^Df-OQ_%jt$_=BAgg!cB^S~+gx#w%2(jAvKmZy4FcO!(; z=cBP=-20!bEsU}W>`hr~4x|9L<|ZlWdd}C)&D!ES^R7t2xnO2*@9U3FO3Mukb7mG4 zC%G?QzMM*%9Ag0i0ljm)`=6W< z;O_3}VTNmz4{WW_$d4X9@~_EiciF#x|Eh2YEl?w3(_C08-QX}cw@dkef6dkmo}iOQ zx{*KPB)3j0#AX;2&}g*eTG=idV{>$~WRxrVI;@g)y9l>Qx$Q`;3%lKMbvm&22CHYeKV zQHe4#>ePQaj`JCQKNd_h8fRw|xQhi7?PQYLk~=5iXr~&mK`PXyrY1O3S-bb8H8l^O zH9XlX{bS><8vUTseN*wJ4-N}Mz76&=sqDGYZ9|h+3Vjn4yUI$&WU3=SSM=Q696YvP(NqJQsx(sIZX=(*wL&(ET5lHZQ2FJv|H((^GB~i5 zloS_vWhEsy`E>n!(~yvmwolS^4(w4jYxLHwTXDJ4mo8aLzji~`*3{4zLseEYb_M|+pLX^2ihj{qYavBYT@7RX};@o2)iV}EfvShz5iJ3Qwj_GDSQqNj)}!}7IRG~@mbr1a;z+OqRt&p&x;~Snvq*pTP{96-LB>8 z;p@LUQZC-OaRXgfzo$XL%f}}!@cb+N{Pgs6I~hd<1@Zc+z#mulOkcw=A5l%@(-U$f zGYT+n58qHcI7Bp|TzF%l$5b)hV`F38TY{J3-k`>`Ds3*Mb{e8kgLA8PGO&y+)YR%~ zaE`H+jg6qFsAjaM(&Iptxj>cU+KcGA&d$!5jE-T$e=8>7p|-ZR=(-U)BMy5mx&4mF z^0h>rv*`x&H=nM}Q_c7$=c&Yv@W}9RJ2o5BvQPMr5=&wfdplb+F6wcCJ7Ch7A2$zA z$ai>QgT2L7;oBQiv_PBUgQ_`ZZW&b-6|eNpWvGvl@^s^JzjSpaCM0O(kx)!#q{sOU zOFUzSf)`0@bCKWo-%aMuaP@UqgQEA*MCL$14s!-cwWMwMn61Q?k%xhs9Vc!9-Gce ztE{N_J~WisG;c;!{SY}ma<<1NCricCc=N|@!gI)>^qrTNcJqqvO=oM}~Rh3GK zOS_z)CAJa1{e^JyTHDO4q^aby8n;xkaJU#jAu`e%Kp`loGT@UJ;99mu1e#02#>xr` z0eHdNyTqoX`^y*D?AltKWXGRvCjeEU7|*_Z-s*f(RFr4$Zjq!Zs5rniA~7s5@Vgrl zAkYozffUrV>d1vIr~;e@ZQ>mRt)AMsZ}+2n8Uc59K4)L*g)g?A z@bm;SDj~Uju1iz6Dwqf`P`!NU&%1Z;hJ}T}JG#35@`43Oge~fp+R60EMlQyCRMxU{ zpzGAtBc{4Bn5&Zw=nsI8^chT-L9z_lce&FQ{|?aFnb6?lmc>}_Ul_ZreY1InP1Jq0^YXB_6? z!9HmGhMZGu*hp-fD6^8zF`n*H91UmARYz@fI{NtfYA#nAWviL+-HnXghO?`ytGlOk zC#}oXUZ(E=WB*XIi#(MW(lhBlFt_Sl_MZHBcw$j_Mk%8pc3*@-Ce(8Lg}$yXLu}9O zB6I!xzu#2Blib|i5Q(j^E-8;iudc;uKCed*~L znuEr!fB#+yi462`6oMUYj^RoAef_8y10CV$=qQs)r_q#`2`UJcmIE)GSY4xAhH4^F zY}VSHGAlI^_H)1@zz+KML+*#AC})aDq)V%!li`$`Ku95eB& zD^u5JFmho;z3g;_xfFm=nn8it`uQLg409AU2eptZ*SWAp4^$~17(NhXg~%#7#%;Aj zW;><4vm6UPZKUKTvw_V_R;3;dygvD~z?~@MIJvx$pMQSwo{9i>{mQpn171~K5hhw2 z-jaMXuurTP*0jJ{0%0Mrqcnp?r>o|i4QaB~K601lfAfQ{17VF$Xy6~^e_`ozzlCyEZ?ek62cASxG6>Y0xJ*Z89r8okRAGtj>Y_F`~CIn*Qo8O zD2E#V^TLM-#l<^a3e+MIQakmsz@2G}y)BhOsNd|ETGkeO85n*5Qk<*3POP%j%l7)Y?-*f_(!(hxnZA> zB6F1-pLN+Plz_J9C+9NBIDgu=^A;8j>*Mi@i;EN79&vvvkUIXT&{m3VlD=<1q;7w^ zC3{Im2GrJs7y1%T0@R&Qq7ERn-&hmvMDnibBN76o+vBp^<2y=;y<)^R-zuc~u!kC0 zL$J}yZ){2mOpEr2f^LG=+z20;3$9LoD`WQ_Sm0oE)A-IOHw~*^x;=Z&z`y`Rq+NaZ z0G;t^V$n((bS4&b;Lf3eVoPqfBL*9;TnJt6Qe;m>ZMV$@_w@91o;vA4(w>dJ3?F&< zcTuEg1@4tL-e~kDs3G;)%Xg`Yd8D+?Nsr1w*l|EEkbOWUO-@=1xn-zVRz=i`a z2_M$YBmGsMk|WtbrUgQq7;XPFf>szFwo}OTF5LYt-9UUfioF)4lXoAGcw#YYaN+dB z7ygfT(Vy^WOwZ3pLJtv%#N_s$x}p&)A2~#~$eJv2J7#es*L@ILK7_w$jx;(-z|DZJ z0l*zp9{m0L_m3Yx1_y17jEv;dztaMNlaMjb<651i`HxXGda#Cc}(!&hfSymTYOrc-^enVCd111He&w>%SsoSF#1Tnbf4o?3R#P*72s zS>AXz;H8kMKAW9{uG!R5^D}8iQJWi6SjUD))>G7Gc>AP(*SC~h$zWmxP)1GY*B68ogAtV3Re-~FPQJ4#*|TR)rOn)@L?Jqz zJ{rlKyKmDU&+@3>TI%#tP?eX@#my|<>0Mo|5~w>iVKM1nLmMrb%{U^UH$nt=sNOMipYB&6t{$Mz&8CW0Ey?*8@gu@zOk7CFal z{@niQ#gw>pPNPCHi^aNl@!~jEO-`;f>JD{6Y1TZ|fv_+$gR{gB4GrZOyLo!zNp5?0 zKcY}9;#$r47{p=u&T>Ij*9MJ-&J^goEYGB#;hD|(Gb0a2dJ?4Kh<##iW=GN~U z01==nqE_!kiBAT`jIS|A(ex6QCSbqVIFi2XfTz@NZ_>}c;?_(qa0fawmx7%)dCixo z13`em=?4tTZE*eIFjQH?Aww*8@SC<@G_&_6wUN6&w`^{1uCIqer_kxl@p##v4$WIz zTdnaYhN9}BoYDGcppPCC6Vo}lG&?(cS$D6ZqT;dG7TDysK(`qU)tYzS zxDP(Ey%D#dtdn;+x&2?$qE$NC!U6;@u(z?~b6ensqp@13jlLt-rv5ro8o9lUWp7Ps zYW~gv5!j%%y_j^9TyZ_8l-&afgsFvv3uccfBUB9->)W2!1@5iRCgJmdFj``l0T%;R zpzB&hLo6(SNA6)Gf`6K=vm(oKjR&=>b4YF#%ZuVoF{na(AN?CqPq>PiTHp>P3qm&> zDbn9=pYUgvYRFr2DF_b0Y3S#xi5TUPjwGI6-Uu(TTxPO_goI#Yp^d^d>KrsdLh#a; zGoyK-P~8VfpQMw>R}IM(z58aJ`Ic$q!rZ2I7kQA{+1VmxBfry5m235GF$hs}%Nsg6 zI=dfTQ@wo4E}%SnT>}fv1Gp&akrd-xrlhJ${9oeHF}Vb+*wWH+fqi)Qw505|!_!MD zHS8Z8nx9?EFNvtfYCOs}bzd8H%p<*zV%LK$5fXwI6-g?zDe3j7q$XDJ(7_27vQxoz zfIPW3uRR@1tgfos{itzs6D=p8)~y-PFh4(kLtQgP|J3`0`%w}hM>+YlH$eUeYyNqU z&m|t{%gE9tu*Jp`noA2Jjt-xoBz5GRjB{$!x{JZkLLi37|BU%CzH zh$99iAw}m2&na*Ruiy1833$E6?#h)b%gf6#wL6Rnw6>_5hsV?1Sn`Mudi8y~=qvfA zMXpy*;&5^Es$lf;P1~Kz3{WVMoc-)J&F#fU=kH3C7)$nhRo&Atl$F@$uzKFxRT<$wm(ZE>Koa%H6W<1M6)lX%BJi;IhQ{|q^D zP4~fKA*ZT-d`|l@=Bj z9#cUhlx!26Fu+s2#WHQqW&Lxj{xu)WR_{Zc0_yuXSG1M%>J!neA0Q)o>_inIUV^l$ ze6w?YjX88u!`jyNVDxp02V)~cY*x6dfU~c+*Fc=y*w}dV#e=6zSA|UI9OiitdEXb- zQuXs8&D}|qN(+Y!rH8op?#?K%mgXl}-bfGtgB~3nous*KW%6nd^DMY9*N9^P%^<8m zz;{o=-<6fFeAY$$ZaVFBigZ*z4ZavDs9yTdIz*qxMTLlpk=;|v5OTD;fcDW5dwKEp z+X@je{~Ei(8sf4DK#T@D{RGh<_Ke>L48m*@4cXXt!Y2SiLUmwE@vudW{^eWicj zbb_9S=vhN!q`SfkQamN$UL@$to%eQ2Sto+~JI8yV%nITsFOVeWm3SO_V`*~FZO%w^RCt;%3mXnZETk%t_$F{~KT} zIKh&6V_N_h@Hh{t6hR>&&tR9-&LG;i{Ihm{O9PK$VpE_v_2y!H&%fAS^NpvRR*I7H#pla zk|e<&4>q5?G0u7Wy{>5W4)tMcZ~N8SXn~L%9*%)bN>@i`wc$9tahcV3Iz#Nv zg}8Uj5aTb_VBUmrSDQs{6C6$n3#%=4?)u>5uq9aBiy2P(I;GAV`vK5Sw>}#vK$1_! zvEHu8yq>jcTei z@5rmLLorm7_g$!Y=V@&(Zx@Bk8~;n>KRWplsQ@~;^tHjk3?*}!)MJyz&TDsLn#cT< zfL_!@PT*CK#cE0O4-F3o*4X8~o;D^HJwI0lX+XJ^v@^Y@S><~K8F}fY-W%LZFtOEW zKL^L9|IH7Wo13d43&oar$XOm;bNXK*D%wA?Tnd6_YwN>+7yog4fSv8r;>on8=z|=; zS}QBBCbgY?M*u++JeM(TCRHVoq$LK50?5Cuefrq3WA~VCb9+ zl6y{ImWW!?Qqb^J& z+~?KaWBcg#*4E&zQH23PL6o^*A?|19QqZdqJLed4#xxh1ceuz01qH=EYtDKI zbsF!)xzgv3Na&yA1^JzB5LbqU2?Z#b>Y8>W2u-fU!bQ zJ($Nz8*nO-^xhKnxd2c`NJ01#Z1~d6@>FpCsP#@6g$2-Tl{SW6F}dy;BsXdPcrhrX zeHIqLZElU1G?s%^4hnGZHxbJt)4*Tp*^fudq+S%@t}?5q9#|XuH}=9W7A6b+t=)x} zXeF}l2J$Cle)y5PHc!wf|A`YJ`k&2;%%xJ^SxMt?Xf+Y2xaAETWoCVS9mYBq79hIu zP}yh*=Ch^;YXQAr>$&%@Vej@-J*lxnox1|DQf1}wSgn>JX~9Go8pWHIG-pSIhK721 zCA2<41fO*Z+WS($A#!6fT!Rhv4kJqjkAcHMZmLM1RFaeX4RKCTljEv>{=1qQ>mu{n zU?w>C?FiQ6k3Yaeb-5n1Fmx8b_)<^!Jz*5U1PsK0*UpIYc=Zq!rM*SkOw$DS*s;BJ zu7I=E-h0&zn#i)b?^nbzp@~^h?8OxQbOTpNoq1#5+r70Z0n(GTuXRBR;wc_^Br7{R zHLp7>%^7KFemlY4In~UK*{JrVCI8b$j)W=kbL|6vrmXBPpAI8U2p^b@e+ZI;s#1-CB?N{6Jrimx2)rWr?>S z`MohMsu<~8fWQJe&es>tnuV8MgIQ_MEdT0vj&?V>x4>lSVrpFInQxmBk@S;+wI2fAytITnSpMdal-aUteU4~XZuXenwgn7vzP9$gb*M6IIT|Ua<4w0v443z zqw5F6b_Y+$WIbS{7#EqhxS7!lf#omX?*FxXEC28HET1avFFsu!2@dBumVpC9Vd!s2*2B_bjsH^G3=2X7B?&Q#Y@x*T|qAMf@c{^7BV!BIS% z&kpgchHZ5(Y@w#M?w(*uXe_(KFx6Ocnz5;X#r90m8MTlNl?MG3QDtt|H)c?rhrFuz zQwGOLu4IRv50J}1*yDjYqHi}n> zfi%;ptsOJ7x47FvDh1|SY-l8lvC0*r2hGu%MRfL=LP9;~S8xhOmLX7mrlsptz$ zsM|8BK;NRvd`>2vDuUYM5*| z$xR2UL}*~$=xD${Eiuxs%b7=Q4Mmj)Quu@NGDY=Z|!7Y#c|_n<@J)`vJgK5i?NQQIF`_L&>*?f z(6*{C^#JQiN?^EmS0NK1luYBZ9TcDkeTE8k`v|+l{VDj zVK0Se9svA05S)15|0~r2?Oy0DgqUsP8w|Kf@dzLt2(m|sQBqcVy|VyiPSs!hrK z$(0V*@^ph=ixX|2izof9KZNa!9!Mk;3@W6esTiVnXw2D#BquomY5rT~T$-dK7G6Kd zv!5ZY-w4-usiy|&woxJ>AprvHzuqD$8aaCdTnolj{Zo3N%Az&yEW#1)E z-HWHxR#sA|R1mpW(i74ehR$&PoLCHnC{mJ-x62iP_Gh4qc03!rN~O}eNMyt4!kVa3 z_<2ihnA}3+8;F+|GH;*b1)P9fWZ*S7s<52o=H=y8(ZBuxT=5wfM9JmH`;=jos+oyD zmmffY<%S##uc!K)z_#=hi?4z^82tK6nd0Rnj_rXMsW(Z17*ld5IZc@FvR*~3%5QfV z!9mwT4S=47T<+#=B3Ravw{Lqru97S+3MR(+V4XGdgWup(ARlr*j(hJ~Jp^N-)(`)# z*HC@d&~@Ngf>>ci=Cu*b;P}T1wGO*N#dS(g>#7=-@M&L2?F9Sj#WUQ!3{x;pD@%MO z;|kn1VPe1b$XZzNY(1#4>!mYFMAd(b2qu1lOE{G_w!ZJIWm4-L2m%k{+9m+cjWoa{ zz}ZneDuZZ$pN<=aM^QXLx!XB7bWi%vt*IUvx}jb!ZLo!hpr@*;YJ3qAG4-fz$Y+ib zB}LYGU!DcOn0blQnD4H$b8c505;1x&!Re0|2I9v!_hxTY_$g)S=bKwV@y)3@az6#* z%^!BO)=mbJS@gFx_5BsX)Q(8|HcE=#as8d#VO1M{*k^8|v=xs@sdMYc+STP0Z4kol785$Hqs zYwKE=1mr6B!U!<)l$`KkMSAcq1o3F;>6o6WE9nLfgg!SU%->Xm4};|$9rabnr26bw zJUZi}lko~eA>AOySQ4&)tgXe%&y0*Xi4k;^V4Y{3OKT^LpvAyTT2Kg&@AR)vVP#2}w0by&H*b-#se9 zN>Hil5Pm~N3=QEW^`-fj(RGvl51^1>c8-bsciaN1$ygF{Js=Kn#=#CjYxDNt2j6US zR@!tqmmviYLF^}~U+&D#$vKnRWhs-IdG*?TC1K|~S*u2eeuUjxTWk}>GOi**w*d() zELvM&{-G$qouWUvIyW@;s`o-1FDHb?*Pxklj6)&HO?8YM=*Gh>s!rJk;Y6LJs>env zj&J(t)jm|P)Wp8{71)-wHDG$MY@0BT%)o47?3{$!}uRQM4;O%J|8?AMd%Mn?8Ml z3or+wuLH&h)zqR2g#-m*y`axCyA<$3Ll8XO@?n{kSYFBO0>A#`$rGqdLfJm;_?lZ?81sn_C8i%G~>JoIV1oG1r$lUlIyQ$T{AlnH1;` zxPVX@(4Ui&15})yotDI-Pw9&R>ckk;CPQpG~9aVHT)T3R~vY<;*nB~=UWPd zQ3e&YkcsEC2jx&ns9IVeWF!_AFfZ)yPa9nr?eABLHro^W@kl8m>mL}v_}7R_NF3L` znQsa%9^2CcE_lH5yNkS`p&<;z$ioZHj8c>7m_bu;r!tS1%a}Jpmb_kJoy4# z3J^@x5?f^SIaUu`2y}LCT3CaLve}4Z4QNN@hyw@?F{fQhhal)n(T9`=$Ox{h!Iipu zt0zv0h-9aw8S_OS4@YFHu6*3>hxV@-hUplpFkUAwSI9D6LRMNDXzyv@z8?=-IQbu% zomWA@Lm;pTi-=$W!NZu(s9`^h1Iw&hUXLW|Occu;N4!XQxbFw|^VLHzIfo1lEHaF2 zz@NL8gHQvrP(38;ST7u_H8`vyh)_AS>tJJg5yc~;fU&mb>+8$@D7y6#2C2ZKFgubH z5Ed4e=Ht2-@d)9k1!Z#YW+B-EPkH(BsJ030+=&w>U>Ha7D6zy>=plY@?JPD7ZdvHe z!MVbH0Z5uMyR!W~_apv#{&3$vX0JLYF)Tm5+c1BraEHsBf5E%LJ=2rB;AZDF`Q7{o z#6uVO76hUlwi$u=`)DcrJa^V<7XqQD(+D?H|NDpkcIm&;_^%)S-$V_vdq!|?A3)mg u>woV35Ay!Q`Txl6KSuxmNB7LKcbO~l`Walbv4_@2+|)*Cy}j=A`2PT37j8TN literal 0 HcmV?d00001 diff --git a/tests/ref_imgs/draw/render/al88/demo_render_layer_normal_opa_128.png b/tests/ref_imgs/draw/render/al88/demo_render_layer_normal_opa_128.png new file mode 100644 index 0000000000000000000000000000000000000000..ac4c80294280ba7ec410b75e7c882a75e514ee0e GIT binary patch literal 54701 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 ju z!m=?D9Wih%i|Xr0rW@DiHt3TP%;Jwit=I@!Ki)9YS(&#D9!hD1z7nezO4P?whr}F^ zMN^m}g;2?)_f>+V@(-0~-!!|Lv>?b3AIQ7Hw5k^cQdyozG_C(ON>^*iZ9eYE7()-F zn2I(RcgzG;CVt_npTl^zsHOqScdN?$?|L~rLH$!6tIB4?>c1Wv*+B9*=+l0eItq!$ zN7rR6?snJgnY|or;Hn@7M4JGO=C7L|`AQ!ts!&|@p>}t6t`0`MaP${9c|MrhjGldH zY(%^VX!-`fr1@Powr&WSc=S$Ujz%Jx?(LN`$7T(HDv|wC(<9GV9q3nDUf}BCe8r%i zsw(7={O!5aK&uqT_Mn$T>l961-@x5}T^29bymo)2253c-*_jO_Qg4$xyTR&kJBUM> zO6;gIAr|Hg_9jHf%YJ6<%>LVd#Xx^T)nOpK0^`Db(ia`Dzmyt(#{e{&v(yv&5wQTW zf6(g%YC1U755)q56ymbjdYnYEsl%^_7Dho)u~`;puox9M6x91LJsHs9>QH|I!vcQ< z>Kj!)&Mh@{gaH$=eO;Bl$!~MdF};?NEEF6ZJTL_v3&QM?>0;7;P!*W~^2v=!-fVk< zFdw{XX&S?e%PK3=G=)VR2RaLdLYvbydjteygviWBvJw`@GIPhRTADP(@ zP<>heVJHYQHO%>J)qL@7HNK!87LFcSQM0MR`L#ND>yL&ZAjlpAVaHbO-5DTjgt!16 z5kBedPe;1n#OmOnHXws6;*l$F)hG4+TM&3q>UE{EIcf}kKE4E1DDE8`9U&GE9#~PY z$~e(!Q}ir9A7v)II%1!BBWhzQL-X_htWspoUR#R(MJggxKi}pSDcRVy@C7&%RY6e) z>gClMn~zgcLIRD6N&CitdrOdWWBcrIp!i*(Oxdi>U$+)}Tc!2GNg&u5E`GV`7~2%f z2kbf2@dx8{x6#<;or58dVO4M3hn8@qf2%(@V$|Rr4n0u8!qz-CR{kN-5I63VtBF|g zix)4RKi?Ln-Z-u|cvF_+RNKz6 zNN(J11M$DToZZMBzX)g^eN@bZxc=xrOj`1g+yhIf5l$$i0509{?dmc%F^S!8ZE6=K zc39>iUL1-yOrWU`!?p=X>Y3hEWTKVC&wN_|*N16e>pxa4zOF*?Kb%%Qtoyrh8XZ&V z9Hh8mtat9n)Un4vjg%C8LyhU3h<__@d<8IVawBe#;b|wopc)AB(fA}~BK5%8m+W&k z6jk4-^_tP13U9b3;;Ii(b(Q#gzkE^j9h8f1vl@*09g{&&(O-QQ*U<&68bRs0U!sjx z>`mc6UPLq-rmKiCLA#^loza)}u{Mp{JpCOqZw(=6-8pKwi76?yOV4zkwlMH?XlFec zRSY!L|J>jIhmV_t4rEGhuk)K$bf*tUbDYYYFw5=^+hp)&%&UKg1$d$z>^f{hHN++h zx$ktGrd?uuV<&ge0hu71t!t5x(trsHw|)-aB1qAJ0ZYd0i;@zkVtcS++pUgALW+ky zU#kUMDMoj&Dnn>2J*JXVV*6|3JR%RLbDSX0V<~4U*Tv{eYxDE-?_v)`Liwv#b(wGV zHM4b5qc{QMz~<<@MHxhd0l8ifRu|+edkWuXqM!u1>u?kTywyey1fL^*=PZC@LrZp& z>YL4H3o7UTeFQ<=Un2vE*0=HX?H+Q{;=HUCZj$QBTH$~1h){i;U8Tm3Qry>*gl}+& z$5Qa^muGy4w8X&a7@Z)Cr7>I8WZtztpEPrlxVxk|YR27=9R4@Li6& zqL3-+6#KoD7oJZP9>!@XeTcCMbxTpm^L|*>}Ok-5o#rb7fD*czd1+WRS!9KL;N?Vz}rf zlv%^ydS^hrs3S&kYmHP{_jd%1bJV_l}@`bW4)^P$ctg`mykdb zm0y+QoLx`A*tJ%Nqg!e`e1+Zfkj*9({dPLS&muy6F}%T^L#xF!@bMjfY*`2q3sVP{ zxf&!264j}6FpzlW(p*wXyG&00LcCQ$bD&=kff()DdWeb{g{b-r4UaTgH}U!PZ9c}S;A#|YjGshn=dmLoUXkf@MtZ)RZds_%d)PT-e@rBQpxX?X5HSA3j@R9l<>lpNWf;4(3Z~<38<2rqV4Eq;3T<0JOs#crHIbhn%>!TR zX&JoNVr3F6f4aMYf z9H`XR+w$dJfxdXI=jRPnZou2h8%ANoX4>i8-HA!y{RN&2@J%9EH*Yk)*(dz&26`Uj z?v;FuMP3+1R+DP|=|qKd5}2t084=DyiFlkN&ZS+jQXq_@cS6;7;2i2V6hzs& z-@bm;&~Ag@7>fpX8F8I!i%;+K{SoP-gM7rQt-L5hbOoU@P1bNCf%_Qd?E6bY$Rw|Q$M>~sw{loYyhTDF9qNR&Jcy2DT*hs zF_=)F%|bmG>My%#A!hI0?~~%?i-kz2dg0!7)>K;r6>70*r=YFp58OJL~89aVo%`|Y#(*f%5Og|FaOciH*@QEh+r=GFGPnP z?ymIpwlA?!ut%K*Pz26LXr|!rx3Nz4x^okg-r#rT=CF}YJS}h_&@g&#zw-m^DkC!{ z2=2(KSE7~1T)4+m0D4m5=clF%rN(hu=t2!lP5nNF1d|6K0Kz>@d2o#5389dK+tSY> z`sI4Exts66JOXGC5d!jPt0=?e%LInNZwL*M;6S0#!qAAwIV}M9HKa(Z#l7EZ*9JBK za+ku8n$|$t?0SM;bTwH)xGi#qh04xFw7@{(qUg&rL6307kQBsm*%=8$J~q{(hY@RZaUpeFM6xmPFTR2NmKI5R(#-58+tSs2Zup*nLK}yzqmP zOd>XIkfu0fM4mWf(~qSLM-)EQRe2ZffAvr-0*8F))HQ#%Zpr($A_Y)PqOOhcKKl}j z)|8|Jol3n3(uB?J~9us6XhHQdQ zDf)s60_U)UToyc$|7v-88H3DdL#e5IJ@*OEw1CN)9ZRH#q0qr1Pt`7y_s<}T&iw7g%%3i#187g^>811;&Pgq2|9{JAw3g|M=tO_z# zEZ3oY)FqfWQqw;fn)Y+eD^l+!128iaa|nV{&_rGa<5x?+;)Ylvzp8fNxdk^WJCGYl zO9TgtVjaCvNryx8cEg|+#Cr_(;^YJIq`)D(n_fqad00EJGA+3RqTX+@vo~B_uto|` zG5i!+EijZN#Tp4XC%O9iD)WXVbx#f*Y@qj5R}%xEgri|z9c3mR&@?S<8i}5&qH!GB zO)oj07vo|*>l=1jplacB{xoZ8B;6mnIw5-MoP>Bm3X3VZQh9lr-2~h2u#+zvmpg5B&|Mu=?D#igumZZrd|_ z=Dg;h7dF7v@kqBg1859u(H&mTW~rpfy}nP_AZ3D&#HkdD;vsJ2V+_6>jJ)pWXPUGZ z0~Icc4$dutaEH1M+XSW^i|&Zx^ea64B9Q~Az|myi`N=;TZITuB)A$nOZ@}sRxg`oN z-9r>HtrpyIxPZ;2JeU#I(8s((kv&vg4jqn-sBD@fMNwWJEdXu-m^r{*o#QwZnB`JA z24oeV`P(>z0rgh&WG}e4oM$hB9~c< zk&R_mUcB=jF*;gB8;&hCXbb@_Pn%V%5h&s4o{f59@qY7@7MS8bCBkzmDVIHpNk@&H zG9Ja|i$?^H3ra)4<~T!AwRx7Ks(3kr0U`2+`y+$^TR+Cv#Xninb&Y4i__GWbGz*i+ z(YUGteAQ|}1(Q=%`{BB*bZ|auIgFaH)H9%u{SCXT!-n&jo-@#^_=iyrlMCI~YM zl`EnamTO}CHN57SkXCfB&7DlguptccW8-a9I8A>X-)at>4I)Wg6t~nMONQmsWBf&! z`6zl+H%15J?bsY}D1`p)GfMir6E(Ul@4IW4ILRTW|E24T93O#_)58XSL@s5%(kigKqsy=9{cnng5s6e^&- z3|e9C5lo!wzdgTmEWs5JNkG6lqRg*y9c>%TxAHHMtXgt{pVQIt0}k{@@8Cex6mFEP z!xe%Kk3xmI0N@{zI{jDtKtTyd5AU(|qV11sVL-u;YlCDv50&M?+K+*R&(2eyl?%?fS?G@6+}RcmPy!#e(OAHgvXU;dm)XjKekr+lJbF-Tel8|uD)4b4 zp49C%Rvc*cch{mv*JbJ{X_-EWiDGwm-ZkJNUnBngjGRF;X$F(PqxBJF#t;?vms8L` z*ja@bv&8Q>x4RwvM@1X1@K!@=Z?l=(uvo@*UB}9sA*VA>F7dde^SSzYTEMc2MFFVx zArgKBIUC^I_b~$=g4RvgDlEn76Xt5EW^x?HH0Da=%jhN>7-*UgQ}$=NrHHWymSm5 zxzi9R1MGSb$$*lPob^54iTzn(H)1njpz<`v5&_zRaGsieMD}56>K-aa)Z%qnNCB{L z+^=x9+$x_6@;RB5jT*Er%BjephwO0dRIEa=qJn@tH^*S-zx9&8zJ8lo*$t_OKx6{> zPhbPE;9*DG-^PeEuaTnD7EbJk0f@d$^3y2Ow7S|nCqcP_D+I5Z;NuM3rKkgBmqh&e z>5n*R;IJR<9olp>@obj1!(a(oNC0sN3Fvmr8Cf1jQVzTa;v4#k0rW?)jY1v)C+oA) zz=DRMsDW^|rxo`x7Uc2_QdL}Rowgo6 zCu4~@Od+dc4JTt`NY#dg0o{bgr7uJt!zn}ToSgN|9-3kYJ3j($%YK%1Goyk{eIIl5tvl@IMI*-2j}D5r{vMc^b(AG zFxxovo9!+eFdHBVY0YQEq){*7m2qvhK&^y@(OktfjUZR=Xfm>MlQJ1)rV{b{RQ=HAp+osC1GP77?cw2=nS$bs zqCFgdSw$VC$dv*rdRv~J_`^W~71!qG=jR~Vz|%j&3cb}V3$^Z9fk?Ff43}?B(2aEn z?MLBL5;MCG4;)s!%OAPoDdne%wpWAPAF9}>3cFEfZ?8UuC+NVHh;J<03@{csSEwqTEm2 zTM(mzJaG$)lbok?OmIkXa<dYIQWW3A^v92P8K>E^f^2HC^T?5u7Pj{7q+bRY3uA zHGd4nn*ntOs=*sJDAb8Q!E#NlP~!-` zO(YA%eK!LEAiaNtK=_d?;rzNAbERx;Yx{3Q8WbJ99S2TjB}4+>d#fasy>T#L>Max# zRFms1=**>k5Y+NytX;w{VH|}oR;Z@ z3gXsgyYp9QjCaOZpT#O1u zMsss>Tbmvh-)DP@SdA2vVb2W^nQq%gOIoL0nD?>&Hu`EtV1kB_)e?a;zB?tv)zRIJ zC5qHwxCbINGz42@CT8j4as=m5dS@U=NTEZHjM{XaiGj5{(w2Z_32baZT(v;&pf7R_rpcWIC08x{i6VxJJbrnO-JAl~%7^F!qZZVI^srg4!x=jCB}v8gJ0% zSQ1Q3PQi(;YQ7_p00!bWkP*#ttLxRa)jGt*4oDn!a~PPoLK1pMvsNy$IS6UcmQu;r zuwQaz;B;*@2iOaC_k4*+h;U8+#i#KZ^6j|~<%{mN+Z3JaxP|31w+PvyJYUjb9m%_` zUm9+IdjCEs(dI?StnTF|aKs3F!;=wFdqGl{N@l{1Mg{7`4xR1!>o8GW=urU7mo@kv;CYd3g}=Lhg0? z;VXc1*i4BLR0yfSV}i4^C!^3Cvmu~Kx&+`CVG&-wPLgUfqBfkHX`+bd0iX&N<R_hzsc3c4I&mE5>7~+J(Li{1CcRSNR-B*tOnd{ z-fJ7y-a}FojwR4-9W$3IIR=jpAa+8Y4=opMA_Cwl6j7oeHNFzIi5b6*xA{S{weGIh zD7bSEHi)7QT}rB>m&z%iia-c^o;Jr{@tyg2#M830QYU+U*)P7~p#SJ?dBm?`h3#PH zkHAR_u2ZW8pH^4!d3OD!XfzTYN{u#`e~QUzEmj7Aqyw2n zPGVwQk}H37#h%vFb#R^H?&9O13M~BRqP+%)6IbP5H_iK0Vu)MLXQGyNeI43^5*e(` zM2|A25qL%HWiEY%O_~sX(?W7%u$9A^(Iqpu^tB8_65^XiOeFNBxMSXjW^FCL-0cE& zdd_E~t5=~6LN{t>M+50vycaxz?jgisGMJA6N|kn@rozqe{Bl$M`KliV`)~Q@W^ptA zsrO-fc29ElDM9pYD0765Q>1;)hIxU02RYf;UJe*3!22$d2OI{QL|!e zM-K-Lp>!flkkpvfj5!p7k$iooKf2I{Mmw?HA(3{H&z(N0yTdiC)-wC=q(ih4W0-2- zOhM4J1vmOVdgRd~R}$n@ReQ1PTJkYITDlp)%_@EB#mkpyxA~Pk_9v^SfB$!Y>4oc+ za^ZXsqD-53!-90|?di zY$qUtk>xLU{H#PS(iCwfwvWR8{SWL@*wX|T5#uvmm#1zVs^$)x%e!}&42lB0(Hya&z6g$GY`Rdu%ujPswoIe0`$X*t8^Mx&Vd}##+jP?Q5uv5c*wT6)5wuiuW#Iw!ukbt0s>Qkq7-%D>`nEveqi)I&#I1+$;3w*I}aXhRSt73c|($K zfz>ZBeFh~5Zjx>*`1NgS%RmMVOnD8Ad>u%Gpx5_q-QZet0MmU|OZ?DYNng;IBb7 ze<(b4If5ku)q`JTgomFJ{{>`yoXnl_Aj^13Hv%4`KcoTWnqgr#SPB`-J+w1STIXOl zU+dqFb2@v`>WZj7EzHh&A$ndox_6ExLx^fNuZ<&+SYVW}kU};gc2al|K`el&G9^S& zJtgOXL8qYrfadFgxi*r@Ut&Aa6g~@?L%2UQ<^XVmVlrIAEVxI$xVJi%!2N*;&a5nu zezWiWK8>5{CLG*Sj0ft+Ls>KLqseml3MOZ6*t|lsAFR4`QaS%-diQ5$0;GX>J_pxj z*D8uY*$PPngykCt@9G!<|%@vw?g2Mqt z<_VoLbM<39QII@LKk1a?)l^FhPRM1Ks$~G)G2R}g-f?@cN4J5@eK|4SFd|4MOufcoNUF5}1xWwes`k-s9oMeFz93~W7Nlz8fTc-Kv zp9PUm>NL%?06dJ^?4%01K`*%>tqqN|bb)Qp&wT&ooESC8#H4&Sls|B3h^~3$;A+l| z`W%TZ{1GEVfri37d-rj$4NMsbf4|V{AbiLis?Z}0kM4_j;&~sp3;&d zgBru|)8S}N`)m6_`42jk0%tV5t{R({X{3-)azqlB^tL?t#_#B9cf`@kgO+H}Dk!MV z6Pd0X$K2V<^^7Ij-@ZkU8`sSS@Ir=%^|@hlQH+i>`S7z@R}%;iFZXMT!8bzHLiU1* ziOF*Hg;=7pcjhn<*!8Fzq4;nL-nw8ngF(aU{VtSA4(^tq^BR_IJIyxC*(28YOCY>oy%r^h^H>yc`B>b zA{$W~joDih|3LZ8@E0us?*@(4^BDUI%!WfI?e0mhd*T@Q($v^U+w?*QQ)qF{UzfGA zSvhm0!5CcNX%~}YS81BN3ZMb#c%&u<@d5SWXfW|ak9Mt#+Z3pVQ5t~f<+3Ju!``E& z0q^5v@l*;056E={$QKkqwT4EN@p3bO21quBQ?YM>0^8?oytoFCFR-BIX52=-~b=yFgf?Vc&i#5o7-1TY4LD$p%J z&pPBSi3G?F^6U@$`df$TNl6!gpAlZw!S@s8Gn}bs?(KWSaDf^Nk@!Z>gavh+)UEXV zlS-6k0u*9v=;3!M+1M5*I?H_7332Q0-37mmJ%{UyY8j_sX&@1AR$2Q&_h$lmo&WS; zNa=!+SaD?~F&DwPTX%2>)d+bPTH#0&xr`;Br&3t%XgFjx7qvpJmzgJ+mnwpkuEjhFc|o1uEdH8g3-Vc4k@A}u1usVk!Q#sgx3KH@YG;0^16 z_X^@F^jBvSanyTw{1u~U5~m_pC?`jcZW=+YCNy&=DH9(JA_aX5GVU|92@+)TSJ2yD zNLBZ@=2kE1MBEZuQT5^0l47TXLv$Sq<^vV|wSsWzcN=16*6Eu{acfd_0;*30rORnS z$fon&uk6_r<8n1Fn79c%$OMfX9ooB@xI*#U3r;KX`(uKK)iG|l=e6N4oE~?Ums{$= zDY)<>JLXNpO|YPnzsuFQ;|R>Ct!OPxPLAYhIwpp}pUvmayGhCVFFunAg7m2LMctQ< z4o^5HC5MMd`e`mA;k5&3lz8(s4qyyBqAVoE=pbEiXgFyproPN55?y@QS6--xCGVqTQY*9kj{$f zpusgd2~^XIvnrli;Jm{d zj0I!loOWWr`IRmIc|UvwLRY$WzBG7(q(2Ja9t-N*@{ng2s1 zhCY9O=a2mL9yiewYYGeQQ)HHhLHY=U18DKlXShtTSbVy!Q5{FL8?>ixtJQ7=*P8Rd zmIb>dVo#0VYKDq_^+AeKi0bCV<_z>}h8yHWZM zq7UX-2n-Ge8UnoND6$0*Du!+VuJDzqC{y;yGE5*?E#w*)Ddav7Mkr5+Se(6vPS?4E ze#D&1YSB}cC2rgo|K)anlUe74Hix7BGs(SmI}&v2VI@#XgPwtp6FUi(totEcK*hay z&he&u5oha^&YDB0wLb`2Jn2PJ=f$imQ%2kKH?Cbnd(^yeK2rqg(a=9<+EtrRf`wD? zCav3@i9*z8{^Cn%-KHjg`W?tbp&A0vAK}m_#Q>+0{;W)#w0rCdhru;}{}uPD#Z)ql zhcmeFNxIdxqKoIm4vv399nuSY{JcZsWKA7;WVe}*g=6SpAsakx;94+k!@k&x=>egC zY5|lM$nimfzPDi$pT|u+UOa{{9s!1xg7N|$Sd@LxjdZiIY9XF38vVS*;NQW)K_cY{ zm{X}S6tYoDgZesb2llRoy$H)faxVL)IkrG_|L}I=2={dsR0F`X$PLk8jg-~jV8<}7 z(|eVhHvP7Jqv>TF{yN#OjPnq}y9yC0FwdL)iLg`JChYv%P<)H+G-qz7+QWI4D*RNlZjapIqISA3c5w)u%6QXLU|rqD#8k*^vQvE2sJu&fL+X2ewhbVU~0lAr&RPjJOG z_x6jZvVLi~Pa>5s*a(|fr~pU-Mxn2#ho1#d1TqKlN<>^jRM4L!5`F#JHt|D{7jqGB zoHwlQ3jS^v{!U9+9fc-|ba!H;)^U~-{~@-XOd^pUZ7aZ^WSA#Nq=E#Smzy@?pALf8 z!?&<2kVtQ?{qLXq??3#nOZVSP^50AH|DL1&E{6ZF7Q?bC?UXv{P@Rb=wo1~uGuo%~ I)XeYyA0OHRi2wiq literal 0 HcmV?d00001 diff --git a/tests/ref_imgs/draw/render/al88/demo_render_layer_normal_opa_255.png b/tests/ref_imgs/draw/render/al88/demo_render_layer_normal_opa_255.png new file mode 100644 index 0000000000000000000000000000000000000000..572be2afcddf660dfa842e5f942b81aac0d51a2c GIT binary patch literal 62362 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 Pv&X#Ima|TqI0gS7Y;7=4 literal 0 HcmV?d00001 diff --git a/tests/ref_imgs/draw/render/al88/demo_render_line_opa_128.png b/tests/ref_imgs/draw/render/al88/demo_render_line_opa_128.png new file mode 100644 index 0000000000000000000000000000000000000000..b872fc3aa9472d22aef7ae86b917ed003da5dd76 GIT binary patch literal 10448 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 F{|{|`EF}N{ literal 0 HcmV?d00001 diff --git a/tests/ref_imgs/draw/render/al88/demo_render_line_opa_255.png b/tests/ref_imgs/draw/render/al88/demo_render_line_opa_255.png new file mode 100644 index 0000000000000000000000000000000000000000..7cb08274a826300938d1d4255696f1ebd1118821 GIT binary patch literal 10868 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 literal 0 HcmV?d00001 diff --git a/tests/ref_imgs/draw/render/al88/demo_render_text_opa_128.png b/tests/ref_imgs/draw/render/al88/demo_render_text_opa_128.png new file mode 100644 index 0000000000000000000000000000000000000000..df8185de971b6eb7ab5f7c8f51137f10e308f0f3 GIT binary patch literal 16180 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%0DK#QmG`qu{TSHgJ@}8LZCCuLBm(lw7{E5v zomi7}wP7*p8|O}rqqu%nGMAGb)IC+gc`kJze^zq+gIv}iz!l)NMC^dw?3j?+aHMz`h{+$SN?4AzTe!fo z`nAfSg!)r|e-o*=!G&VnG6<+y$v#b68I6?uyL^Kw`MZBqQ?Yyrs-jPpmCW4>aUm(W zTMjP6OB;DXE5Q`;D6qs&-3gSN!d(^kRy+j4PNMVz`13|ZmNZ-B0svRG;0G2#stV#x zGjR3oT!QEk3LrpO9ZlzJ?y5f(QX!Z^xRjY7J#n+~l;C(_cIyroMq(|(9IaC{qPS%V z?6*Pkf65ssEtNKEhDmYnX89fi2bJ|_U-}3|#dkm?u2t~UQf(q8ljrsNbIb!+(&4;T zzxhP*@-@HNh#IA`sJ?(ovrpmd6dHqg2u7m{?NSM$tMbwD>UwgE$`GK{jqD0tu#tCK zIV?8LK67^Xz}=BOwr@~w-qkiaKHl(9?C#yWDVwixIN%43F2TXpZzB*seR`c`FUr&@ z0vxM#b+cHwlu*+ASCmEphb&?QR@XEMrUmQ+)Yc;=R2Al<7LXSe7R6?BrfRYYz>)(S zAutdm3Xn*Esk#}SI}wmKAV#=yVUr6@$LG{G;s2S!unO_3#)%-4$PA(c?+pJAv4A5} z@<)gTcIeTITdTG_Qe1nl0%V6R$S&f}_*&9FC?RTHm3#WTg#3^)&KBb0;#4m>N|d{R zicLtM>+#5x@q1#V4-lNZg)D95TRPd1Rqw0x*BKaim*7%sC8MyqKjV`cXJXw_8^fQr5!yipHd8gAB3k0c2-G%+0e-@DX$;D?NSA zvw`!R%-~a2<%;vF7h?SnZS0Fl`{68vP&qFVem{_H^>2pOZc0Y$g4|nUT%;G*HcgR2 zs~1}0qv?r_F!8j~1RjEG8m^n%beklB3MPt>Z5JSzrYcipssQ*D@FS*j!Qi z8yzC7#<#<3pY&$g%^njvuK~h1SL^P_0If^tDrPiUSzB8hv3>cZ;?ok`bS#QAO}`sp zo@me^QY|PDw7(ai02I)?z9eBg?>tKG8Qy~xXcMOf56y~?Jb$8UaskBRiF(X~Vlw%` z-<6ne_XMQrO@F$Y%l>|@1`|$Ji}(=!Uj!>S;@1b5%8`GRGRa)J+jDbVyL*xl(*%>j zEcv!&@#!%)H#gx7jhLz1J1KY|0S<&a(l!B4L9qA_ZXz}ov5zHAyi2!h3ht8sr7OU^ zHK3uso{?bwQ>RGK!CKE<_C_A&sBXaN0jji2wPOs;(6D!OTpDh(YBIV-3#d-*vo3<@ z`!E5+s=cpiZe_dWCgo$&GBPW0smjQm9{Ho#KyAn+t5=sGWqgU}{+>qcKCZF{?Lx%R zf15Y=&w$upEk}Q~9R1aD^na)2s19_tWgd)sDr>d@f1ZToIQDBJAc2>%x3>p;P?OS8 zV4ZG!93M}yVk88RqpTQ(Em}=YP2<}#v16VuW$vYCX7<}f06(eQIrdFYew2RkCh+ph z+m0qgB9+h;)zurIeS|sm@~QT=qs?;gx$(Ni+&m^J-?9HG58eLyJO=pqfook13i2`X zZNp2=f&2Q)Y@WbSA4DDvi$nr{7}!AD;5#ECA{0V6DG65o;LF8C+oG@>K<)0Z_}!%L zL>|m?U~lqu>t^yjj@9s;iqRr)GvU^FjQo-0L{ZVjsEmqmc0fQ2rGeGEySocs1G(Kq=(EiR zrLcBJwUKIa`7Jbf3={^(gySP0v7VsGEc&fQEV>wW^4Z-1@6$wJ2`o3AGbsht11Q(n zC)lBGGuvBRLrc}B)h}BUf#1m;!f9w~%4#OB^H~N*+;pm$7#&RMLGn$DERnH4_M&tAi4A7^C zjVRrP4h1$hzb3n(s92?mBO!NvRw=y*K-dU6gN8c~R?ymKLjG~|6T(?2-Y!=<=(bFO zpPt?uZtk0`EYT^N^PB4HQ-LO(4}M3M>G7a#`ep7?!Vz9=z&KvyWiT(1;pV_gfkio$URm+oAX>w zOjPm%Sz6Ga=VdlXZarAX!0N!k&r5gRM?cgmxzC1nkQVe^I^8MC!#Zs2A4Wyd+*m7m zZzD

I0y%G%qixuW;6(ln2tHo>tbQyZJZWH%yDqKFuG8G8mz0lvD~YGG$btC>>?B zu9%TPU;=tka z@+aU5QDs$O2*gVnvD?QzB0!F?>Mc8XzVl;c$<8W~Oruy~7;o|gC|s!89t76o0m^_k z^WA{VJ8h2%*ARvw`(bWeRQOlUG%Pa(Yp%X zhqB3i&YA_o`HmM{)pd1QMZLTE5%F)Uu9$N17$@dsw&>Vx+@b+6!dlrbznd$i5jeza zkFp`|vIDh!Y{{A(G%8tXlapp$$Jd*U@OASD{Nk3h>8Z5OfB%b1{l%sJ;!=NcssDdm z>d#r!B;x46Z`~flCJS^1u&V+O7Qio)O+G{-5j1*$qxSsy^H>GY9}#L5Kpv0?wQ3I7 z_4M%2K0+v2V6Ls70*yWVX+qzoT3E^z->|2N1NZ~9Oxw|(bEgO>QbETX;0lh6N|#O@ z1I5t_KJP=u0xKpp9{@JJ6-<&aX|id%i@}2WQ0C|Wu;8s#lOmtqrKKhL<6X^85zs$J zk&ECvg`v<3G{HM-Jsij1!{iMU^Vq`y0v&Ui%NC(NUW-9KK<6@Q`sM50n&`>yZl{F*zFgoB3b=$}v z?aVq9JV^@TO?tsIV6NyjWXEUqd;iwf{vq;spMYiE z_d*(fLMz9VHU13wDu$;kDbUP%L%Qx#V_Zg*3p((1@UL%vMflNw>xsR-XMEw+aRPO) zrH6+H{P3X%S+9Jo80Q4e79BVEilxX7#UL%x3-wO#Jz_L^oUT_wYyl6K~m8`2ri-hYq9tI%`b+7LRq&XH|z3`Q_CPrs2MCCVu3UFYtH0bIE z1m4_SPD%=(iP&o7%F1Is-Z>xF-zNZgEUI~SW)f$gX{v#a_w_9RltIUPWHXoMZ>Y_C z(lzcMSsQ3{eo_G%i_6E-{=|gT%#^7REFO1xlU2@6Wdx`sXtV$Myki|cTva;bgQdtz zc_Z`pS29(N9szGXieAmWl!Bl$;C|NYeg#+-uDIjBr_$5_;T4$>c>a=Sw;9Cs#JLXsJ$*dC3m$ zuVaLPvTHHV()+WvckGW#43WPUi2m@HUBt)6#{63{XS&ONbjq&u_P&TRT1d-zhkaVg z{yxR7$Q8Dtr*uI|zMiK%!|yW@kZdu+0UQ6lAD1GY!Z#nm;6 zEhU8+WwV@_p8l)wi<9p*#qc~nmU2H!a0SBtv+v!N0Gh?nc#`{N7tgb>vhgy@wTlk7 zI2we7TU*YAS{>}n#ypjQtBWy5fkIW@_xn4s0TF5tfFPw6AUnOQp4@yk*z?}!vbm1* zcVahPiBTZPk7Ea8rDH^JC8=LFG|~1Dq$L{*TF3+7Ei5_G@V{v3j+cV^+uVx<+^-CJTp#@Jy5I2680ueZ`M4_0xfegFUf literal 0 HcmV?d00001 diff --git a/tests/ref_imgs/draw/render/al88/demo_render_text_opa_255.png b/tests/ref_imgs/draw/render/al88/demo_render_text_opa_255.png new file mode 100644 index 0000000000000000000000000000000000000000..afb77ba1ffa91371333605d28042bb009105ee0a GIT binary patch literal 16261 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 Bl~(`& literal 0 HcmV?d00001 diff --git a/tests/ref_imgs/draw/render/al88/demo_render_triangle_opa_128.png b/tests/ref_imgs/draw/render/al88/demo_render_triangle_opa_128.png new file mode 100644 index 0000000000000000000000000000000000000000..b96dd042fb09274a2f8428081e6d7a2fc563ea18 GIT binary patch literal 13474 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 literal 0 HcmV?d00001 diff --git a/tests/ref_imgs/draw/render/al88/demo_render_triangle_opa_255.png b/tests/ref_imgs/draw/render/al88/demo_render_triangle_opa_255.png new file mode 100644 index 0000000000000000000000000000000000000000..48cb93ee74421ff576523d0f192f9f9d19735f90 GIT binary patch literal 18174 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 Kx=_mG`TqyA%+`$n literal 0 HcmV?d00001 diff --git a/tests/ref_imgs/draw/render/argb8888/demo_render_image_normal_opa_128.png b/tests/ref_imgs/draw/render/argb8888/demo_render_image_normal_1_opa_128.png similarity index 100% rename from tests/ref_imgs/draw/render/argb8888/demo_render_image_normal_opa_128.png rename to tests/ref_imgs/draw/render/argb8888/demo_render_image_normal_1_opa_128.png diff --git a/tests/ref_imgs/draw/render/argb8888/demo_render_image_normal_opa_255.png b/tests/ref_imgs/draw/render/argb8888/demo_render_image_normal_1_opa_255.png similarity index 100% rename from tests/ref_imgs/draw/render/argb8888/demo_render_image_normal_opa_255.png rename to tests/ref_imgs/draw/render/argb8888/demo_render_image_normal_1_opa_255.png diff --git a/tests/ref_imgs/draw/render/argb8888/demo_render_image_normal_2_opa_128.png b/tests/ref_imgs/draw/render/argb8888/demo_render_image_normal_2_opa_128.png new file mode 100644 index 0000000000000000000000000000000000000000..d7aa7434480e8b7cc47f68638d1939f89efa282d GIT binary patch literal 14539 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 literal 0 HcmV?d00001 diff --git a/tests/ref_imgs/draw/render/argb8888/demo_render_image_normal_2_opa_255.png b/tests/ref_imgs/draw/render/argb8888/demo_render_image_normal_2_opa_255.png new file mode 100644 index 0000000000000000000000000000000000000000..28863049b68e15c502e2ec3271bf8586523f7251 GIT binary patch literal 15680 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 literal 0 HcmV?d00001 diff --git a/tests/ref_imgs/draw/render/argb8888/demo_render_image_recolor_opa_128.png b/tests/ref_imgs/draw/render/argb8888/demo_render_image_recolor_1_opa_128.png similarity index 100% rename from tests/ref_imgs/draw/render/argb8888/demo_render_image_recolor_opa_128.png rename to tests/ref_imgs/draw/render/argb8888/demo_render_image_recolor_1_opa_128.png diff --git a/tests/ref_imgs/draw/render/argb8888/demo_render_image_recolor_opa_255.png b/tests/ref_imgs/draw/render/argb8888/demo_render_image_recolor_1_opa_255.png similarity index 100% rename from tests/ref_imgs/draw/render/argb8888/demo_render_image_recolor_opa_255.png rename to tests/ref_imgs/draw/render/argb8888/demo_render_image_recolor_1_opa_255.png diff --git a/tests/ref_imgs/draw/render/argb8888/demo_render_image_recolor_2_opa_128.png b/tests/ref_imgs/draw/render/argb8888/demo_render_image_recolor_2_opa_128.png new file mode 100644 index 0000000000000000000000000000000000000000..c9a8d0832d8c9b05e128e88501d245ea423a4fea GIT binary patch literal 13935 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 literal 0 HcmV?d00001 diff --git a/tests/ref_imgs/draw/render/l8/demo_render_arc_image_opa_128.png b/tests/ref_imgs/draw/render/l8/demo_render_arc_image_opa_128.png new file mode 100644 index 0000000000000000000000000000000000000000..71d72f5b15ce3093d8d1a6cc83cfae0c7516ed16 GIT binary patch literal 14453 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 D7%*%^ literal 0 HcmV?d00001 diff --git a/tests/ref_imgs/draw/render/l8/demo_render_arc_image_opa_255.png b/tests/ref_imgs/draw/render/l8/demo_render_arc_image_opa_255.png new file mode 100644 index 0000000000000000000000000000000000000000..efa96fa9ff6f0a9a8ab63896dde2ebcac865f3a4 GIT binary patch literal 16476 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 literal 0 HcmV?d00001 diff --git a/tests/ref_imgs/draw/render/l8/demo_render_arc_normal_opa_128.png b/tests/ref_imgs/draw/render/l8/demo_render_arc_normal_opa_128.png new file mode 100644 index 0000000000000000000000000000000000000000..bcb8608910c821fdef555d78dfd3089228c4e4c8 GIT binary patch literal 12455 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 literal 0 HcmV?d00001 diff --git a/tests/ref_imgs/draw/render/l8/demo_render_blend_mode_opa_128.png b/tests/ref_imgs/draw/render/l8/demo_render_blend_mode_opa_128.png new file mode 100644 index 0000000000000000000000000000000000000000..51cd0fdab62abef6636991b5ad043e7b07e401df GIT binary patch literal 36906 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 literal 0 HcmV?d00001 diff --git a/tests/ref_imgs/draw/render/l8/demo_render_blend_mode_opa_255.png b/tests/ref_imgs/draw/render/l8/demo_render_blend_mode_opa_255.png new file mode 100644 index 0000000000000000000000000000000000000000..873471e5e72b55521c405f1bff9045f6254bb43a GIT binary patch literal 42887 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

+cT2`E$fSlka0>EuAQ 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%0D0QLGDNgS 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∨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 abdxw7T3=buO@IgoG19+%1AE=^$^QX4D8;z| literal 0 HcmV?d00001 diff --git a/tests/ref_imgs/draw/render/l8/demo_render_box_shadow_opa_255.png b/tests/ref_imgs/draw/render/l8/demo_render_box_shadow_opa_255.png new file mode 100644 index 0000000000000000000000000000000000000000..f0aa12bd75e076e28ecb0954cebe8924a0a32a01 GIT binary patch literal 14951 zcmeHu`9GBX|L>60ElV3BOCgmt%91r@OCqxG$(A*YWh|qJEa8@rJ%kwhZZMQ2jWM@% zXqqP38WV$w!5Ge)`}2LA$9bIp;GEC=pvTNy*EQGmUS6-~R>D0aJq|X0HV6d5aa&*8 z6aqPP4gz8Nag-T+GU8fL41t`3+}74I3(Z?1+zrHAaZM`QWH~Oj`B=858=HLZ7vpwy z>n!z%y`G-lJlEQSw#bRTl;FeCT#%!pPD@;*neuKPd!@q7W)d{4PF)>*{`ywWSIJQl zR6hGf|IE3gpJrBF-4)R84^MNQ_o3j;iK&jbEp} z7OEo6B$980ZxOT~7&cO#&0H9QKtgOJoJ@KCdZA>rG%St^WgIAMW5mwxs>Oi_SS9XpD=I!0c{M^)Gox{YyXo-8%p?2!){3H6=p zoql}QGZc5Ry+09Upp;=yYFgo~Xp0y>t#o$dx#o_RzZY#>FSY+6jI~L4cinL>X!QB< z3~iC~*|krB^Jglh;Rq>^;y-AI0*V`S3;tliFc zRPQBK5CVAjCaYj)Jw{Wp;p|w z$>iqH_gLAmeAI+uBylWzm{~v^MNR8y^x&nfMixGajeiZ}u9sH2%AfpcMy_|fhsl}c zSdZ3GEFykEu1Rg(ZU35Q-ZMWwKL1_+M6VF0BZf2L-`|079`<_+IewOz=SfV@*~^fR z2~Q3~Aa7p$=Wi_c+tEkg*;>{5{hh76|AN%TT9q+L>X(mZ8-Cgr5cI|yiKjP27k6^a zUdawA`b_Wam3swF1U)jmDl5XMU+(h~W=FK6K(&(}a_j|(^x{U3`(~H8wz~mer zZ50$0%--o55XHaK7Lm(0n!8@{=m@p#amn+RaKre*-cB}1hbvf<_j_{(TpYUL(tcNx zXP;wgYwZ4r8}|kqI;hg zsB13wy?7@WTk-`bhsVV=EHt@F=4idB?|cxayL7d_ zM|{V?!TpO151P~@mV43oz_Rp+Z z?RL(4B=Tw97EfOrRm(6KD3sQ{FNH3iYZcnRT*8xP%eSe*sr_2VU+9)hKUU^Xep~Li z*N=qW8R;({C4r7}YIrUi{gfu$v}5$9`rrmM--;F*ifbL;L{VVhovxf=XB`>!3Zjnm zyMrF4n2VmP!gddHZ6$E;_sqtCp5nNW+yT+bVUJmuLpPDK9v1W7Nm*bqn3`?qrY!K~ zk0hUU+MfCLan*!_PW1qBSjscBHBYUSpYwUl`!_i9Iz18>RC>oETlxY4CZ3+A;V@r} zHchl0!T5c7deDttH{RU;8T4%~rGt*ERvciDqjnB^xEPJ*%wEgZaLC*OI~ zjRh0yYpb~54;gQBvy6;}((=lNJ>IrWrjllYYMeQ$VR;HbA^cvr!W zk^P>cMECuqKIdu+RSk`l#yIdJ!5vG;nq@cYRz#_38rR9QSSqNB{i(wErQljzdb!!m zYA6QtC1-2|A$7c+(o}b&_l@lhw5xC&b*gb=*-H>vb3~p@hQyD zH%FLP-+I(+gTvwch$umJR(E&z)v*=$_MeJz&kDa_#oV9{0w^oh7RE+KRaTWy&B$$N zP>_O9s z=cgUfjHd|v`f$O*?PxB_9ZSTxeD8VW{8tw>Av$XBXI~Ppti!KmeNK&|(H01EDV~RC zWD}O@rr;-=zXFg#?1X^^2g>%|rQ*fiUm8g#2nwuD7p2BA&%Hu(F=amZMbekeMMSMP z-d8c##_Oo`KfbM^UmNOtRF6jMmYhE(I#6t15%^o~#vgh?I)?;|h3>D8PQhLrclYpAFsZX58JQ0Ar@-TR#DM@gIK z)o?-Fmb~~>oQ;+Caw*t$Y(d>9q{ZAD6rUTzrc9D{y=SqJ znBRB2+COkCu7@cpDd9U=X=UG9w_&w7{GXx+9q+J+*BCcBmQnle5GJesFFGIV4_BSp zILUDJf{-X-uuiqc=FN~F!j z65mSxfSjoN*`maE)AO0RMC_weAA1K8@jfhf99Ru{m^qI#Nm@vlBk{N7?1#nUZ9*M% zyqP59luRL$Ml4cQh7Rw&1R`5VGhff_Z?Xo`%!k@%3+BI2=|40~XNO+!{J3(Wu8!YY z7=VN?NriLRXMe%EXm*WP{JrtdhyZXc52Exf0VvC6tvUyQFIWUB`Jf|Y8>-}IUh)5N zNKroc0_n@O6zH_PjxhcS_}%zX&yYQ3)!|#qb*&bleYiCO=vatFBe*X-JW+Qt;n`b+ zx1!hg1Tpd#-|b%;{X-bUIWwl`-gAYx)juWAzuEdVMrb%nWQe(OC+YlUd$JCIt+V1x zcWgerm2{w&_&y&o-=QJh^pV-%WFqz8S!p9T*#h+37!0YuwkQ|;NzPmpW2k#4MgM=3JtrmnB8$s?2d z2dSL~r2zo}&JxKZq^8bhn{Ca$NP7o|g8cl;zK>IuVa8%7M@eQ5Gtzsw79ZG*%RXl^ zHswYA8lv3Mrb^^s+^Q{X14WZsg$bXSyt_+P`W|!m)mwFz%{Is#CHtwCNPqvLw)gn5(F)(B+oG@K zt8NzElgRiow^pK;>TGr5TwJ3t*5NxUlB{eb@v&v;(!4pCBN~M$DYWH7A$FHDb1A!k zsz_4vY_>Vh(!H~GNBhVhv}`wv);+|y^Sgo?Gl|A2Dda8%)H}dtBhr(7ODP7W#VE`b z*md772kcycX_za%#Q=#Uh-Vv?O?jgtwgLz-D81t>jZ=nQeTJU^%1x{Xx83E?>Z7{& zf_r@`)m^sMv3q$v3?SLRvHmi$ zvS9dfFl9ReTze()YsC?n7Kl=mYqlpG3Kd)E+qO%;xMw!Uf@!`jkr5!U0GF3Tnre` zR{T@F`>s+ zz_M{|oN{Y~!C+guxGZd$SO9jiM4OT}Lsn&`VVpDZRGrYW0W|ZdwvZp0~^hk5pEmuufn@QOCJ#FhU zdI(B(>p))Wb&hF!NL%^7CljVJ_~fM8`gDsVlpy;utUvfD0@H$nU6 z_Pl8YG$JA*Aiz{6YsRmbpdt%8d?pDhA-j1j`o{Owi+)6Wf@;hTTY!K&W@#|3|05F5 zQWprIN`sVShQaM}4}8nFTNvAOLJ=1gE+~hf9*HeNo1Hj(t9k7{>pfhjUT@lgPvTS$ zL8>0bo?vb-$%YTN_)vM`*HdSP%5~(v-2(94C(d+24AZx`5a_YhRUa4<_iH}qV>d6v z)~i|XN~>3>bZKcK2BY5^7RHwlKJh~+wciG-Tny0pp{AYhlkKX9_9+l-gg>DREdUoR*Jp#=8wLzO-{mOZ?07(5_;8sX* zae3+yY1y``kSFUu4$hKaaNWmr6r^u0pbKFPc+{0MpA*O31`02Pt6skgp5PjPw%i#> z=*iTS6lJfb&L2P$`+0s}!SWGba0M*nTq2ZOLpIP96f&}M^C~OP;{5*N&1;!|UNmd( z)CWTj_`r*dLlgN5oi*fO6+v9koJo9h-Q>;Xw`)H{3$XyvMrd@aD|Bid|NJh7{j3zV zaI!^OwjW3W4f=n|KL5}<*s}X{Au=+O;M;1CQ;6L8DJ`ZUt0NtAWL_&(tx8VxQW*>W zg`75HxMinvusH&-B^tek%*h(F@+1B4BEhR=&7tU%$|EGGMxih}D=7Z+nT~^byj#n6 zcm!f!kHBFxqPOC)+8`On;QH0YUFq&mkl&f(%o9ue-yLd0f`Z1$>udWwWdL-BXLKDD zCARu^YraZ(iz7#Ft`u2GO?WC?-+k?+=kf$J zDHg3C$YnZ>Vq0yYn9Cqg;FeN6b8}vfV%A%0YYoF50)m3qQ$+jy0-jt(6@>G}FQ3X= zxz``625>THOH#5f1(&47MK9HmLF;#}4-E_B9}YEco16Qvp=MmbK2(YzK^N(}-iinu z8BmxtvU9e5XaSg6UteE9t{y92JEXQK-Q9^N^77d0DK6=mgz~&=CTf7Pe56Ywx6e+>CO{3}_gup*z#P&w(5n z#aPFUdj{QC=qy-J;7^w2y!dV4&vxTf)hOxPw{K(QAd;eU%}B;6AUndhN#&sK8t?rv zMigX4XcS@>utP(DnzXfrt}mK{TS(TQ0mRxxo)S820?p^!U%wz3%zTbdX@B==rk;!hHwj*jK~1*;J^`G5!FTu1sPW7C zCL6dpIl^(a!x1r#qAzy640vd)eGHLp+3`!$3_U19UB_$<*>}x*2q<#%Tj$Z&eRmA4X14e1y z-McTmF)cogm@^tlueco@9rxDIvduQtrWI9z4lf60Nu)lr%0TB@Sok z+TIswbSrePk%L7m@+X7!MeL5ED5n4xs6_Bq1UocA+j({K%c0M5Xf7_8@-JAyW$&yg zJt4u}m0qs>8BmE4NYF06cS$*gx;mo=^KFBpYYoWsmxkhixdOHW)THh^x00iz?IPS{ z)Cj6E6YeJ#ag!7{O*LZ)5>ISkl2p6(h1zLcsL>TpTi&8B*mRGBeN$=*qii z^K$Inq09xCutvnaZ*SOJukmx>TU=St+v{qV`yyipFboErmSJ!q-w5G7>YrC`T!;!= zmryf336B>w{;O2OE#FtePFS5kIj;9X2O)EH*!;*e4^>Sz7qgg&9(22U-5X1F31Y37 z0hMv@S)kpYlBjO{zt9&lPy2ltrm&A{r;%kZE}{ZW6twox0BAH%S9E- zmYrAMMe#IRS9<|z^mmOb1r2bsLoJxT4j`OMTl+SP_4@<4Yy*7YP?T81OmCIt{^$({czl8|zr-q6G)iMEU<)lJxC!bunHNgpFmCrF(KJBf!F@fO4c#)~ zbvWfn9s=~bzPNqA7P{)y8FJK0txz{tXW}`30eodDDKS2pR)#otROpJI2Mnz2aZdmn zeOtZCqV!(X&o*kO)qLFAYJcWUuF*kOU-%v!P~KjTfOiv@f`NLB7_S`n{8D%x)Jf^< zTv2>whv%6yU9C?Z9>QXqHxw>r7?9wZhl_Vn&uZl!B;r3DuxOJgo;!4)-~<9XG+%M= zI7_}!zoBGOv>|>Os^SI@hZ_GyXTY^>c`D2#axo5$jv*?7x06wnJH$5{@;C|&Bf)A? z=L6;)J^HRaD_gDYXJ{C1aiJkVPcb)nng3LxJF)3T+ud2&{uzHDkNU=nO__{YHpGX? zPJ0c$MhqUSji?{Wf1qi@-lJ&yfCVj8XC{*c1cZQgDN!r5RBv0#d#B@sPkpPa{v8Cx zq_Eu9vUgE6;Inn_CykAbtDzBeAAjXZ@BvV`Kj_eyT+Uz z7x{$kBLl<3ChV3C+-RCkO?`X!3ugzNwn<5q)!&DEf^9Y~zxc~a>$tXAn749@=&9J^ z0-ZCrVzp(m()G@o)WU^&-3Jz^0X^cE6Q9TSkr;@=RNay@nVw@la*fbfSV+M&G*l(o zS>!Azd*Hd6?$-Cr5V{C(+F6_YE5ERqt?juY}t*hJ}TH zCfIcugou8S{h6UtXV?>F#W9hOD5Th-Uz>EbH^2Ys$P9I?0H%pM$Kl3Tmh6Ba`(*OJ zXTz<0s;k-lhWa`65GqnRLO2Q|*GauON51#k^_wNZEOh?awL9#0Vs-Qa%3(1DoincT z*~jb5fKU>D)d^4xxs<~KZ(O^n^UH4d;IY`lC<>bYm&ro=ulZoU8uFJwk#z~eb-4&0 zELF_jwb2@;P|*1i(8Dit^^2@`drmfJmqT@G$hxa1KAg54?9{>n_znN*ttffRx?tha z(k~6UJVxk-2r=v5QD*16BQq~3h+wTl0lvIK!1(9AQ)S0eXP1PzY6=`o!R8KQuNWl( zL+Vl`bit$Rtou_?uxg`aP6MWVJ_|i?bfPz`1BfpGcNmqQ>eD+)v2X30JtiV*)oy2$ zqn{(WxSm;MH3U}+Poto}IqJ&QerTwge*7-*AKKqb{Zw5xh^@zz$&vfcB1vXCVTKK3 z6ETSLEWn6MP^*CbmziD$4~!pkbc(=ZFn5910vMdL91u5-VpM9+b^5JS%_M?gu!``N z){yG&&TFsk>29uVbzUuN3ctzQbAxR87r(((_GCB&TuM9hb~ zcD>bv(5ALzu#_wAUD8IfYaeF;Jzj;qPlBMz&33r@F5!`y5Ep9<(CNTVV?z52+_vNj z*JyKE4}_TqLjxyV^pMhSU$q>1rI-+QGKB>N0QtRh;-L7`X9v;& zsl4>%Z+l!C_YT>8%}Q1Q+Vu`|m11V6Z=vaq*73V~ljMba%Ms7cfN^Ec|* zcy!JUz}Ifjf&uy?Z}6cg-EhV>xwad)PGB-?#WD;4ZiaW)=GNQc7}UbOJnTX#*S)F{ z`*Ycb6Xc*ijzm!O0t2ZG8WEJjJERN?BodS=bi>I6ZH>Y`a7I<`3@F9jM8HmlyM8_P z6_6~%fl*`2gw10ElUE?KKs}?LU z=47J)a0jTrm`@rK{DDo-r7f=2rW)uJU1946h`m628W=|am;rocERr&SZUdH@TVq8A zFMesGaQ9F73OTX4654$!3r$MF=!?L%|Bwa-ZintTVW1aI(yHJxdu9$9jB-uJZ7%^d zjRCX|0L|A&7Dtq)&CdehRiF`BSug`EIrcl>u_oQ0fL0f^(;s!3?QlDC@EDiNSS48a zO0_rH=65&yH9hSg0zEi2YNzDYMO`JZPK~TKLLx-c{yv;In|Tf3r1dcIbb!Z}09XOw zR#;8!icqR%#O7l#mOz^U+W$JD+)||Dodu$C>Nh4Ah<{}k2=&cI7Oltr{;P}Qh?_;n zjVu$*k&Zx<$Qy70+#tvJ!XSl0LD7xkcs`W)k_)p`Ej6>ut>&BoPe>mCRcIfEMeObX z!(uB&68P8tjZ+|~K#bapY_>^$;9{l`o##3*VO*dF>IB%nWw&c!5P(G;YWoXoo=qt5 zu)I&z+}+%NDhtHGfWr7u(BeWpc{;&L(-BY4#<-Ck!Qw-CUq${qOSf+>dx$H2j{L_z z4}ky+*a27{VEe}ipuO)pXaf2*i$MWHRFWrY%6q~;@3rGq5mLF86r74t(q#M@-M?Lz z#;KW^8Rz;omm~8?-}2G+&Q9-Z{2;i}=R7RX4tC8;uulA<=y)=je59(!MI~m++d?Mm z?zgco<_{9WEi|(p{yk)C1V+$LMn(p3jj1W?b~}fFqW~cTUKkj7^$a^u=#+>N_kjy? zmQNu(%~2dM9@7d?qum;($m@n?kvB#pc#^>W^4H+&^vU-cq=CrB9w@uSh^*d#UOr0Gs6zh!=E zq~jV$`|!oSR@ip^S&#?idlR<(=TT^rRX_slwTu!ALA5uMDk1bZIRQ^(gt|3BCgGBr z$FA~8?#u#qnrU$1{_tg5nd()G&5+71Y_GZUyl^#RI8&jOHKf$^x{3-gw`#~aAzZa) zW&EhFFOwM-8OxQx13Gx6gz0fz#jTBS+!4KaGNC;)OJdVdyfHMU)z)F6B(Z&t7r#br zc)8*(=eW0GTlAs!^|#;o58ijOU4QFZQ}4R*G9Ipb?8y@CZ|9Pa3)%i|OL42Azm-#9 zL7nYShX}VZ(x1M~5Bhu_yW6jZbkay0qvZ0oSQQpN6;HoSP3d%%&umXXFTAXmygX)J zF+#Z7w4*V#t9t8a0gO8leM#(R&M>nRTD>ku)gKY3q&8XS;uzX-=EF$Mnzimv3kHfC zc>*27b+xTwu(#q@C6vZ4-5u4kHB>j)nWzx^oap=-oSv&5q44HoHNS(TnMl`WH-}}U zuY_gnh2=_OR>#|_`bVBInGv5(m}D&P7R}MHibTGXcLotw?lY@c52m{2)0wv4Qp5Fr z)@(Bj#jgr*mgXwmx|~F&mDG$7G@Eu%Ut1=Oq||GFJ~&Gp1B(%VxpKWK#AN^QY5=Y* zfqGXz(wTTcsqMm58;JK==80Od7L-AVCoV9v#vL=5@5E!~>QP02j{rh7~ zWKO(YX~%2QNkfr@Uxx+f59Kh4Wu)FlN113#M=77&SLKc|Pl$8`xxac}@aXeesTd;X ztfc&*LpJ#GIm)RZv~V;F(Dt-bpEO^5>zLK>ay8W3!Khdx$65EDVMV(2Y5dn_r?=6W zM4kOhDFA`*@1Yytjpg~1XE`*d1MCTe*kj?Y^RNEMxar>r3BkX}B--yEd6{`)D80bx zK%$|e7GN>&Z#alab@z!b&SShTxsD5y1092ujjKGi?Dqo$!`25jIA-?5xW~0MwOXK| zgmt}lx+1_?vOHhv4UnZ(p_lb+R8UAO2AtA;_4hJ3%htDIUv|p`?lzFtuAKQ3)&=jT zAZwsKj(MKDS4Q&D&Nnk%vw45zynJ)W|A%z9aR{rgJOmnfecyARd;1(n_$9;oLMH7s zWSGO|1+T>ekAB`bx&I-)MfB?okIKqH7T{RK`TxVE7l%>wpmc@Eh%w8)36+17ZAsE> zAg#8{cKvSPp}*2LRwowLN>ue^Is5-jvuzg3raCP}a!_h4NjZGRfu&c-ez0tNVokR- z9M`m?(&11(hYL9ha&K1sS%)UzxRvGm88zJ2Hxit?LFR!HLZN{CNSO|kmlj7Y1!#;% zwBCeYYw=M{5%pqN593x0y1!FsKnQEaD_}#+bngRov%)Mupg$2|5CZ6!Zb@(lfdn0_ zjo@ArKTh3l!PA>9ylY$+OMqY%+)=Pl9XMMyhw=OyaBG`t9=5}Gn&+xxrO#PwuhN~1 zb!D=Wu0Mno;D9B)wDDLOY7fkejWBf}KgO;6n3in+oO(#;eu0K=$E8b^6gR|U0L51&Zu5O<_J>RLnVILKP9@7iy08%FKuPV$; z)no(KL8J#D4!u+%>-sT0bnS_C3i>&ha7|5(O|?bQJ!K7ziLbw%0dNKA6Buy?6W}Mp zx=_1rS)HGt2>M*3+RhsasPtqcaQ$az#S)heP5$K=svX)9XX$C<2;B3Zea8s5uJ7CY z|Ksx?n42jzahASc81TLA?d@N`^ck&g`&t||S$AfkFsjA^$cZW-CBR1k%_70zIWLcf zto%mH&_rfMs!+0SwS{CNRs;v!sWub}M8^O*Sls>vY9t+gnwSM}i6(rfZP)|aVNayF z8p@c;2fOP0Z2)fhG=h$CPcQ?nekzdC|t$_D1*V-25_hA24x3`f*3NKr%zE^1Z z=p)29uos63Oyu=#a7kc*q2~g|%#rfnOA7Saugm5exnrKVN}C9SwE|WUwD3YM23dpm zYzBJm*qkZ|kd9F9fF}9E95F8PHFg*z4G6pPxYrY%Y<$m?uGyjmKe2z7!=6yShK4U- zq@|8VgX#X9(%&FO-r4zPhS0Wjl+QN;j(Kzr7dHSmU_?%ehIJLFZ6Wg|CWvVZur(=p zm1$~23J6S$NR4QN?mkLVgRQwR1f`wu!L9h@cLJ(Xag;k1W;TtcKDQT}4O*q6lGQ^U zVqX-r;FsQc;oKUnI|!W7H{zz8+a@928Kt_S^PZvHWc_8A7Gc6zey)#&>zN!&fg3&J+MjXLT#M9ICQJhpQnZv>B0rmB+k4H)8+MZJ@;_YCn=V z=pxUh_GL~i{dTtX0Fv7Cz=r0JO_2xYdE@{GVQ1>=AO3H-LBzp?mBoen{Hz$yty{t2 z4zVElkh*D;IfwM^Cb|<~KduNaTSkh;YyjxkLEaclIAfvNoeT{+H$QLwT5m+|_t#e} zpZR&zBw0AWOs6>Yb*=@4;>c#CWh6%p98OI8*zNW4_eN(TNL%#6!@C?h2yO=#_2~J^ z3SDY~{PbTyQssVI3Z1a2Qsoj5W1eu+w(Rbf^kDipGX&$7r-*r?C>=Ft*FgZ%yS%p= zBqfh7=UEo*=G3Yl)^aNI7x)28{+<(ckl*ci5ILy0ru2T<$-N2k9EgEVg+7lR`ksQ; z$0@*ctfy$wtnIuR(~LtAZ@3ZyoB|Ig{elacNc-WZ%{f&_U5Wi&EgHkDtyo#>MLqi zgLq%(;U~ae*8H>(BG zy?#HuCXNQ&`46IOKALe~r{57@p9r$GF7kzgs4}vIOIYJ`^cYC`{U8<1AVgW{K17 zE*gcYVZ7)l$BE9XA0vbhJ$}MNctxq24iYFo@Z9B#4~1>50W%pYa4~L?WLhyxhnEch zL#R4mcp-g2yD3sMO&?egK!XPw+pr9vF;EqCP~td&{s&6rz5R!Ps#Kf9Uk$j3bbSIE zFNI!e`iOCNVDiC1Tq5?S7QfgxZ9x4-N!O5G-dD~52L@D%Gt3sHrU_6wI>NDO-dsB} zxo?ATq^=otFD9rX4(Gq`{erL*U=9CQZ)mq0^3OX{SuWUrIm1A6Z-)wYZ6PQJo2w72 zrE{@Al~Ybj>s(CJ2N~g;MUTV6!XhI<49*9?@1O(ADtNzGfEny?ty8= zTjitI_>-g0DXXZcfF%BDHaSD+=eYpT(#Aap^zKW^+OE-ym1}PfnZ2dS_4|Y1G3Qh< zY7fQ#-L&GBQ8}Hl8^ypyk%W?c@EHbu{&|y?<#$R=n{B!}J9j91yOin2m$<)3c;kU0 z1%goL)yW{A0ctQ}{H5CIT*LI=6eNM70!&b0bU`fjt8)I4>oJ*4o_ zlF09&^+JoqneIvElZ4YL3Qb!5{)v6gD)|eWCvf>T%#-xRo5Jf&eEFI8MtNDx?jWagZ&H ziLImYEdo?H<`lw3{*lV&FXqhk_C}@fs7c+Q02xq@@27H8WRHMMvR5ShGr+aQsN@_N z1vx%CE$HJ3@&G_I^NDi5g{C}@>;g`2CO}{V{0=%Mmd4m6axk|EluP-U^MNNHLVy$b zAUFE5^y;c)$5%WB4b;X*-5f(ED7HlkZQ~V|q-Bx+3HvrhwD$yNgX@4?q|7@a5&TR( z_>JWJj;rsmQd4UT=E$w^b8r6p&2J0Ry+2N~N_ibYKxwSfsguC<@6i>2_A~_7 z8HD(OLpTmj`3Ichcn~B2v<clkZ4$yqv2^J|xc*=f&Sg(h;^tM@^t^B z{m}3w{p%3t-X&HDoh2t|5t$z9=`^PBU`oqy)unP=uc&)t8plkENV?_2AA-?a$4rlWrNAp1cC z0&)0?hN>O{vF9`bvFpeF-SEp-o0JR$;xyuls@kr81jZV_(IGfnt`bkXOx6T*QarxQi(o%x#3NO}5-fR5vtB+58Sd|%Z56%kg z-4*0r+abg4LBrf`mvaAVVt;?X=WPZnf>-*rzVF|^6NzTa-gwgdZHWY}^9571Vvj6e zbxn96osE0m*51m8at@iDY)3+SBSkc%69=LE5bZKw_7-VrzAf?E{?T3xNSxb=WQYipi%s^|kB z;TJ#6a=W>d0@&OO7h1@R=J%HkDon5oKef)^5RJEAcnqQ4iz^jDa~)yQb_GUn(vI|^R)CKsC52CgrRdLYBk8NHbB z_^Yca?&1-kH6`f5Z;O; z$-XTW>gew`{(`0c{Ha>%H7ci|pdcq_yvEaY(ZJCtB|wSWL&dP)>ja~dINO_^0);kP z_i*1N#5WJ)BG?lA7u4UUIUTpVbLDuNhlvoRKISHsbUjHg!>n)&iJ%mGsl+u6R%$PJ7+bj2hoMVDRD$S9|Igb8~%?E}Msr zF(>6Al0`T+f>&{pZ||{2-@1jdsNB}nFNs$RBrx@6g?u}ukt}&?nP+xB3LeG#ebZ$N zX}+Auwam2p@ko_L4yN^|?i&ie8kOEmrdNa-v3hT6pDys}uWzNPZ$G^LCLr)jW}ph< z`e$=Tda$)3m;WJ`Rh)G%z@owhmEWjs0Z>C-Y>g0dDW zk*OV<3_TX&*VdnZcT1|X5MTYVvQpM;2VEsXKm5Ox2*<8wKC(o|Nv-~%P->bR5dBU) z=0%@K#m(d&ue&CE6jJ=JjUH|w>Ao*6PG69d?YbxqV&USIBfoSB(PmiM-5XKI9-m$x@7<+EE-U@bS4h7JAYPO&AMgIC^jiwctheZj^g zz9)J)F)gFC-m6U}y4F;zeVV$k>}P70;=4LCxcLj$p_1}Lo7c$UaTc8S-Wsdo@ec)h z?w?(VRqHdAvyT+&63MT=$q5t6BonkgGeLu^O zRs_&RaXmF)FQEq3<`~U$m_?fR&3d?NZYvmH5>TTn|@-NQ>tAb7D7S zl67=-bu(LQjNV%R#-ZObdavKfOO~VE7RRO+BCfrd>`m++7+9h{4x$@x@tONkSI@1# zV>b(Xt(EK|JIJdmD@TqT>3LstA-?6r!4N0uQ;WQYc(+FluuB&^9L(Q#JCqWp%?e>h zdvW#$^_7|OGnbW>ZQ;Jhvq#{go4}X8FYt#aY>y&!vb!dh*!L(vk(>F_?BOryMN0aA zwYRrZC=_;9>6>w}O}DkWo~?hj{L6pRYPn}BGnPN{cDdci>o3=7t@QSywq#=4*y8$g zxATEg>WJwcqiQV%*qn*f^AaF6zY~`R!>CJlb?=N3hR99D*mcp*2 zBNp?;xA?NY>@O49a>#@E*}0_I4)wg~<9gNY;8|%po1rmm#QIuKV74SDJUm?Ld>Q?G z5BKWh4f#UNZM7fGbVR3B+UPtAto=n{0j)X{38IsQrNS*Gd4L{XzMi|fV$$o$VFw-p zPlDp1TcxZRGp5FOLyHUfd*Mm*f$mgG`Sa478|MrxgpzM0?SByC;!{7cz1j8-(hx2EHV zlk}q3r(#oyu|Y<%HjCI@4)XdUIac#r8N&fw|F62bI(qJax%0QI!R6hSC^prQP1aG* z>`bg0wH`MJbnSchx+}-qhlvpKkSO9-R$ksfwMqDSWL&7o0v0j!D7U7u5!fEga<`G= zfW+D8rkEBR0U368j%>r+e79PnPWIx$Xv>SB+r1=J z`{fO}a<;~QZ7w~pRE={7l2|no?)hGpDCuF>&eAixVQkMz0jD1?X5M_$(F2(*&3?Go z(`XW%*?A|NOW=9Aalyrvm8FR;^$4yectIjTU+~1v3+n+jXkjRGF+t1ETOB=d`I1ZJ zha$bdAP7{S+-94sgZCUv!#1j9KB!?~&ZBM=Qa1o@XT7RuzD2q?l9vbDD?dMf3j0o9 zI#D~j>v-t4S(Q(Ey=hpLlnzgOGy9=^yUF8u&d6jqi;qcY>LQA|xY&U*ch4Ao**0b& z{#aHh7cKnut}e2r1XlCou))Msy7^sG87ur-!`x}F%@2#hqxo((`I)y+85X-XUZRvJ zV7#h2c}`UM%#Xm_+}e1jm-FtEZ-Jv8V8a3RmF214a5bJs3fC{PhxZnmi`@rs78STB zi-D*|x|&Lx3e7CW%PIVVvCUoCy75YFi5@55E1+SeRP&9CC-xN-Jc%L$5bB!vcnU&8lm6J=42064OC$pl3KCC+XAuRU^3W zQcmRqzQ9wYnB?6L#N+846}V6VYuBt|P6H@CgcPx1`^4@(Y<*2MK3GQ&4gxIsC-4Gr z+t;QC{zdO~sMv{n*=BgRn(Y+=IGOqB@}WmdDxROL3J+e%vZ!2mxEJ=@aHw<1HwUQ+ zZw&qEW}7;{jisCz$9?gWtDDMvhOqgwOeEjOl)vw-=k5mF_b5mK2B7SpEE{i)4x9R* zJh}--t2wTo+>t7_bzLbn-ZNJ1y}n@9_xIlu-(#1z9^U21?sjO>*>&j|IPLatLbYj5 zf?_@3L`#{NjOc7`SX%i%Pji~os$O7de*Ncj2WeN`Yh^Cwr`)5)_1pJZoFmia>gBwV z3mBbP-K5;t6OF&&zSeC0@-mXux605M39j^&soO;h+!&?WsspCt0`WU^( zsC1;!oqh9s%sygijv0aV{Q54$e<86VHZ56<3ZX1(2MBFP=wMVh8RC%fL-g}}CYxoy z70>g1bK84$^vvyujRU(>-OP%=cUqgmo>UFJ4h$t@GzVsw@7qOFr}#(TJ}#d^b(Nz<_9n(W`$ zvgL1Vc{$~WEY`vLH$Zm*N$5Ik=|$Qho4$QNM_&(fk`>X}#=VVM>9?EI`t;%c=89eF z{jw$dHrpG?B#KTpQ`TJd=1k?J$wV0rw+QA~^#0BB(bvfzpV+@l(6XKAnju!_w%>+* z5S$i0Xtca}-}Ah6xLPKEh;Cg_>5^P!W#yzW`MNMmL!t~~`W20QSAQ$S?N0Pt7 z&}!C3o<7!HS=sef*IFvE4LJT|T|oF=rscg;rjD<&Xb_g@Kl@uiiBZw34yF=k`Hk9T z0Q^%QzJ|)p4pcDR_vyQ(ti4f62jkmV$ysZD2k_6|-=6`q z1nvyavF`yt!$HHdk^J#3@GF4mX6A(eCF*joIlcDYBN7}(=!2D|6JsU9>fDmR#2XYk z2(vs5QAzKex{@PY=8Rbz4wZ2kKu?r^o$wHhjVcv2WAs z_9B)!&;I(w_GnmE$4LsdHaP3mAq=MaLan}_%}eN_+e|c^z+#gtCy?BwHLPO|;8G{Mh@n0I=m=mBedFb0tu;DtI|O{P6GbLH;e)eyZEaMp=P8 za{#>`wvrpR)r==r7KRg}CEPTnF@wGSThE;?A z6cHJ!PEYlkV?Zg(H*}QcI8P%06C&d7^S{No@=%()uZ%a{{+ifv%I0K~8~}vqCLfu0 zchg?aL4e)MPx*)TDdMR-XA%h0UfEsqqTN+5iv8UbztyV;1%6mEDrlz*jBX{(_a!pj zzrf(*auzrBfrzTBcg;lEwI|*#=$*pj@vs2kmWgF#86^Z`G5-smkUKPj@LU$JC+lG>|W!4h;rY# zZuIbN8gxohH>L_pZ)$HmO+uf;d9V8^>V7xXSMWWA1BEq*^j`RSGqpo78MussV`+}9%+K@o!_7+U?e*D@>oahA% zS9}qNoSv-z+6tN(YJ2Ghm{s&kxx}`&UihJ`gl>By);Qah?*=~Bf}-mo69^D(bpgP?LI z0jx}B=VNdaXA*YZA(vQeZ_i@lU+^S(@8PITlYjO0H2-2tyqGo3+u2TdHyl15v)-Ah zzN1CB7o(qn456IR?PQda)>?W~WJjvlmzKO3WRRl|zH5O0OjUoH`_Zv`a$Og*eui0D zjscchI6heqn+;vcbje7h)g<4Lj##hpJ|sb;CF)-4!ebU&!wS=LyCu9UO$AnqBJNn) zB9I@1(KP5Vdu~#9|FRu0Ga3r$;2`8j_KtPrja})>-Ad@LH5^Jco)3ye#~6?DT#0DL zTOcyz#n50{U9eeO+{k_>Lz+gE(4G2m!;2X}S)a*hN8ZBSJas&0Eeh96u2e+Uv?I3K z8R9n7Jt;W-$=T=dc9I|<8QexDGo^KMR&_hUKnXQ|eO=4#7{)fXaiVv9ZoOyfodgbuz+bLoye2Q@3t6@kl(~ z)zOY*&?1^{{|URem&97DfT1m9lj~dKY;pqHVbQm@w@pO(&gn8UNJikTV>=i{Tl0MC zZocrP;Vj%k2FX2NI!CdKg_!N!j~v5K8b|8!Q_Frkf>^-cf|&6rPEa|4x>!H(IXNCx0mRRD zw-7JR{-uLX$I+%L9L}BGp1kwSS0Z6)b9?7wzxW|3c|(mc6VdE3;p*qDhPF6j8J-2&A^W6ZP>C-)+Nt=Yl z-Fn$CgziX1MF@4?yDI4)@4_#2`~5|n_dYO@jj?wsvJ$F;x}Bs+JEagy5-7}imo93M zK-eUsr~=#U)wd;#foF1bB&Vcc)iObX)6BBk&vMpp%$w+IXKhW2HxE1+fxobq;kcsv z4kr$-`@?gPEhyx1%6fY;U}kyU6op8o5Cy+6(8jnT7(#-UBGbncx+l<`v~6)4*Y8)Y z1dfzesV#!t`0nq0;iqIM(?gW$zkQC-*y~uW^CB%J!j4%9Dc}gy)zx?W3_9+_Vv2or z>#0+xFdJQ|-)Rm8DAWbrK65dc=ETHA@GEXfO}7~rk9bzMX6a2#71sXCqg*&zpC9jw zgps8{+@$N`jhq-3f;%lt6b&9gIEf=vFh#GWr9 z^FQkL^q)i^7zS!F=3aXdj(V#L{%{br{~35=@nMAt1EvqrtX77_pNs1NN&qKH%@9eZ z zAbjX#_r52-y-5pSsbwBt{OuGtTbLRQ1{2=cQ8m#)R9O8-(5mPCM=8q0v{8OJzfn11 zdUdm5SbU5@`+pUxD(t0FR%@@C&xxmYP?rla;XbSmgffr}UkypQN+f)nT7GPhLzt#) zEp~j3w=WW&+Fl)sSUWx|i#^zK5d^`O(X&0{YMJxnojemQSXf^ab-m+wZ@E@>7p&9Q zc+Lc!>_Hcqky1}$V{k90z`+Lbv%~>=akd?nJ|IC8gv6>Um}rrzHr6~o-IM^B{*te2 z_ZOP@QUf>a*W4ju8v7yaUge;YqT*ppduQkM(wpIYy3CuKn=-D%Lzwovvic6`*9m3u zqMvE|d3&i#cm8MCNM?l6#&~8#eJUWBm=BR77UJj+Px?HN2Cqzg4>h1~>YfUJq{k2* z2ZAs4HDI}o!RH+SA*rMYlqSlhW)jbhfz6Q`uyExI6IhB*pC0LXHx2gnfq?U~<{s=y znwyr0GV*O{4)w?zzRQ0#h{`f;pcX8fg!wLbIp;?Itvw#3H|lsVf;oIGLp ztLk~vZIj-^6Foq-a{dTYt#|Z4LtO#@((NFy%(XPLku|0mfXEvzu}Drz0zpNvRAvEg z#P@F2-rl`bh%~{ea^Ri`Q_Z->zgK%=eAy2iPmZpaZnfD^Umw~Bcf?gqXDc!eKn>9$ ziNXygDHTJJ8_CI#-G*h%(z74_Rt_MUP!>eMITK)Zz-K#2-zqZTou4d&d3ubDe=O}W2!9Squ9JZ7DhN+P1KZ~10?zAeE(w)up~zwANl z#PTsdKE8uo!#+AXIzWIF`vnmD@0!tMDIW#HGK+9L3HHBee4*0#AftL+!~FQtc_kBCz>@eY73HxY zd`Zag=eAF81^IZ_S8P0XxKTLvzCa#gveLm2-%Zep5kW^cy&9S&FZ%W?BdT&1gFFKQ z@_rFNy9Wd)7!_%C>3h+1n=z9*IPc9za((=&Q)(@8s+hES87VY7djgXT61Pbm*aX4y z+>aR#pRneso*foLgBsTFHG1;UK4#$`A}~Z`GIm6smzv~8oqy-BC6>d&J>wqnF@SzR zYK_UO(zLOh>{333xi-INA8MH)4wdo}cc4%Yb>;y-00>(6jG_1GSC`ON3l#?Oy z?~M4;>079`br*AH`cWZc*u#+qBiF;6-Wf@iw_6hzC9(lo85K)b8r3Ph95@G;FL*1QFxOtopWf0+OgtC=o8R8{R4e=kU$Nzh|c{ za_Rz*e_4*^a7NMSrdGu$t@E7tNXGMLsXE`vrfGmhOSR0oL($4OZUo@vOMg}Tv|OyF zfZ0Lqt|WinWF4WDek#{H;j8n`4Yi5@Le{f&r4tRR^1xzNsKZv;3jSJq8S)PRt!ln_ zyd@u~&A?KKyGwz2Xf1P2O-{aYfGLuCnjYek_$|qVXU$!PQBAKfp{lmSpE-_7;7R#S zhc2ndb6;$Q|M1(*-U*+4LS!sr=abdyyv+o%t=)itPf z{#A#H?3duC1morD}3gND3@ADpxp~ zt09(bO+$c`M%;Mxtva=D_gWjrITIjbLHtm!ryVX~HGB29$Es)DmOFCITjzH(v<^&r zLC(mXi!XJuiH@Gjy43POGe&CeBvnP<7VidJ7F=zcEvuNuNb^(o`Q=6)chmwZaCzN` z${btKdFLH1OeT|{B`Q6bn^=t5Q?v2g8cKDfc}h&&9XgiXMZ|O_Vie2IfyD_qHP@Zr zTYJuYyIkXOV6qs|gF@YC>?IPqsFlhDy|WhXjIqArY>?72@AIpgUW{T(t@RvPb$zG$ z$EIlU_#mIOBw|^FA04hn0^&%TU(3*GflgL0AhzFnS2xI4~v5UBT-P>s4`}xAP&`UoWXu1G+fOZnQZ2)fjIp! zpl)M0lsiSyKTapRble~X0=E!8zFN4TpW7WB&1C8q3#iuDyQ!Ohagp3%UhS9F;ueIj zd^0^M`+Q@`Z`Bt<9TO7*)d&BOS|9A(`pbbfKPgFRqg~ql0>B&%r3=lQOUMvO^ior=YDXX{+8GQX+L34ty}tqWhSo8XvzOW zU0rouuu|iHW<U&b_;Cr|{BxLP!1CZ_4`DQ* zHW)2PF0dF9|4e}xB)40Lf0;?cfcRXAdl+Y9U(P)^G}P;oW~IR8=pA=$XS$u7oW^}x zAz~08JphX1)iAl98-=|#>gay|*=jy$;+>FCnCb|z+8#N}ff~M2G3= zX&SI(%*-2xWEt9aD}D*u+q8~F!t0#DKL`-X29&}t-{=5`$wK@&to|d*JH5sCDok?p zqmp<3acjo=@+e@!FiW^8k|9aMOS z?NhE%A??duSr5}*|58r~_JV;jyK3!2HwB4-UdIrw`RkrVlr=nxGVO}#nu@uW-6f}_ z)Z<8LhS>V%Y;9rh2@Xmo+jNf4!P!+eg z?~hsUdVfC0wPxLRCf!8T8wjpS`g6@J&>|tGtb~j<@)`28qZh4t!L+oN^zgAg2Qc`d zS$Qn!!%U<36sKNgfzVvv#@We4yE0)%J3BD_ptl}IsQOl@m^Fk%wBDb8lmK?vnZR19 zC$`wAyKOEOP$9aomU?W7oCxR+(z#qjv%S)ijrG*x zDN5S`bA{^()vS_k=bS$x7`Trf6%YhA2l4mHXAPTaF9<6tlyp`lyBTkC4Vq^WK>5}q zD)+9>G>>!1Yail|-H<*I&$;W5mmbJL$Qnqa`)79K?!vU3ooooR!qv@f**%cH@h?sW z>g>S~73swA^+|=l(jjhHAI}7eMawKSYZW^EcPa#gc8sinD(S zqCX_5P`EENaenCypv6)rhKJMhE(Utf3{?29x&SkSOGbv&#MB5n|5yJM;B;9ti#V7q z(fEc`$ew)FTbJuZF#GUFH<T{FYpqvry@=!Mn018?#EuIw$On zAnP%%rwbOqp>zZ)h5RRsYyzaUOnGPTPgV3^fkXtU_F9uvhzdh&;kkbbP;5xKn?Ehj z1sRyqi6Mt}adC6YupgcvF&Rm*hu@YsDPi{JW~Js@NGyx4=SpBRR8(!H_E;{tS}2fCxNx zGcNi*y&_h-m7!m`06`BikUbbs-VhyuDAV1;t8mi1yvmAJ4(|)L#pQhCtIUQ7!{T}f zSpaN`k3!(0Cuhj12s|-Qm>L1O1D&0bdehDB9v<%?mqnOm8wCL8wY}hb#l+X3ue0Ytx42I2;s1q3b;Dk-y*pCW!7=%z~g56o6~u2D0QZWL~yIW3}GjN=?G zE3*P@dw-IDbDtJ3BP7IFJ_S5+uuMp|avSBpTHf65cY5tqx6n=-cJ5KLfd?9fZ|@dNK~_`w1n4jAwvsmGWKb~t{E#wk zU;IP5ISwzZ&HkSGqp41g!W2R@U~hKm03#*KAt-g==pTOIoyrLYb3cC=zMC{(#$T{v);J$4_3l+8lF$ES7{)ivQz*{dsE-n?vZHO&%EbkEuNIrr3e4T1QcdT(;M`OOaQ{_A73?Jix zMpQrR4*zPr^-JZKA?Z(c)$Sh)OpIaT{pGK2_(JQtuk#O-@zciYNS6+Ther)J{Mxaf zC20J;qT}@D-u0cSrUT%?8HJ@kg#7w9$s$)jIhyP}xA9CFVJPv^zVYbZk z*t*+$0f!~vupR@_9<2bLo>??%(wH06Q78#buE1}9u{1L>t&&A!`afCZpY>r2aaf<^ zT^~s$76M9HP1NE$Y>%)BS-ieXNLyR~nj=mfh+~7kbr3SfcW_QiII_y7JKJhow_uCd zr+4!$(VApWJ*zX$!F$p!zf^glHJz0&`?E4_j_u~sgqU#`CfCJ=GuHyzai6^o#M E12Mnq!vFvP literal 0 HcmV?d00001 diff --git a/tests/ref_imgs/draw/render/l8/demo_render_fill_opa_255.png b/tests/ref_imgs/draw/render/l8/demo_render_fill_opa_255.png new file mode 100644 index 0000000000000000000000000000000000000000..011b15bd5533761d3d3699ab4351290075815bc1 GIT binary patch literal 15857 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 {(U>{^gVux6q?+0WJqSkW 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 literal 0 HcmV?d00001 diff --git a/tests/ref_imgs/draw/render/l8/demo_render_image_normal_1_opa_255.png b/tests/ref_imgs/draw/render/l8/demo_render_image_normal_1_opa_255.png new file mode 100644 index 0000000000000000000000000000000000000000..0ab2dbe711b60e8f5c402ea2b1c0b973aa0318a0 GIT binary patch literal 48180 zcma&OcOcdM8#j)ukWFqYWMzl!?Ch-Uon$3@96MxZlVl}3JA}*=lI)eecUE@x@6z}8 z{Pq0voImc{=p3K(dB5M+^;*{nS67w4g+qyhf`W2OQ9)J{1?2`E3JU5RHX8h7@Oj2Z z6cjoXMOi5=MA~M$CxU9E?n=I>TCd(t@e2p{=Ospy1+xVX)mJ%Ligc1cr0EHUZS*HJ ze`0)X*&6yYrHrV3Y)@}PpSbnKZKriGzABNk^Ok;C<(NJv_ioeA&jQMyt9MQ>ocy}^ zy5CsnzqMl#&XhQRvznIT`G9iW=dfwVlVG{BPh5tM5F4HMYOKm;$S4&hKvMIy$S9`d z^$*bkrmXu{Ctm4)tgoLmugF=}GAPkuPRL!>5~Sry?lP}XQBnEp)0C(touzJGp||(g zPQZ{WdH=+RHYWMoa;bc(x0hG3&I=qY;sI;^y1F_WVKR74Np*XifWynPolH@W=voQn zhj;Hn@Ax6wBgpu^uyg5_8qGV`8FA?rYFTcx+2q&M=;jZls4!QKrzIsl%GGQ%;ZE+l z722Am9@e#d>LZR5{LQj*+FmdS`C(|?z9zM6SuT4(lCEXhIS6USNZi@m>s~+2PZ`x| z;U$)Vo)4Ev8xx8&!w!}Xm(|qO)z#Az;!N#J7xg&&J(7`;;V7gsK~Em3!J25Hijl$8 zpYqp;==ce1;_u(TCnhG^BX6sXu5=}HpI!JJh^^&1QH{N5-xwMgsBqt!7#tk58Ry}| z#Kc61nW(Bp&+b@N=%v)FQ~pOqg&Qngp{K%@WNBs9S1nA4y>xn4Kj5&NukYaa*#8d_ zYwXUH|4ElAK8?uhOZJ3L0lTsCmy-gU0aygIVlFEx{{9kybhg!A8^215bjz3@rgbg< zT;4l9J!MjUn{)0J=IY^*@QMAk9jQuujKpQ_moIPSvU^%eYtuwMw)guaj?XTr@vTNa zX)iA?V_;yU)T(#;NEq56k8}Ev|QhpXizxC=R1~ZZ9Vh-8Z(9Dc| zg?eMg$>GY=sZ_?Yh5wZ-qn!;BvLnP_;qjJ!792^|{{hL*oMZFGKRVAG2rdBik zX{88jCZ}g-XZ!p62M71|y10XM=(>KDnKt`fc%e(VicHTmdQaOQe~+RXX!Y2cx%CCU z$&v{*@!4(nnDLa)QqS2SQ)TC+=*w?6nO^ekv$Hu|>>W+LarWT%C?K zi-?L6q5nrilhkR^-rl}HWeKO5KvBu;0Y87SX|qX*jvzn(96EU*T|ui2Y;xE}J2Q>& zpp06nX}&1wwD|TZH;PJ-GDRcyVdF!qxNIv zs8WPMNR*J8#75KbI-irhxjDMP|Gr>hVupl-;9&;o6d5=9crtUnCue41c}S~<<`#^9 zrN!1cjPo%F3->G58mCBlMshMsl9Dl3a>pXvHrNXkcwUV&q#QA;AHLnJMdW=9WpSh< zBPHc9X{i195$#Psi)vb}<9y(N^_$ztDlJP(jJvFZ$*(A58olSZqvQ;09iP$>u5E2S zB1E5Rt-3OMmzHMt@@1p@7Uk*Pj(Nwlhu%85nsw9L0|Oc*I_z-@gWdxvLt|su!(=T` zu1bC(ky4?p_Z|N2wAez7w*%J0>#h

uO{;kKl+rdv=#{@vf$^aTHxxr$v0%vQ=M( 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 F{{dHp+jjr} literal 0 HcmV?d00001 diff --git a/tests/ref_imgs/draw/render/l8/demo_render_image_normal_2_opa_128.png b/tests/ref_imgs/draw/render/l8/demo_render_image_normal_2_opa_128.png new file mode 100644 index 0000000000000000000000000000000000000000..0e8f91d9b66b998dcd221f971a6649cfce245a4f GIT binary patch literal 13466 zcmeHt`#;nD|Np4yk|+sDlunXUl9*GMP~k!jBj-y(64D%+!|HNL2$xGj(k_HdYl&IR zra~@hG}4@A4k2ci<1mNM!}VW$Z{PQRbhGWX$Mf;HKkkQTlAXhERzYt5n2lQl61?Y8rM`^k({I%E(+rbF zeW&{SH9AVR`Q6|nbuNnNux{3 zErn{9%1web%#v5#i-Ru8zg;G3M9^?fruK;!s*bEL(c14Qa+{T~FNF|Kjd^u*ZI^Ju zca0}(R<^=(Jv)0p)A-)uv&P1+7y)55?#1>QVdt`2uj%HUk*CkjzIn7|`i!x099q;w zd1Pdy#@&X<%(g5R@Ogq5T0PFnLwlh4e9G_3TqrrRQ+_yC+h{lm=63?-7cKATp~l_1bxJXPf9gjrmy0StV`!+5 zYH?FHuVLtcMNxcwynL$PjT;`PoX+6daf7+9&9@s;o^9-X>8^47l*e@)c_%0Aa;q0@V_hJXUgK8gxH6og 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 EKVLE`!2kdN literal 0 HcmV?d00001 diff --git a/tests/ref_imgs/draw/render/l8/demo_render_image_recolor_1_opa_128.png b/tests/ref_imgs/draw/render/l8/demo_render_image_recolor_1_opa_128.png new file mode 100644 index 0000000000000000000000000000000000000000..80dfb853ab1b67143d7e6e416b72e61606e379ca GIT binary patch literal 33274 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 literal 0 HcmV?d00001 diff --git a/tests/ref_imgs/draw/render/l8/demo_render_image_recolor_1_opa_255.png b/tests/ref_imgs/draw/render/l8/demo_render_image_recolor_1_opa_255.png new file mode 100644 index 0000000000000000000000000000000000000000..aae9cef1ff61bab038a4ab991634933d81fdda38 GIT binary patch literal 41188 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 literal 0 HcmV?d00001 diff --git a/tests/ref_imgs/draw/render/l8/demo_render_image_recolor_2_opa_255.png b/tests/ref_imgs/draw/render/l8/demo_render_image_recolor_2_opa_255.png new file mode 100644 index 0000000000000000000000000000000000000000..e17bd361ba22154ffda00c0098c9297069a2210f GIT binary patch literal 13455 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 z

UQxj$}u5vPWbNjo$v=4A3GDA2b3-bG?e=n$9@{c;j`|DoXzpuudU%hzYpz>dZ zYn-1q5ah71w8VIdebF^gbxP=JseE2+=JeDNj9>c|U(W=$oI){8kI~q3Z#=BO@plzCP&djp*eP7);_F^lPkb;&^Ed~G<$x*R3cMq`gt45fAV|Z}^bf2Un&z&teMkG9J;6sIN z3(1jX2VL^b8!a?pVyrpG8Nj`ur-hdXwY)@arm+Khcmo4vUHpiYRZWXlPG=IIaGA1BYreifPwJIX@Oq|B&Xtj~Y(>!(2cHq}E|Boh5k_jafOOOcfJtD+Ry zkK8Q4?>AMhEfuaweyPVO0!J-Zi%eK&z<)T%S|v&==R^d4@Ac(!#ekhca0cI)^wY}; z5PmmcO~B3`g9Gy;8?^T!eQMDWCvb>IE|QuAkKd1d{+Fp2x50-&1Wth{2&V+h=X zjX{+sI`iBr>GnTT_ueh|)$_jO65dY@RDi9PxQ*ry4ml*P6zh{O9xtnAq=eLBV2`V_ zk`7%0uNr<9lfv#GzNI6LFD|ZaWVxud*Oc?waMxj}k-(YzBrAm1h}^~Wwxc#0qLIul z*F!PM@JYV+8Z0^D&(r=+RmOSxxZ=yt1B$Esyz&^F`8@spzP=NFSJqqfAg;vx{9?l& z^bD;y3X2l+d*&cxFe?rwgSF!AEfcGr@=?O&)-C7-L1W{7WGEox`DX?kf`cVv-t~aB z@eK=la9r^ojm$zNh+Y{-I8=BV5GrW*g7K)R^t5GDTv=x_IU`JlgSSPR47(l2iW%?H zs1pogvFBqH{B{|%QC}`RyY=uMUNxw%p)})}G=&;OCQbF$4FR~>;sfP~gyCfx*;3f} zArE-2*tHz}4CtxKq}Jq|fkC$zkc3DQ*&{572hL1%0qM(=Wq3~JMi!KUY2MO6jh6`| zSkF4Qxo-%5q3}8%e54G8QXKU_RUoEQB^VhQp}!E~xC-z7A^Z5$tt6}tb$yi6b%4=P zR#6R^H3ZeXrW_V_BuDH=C!AYLq!1y)pjyzA z!Go-r^nB1%Ks8R$3L^3l6xItA*!+93Vo=t_!@}pu8qOSw>9cRj#lT>{8lEDS9o=H` zL>Texs)FQHmkFB}fi?_izhu_Uc_e-YxCb-PQW0YLV=0*7f;+xJ_XM`_kt9eJKq4fK zK=H9VB#)>t(*gYvL&eH@}ET(U|01)loPR#%OX)l>_z#oGS z)-!Y8G}U4>4s_Gdvw<`O&205{CE&TKABTytIHe&O(2klFyBd|`q9~FB{0>&*pV0UM zHXAI%EVHv}9Y<6ks9>UFX+pfjrK{KR?xtw<+8i@50Qm)MYJaZQ81mSO2*f;DTILuE zKxGvf8JX6+M~ah4*(aAddKW#}R-9yZlrI3d8bFuoAw%Tsd{Kne_jJ%x;rlsFhbCp| z?Z%y|QXLiRKWP&n`~iFdws6z1S#hrQ`T9?)t^3l*fGHbHL5Yg=kk;A})rDVgUAlQP zB_e~5jRYBlS`6$zP#syr;Z>hTPFoaRa6`01lv$GvO*iwyNEW5TFLA?yT$Dy$_N?3b z>Llh^6XNDiJ+3Z06ma#BT@}(&QnKzg?jGy`nMpAIi~&}nK?>>MQ6MB}&a?j0IfI2# zvJBQGY$V)_;PhU%vjailOtuqkl(~^X4}KLsrmIE={L!btqF6=-!zK9ib-r5-4uMXw zj!1$)4yGr3S=vx~3Gl?tuEIGP zed@#puXY%cGBX5$M4{*Zs$_-Yfz~@&zdSTe>*teg{p9QR`mk6z3y63V3v@#Q-h(xVm3$)0uSn!W&9idZ5do9G)%E)eD$I zfEdge;>;g?n5oAm|7-!GjZB4IfwE$72d{o0*+d0S6i1>@VSxtoVgrMQ3jBh&uO;40xllTge@JqIP`cOv5KgQ*rEdEh z;b+w6pXio@UoHzhZf4EyH=ntecp`1^FH%H?I#tHBs_(>}z)8tgJha8B&YJ6L;-NX@ zv8^NIY2=*zd}tlcKS|0q7uiFf{6qB_krcyg4NBOcXkdQ++r9Dz2JQzdvG$F)kqUBp&S65eB>X-8k5cT&2x%`=pSGRgj zmiL-~DoClaaDXE@mIzG$_yI{2MuIc3w%8$p%Mrr!Z5~z$bOBL&q>_zRTO!RW1~R+& zzKd<)Mj=*TATwf_6yL_Ez;(@UKMDO4?&eHtUjz7dKr;o8_o64HLS>5g^M!&QP}U%0 z32GX1qU)ELIhfE|74}tmgUe0BZ9iz_L3nxrkB2>%zFLWeNP;Nm7DqBSHI>-QrcpGm z@A@HZ4r`%eKuKujI?sK({d?$^`#C*V-H(-yS6*pMgP|L=_<*>BA*j%#Rc@f@Z@yO4ft+H$}Hvf*=FqSK;ne>@#EKrp2NiHl7m#xD6mBy5 zF}zd&_fdgqQ2^1|gIn}zV4x|II_Iv$S^P=)dHCH=IH#`MrEl?0Wo^LUhyBc8Umq$^ zVa+dfo@h*4V$yVS(Atg4Nl!57s_FTW>FQry*nI>sQ|V#gLXSp#IL|1&0Z9S0?9nn8U3h zv5UZsXJcVOTNCn&O6PFN^*%Xy0)o>h+kCW8)3?_=!r->I1|Qu$d-qmTCX#c%GQ)yp zzQc^~>D#C`-*||Ro8s{5cUln=&5h!CC)lnW$>0Oj6(!|40cRv41aA!VdmBzKHBA4m zUwD5ZgU@@e<9M(~*G~U>Ik449BN#j^2mdH*moJEo%0UH%|5z{{c0WBf%5qo?ekX;U zIp7b$7&LWB_cnQ46HkU$8|w1C*T(hUVC3p?C*|j3DgnRJfnjTa0=#K1f5vJ}Fdl6v z(p$dFR`yQz^hWW_xHRlDoR57m<&rk5-8MjXJF?R@9>eSe^gEBC-9X`xi zJO4d%P9l7pBi(K#%hGj+k({Y>muNTnKoT?Z0HU{CUB6rnsXvBHhJan5 zU{s^x!A#Ke)z>fjv&M%SZOWh5)xDYf2LyP?9!C~U3_3~eTjR$AqNa2jKwku|3hR>f zs;t|T4-+&P>R5>ZPuzRG25w71!Px?B>nM?~+aF@X^8{C$vQ^uNH!ohy{2H!0W|+YT zbgZRC86zy*JurPK@yJ)aEpRk9qV0tWHFp4Q9R@|Lh3jFjDD8ZIcj5$mG$EOSUqB#j z_1mDl`Lx&G52(aKe;xUc+X4O`ELVCHH3BKSahzdrOYybE{VV-`>WRCYEDe(MK~EeE zxxQaL-n?_3N9hpm*z)trO2mEtc`e<)-W4WX=j91POZL zT>h|J9F}umRU$;2?|EX49d|T!I{9LLXJZnU9!UIwVx4lT!I306;$99Fs)JYr%wt@z zu72;*va=^;Gb5>_WA!hxbzZ(E8U4QMGtePm`+8$w#@tmJ-}Umk9A|Y#=i(#>fg9cQ zr6r_)VYfL!=TAi6p$jyp{Jfo~=b%Mt%J&JWE4#RDL~xx;9v(5l4jLFfzMVgjI&xt- z+Wc=pVI3vsL1jDZT_xOhKerYgE|W&%SY+@1G=Fzd!PXr^p8PDmluyG*DvcI0Cjh-` zIh|bXq3QjE!H>Zl<{GJ_8|EgJE`y zluTE!1Ns_#rVgiJnXUi#Y2v;z#F;bx z?ihCG`|j*g;E8_N9Bu!>O6=F)nhd@kn_a*Dfk@?2-8GC#4xk`Nf24JU*1Hw7WVZxw~fuCS)~>{nt?P zz=cMrOjq~MvjtFCW5CA$u$sSbI~nx!>t)u*paI%ffbi2j@gO0g$WXu#$s>s!-+-Ow z>4TPC=e%?b{wmmUrc1Et8>7_0BzIs+pp?|agq5MbAKUK%_KS3sEuK5iTdHn{HDFVQ}sZ&7U&PSazIx* zaRRr^!gl(fYPSWZ)DCZs7%{;Kh85;ut;ek^SNujQ0cn<(gU}DWCnqN-^62@M#P5ZR zom3hgB`(_o3F~BNXwuYT{3SwUrUFQ}1>=!1;Gm;)9118?kwgqm!YuHF0lAK|t4jz%50thg%thWdGr3Z^hu|{=(@C z0vJg@H)f=L+D^aLxnEcw%YL{NOeF%c5oYlpPk2i>4`qLg&LLVA%zEoC^i{@MOel;v zL3P~ZpFag3XJPizm%z=d%T#9PLoz@jLiLcVf9JLZwn<|SmLlm)MKCY0uDdE?y}YpP z>+ANURNLY6T^Fsj=}I4;okTVuOdLVxL^zB3|X z6s7`z6aw3o91h|i6N|u%IbP;BeX6kGE!F(#ICEuPIc*wwLV&`bjewWlg?~Se-6*jt zvj5W=8P%Zq#&e@z9i6GSx?N_n_+BV1_yz;#sy>rBQd)1`JjTY*{on_jDx> zatN(2?xL2z{?z6Fj?xJ|cws#2odn&E;mHqY$=>(x?LXGseSKf$P1nyW=tQvSUxsJ* zpD&?86h~=bMofDlRzQ#)RtWrGc}Pjl@cOAwKLqCviq7n2mTzv^r~ZC-?AW?SK>H(5 zn6uW@httRqFvFSQ_(xZ&mNR0fM0wkh`${qJ!5B2{{rhC@1dP*=orUo&K0ZFJB4(|K zuf@mgK-mqz?XD&}6!>Go{@v56*Oh?4nP5Gg=RhaXzvC^Ym@n)d=KBG;DL9(xO=3R` zAenr9RiUZbRSIJ+DqQ2aCDkq+*6|-`5IT<}|5$U%-F{MVni$_$xM}T}zMOh$*`JI( zKm*o(R>MFOpW5`#A3r+pWUNn(*fC&AV`I<;)Zi}9zE|<8!Qq`(WGkeX~M(9j(gO}ywu2Roc(aO)e7bwPR_MoZ9-t% zeC!71Q)`lzlms2-9|L%($`d;${tCPa^6?q2nPofF2rYBhb17*!s(?LjX=yq8bGf&E zHFh;HCKr=&0d5!b)`p5lc~>4orpuU<;H3Dx{n zk-x^@rk9w~Q*GHaEc8T1g>ELgnx>-^1m;fdNrg+(Nq@4;jVb z7<8TvX|xi{@OH4ZMN9=?kmvAk5EB)>cZ!$myFwuA{5v34E2|)&<#gXo3qjCqhQS*~ zMgh%k5TE&&oT`T?LLz~-vi+jL`?mF4Cjm=yxG-EVEDH0puFA^p2_+$)-HDSFu$eJ+ zpYosg7p_P9g%m^o^MDo3RT&j687%!*K_NR8xZo?k4Xe=L@;{z3QpQJ@&lU9GIi!xE zy3)N~MB6jNANkw12DdK^$etG!5$S0$)5G2LniwlKv4FsTU%kn_%YsosBEn-N{5VX= zSBGwWLdJ@MK1aApgL10lS29b3o@F9Zf<)4xaTAhlxfqQMkqQ5r7DDcRbWL%=;!Z1`?FSE2@xegn%kt+h$HC%Z0A z1@E8t>$6QwNI;W^5dwB88GLV7_HhE1mFCdqiSAUr8X1(%`9dc|hv+{#YW}?OGWCA} zLJ3Pd(C)kvb=L^{*$E$udup}ZGiQ$Pp|dm55OHk2u0_8E;G?^0LUzqoBnMgD$c!W1Gn<_`%9#}p%~o8B;j3YK6aEt zEd~&IPB)`6CegZ6ktrA*ss`^01-CtI$k*qO;)iEEG@5Orx&N3dSQ=;iiK;x4D*wj? zP}Yso@b7#wFx6Uu#yaTN#QZ@qcW2!6@!Lt(u{Zi%pQ@>Li)Vc?Sgd3 z#{@E;760%aZD#Fms(o@G(74xvd46cGr9Vqxj}2aS)Wwlm9R;~G8x$^#9ak?!o!$w|DAWM*{=A2dB@SHQ04iG(R7@Db4P{5+7C06jbKX zrUt1OBeM_ph%Qu0ieg=;A*q-Z5VSE|^Pxb4{;3u{vAmoLQ!alvA6ykde~KO+p+J%; zm`1^vL}6Wk64nwZwhG&8Hbo zGh!Pzxd8LNc`?M!9D{RZFYTkOdHF+>jV;73omA-Dk)bAF1IaS4_4VuE-@TC5>v3b> znE5u#QYy6ckr4zIY2=Y}bZ`A;cA1}>m%MXh1P4bRvy@9Ugf-{I2y2Jzdgi{RvwRr8 z+s$zjNEZlET~WeVPQm5VR($8(<~h33c8gN@aqn6M9%?86D+)`pOxnq)OHFO`+|BkC zC)py-lx*{0WLsQ)$fusC|J-{;G7eBY?5nVEBn-^%?f(77*Ib3Neo#ny`eJcUe6zmbKx&p$VxG6O1%p=w?$Ps+B2ugs>6@omZ{;$&`s1NE>1O)fdBfoHSk?2`3v zhA4zZ+KOM9;nMKs3eF((iG01ZWXsMCI!K28nQpNJmDUnioJREmb8|R=yXD;k9W9Y8 z;VQ@J>LF;c=qtB;+4H?v$CL{qFLIkJ{jUB9wg=sKYRV3IP9oHObuus2eit6RFdyV> zDuVpA^jp7x3x4jG>(!;;<%MSpW~CsTS6e&G=e|}~}pWp`j9cQUbsP59rAk+q3JUm3g=RgI9B>`<8yq^lg zpa0ssxw#?QiKv&SkH;tm0fV|L3gS(-&TFobfe2S`K>LC?z}0Vxf@kM1$>T5H$5|US zT_;Vmk$@?rj$vSe4cphRkI<{I&?AotbJ&7=$_^y9-$Db)I`~$#%^?`6&BoS@UXQ-N z*lY=+WPF?OJt>FnuiT)vk&x9z><0IBUJ59vtN77M45F(RGkFW*k#NQ~x2Lm{Zo_?2 z%joR|;}tFL5gQ$id7`mqRb{J%hS|N=SrS(jppUQa`Xkc|?hBSjTeBFxMlAiy#8j|c zzqWj~puD7{q^c@!g2}p!1RuM^q$Kyapr_=qYPY!qWpDkl?%mfW!VMR<6#dvQ6C3La z!4R2M=89FPqN?aT3 zrUvC-rU%RXoSL#u!hd3_h|K!^YOP~)4hLDy&V5x&%33Q-514=W2d%q_+i2|U>?}S2 z7m!-`LSXyRV*@M?OY<^wq@GBTBg4bx)wXpxV}}vnR^)?U><>+9=Pv1u4?B0++X2|q zWfFiA6AB5G-Q3gdG(M}e?}UQUEW_|ZyqSdp?f&Ar36iOZ7n4W zo#`QWaL@Gb=wb!4ao2-S)9f1PuNtX@IKb)R$!RN*i0_oVqI4a(nJvZ};X?mudS^-( zAIT9ERb3`twsNn`8xbQwR>YH!C2C;km|XA``tnXpbMp5xPBnZxlCZTqanbHwqVf|y z3PHO6b0_9g`-&^PVn+zSAP$6l@%wi4g8ziwQt`0?V@9x>rY83X_zm@j4QCJtlOpDmiKR5`R=SoHgkGFQ4{p2eKl!aN2zk^Xto<3Tc zQ(^oes4(d8TI!jw7dYsf$;(KgUM$U$IQK=|v@kq>ehCS*^Tx>!w~#SYfBR-ZalV}Z zVuv0ZFpb=j_TC8(Dl;tTO}rL*fG(o7mG=JkVc0>g7)#Cam1lPmUt}iGo(y{|i&F0M zDhq~eB#IZ)QPJw5)gK(E++9TYoq`U4euyC(X@j#tGIhS&8G zu>}^ZdyQ5B2I&vOYZsJ)MkJVSf=~lboopX`kden98PCq(F@A2nf3Kkip1_n{fKB-? zsoSP6XT~{BR@e{03#szU+oe5cJ%%r`HBe|}Gw0q{DXzJLH@8bUz2(`RY-{jq;@cX|Fh%SBi_hT0;!>X1O=d&Nqvn;}ogwG)00H%@FB8d-@k`&4UJxZpxUF0D&g1!>YDhF-RLuC->GKk*= zmz<#~vadiUvV&w3Z&@_$UAMR;`4Dbj<+WxXqVlzh0fr#IR9}-i&Ba;@Nv5zDOOpmu z;$2x~-4{m)++c?LZkTg-$Ueop>6v^a6078@02-1UQKTDb&`Gi9G@8{(10JMGc}3Uua|H%W=M~Ou zq9Wk9l%CC>d>i@ImH@MD9XTd;-Nq8eeU8o z>1uoB@H&TrV@$O=#!OZ#=Z1yFH-DkY?Rz(`I`2}JXYsHyM{0LruYtj++eg3)3iKdQ z-c|biRcp};PEZh10<0i@ajDMJ9vJVU5G!Pi2lFRJ8f?Ya{*Yu%P;cha)@lH&659Zo zVDW|#T6m=^%I{;VyoX*9O>!;5R?Kxkq=O{*qs7TfxM z!-v1)2bQqY;m^9)I6{h?`wMA%H1C!$qUDqCtRrx$0iotPFOi_3p@EIA^A}9g$PPs@ zL?o9m4|HI{MK87}*aXHYtuuCpf58_gW80gB$zIIGF=49n9~!I{td0AxjNuhPNbI|# zr(+(SEx_XeQLmMtwXjKqZR5&y4}7RE_BM~rff^q%g8g^Y?QPx`iphv`0_yd%BK}3K zr;X(c)P~|2C#`Xg$gxYSqnEInz3x4S{2}$2`Ig<6@S1{;a{jOkZ#zXKRV2k4&L2`z zT|GJX7x;6GGjURf<3QUloT5;*8%|D6ub7APSm@Nl>ooT5S1moa+4uYFU_lR>9dcgm zs%eAwbr_D24mc~;iawGVy!oL>dpi8Vb9){xRe}!}{g06BYbPQwR{VK8GFwR+**NK| zL!NL3ga_gP9#?V)a&p&e0gsSzK@X8TREY<*_n#AjUwdr8md1(=xJ-JTk5pdJ2!jo~ zW_Raz@5mI2XSzutBHiF5{E%f+9a#C`TR@V`vBV~QG5Br0u86<=`TjbO!SRoQ;(IRI zS@}O4n{lM&_XeS)LK^eP!%8Tn$=_(Yer*+N7=5Nur#<{^3WU^9$eE>O zE>$^=(vY^a?2_SRx$r!p(^8zgfndh%zrnoNL|)lWHeI~CAcepUp`1mj&yfIybeNF8 z4Ll7F!}kUE>Y+GZywd4}4I59x<2KU_js`a63cGS5=I?RvJXV|!74+}37GsSy-}7dg z@aX9D^bP9MA3>#kAYkI{t4x5rA6v&u#>W3vrfh$aEzFx8V?<;nITOt#Fs}QoOIR~o^#BMH@e7uS zcsAB_>(R7uZhXcKwxE~C5VYz1n2*l*M5pNH@N}@(9;-nlKR+*~potCA*xVLhxt*Dr zCuN1RkMWa5k~`M(&0m+$f0~2H*owKy2(sbsy)$9#`8rXj7Cj8{lxnX2*~los#Syu- z1b7q6QK!FQ%TjS|=Kmyc^&4@-W9+k?@!Mzk z0=pr|`mpJsW!%O6wJTEo`=8|M!L<48f0qj`A`zq!fK?%`hK5H31i4mb-NfG!42y7v>IMFVbf>@XXdg)N8P4*b zJy*Zf;}$vW3F10_Pe|jD+?vzfB?d7uAV2|_1*vG}H!_t8SrAfr`{%Ee{UBTqae?_~-)5z870&Q5_8VbChyqVvTmYNDcSY`mF6>twDZeVSXU>g{V~m4Uxw^Yia2ZL&`*s)f*<=lA@FR%j$Lb;HQJBHGM0c(r+M%$WL1&ie1PLcQDfIW>UuZiTLN#r!l+@m)Gt) zJ*MC6JN6g!G)9G`6<8fDx=N{jA{?Y~)@<26f?&Fnk1K~;3M_%_zu78l>`O!Nb(s4G z=icWq@ecGW5!h$uqr>d>YXZA^F!{g-<>qA#Uq$aBvzR{n4`ps(3MmS`t`uXEm!`r* zWyYzv*WJ0~(9dqSBK$3?jA3{W2?#fQgJ7}CMTB-KaCkY?`*6^P#zh2VZ(%1nN|7%J zFnF1w-W0^sUHaY%8dQS&}^K|?g9z$@a#N#v5V=b&7NOf75 z1#A|INy#>i_>syp1}PQipI~G~O3Df-V(?oD+W-DP@y#C}80-kk$gECYT3ez-1bh4z zOl=00HjR9#*8LcB=xYjg#&sibaSyqEvbV7Qv*YlC)Kk0=9yFU|@coiXdwo@Ins_Z; z+v|@wqeAD7&5lfP3A?m0;HF>03tRESA-<=!(~CxaBzgqSZd4ky@~7W*Vo(C11biXm z_vtt8rI>_+(+6MqT5jOQNaHYc<0$OFrU3B)y{k|I%k_luj% z%3u@%gax|7LhsOb$Qqhb`_-tInNuT>Cm{YdKmi#NqfQt|B47#fK7*pS@AI2Gqy+S^_yyF1I4NLo-`vnJpSxl`_xW+Z<0;g zv$N-j{%8*rPJub{dpRWIRLr}{1r8}!JS+|ZHBo9L)mBwnzwWsHZwN+Kyw}irJ_kL5 z5({n5AB&YP4vGFVsKsoK+1GPxqqB9Xo=HtX>X1q%b7;T;<}KV{ocGzj9ma*gTp-J+ z+1rD?ts`5IP@}1EQOHUu2_*wE;HbRo6$1eF`G_+6!Fy>x=ufN|=rGd{R%!9nJqC$1C6jyM=gfk-H*~v+lnV3WON1qDLU?EWBsKI*+(_Kl- zkAp3IpKrNSGhFZyt zm&QV$n>|y8BwcX66UzlCdKk{ad-KGH}L*Z6l27#gjp6 zU$?tm6Tr-e=Bs-GfW7pYJv@dG2;kkhDjHY2=j{?jF1_AFw#{RAcmPIMU zcOK6Qc40?Lb<;UEUBNstGCLy$Vyyu4)+~1ktIRG6KlKRzt3>ixa!QJH?P-z&H3AAg z+RYS5^f0AkFQ43jASb|fc-zNgjXWtXM({UKq*zNZGh@Dj9KbCV9bApmXe$O9tR1Wk zr4gG%p|!O@PxNI^R4pgVofASY)ZdNG!TBG#&-lVmNT7b>M2}YiQE#`x`9jT$EloF@AVU5=|s6hS|3;308gj> zb>(j|_3&86{q1Z@uy~NDx}k{=0EIA%lJ9EX#-ZI(I=nmF0G3=HbDVGe&%vsQX;}BO z+bTAQK+J4e6R@t&oq!1#g#880PF48ahfl(;3C^MUi(or&5m1%S7W`dVUH55+r#RyO zx)iYqsxp4{5dSxx2f7aq?Q&2%KqjezeAfQyz!VZVkTxmIg21ROJy2lTNbuHzoPh`E z2`qB)&om83nV*PNhdGkhugNgH1~6nPKfeMm%!+5vUdgl}f3O*LQ0NKtE;B#ut?w=x z%oT215471Q8=M;W?pfxi=}gfwUNxdtc>cuf!PJx@54p(Gto+~@0$3E21Q3H{Ul{N# zx4n|{;k;4*2?T*0n>-=HCX*~frzq^eX!jXvlM)SXHrOLm^#Rcd($~@x_QhOt9DC-I17(aOd26EA~%1?{A)h6ggyxPKhFY1*HnextM6~ z=KUASnC^g^5)z}81Dj)Zgi%XG`)&!`?cZT>-bi%BJ$8YGsfEt#i6A|X@A(6D1Gk=YX2#Uh!9 zvMn=}%t=T>GNnZ_EHa<#@j2h~%XyuD;JiNTm;GuN9?x?>_x*lf?`ud}7q42ulCqb1 zi^2V_v5+^HbZ;R0sA14@$91gF+S;HjIz;SVnOsc`CPOxMo6+JyANBOyBevgoD`904 zmqMqx<;hMJ;o*YBLRt4QE(HRX);MPI6aV`gKdR}6JULHF*SNW!5grW)7W||rGWs9B z%M=?!+xGIuTeiW&82s`#m$0SjiEIr#ZPtNVeR^AXH@nWZU}5Ua?5s^?l6Q0#G|v+W zTNo1}2Q8UfAKbck_%P=~koXTGK!j$Vrq@8wA0p5(8rtVT%_r>Qyymzplv8+_x5S!f@V&kOVrKFUI@UFY;F(7? zj2~cqW2B16mDNcjRnb3`n_g8Nr09X$fhpj&})Vr#TeUztti zuME{yi=xqs?vlIT=+!;{HLtJGG2p4UswkDc!ZCYH(Z%a_!!NmE=k z=a+q$5*vIf`a_jv_W6<7?V&tF!^m@dvP*LI(@}qFnPT7--`DsZ9AvJl=4uM$=j1p) z&E{Zo?qjd4I$Sg27Es*>&m8Pu*&Tw$au92rdJ2mss)&Z4bnf%_oKFSF{emKe&a`8! zc7H+A_(`7m@n^F{Cz3NqHZz&8TPs@f0pDzyVX=bj7r&WK+l7S%-B=qB{x)~;S>aj? z#tL9D?ab}*e;W;jH2pBT8jzH9&})A+36}|Ni*Fb6*9%y+dIAw(QX*SC5s4vq2fU*x zXu2T6@9o7n7Ze{zF^pr~X~V^G@A>zQ5SDrJ-1){=-QAoVD_F~8Fgao9#ScL zCCjpo&@P(S6hQmMfe4)!Z7)XIue~ypm6HR0^5N%!U7L+;*EHTvM>UJ0s@oBK)*b@f z#JaU95n!s|-*3qr0he}srsftA47L2V^6rGE!{rQYE+cL*r$mbj&| zET*1+A2;;Fr=ISg&}c1yv@(E?>1))f3YI3BP+fGp2u#n?Pak6B)ieQsg0B-o zKglDspR)^5x`0u8$DwLB&laSBh=KDD+myA0my!5dCg+Kbh83>x9882_1m6c1C9fpn zKUpC?NNwytvn}GP*9+9?Ko43J-+D1YU-0H=R@MT;>&*YHmXCN*UK{1(C2A5BpOvLq&>}9fDNXCqSpJFGu?`*n%!zh%YuoISqB_O-OOU-doiJ5U61rt%sw%HKmGJQR)m*QS9+4E z7)mOPTCgnW4C@F>_$jcnBBdC4^CD5k@bH%9idoW};KLFY1HH~u!LLYXJ=3qr-(}2K z{r%CXztj8MTfZSa5{ksQlnw zE?)MglK9--WhP984FN<-__e_^27d;L13sQBF7ttcx?^8bQ~*q1LDT8MS5JoHn){i?bT5s$q+u%hkKeId;g3ZP+P zBDZ;X3&eNRoGEYMi-@=3)A($ZE;d7a0ElC{+UNXlw_`O4=+U7aMy96d+-X@LI?bKd zYQ^>mzS820$Zw5niJclhzh+k-&fq6XzAv6!V?`b#LW+@$N)}Dy3*YTL#CCv~gwOWk zDweBxm*3mJMA4q#S>n3@%&e!g(<^FAKEmxX=rmn>J3G)z55ga*EAw5~750FPxs@>| zf2erN!H4eew_=Po8j#UN;7O6GeD{n1`0ub_6KjC6XPfQe>OM=q6=HitY=o!Aw2BQ!3_~2-W%z(C+leV1XFRnO?(+ zUxmYrR9yT5sv(C${Ti2ot8w)e_0b_tMEV(KI*74gX@yscP%(oCC0X8gKsq8?+C}{w zCX1j_IleT$?7AVy=);qb%LY?Grgx;`$YmJ@4d$3xX@kHdjr)i2Ckqefn2M{usVKmb$XvDO!&cTEB=dY1M8 z^>LH$9`mqy_!OK~XwJP$aV)}Dbe)s|NCUF+^5OM(T|f~;w~A> zix+)d`>>aJ6hmGEiySG521mYb%XH%#@d zV3aKJ7i$-`QIMhRU&7-Dm$tA3;1W(?3OrtYWCV;0a@&gCFgVA8TBd2EAv)>DPGw+g66UwDNQbF>%Xx z;Xh^wYB)TjKDU51gtr;q5TP~Lt@y$o1-O#aCOk!5{|>JZ8%*1gb8Ez1wE_*&GScO& zWG-%Ae-{Pk<(v10&j@ug)AU3XaTn$DoxR__C$Xls7L}Bg&}gv21t^nZhlC76QP8Qt zj4DbEo|*ri6lxtk?euBG~zb@{kxiWJNo(7R2>v}a0g;}sY1vge6)~tj)7}OyxE0bztc!G zi|mN)Fg%+nAZBKdlP9r^asI^RVQ`Ic&Qet9A&A zrRMmjBvvbM7`v_+y?a$$d|Xnp-%Y-zKbN%xIw`v+c0E0dCUn_{1uoDPF}%&PP%&-T zuz{AP!>Gi0x&$|)@LVbki?v4EMbC~w^d-8d92){Eq6cr9G91n~XE#c)!W{=44QL^n z0#s7H_cn<@lz#9Kx{#?~_M#yoUSn=oEb~=3oqyw9T7*YSXF(4s7LBQ7m&LnM}@CF#nm-6T;nc6cX(H^pOsd=JbO z9UYtK3>Xe#o5DW@Jt{~gLyHSHx@+emjpvHpa)w4Yy! zz+^>|fI!5Dda^LT(?1gqyI>^iJMm_(MBtUO+V;XX$)aQX29^iUZgQ50ltyVkl9~ve zEs`acgLaXX#h>+2-G?YaZD`c8JGy#$Ua1ZvTS_FVf!F3jn$P`Ae-i?Mr};EcnP0!& zn)PFag#00~ckLr@)Bg0L+iD4et1uYxvb_8qb zi-IG&&EP*7FTQEU)xOx7q#C_MrA79h-z+VGRvv}fpri_J(lRk3TQ>hYH~A@zgv zZ^Zp_U%q4nDleYogW<~JYHH^IAokZA-)lJf`>#N<>EdN;d$wo8RX>!+$R&>|YOy3? z!mzy?`0Y!_%WA{{ zBZ>Zr-?Q7o0EJ@~3R_nA?<~VXOVMi*iX_dE5#C!{er4X;y>Tsk*#LP|BOM})?dXs} zvFRM9tnLat`vP)vavqVXK&#Qs;sLU{!R6i#gjzoCT@*-c_Qx_pGGo;jukk#VE{es< zntcLcrb3}f8R>e<+C zNkYuYWM!CEd!tUg*W=+MN5dcjT!D$$l=9b*W*}R9Jn~Mt# z1sYjR0fdfz9-BcFx3_*Q3VU7!&z$1ouJKu1x5`rS$hv!kOBOVpzoJ-$0HMXK_}+~& zy6a9m6Q4z&oWqF%RwxjFr1L0HI_U7~nfsGd3G*u0uWPlU;0NRn7K=(@SL^VRA%*@Z zj;C@;N~rJRQqW2VRpkvgzSTArAC}RLrP65)?3@9}ZGhn`!=h64BT+4yY|s~u@k8=x zrhdePAjj!E{dKk8Ln!!~Jk;-&0YHNP0!jdgGEh4>76$v(S^#4O!m_nS8E2N8{1SMz zwSW3Oqt*L}rnb)2TP#mv(GV)|yv~diJDlW$y;inToRn&V?9v&e$w;PW5A6GiGaI!m zPpAfyqJjci3X)S2eIA25sxHizAj(isQ1C&lQ&nG1=L!1FJ(n@;hv(>;heKR^Detz} z=V0_m`1^DRT!d>3(0s9L5%Xv0^1F$O_Yw1BoCyby_R5`bf1{d%xoECozr=xVRJ8;;L5sB;xpCx*>wSOU$>-JD1 zd3c~D$GZqeA~Ll>{2f@)7+Pqj!qD|#m>QT2Sh|H>P;;l={8eJP9li(kjG80jk!vbW$%6;K=aoK;) zrDzeJ7mf}NU;e$`&(fPUj4Tj)mo}k%J-+3C%$My5Nk@lz(rJ`hT79L}C>y&E#x?g=sA2 zsgMx@p1lM!Ueio{^qjyjBG-GqNw^*lDj_H%K*^0W(T1e0!)qWRbm>|rX~H6(-UjWz z3ZI0=^GF;77z;t(YkVZg22y=eFqn2=A}Yd|jhNaZ{{r4FNsl?cW`r_`IXtKf3m5?* zZ}O1A&!0b${|fVgYwqq0Ods-z6W--Of_8ILQ(Vm;x{Fo)&7mETsi7l8VTNh}bkFS@ z5mMo0Fi2WLKUTXpnQ|ZNTvYhjgTcls4@o`B`SkWbDl0Ab_wF(9yZvdm%)}VB-H6)c zmw($U@bGeTkI=;K8m6AT1F&6?e){RTr{_p#OOO(HbJK>qW0z*8$pR7B1?Pv*8$vxj z;)aTQ;3@D6z%K3O^?x+PofXt}7$BfTU~s5JyB*VQm&P#Bhcenkm?=9$k|kQo5LDdq zm8J2 zh&LC2#vgU^tUfeSegA}mg9Etc;0XoU(6V^BxZtoH^h}H?`)|n^K0RWL*eQa{@>Nql ze>iSjkxDl9`1ZElD*7V(>Ih+cd>kkaniv!UZT3kmQ2apqpT{!Ms-w*PP!*Lr1nSj& zkZ}OQEbrxgsQS`LTu>pO_}Qk#9$L|2g7$FXPzw_+ct*^`jSO8KaWO zDMmVrE+TU}|EwGH0GeeNDmv^gA&m@pv^e0V-aFM^CVA=Gca#TkR(MGQ{Y$-S;d*0l zS|$3HPG${ZWLW@@8z3EO8^pNd>sPoyYmdIQX%~vMbq6on&aM{Kf`V023j(in)5Tu? z0{IWK2jGSXi$TMb)S{-H2iAyOz{(xk2CqnG*^>NxD;}Y?eD@POx<`E?$^wD*D0@$< z2@g8U_V_Jaqi;%gTQLS0&MXIr3bRtSzz#Z?l34s=G3n=o;^X7j-mPRX7$CZj_b85Z zx_Wwou$Ku>P$4p}u1n^9 z2okwK#M5){#%EzGi6xx>3w54LJjSq)3(fdp{*b3xLuWh*G1A|0aWI3>*uD+lHWDgy z?+{Vq6cKmTSr#$zV2iA}&7UW81pJ9v{2QS1%K6&uT+ZR{_wc*wr>l!2B~chwa)l-$ zJh(!bAi@mvr7>=Dt+g&E<%w6Jt$CW=XW$PgI}g>?W?e+;AHoxS#U7y@8AYX_Ni!FC6w+UD(u)~)NdxVtH-l{>xejnxj>&p%ge9#2WWCaM-J*4 z&H$in6P`#OnP2h)C7`(5#qnC1V8BHMzePiq#F~CDwCC9sO`X|sKo0kc*?jBbs*LNo zf@3$i=L;zq4J7vo5E%&k|Ktt%1hE(mG5F}Ox~o!W{xQ$4e;?xz^K)tr0?+J@2s;(J zRf5t9r0@jUpeiCXejpk#4yuN2GOU>P{=HL)(r_9W~}tJIQAJg zdHmrZ;e!lfEv&-+1WJyNnOW5Cdm!wP*nuY3rVLe&(3UGV@Twhnhv5W1Z%Vf1v``Kj z?tM$#s9XG7=B?R2g7y<%L=m)f(f;OA^u@8z!E-xX;MVF#wUvJ5;=>McDeA)3C>dXt z+A4j2EojzS0C*k0%q88Q!y8IBueRjJErT$nLL>yLe8d55QpAXXRv*92Lb7@^;m{uf zU=IyFB4hOK|9dtm3|O^S!RmAqO&)N7Yy;63YI z7}#Lf#o>NMYBiv__*R=M>gZp;eqq~(Jz^C3P5*UCOQXXV8*};R;N1t18$}pTC}!Z8 z)?$h9hu4j`l$yr`7(P7*^EtxN44B1?Po(&oxh9MRIoJY$|IIHE7Fjr>h?8dlX(hfr z<4jGbsk&kFr#Lprh@C^lFY}n3)~eNMs*bGPURe%fc=*~0rol!{wczRQFKr|N5*X2d=PK#hbH$7j*tf7+Bf&(+Z z+wrmQMvx-=`Yr+jr7L8V?u+EN#uIr+lEuI^kc|MQ5%Al~b1-3JM_x@ujT4xCPyRTiL=5K9mB>IrHALt)!?|riT zSKS>RVarF8D=@^FgD;5%7I9{D7G1(hi1)NyLPWxd&4UM$XCPo&5++7yPK7}Vly zVtCK_ECXMF0~fxO$ak+56%!Mof?-}AxDCC|0Ml&AFv{QL=U2IdhP0WOcFU@(oJ8oT z27kMXdf6CUJAg={@7r1puDWeVK~PXt1_}<3;v@U|)dG3)tKp~+!SM`F3SAJ6`A(^M zx4pbL?AZbbeT*f(V2%uRZ=@~|j-8nUN6#$!m9w5Ew-@CoU1+nv5Re_Ii+A{Z>BIxK zteBMIxRla=jDijw!V56rNdvf3F4p$5$rf0r1O=rE##i3i?{2n@d0c&ogm1XH?absF zxU)8c*PxJKkD#bC zGVexbf9%d#pwukl%j%c;P-5`z4C? zl2JD7(@{gdG=($Ec>L_unz^uq6Z~}idjQ}o)$zRt>-4oR)8Y~nl}nqa-NGDq(XuqO z?(~lPU*8m2(+}1c%2@MkXs#tV&EWyX^f8=WSN#E7z$xjkazSnSPRfpoV#*q z=G=^F%!l9Dh!ao@ACI}{x|HPF_QPV2FeM5*bfOf~H#55@^DXKGA&k>!xuTo;XBQQZA z6C7N5{iX6~nIEO$H9B}xwobNnq}yR&CaLA!mv-a2DWEavQv3S)K$StQf&g>2Kvehe z2~^;L>6)vpMbQR&xA7MDC|#nkF)c%0#I%0%iHwYlccxLgFS^F!#!ic$fX};;QBh9d zaX~P1FxPW((%}Ov9vF~ zQlVumpo`+%lzZWJ6!d{?i*moPP*3fF{ZM1uY`?0&Qy=_9bBc28c>X1q%a;YVZv?M7PkQT_&x{HC#U?wl{;`P9V=jZD;Q5V~}CMH+sM;RWx#9R=g&E|#% zwcD8ue#TwT>mI@oRVXx^OeGxuU43i+wM2#G>N=H|_+}S^C7=haMzSCG^56*I%SYGW-Vcb^fzI&89?q$7kUiJM!4s&sz0_hkkU0 z;J(*&Z*$wV9LikZ{+hmR&Y4SQ1ZeK2n0&DB{rQ5?X`5IpO{kcAsEi7^>#|&!JVudg z?=w>)Co=kD;tS)KBP55XrL|h!&7wKVerMaij2r!i?gr?N|CdNbXlADKlr4p+Tx>O% z@L|r2J`xv-UD!}`=8is_i;;|e#3?aqB#y^erx3d47jrSl_dzBA#4@D>Hz&WD{KU@X z9|CI6Fs%5{sqv&4444kOZu$X@M<4SSrxmy458U~pgCntRC@+lC~Pa?>4aZfb5ULKHDw#f z#wfS0z6D?8z(PZOYq}%~Z=;qY5o~o5+d-HCTLf%=y=#@ufz)H0!joF91DdLSjBiz<)JRqhjdWkL z4g~(G$et%dhHSSJ!weMA{?q6AiJpjSP4wSz%y#NAH8=0UM2LGm|K-{l+0+M>nSqk4 z76E*zsQfUIxcZ8;GeGwR47|}Y(q!s;#l*zGpzJrbh^rm*022VEOf@N)w;=B?cz+9a zF;iL-QZ3RLH9;6RwxWKOPlztHLQ9*x^7MT_+^1T2#>2W!=J@8z9HQ z_r%;5h<#GaBg)e78&Ov|S1Ham_ihJ%t0R_RQ0MKvr)v*A-;00!xK`)Hik3mxMGJep zLE()%@A*)*|NHkVmqNLVNPos+J3|${D({BlCnhRxUH5<}p;VvJmY_6X_@g72wY2d+ zRDU}=)C(~8rrdh8SAr)L?)sVs>zrfe4!ggY{vl;IxP9Z=Wd2Zw0m$$YVW3y7^zknD znVPdZp8@F}P9~ZHHv70386-SytpXR4k@5>v+tEAmyIkE5&wCdqY?OcuQWZ`U*DWT5 zRgdszSRoA!r4-dPc`7K$$>qLskyU(d_0T9!D^@z;-59v)AiP-b(G^A&qHkb;^)5E# zt_7_+Hbs;%QRFkUGqE}sX3UYMkY_YH(iYik6f1o+5dx%Tn1#Q4*o)p?{sD{fovyJb z2?-BX_^^AbCJzL^%UG6j@*3LU$`?rCW{%QDb*Nn6zOZ)n+Qck3by^__P+R^oMKS<~ zz?+++ngiRea{PvHxv{N-oCY8OHQ|!!vE5!rQ(HM!fdFfRt-{KQLJjsWjX{@bs1kLz z4^0R<+;|n6qToF^p$~zaqddEJy{Q>mQ}5TY4?6~fuUwkf(d0_XNNh9}17S*93krgz zk(*opAm-{V%o@;MAPEVnR(NP5LSSQ~!i~~Rt^XjX`br?cYjSQ8MXZgIc58v!p}exP zWr^THh?8Nzf(_iP!`%!^W+L3X z4osyHH*XUAyI=V!b{Ig_ebOnER`L}wgi{ms0b-IYER%5{ipBC=(75d4Mhw3amGr zo+|8>v-%A!wc3LWOjux^*ni2K&3RD$#y1td76%#X#Qj}WXkCbirK$|zXQ)#6VXISLwn-72|VKnb`7dsFXRwl=e`ltif0|UTX z!U#<5Dp6RHqRxG3jP-z-(3A5sj->)ntN70A5zrG+5-y*0sAT@S?u+9r;>l&X2y``|(U`gN|uopKb^=Dei*U3X3T z?=^_P7z4M)@Ft%F=+jP47N6@q53B~+<19e*S9XV_;QoO^S{6cRz--yLHlxidbxS_@ zP3djKAm4^G+IXxNL!y7*8?cl}pnJgt;EI%li5y7W*&RqVzywq)9sj<(7de}{In+py z4)fBvxrvis{LJdrp@~Dxpu-@{Z4;Gz?LGXCX;fh{sF_7sGf7Uvt;A!fc9{R=0*MH^ z6;z|E)YN)o$D=%d!D?ABg%Vz+AgW(9AYzqP)qoiB*(Cn?64NBTrK7X-L&`o zg0=J}bHsW@b8!Y7P_)66ebn2Hc)1D)3l!SuFe$CmVfp8c@(5uPH4+^MK`ljG&Uj)cJEa9UMeF- zQ)hG>BwC!cReit2{pU1hnAVFyp6P`dri0D%CkZRD{qKRq8&<BIU=?KwFdqjk($%^y1bP%g=24!;iaZv`rcMxxUn0xPa zhT0*Q{&!2(Z3@Wwp0+H=4aw8vJG!F!8Hm9{sgZjFfwq8)LhEd@cmYC821qKS$IrlcYs~fIs!tua;b2& z-Rch+0iZcP5IAp>z!!8b6`Gdut%nrS2z33NT#e~X7ZfV(yH)wM;%Sv z85kUljR8~a>@-@%&{4y0J;TftyLoL!j2$t5~dPeJrg>kmS-1Vw=G_ZJ0xb^!Ii1|?w4O^Xf=bmf6Ok*x&XNq zPQ4m|9?oPN-2pk{H=O*{b>}R16G#%e9B3e-`1Zch>K%WNc5Z6K%kYwy%gf;lYcsvH1Y?xyz^h%3&+T~c-mUW;u~Qa=*DbaX7P4{i?(&+|Je|9(6*WfP^ErkzP&a%B7bnKQNVb`^0+ zNfln}e;+&`qYEkga(d12>C>mi?&E3o%l&SD8jsq&nk7~ktEV?H91~zuB&74rV@MHn zBKhsVJm_j($$et=uZ9H`5za-%m!j&08$-gZbmeeOUG$-aI2jEs!(rsmybHW%Cf z{{8#p$rC%TNrUn6aq{nCJBQA1QK4vBSX9({QT7$>!GkSBZCh*Il^@>f@<-2l&3cTC zjL5DwUR?3qVonONKjW~rIF2KTRl@TZk8fybn5|f!!HxRL<*|8{^0Iob4Ee0a`1oFD z45bTIqJJl=bH8DDb+y&U``5>az!}n=FWhCqk>^+aV`FhxdcN^!vXiT8?VqI69>!iv zoo9k5t9zrPqjxTm>h$85eIge}hk_2{7!QWjpJKJMwB$K*q;_%%e{lW!^+TabbRk?Z zO-t_Os%g*L$1Mt^`1q{N%xY$r)6>(bC@IMTYXSlY%Z-zxqkk{2A3b{X#EBEf>BvKs z&a0|2GBZDE8sVpFvJ^#Bt6#k6aVjY*i@)5sb$GtcZ2rfOXG*Di0~HXDdU|>;rKf3v zU%Y%tNlB^7NkbWQO^D&mn>U66G412c&CSfLtQG}5B5_&x;ndV&VrE4n0iA2tQhRJF ze(9GRSKc1|+}GD<=e-cWy1MGLwr`p*T#;iXhC!KtkAXso1J9*C>d)}uZMUt9Yc=G8 z&D-bp64q?w#S%pi&NlqcR6gt_di?mbMCEGBa^?1BjEVQ5gnQnV+lAf6y``?RRNiy` zU%!4On&wv^z190}AG=~|n|6+2Ftwk<6Q$JSMkTa#yu7@YqKsKJdya=H@d*gr3p~iD ztm^9&k#LqNxd(qR^kVnm3TZ86H~vfgzf5Q*NV$pT8kf;>=u`nE>(64 z#7usSID!wA%*r#>G}UwG^zLtY?;Wz2WF^uTVt5#n!x1o-8!pF2{X5_+U*5f-pyjEa zJxvHP4IzdX?c)^0{_5$&GqG?w{K7V{dUbhR4H{H(Pvy})mgbUS^1`CifDX+ zi>S+{_Up*^N+)O{(!emR?c*bR ze=6IcXuzrc0yE`}fzpk$b-7g~yX%)n-V0YY5)!a`uhRIUhW<`Je4Fxxg&b*AbaakE zkpL}O+xVgiXN|eYkqA=%>idcuX=!Q7;jCVNdu~u2mZ4zk?(9sI_1W?zVST^(w|BI- zw$4vX$I01QOjK0Epex%TCO)2tGUxye&4ULIyyrtqn57(lO&1NavaqDtT8J{5_-rmA z)z)V#x9>f@#t^JHCny|N!BppWmW{gNGru~y_T|e5Sk3U)-u9FtacW<5DTt3ShWZ@~ zX&tSct0CXq+!QQdq?!8ZByDnMB&ytFS!VTDWN~rvLf5FhBr{o{sZ zd|X^HwGQ?9gb$|mF+}9sYda-R{k@X!QtIJNmE7*i^_kMWd-uMd?{^*CY>?gZ9V8

zGycZ8%A^PB=?9&=jf9yzo$YPbKZG(B6cn6Ep^nXBpdjY2 zk_)+@7Z(?oTlPm4F&%kP=4Mgveg*B!CHzhY7ni>X%j0w*qwhRo_9UgSKV-S&*GJ!X zR`R4Yt6-mHt>&3Cdpb9dMyTM%QZ;yfoC#M-#e>4>S-wq3NEqClaSaU(wX0aQu(sw~ zVjCVFMokuvpJp0dQS$cQ^6UOqOhcd2I=Vh-vh6<6aV)4d|5`&>D3gSvB=f}7M-@&@ z6BD0_j*JsGKG*5KlwuB(V^dL6%Xb3(fe(=Y;X;X)y*0%Ag|*6e0{1 zp-Pd-$tK3eNzu{VQL5Kmf(3og^6TRH*%s6Jib+bo>Yj{J9Z662E^(gJ?qdyBBqXT5 zeDO4qUBB%zdKYpqZs*F;iodM1CvQ1fT3T+dElqagVWL;aE;OIm{v)`pX=HR-f1+kl1}&2IJYSx9m9-=@ag(+vV@p%hNvAQ5Teqf%!(}OhCT3@S=Bh~~ zZ2ML=XMK{ZO`ES!2{w-K>q_`lt@*Lo@z4)-bZDV`)(%x2&(zM=FSI)7InyDy>y<8J z=sT-U-b8f?QPIUeO@gk7n(&w1lgU0?t0=>W(}SX!%FAe^H;~`72khxVVTf3Dn0_m9()U zkrm2rA1AP0p6Q?L%5M7jaRu=xZa46-x7y%Er4N*w3ym?c~d&AAbf?G`gaD^$GaJ`xElIsKNPai+(=9|@f%$BEjPwpe$liV8Q z)!W+}&Majn5~r!D>Ag~Wm^bQEY+so`Ow*7(4=tIH#buw5oWvn=Y@Uh56Kt+QwQW5; ztJ!v5=QFgt5g*RZ&QVcOd1PBDa{?&uc-W-uiR$#EgoXm$?S6FqgR@5>jtO@VB~ z;x{i|5Oy5&T%0Q&{#@(2D|*CHN>|f$rcX*l1a)xU!Bb{1d#P}ei9WW zmfRgkO%_xeL+(fwR0{y&US3gIxjo=9dz_E&JfNz6c7K0=c6PRul+=4pTF=g*BDvFS zx_N5c?W+r;K|w)xP8nNRyj0|vU*Ghu^l@{0Us&ke`T7cgnQGeOM)MCF`ha2yW`A=f zE09BBMdjt2B(f{ji;JQPA8o|9=YnMU`T0F3GSYvS)d4F7x3euXnN#1gw3Kw6 zVfHpKG%Pc#f1twYCwn=7ddvQrj5Tv?p-s;lTuNp^!9u9S!2NS0yTn{}@G`n)j&8o+ zgjeZ+r#wa1;-Zt6S9!m!;PK-ZE?gLycS9gcNJ!9n5zP)C#I+Si|mrMc#Tk$Hhij0Hu_9R6z)HM znv$27_x?S@MdoWFadXllB96ex7^~*o%DTF`oF}`grxYgS$PIor-XkI+LZ+@4`K%YE zDu>rppOlu~sW`LV%cb$+x1QF1#*ifFynoHJ0?qkyy1GNLVW`q=oS&a(9g`wQM0Iub z@87@CuToOjiw#*rm5y?AYhJ!=BtRe2bm82&{lSWe472=|$G**!L8-a9cEH1vOZxnD z+1gE}LT?HRoTU@x*kV~edis-QEsVBaUZRd{G|V>()XpU8A>5MRSmg+?R}ys^vaJ;# zvX8AdLkwAqKE=hzZq0`SVs#tQS zGwSIl1O)}9qzr+nv@h9(HLZ{0esFb1%(uW%mUaXy+~o_;Ik zRdL>BO-*LXhQ`RFF@h#Z2?-CWCnhGI*1Eay9#v1kE%=V0;hnL#^hj06)5XQbdt<&q zKig&aLnxA1lyTp?-OhnUbp_-Z5z;&5TUklTd%bs%Ro0uCot7+cYX#_G+RkTZc+|<# z71oKN#@Ild7hCLsbSmHZ^iR9k^}M<6>B+3wdQC@1lKGu3KX>H#R8PSvR;mp{ndH{V zC1QVhnPfZh_!xdY4q7sdEpmE4zn{dEK^HQDA5>4jZEjvSxm0496Bl;~Q?t29qWXoWRtj_x?|G9A|X>C)tgOttR z-`>1@_3BV&Zp97;vHFl@FWJ}Ch2Glq>C?Mgz2a0E%mO#6F*8k#joC{laz`Gs;NTn( zW~M}{uyb(*PHv?QfBNvq^k*r@4F>m1DsW0rbzv;8He@V=i*?t^Z_`!YLu(PCOfE$HW% z@c6{zjSLMve^mKCd`MAj7$zaa7}{YDY*iL{FdY@8~cWWgL>1Wei0Z z3_(ZZAjMwUZ| z#wRAMtgQ=l`GbRltqK`unJ9>@t*tL6%iJpH0YrYxb)M$HfmP3n?n#!zhi7MISeck^ zOEPzMcHX>svqO26=_+;TxfZs_MvQngG&Ikyee)xlU-@>HG+E4;e1hzIKJDeq&eqe* zhDJvHlev`xy}gqQt8;pW0y;>Fj&GMTJG%=%d>$dxHZd{r@bI{LHAN{kIO7jt@j2AK z^|dv}+qdtWVoh#sINUXo;ANWe$Gu!8naZsDiRyJ@C~>W_+nz|= zrs(6fhwDtX{=^In3|w!DmLK|zGKZ4zO6xTSgh?MUAlISd2W-oK|GMOMms)kcj=cp` zfx~y~Hgc`rMSP5gS^)`TBc3enY=soHPdGVSwt#78Ybn>q=+dQ#r%xXUobnq)$I@_K zdAbT<*J5!(0pvusaXF(|uRQ0{^0KRwQ%7f~yb|!1sSty?$f3IL{^QTn(nbneWriJ# z0TZ?{m0h!lyJWKP=g-#PqDp5cr&E7E9x=|PXGi!P_L$1Y)o(7Q%Wm>=X$#Q%2i`gh z`sG;;u%jM7U84Hz_;{P8C|Ibc(&REkjG^2SD$ni;Q>t}Y72^EyqweM2PEJp1hwO_D z12jB5*3t7Y5@~AEG?#@aa)9w_9W6B!2yeKIr~mzXiTjcj?i%!34oBX7!-Xq8&ggL% zlB-pAY2l--U6Z}*2wj)vm|rTjjT8m(o^_J^aE3uSAty{HQG7ad^z`v+FM$P%GctnR zUHq%(noPDtxVWzOzPpvFlN+}G@a=k=(}dc5k&TM!?I9r{f}?JXEG&h+(=043cuM16 z)4utM2@Ct~^Zw!ERBRX-8JU=vC=iqR{=MX}V|zcxK7Hywn&^ri_;+z}>U-h&Z0*cW zt9;#Nv;3N&yxO5WU4Dy#Vu0&cuT-+NFK>RHJ5k0e@yp%5ks<5%ZwvgicBX;8zPQb| zyS?o1sOU+li2V`!K5OmCQ!XdXFYM{<$CqM|OWxiX1qcb<+x)!in{QPXdj8hNsBD9;UQ0{MNtY?Nv6LX& z(&=~B6_1*@7>P=?cxa_vXA+cBBS2%My{V{R&GPq^+r=!A$Cbp@FydJKN-nicl9`f} zGEp4_Kp^!Ww^O>Ifwe>5zw1Au#Q;!XC_s{epF!E!uV7nbz)u%aZl>=?hKRX%JoOG7-&Esm*U!$W1JyT6BwO4qfq!TI4w$UF^-h>zy zS3QqjOaiFlbUtstg@H^*TYJJuS|BDQ9M#jdcqAIhT~Sd1b^v)D-ms_We2T^kAWefJ z^$abAr^HqlfA;$wBn#Bn*Z;Gy(Ej!7&Z9&8^FJH%@JsZ<1s^?1!v4##_(!Sh#)^Y< zqBn4o!ac@-N7|WJGPD{S8_BmK*{MkvYOj!H?GR5!R>oJ)o!k4Zsyhd)!}NDS8Bzty z)juOmF@oEE`*NapSgNf8E#4~*4#ELlA`B0GeSP1(6Hn22e`n#hsgPy9uFTfTFbdO{ zlQehaUSZt`m0x|uw~?ap5_ZP#Y~nht@UUFB!JvANo*cvl#3lY^p(?i#UkBozM!f{< zH90XsjgwiY@>!_`?g4#wxN2W9uK@ioN`jBmE=b6>wzkKQX;j#xL`6IL`)>&`V0ueB zMy#+~l&*6Wy>yT7-8M^RMn=Dk71cBvv*$p)jpmH3tX< z7kr_HhCSDf1h1-qfB>AXpuJto02c<60_WCWzg~b5T^{gYzvzf|bM-2FmR~OOK>hH% z90l{((eQ>7l9KPeH{E^Z5&J!xx$vJvMY?fpj6)?d>(V zBj;B=S;I-lYyb)rfKfov)7rTN}tU0M!|Yn-X5iE*RClmlXx3wXzU8k&C{VD z{qcb~c2X8sjl!`*C*8h%Vu@1i-$#-;%wwiF z{nabWzb~4s{W~}kNGv>N+&w%%{;?HV>Fa;*DY)U_pt+(572vWP6DeUyNy%INUL^I-q5>KS_Li zJX)kMgDs}o!|r1#qe&h)@87SG3H~DgDynwj!qVTr#QxR5X@LsWX89ZuD$tZxR@{`8 zl^q@5sHfNZ?P`4`>pEj-V8A3=!&TKLA|g^n0=63!9kJCkLf}KWTL@4n~YblcHImVaN+igTX^iN=OkT@ zV$R2xnVUQ7TDi{RW+Yr&Tf4nvvK<975}FRulGJIP*YMo&8m31pG`hm!;Q1C&0?;r{ zu?jL%(jPp?BID_X{wX=4EX2@P>MH2Gj80oqurF2|Y(c)xeo~VgInt5q`|80I2N=gDd_1ZAC z>uU;~=!@?~pPHIL2S02Yx53o+r_Su+6I+JJ-w-=C9Tc!QLb<8(EEPd%uZ?G;qTu+4cTL^gs5iE!N+{i z`^xaL!bml`4Yl$^1K=5a*cB;`Qr7QXlV?BT!FDT|0n&S@+@?i)ayfd13QFil*{+|8pFS;jv7UBo942%Edl+LU@=-JL7 z;0wEN?K`rtiWn}s)k{2$vIaU`R!K>TO>9pyN7-=L$+^GWks0OXr)6a;^YW-Kc5)J+ z?@J$Opv%(W3AolvPDWNGdHBRERjJ$Dx26hhU`~*2e-uQR^RAmp@B1o5=Yr$>QV^3({M)Qt!d2eMD;;1qn*b4#XhoRGN-qX z+e;>>qiPlOPPbWVu~DmCyoe$g*+_UT);QOs#Oc@~iGj5i??GB;R3m&@go?R^g%WpU zXLonI<=g6N`TO)&3wrqJ$afl8pRI(}(-2J&`=2vLIo}ovz3-X?$G-80ru6F7{n{ao z)ZDzny$W9le5;@=U}6naNa?pFNlnz{|Ls_8`qsZHi-+sNo~|2`(d4aib(iKeGZvL) z*V-mJGfmvbL0XE4i3NIqn+#()+11<27o~dm&aVjTocujf^rliM&+}ieh@LkEcFD*% z7T`q&A+VdRGywX*!igNSUI-3BM$s|l+2QMQy)Ue zNq_lLJ4<)>p-cxg>CRM=Ce4hu0Cn7v;PDQHe&9MEEjPfJrg@Ae*tUGB3yK)XG$dL` zqq#J5SS3(8+9|6pO1Purp92?9rD$e6FZddXxwhNbW8Yc?b6xgWWI0g+(lSH-3U{>IhS6>!JD`cXmx#W=(BwlVO5V`Hy$`72(_@3*ngaZWQ~ z$?W`&K6sp7S63GphrU>Yfu!cO=|N9T*FgR*l6Y_mx75gywe!4pE z3ss5N1N!f5dN5YBx3@1qd6JVceprwG!Y^1hR}+2QKs(piYoD0Qt7E5r-e+Q0{vLJU zNFKs>zry=Px-SC*6&5XwPD6VGUMHi0VAMhflw`hFMgh_C^y$qt*97SA&+784O5%g$ zbN|l^Fqu=z&CPAk5YS_@1hx#N?kc6~Wp_nH?9b35+p9uE zup2C@rRdVq(j%>#U<%*8>zZ~EG^yD59d9SjKymrGVw5Ts0pvMw-~fhzMd%!j&RD1(9@s( ztvUGz${#JKpli@quAIGmxgCrJZ2hg1f1kPdenikH`a*l;=Wfdh59IWc(7Csp;ap@E1l||=z{Z2 zF{D}jrLNG$b3$i5M^73Q*?Mg*b>|n2fq20UT6bmnUOK>(V}D=T+o;6pCMGhH!=7`a zvfFoBo{C|%6Bf=-Pbb-s$MXQ&gRUJeyCo?}eg6D;@TxIQ*}1u3&|+27{DR#~>lhgs zchrUyDnQWfLL*ACOoE4M8d)EP>_OUaNJ;7OM%BokG$bOu59uDYwyo__oEq`!;?-q2 zwjc9uasnEokw6$RO+?y!h6yBpuI2YkVVFkVy*Cut83FR;0ze}S4GkqEFlWu>y?W|H zfA!);s!pl<)Sp^gFP=N+YrVTXyz{~4C5~ZVWU~o&EY32qejTCTJ zRh8VibB!RAa!y5^(b3USV?KTLbBcFlqI!D0S;p(v1VL;+me-jW8JjI`gEI8ohSEFG zJ-dAI;>BS_VEY_Mi^L zhv7v&p;V6TkqW1zDi}VvSIWGE7$8BQ_he_c49}b2xN($=tNIW^M1}Luswdcg(C?$I z$=z0k91*14WOAVj@huiby;m)`>TGr|$cE&lr0njKkVD~BSEuYGB%1!Q2(BIu4H!Zo z=L_)gsDKbxQ+v^7Nf}gYDg>hfn0L%m`iD9m*A6kTvf5f(pLCo1v4`pu0JFJ>p4tbJ z*BKN>kMy*dVzo2>k*lDZ%eU4hcQSYJuzhJi#3cBd5}EvN(Vflr_E^7EUE#JLHu*D;2Ru;Z*#EA#`luKNlY`HIVdW_?1QhkMP!JEvz^g+}=m*O7 zGLNxg<$4gpJ$C#aw=rDqa}bm1+YG)7!hE z%@UaNXlHsbwFqPAqvfR}kC}{|oFt=GbNnE#S7bLRV=2r)ftCs8u6^7|XwgrZ>Qb4?9N7WCXH~a(XdkO^I!Uv9 z(rUL9HIzEKBcGIk%jX+~egRr#mwM5i1&dd)4!7#wlcu)4Y8{Pi8Uc|??xZHlh;#!$ ze-zKkOYzBEg!<4AKElR&a}gBLlpoJDGhVPhQcArk%IGUsWhw+8haP`)>nJ&~Kjy5* zg%C!7?=_NRrWQ^KojB2sPVZcD{l*Rd%6p8-w&L;ZB+D3tz#~+xfIC_G+iQ2@`t@6V z?}Z^FVWw;}|866Wv{_?f{)DLy5XiRZ;)M&@CY4DI!+>quGp?0z@!t_N;Knh%mJ~z2 zlRnKH`KDJTnLi&1KLvzdVBIaiQw_HjNMo<9ja8^k^7mOg_ zf@m#7{UiPF1zeG&BYQJ|+m$;$fTjX-16@c|Qqn+A4@QzLsG&DSp8{T%8wa^AjuJKb9}Y&aBf=iXYsF&H2&A2w(@h+qKeBd#WA943L-@iY9{zP*ueEarcXeb00ndHNygwL!*-Wgp`S67(e5BLJn%wfLU z`r5ltUUv4~YTUw^bEjkis8x9E1AHA7NUJ%;4CBRLsvHmFc&@}>z5AL)(IwY9uV*uo zc3ag*+Z|b7s2$1xM5rr9zUtsSg{a;>d&YL;$ex5^ff#FuN+@0cLr756bA=RYUhZN; z0qR5qwZ`0jb}hije~vi$gwTf%6QrFdcANkpr@&p2Tqd;W{#JeH!V&uJZ@bg2Y;9+D zbc65T*LEs$!&Hq$ z!8LDVO(h3l+wqPmX0{wK41v)?||U+&jy zgQ)-)aU6puzqD`@M2UQ$x!Pn5R+(0lTP7KECR(5^0- zJYRXCKbV8s$ERjzAt8PK^aQK|jqg>WbzOBMNq6b=LXNdt4RHVsY);UHmLSft|s|l;^bD92;|GNr`*?gM%jJ z$vQb&uLNrNZdQ7q{9Jq6N0Qmr#)g@hx$Zce8IZfEqr+~9X|e=xvD+5MbrYuLx*;}jr0tpgmU)&gq+QL{(0ekN9VQ;x}xs*Yt(8(_HmclflZXHia($Do>2e}gM=m{BU4pXwK)3wrMlFM3h%Ae zQTr;mxjfW)!|Gusa-N<55eMl&KsuQEE4-wk-0ti|^jjal1gdx%4ib~390|xvA%7Ub z<^WUdKdn+CP7Pi++aeDz$+!-bCHxOi{JVE9Zfjt%k=0%(K^;W36h342G! z$N&7^8CnlU85Ha?h{gHK?3bU}J<5OR-bqd9vN^+hRlM#jv|k)bVim!Ta02eW681*` zRsZPEke4ee&|Y9shM&-Mj#!yy#Vc0rckqFuRVhd4LMm0Q?lIgCu@{FWPdLy4dRp%^ z_}Xu_v?qe8&YK5N^DsRUlQcM}W#c5t4DZ?VHcN|wJDxkAQ)mwo67*lC5xe5?*_s)c z?V+@xhhHU|0M7yw&bQVqZN3f>u+gd)E;vgvSDR|2Xvn2;TYX+eHVMx(9Z?QTknv(P zF-0_Axzg!eo*B?XO-={bxk1HC0&;fF2$dwyKaKD;&dP2t$f9{E@GwxoQgDi${VM!- zk3O+~uqPV+30?yn&=4Dj-5`Z)CW(@Trt)Rqou%I!=Z2rVu`3i0UgK?0i$w!r)aBZ| zSFC54O;Pkf<)LPGS`}*WfSCi0VrJ&2l$w^Fj#_yC&W(Z|2nS6gcyzx3!p%FYr1=pi~qW!?Z?NbLNK;>J$c1S62y) z&4bUoC!I_C;c5+{WWo8t{0qcumhWb6uE?%idGJt`8SCWRav`}O09BjAy< zvd}$wZr1?n_?Ex!FNh->QRHuX9C&rV z{wI?8q=dwBcF_RT%)rGIIZ?)cc2SIUFsU_;{5h}wGvr(WWv@mPDMA3Qbcj%BGvISj zR7{0Z-S5ATZJDO-a_xOq%AnlIu#TyTZvTyq4HJlSd-m+{fmcU8S?0o$iaV?e4VO(! zsM5}ZDp^cmJRg=ml|p__-a$i)lV)gP6}$s))N2$L7*xjEQZay`>I0WUdSe$A5iu*& zXRqgZ(vIGN{(6{!LATKA3S>6jVq_4l4K`PlQro6olsO{MtcrT4m)v0qdAEA?8gT6x z3KO38+z42#ttyw~^&_(ER-H8Rr;T=j+6Vf(VGr<>Im~}|WbdB8oD&KZlB&ln{8tC(rQw`{$!%*jdAk_4J%1{hyFbGjVwyVp z`fP+4o@ua!)YouxFh3-!kg_tR6Z>k&PdDhjK8-RBeh|RA7=$%1FD6Us+8M`U2)EUm z;Nlb1N3j*5pZ&R|1%{7Dle?R^{|&lsr;_?@Wxdwks&J}ayhtCcD7?T7pB)S)&Klk0 zPKrjy*;vDGq<|EmraP!;YD7?|zqvM`q%q7-F3E+}|0 zvlHSJ;w4GyHu01um{okR^?`o*&=VRh;IBl#Q>11_opU0lYWy2~^SfSKc%1z7_CpMi zY-8lf#z8~Hu-b+<7^3s&xHd*Rf+6WMgk9G&va&p3XBfCM%94=JqLHC>JNBuseIYoX z)AMx)Zr!?t%N_dhgH7$iE^rh*HqdHt{0JCuNs7ELw z)va4gtDel1Ma>b%gs`c|(f0A93gU)`_Gv49`O$3RQxc@|(>&TxgscSs($ssI>I!PAjl&HPDPSAGcY8?E!&99kx$K z5IIaG(&^)3IY#mDb zk()HZgm1*&a1}wXs`_c8 zPnsa=xWPMqCzy*?<5n&~MBdOFRL zs+|cj3h)|J`FDPyJ~bZwOXdfQzRk6T=6mi=_^|0%9#%=V3ufTJ@GWjJz!H z3cCKmHSg@R>=FKh?S+#w@2~yKl$`x$)g_w1_d7~i;0zIabX{E?#D{{sygBSU1ZJgl z6oRrDvR6s_`usUZnr3kAzzqy;H@h-?_1;(PQ#TIeV&wetG*N@~@b1G0KHonw2`BrU z=#>BsbUiGIT+$&V@Xh;Z`pBN6hGW;uI~F%?fN2d63)75Lx>tJ@g1)^ZYzGj72oH?; zH3(VwmQd`qxc2oG;2&ksiBqRe2@4AYT$2T&FTmWSe)|EH%(@0CduHbv@F%1{&#GSA z(p!}6oiucZq!Vrb_qI6lNJB^h6)xeUrDdM4Yj)}$xEvdCjNAWQ1R0kuOUlYzVY<{w zQ=%JC+z;C3LTcNFw=80Y!3Au@fSgK9phTEd2WqGN>iGZ-d3kxXYc=lDiseA+B5L2W zY;}UbyL1O_#7`bOmht9|Cj2Zd7BNj{jV71ZLzSR>Jk;Q+bADuD5N}2|$7>1w4Z@m@ zIMu#=FuMuFocuQy9*MZ$IttU3MiR~8-R*;eJ}YxW2ZLgfO^?F!T+)ANLSaLJknU>Rb1mNPToV&R!zssN zxtlv~{*S}+NJdN1r;i@p-7}ES`oNgy^}d4@Hw+3;nKd(-KYc>AfU_1{gQhX;#4zyv z7JjX961MfWRAq-Z-ub$QNIwk?p13%4vsWM5{G4|~vDVDM!r2H&xRDWbF;LOwA{ic1u=+NH3LrYT+LOD?()>_)^i!N?7F zG0aRMUSU{xk%F&CJRI<~yQAY(=fs^dl7ROCr2N>YVkZchbC&0!)xL7&I#&DC)k_Qo ztjjx zBguciPVT-5AgpJ(1`jR9Jrs15M!Jx|5?%%hg^iOS7)S}}r|jzsT~X zuEd$F=wnLi&Ncvl-DkTD;*E#4CKC&{4a51p(+Fzp^){L-JaJ!a0@RP5nVG?9OmXGDp74cy*NVw z+$pGPZknHlb9r!&iwgM<@^{ZE}GBV)AC$|?4aJ#4bzsF55^c6t-=TEb2?US&s zoH%jD2oenLLTNp$q*Z7%Bn4;zA^H+el% zi;If@=6!vJscj5L;23ZH^5x6Qiez}h0a8NKYGgc^zYf}$P$|I$Vi9s-z)PX;47QD_ zD-E3~qWf(z@NrTtC42!>_V}^FDP;-CbMz}ayD&L90#+LyoHY48HlTJLi_72~0U)!q z{AeolW8dS*NFXD4jp?2ZqJzlkO785M?CjKlxPs1!rKeJLueGP91wE`j8}ma$SCO{+ z+sXTn)X=j>Honfx#Ga(IxHtr^j3s+;lO5mY-OF7{y{xRra=*WK7zRU>Prb>-Pkf(f zC%|*mO+mVVwzaddX|^idap8-^@k25%S-KUm033NHXAV};f}ZB#d7wkOlFI>te(~(}+WM|&}8Iwt^n|?8Qpwh>u`SLoJ7w|Ib8=>|T%n&W4oofWBJ~+=n;l~q<`V@=#Dr!>$MC#cxpA5Nzo{3jAa0wj zfG(#XKoAVq%NH-;RtB8_Br(ST(bg86yc&1L6S)=D|5}9(XI`_#0@l?sB3scG-(b}l zyWRIiZra-3qm?(#U0#_V#%dKj5v`*pmEH}4vv4Ou?b)w@``s}N?=1Br`~LZq946{S zD+gsoMVbU979mZlM`g98jfqC-o^dINYney4O&2de)b^I3vP+$RYY zYn@%lg9jD!p>}|*)P%fI6Y+x^FICg5Y-}ikYDw7(ddgg92QayUSf)9zcpaJnR{jG< z4sVVrqfWq55#9ib8Wp<)X1dc3KNUf-fP*tL;2sWd%>{kI>0_@9P#V}5+hsjAF9&V~pnkYvW46-@!yac;Z75Y7iE1q0f3Yk` zue<(t+S<~x%1$T8uozpTJQRM^HMwn;aI5!0IDnb1ZE^|tYzHF%YJv#CC;`LQQrRQP zXBipeFtP=Wz+ zAFQ`NwF=gQYiDO~KKJ(5`lCs13c1}!0sw)xrU$pc@wAOQ!RkdmCwLKcltM|8Sq6eM zR)^Q|u7sY3bE>NDC^%w_`;O_pyx)D!_%ZI5sbO_WH%eqUGR-5 z+A}h+vY_BVQI=l8@350I&)UaL9pp*Ra_o1i4hs~BeM7B)^nugN1zHE-*VU+cvmSU> zu&4?WvGU&atAA(u$&372EVh5rS7M0zW=~Yi@S{Thhyv_-xJBgG9d~y|a>J?-N0!s> zPB5BgXsM=sWm;X0w{J1jG-#C#IoYmgZ9R!*3O5VJ(d1UVl*4e0wO#=$zzQ3G5W?T` zui-fT-#Z69($5~i{>=;1`^FT{Rrqv?Q*g2RE$(Ow_Y|#S7TlSnmdDpL_1Z z&g%yThv(S>-s(?ddSamr$}jQLdGGP#Fku{#k_=<$OU(>O=*1`w+biMQ42+D=Et(yR z4TGo-+upo+Oh8~O-DfQw@*z>FLXGpV$Kd+FM)D$(DsDUS^N9kktoHGZmEmyYGm_)n zOW6aY0l6QqAJ$n+G~b($kN|iC*VNR3hwLv|jHXW01}pAJ{LmG!a3J?qJ~R;o zBb;Y{+{z|>(#VzIx!&1e*Y$>;0-?`^+>D&=t;Qh719tdvKbgPT(KaL`x^2W8+$hS8 zbE{1)?RK0`dxL6=Q<5t8c2lr!f!DCu?#q!tv96Z5d-6ihq*J9pCA)dkc-tpGO$sQoV=hwP*I^`3WH z!7`=whK$&MP9o~*(@z!!^e;01%L*<+Z7;7)R37`RaJ1;09Bd7tjr^j0dpQO!3M^kG zB%DI^ia4SSZ#TwW`TzpDs|+&9l~`WD_6qoVVyhwq8W=7}?I{|P7j=9#??CH;A4Xve z__!3Z(~m#<>-_=^zSOJI7AXo|XF;68N)IQ`v+p8wgj>HhB2 z9saDUn(O`a$yHdOM+XcT!Kq`xhG)bV>wvU$bRan?DJbNyYd8-9D-~v{0oWc3`y>|dFD)-GxB8gU{omc~>?p!A zv*DVmnGr2$LYXG}oSx|t7(&?mb@|iP6QPE{3aD#k#T(uLJCQ<)Mw%vEY1L|HCXC1Y z6srbmQ9qyx<-$N_mR}VOQ`2Fe4F~M6L$dun!fi;86!Jk)uI3uVJ6QlP?mHfkH+QeGB zLO`D7=jXS&|B9ArjiA00L6f=25L2mHJsJEAwVjL*5>gfjv_5LldQva5; zi<%1lhkZi`yI?5Tfon_mkgCuZO%H9a);L0ML1lvp0IQK#c(1_Fji-o@l@%C7^kX~CBS>|K46>(zz{C&wdRD=fD<`XC}xy#=M@#Al9KnS zk>MVAcR-4;YQ8LyzkIpzc9(%2iWoE^*nrNMxlXWz6zi;PUDm;}3*aMZ^Vi8G0k~>Z z?m`q35rIB$Cdzo0BLc!kcd6Wa?Fuc^oi{DOyg64`9g5UFiMJm#5JCIHzVC{sOvk$# zym6%vJ3SzgcqM z1R35UF<1r|44t1feAG!A3OAf_FevuexI8p`W<}(buX?v?=Lp-=FP?R}70Hz3o{chEq;sUr;;})YH|t4Jtf~^|N1Ee0ZQab!E&< zg0FBtd%$^HROAvg-6OBw=3x7_P+aJ2paqwvy}3u$lv12Op6*o9!*US-~W|9dvC_EuJ()7Hs&u z3a=++cZ&^+vm^Zxjn;1m$q1$-uybsc7}^oqnC39f4yW-qBQDr^UYC`5*52Fqp2a+} zd-B%Jn;E&et&NSo4P#guv6)_2-=toLxhXZqf!2)Z-Ykx|HSSvmAAyQMpSmfjB7-6$Q>oveoO^w2-L2PIm=KK#& zXC7B$zx{m@rII8GX_AB_2}x2rLP#R1CdpKT%|~oCHOxocl;t4B&sqdaI_bvL2oQVsZlq{_;0!v2XA(;MGKy z+2ox{I#H;mx-9>9X5o>;hl5(Ye$Svmq5Mj)NKEiwVPz#qxyw01W6>php<#YU=~Nfk zxh={FN8D%WDs>4r8fY%=SrCC9+E)>WP1=luxAirxvmi5`I-)yXn_RYfBuB`9z5@{>s z7=5KoV&RKh7rj(^U2-srE*FMi(ftV(cQVuZ$_P+GqeLrLix=HLM^sYlcz_68I;S6n zeyY_wAPJ%#+J9I(-0C1ACLDL8zoc&wwVE3&n~P!vS0{Ca>#)9n3A zSjch`=&7ap^qH+L>v+QdqIiRcJ}Vg6!^!(W%h#gK8ZrdcglmppKuXL1U$vNuqCFn< z6lf|+<8&2Btl4j3`YL0jWS$K9BVdoqb6l|~lOaM*N6-PS8^6&jgMx6&HGlp1Bx~4| zDZh~A^h(!TZlM0~NzkaRphrBjw{B4hFp2a*tJ4N_b%&oh_2X;z$e{8@#^K=blAh-I zl`Y=9f2z#Dz=9HC zq4Eglafhqc9NW^%;yDEt_twA}4kvzwPwI3ce ze?{R7bbGt0;jf?CY;RvfyVa{x@4qYU=hy|x5C{3j(^h)qxmmN8Xm^el-lN>MNyjC1 z3=QX=ypMXrzx2IW;Ph<2)36@KD#S(tCY-!q^k-;7&R!lS`Ao=+XmHu0>mHxQsn~&R z^SD)dlA*F^_Uu4ONy&otgik)3HXWI(;X;PN160jKc&UW1J?wywpV}(!8a*Z7F=D3Y zm$!Gp%g`mTigRrG{BT9F4{YKwlduDQN+!F^&Z52nDsmDt)E0n1BgrsJp?B1hzkTbP zAlq;Gs^?A$FT%Lk`G z*PAc_$IalV9Yb{++Vl^aC$w+q@{glr(uncYk9W|y;iL;R1FmYV)kQWeOkb3~XmE77 z&?EWKG0XqwyOSF*c&*s{yr;<#Uqk5#`__SP3cuO=*7wAL#|BX{@>j6wK;zg+I?83N zI`aW`(>Jazgso+^hwEnoe%`uS1Rj@Q-QZPtLv=SXa9?zUf>&MX-%A2~o` z2A`_DfmH;pKmf!Fb8`uS_%oA{a=Y%jyl(T&vX)BN_%^~U1vtqprQd)7SsQ?a%N?^| z4Z#14*XBIs{B_(-=g5-y$*uJMzy)(ykLhY26ZopsonVBo zW?7-A9P8?^B{=nzc`5=?{kt*dsc@w+75q+>3i7Dv5(TMNE2msSU_VQ}HD6?=l-o&> zN^#L(z5>x86p8>=LVs^3Qc)zAWU9rk*X_}}cZHyRz|mgvkq@6dv8H=@{J5$8hm3$_ zo$-)0nq_S`rT-y?N5yyLx{QYe#5{?@PVgic>r6(*5Jg2p{|*m#_p<~m#a{6>bkD7& zjG{O*^`4%V6_P78)Q;>yAXN%kk{c{njZlyZZkzAv*>&>Fa#D3}p!aW{6AbSwQs9ybFy6Ffp*mZqGBY;T?hC;G&Ry(AGMyuH@sm7jEb zdt005lV9f14&-={p%N;SV1e{>`1Q@I!{%i?gr#y`y&9nsk7T%K(r1;>6iQ)=*#qW{ zEtOH?v6WyX)m2pwT=YB|iib(zZJ+V@iRv(Gb@kD)lU@6PuhB^r7Z<~g+;|ST*_FUE zBYn}WiP5v~Er$jfbr822w?&T4R3jsI9R(Jstu~a!>5L4zzOeH0m!N$CRcIz=RpI{zcEdR1=HjwlcW2~n0-~n)2BLDY zzv?&PT2Ez6#!gNr(9R;OM8Q>aScB}`Ilr+N`jW8&FaWH=Pw?yEXI*>bK%3|6-GAB3Di1u0HvGe2%dqsB2) z-T-!C#(_FwUm{&mNjQ&~L%+uPfT3`PDdz9CIq_44y;ft>-`u|gU(Z0h>#Ck26>pv}8vj$3NN ztK*yKSW)Ag&2vMycE?4JyesEy)mH9^9Gedir6h%PxZ{|mYeZ@355!DKL)D3_lhwb} z))SA;EOl8{IWc{Wv>GM#tuJ4`#Q6Y_LNLvV2NVcD8pj6q-uwfPsE{m)^cT$1?x%H5 z#kAk7`STOK-Pr!OZ{FkssqNEj&Tw*aGH%(m(^9kQ#*OVgQ4}4mwy^1D|8=yDgAfXkt{Fs2^69OLL;;!Lx_>P$cbg_HcNTvN`BL=%F38o>L}=tI}ab;vqeGH zd$_Y|sHU7b#kz&Xp4&|!nivto2cx|hInee0s?W(i5AZp8HxQ-1ItOMcAt}SmvBM^ErdX%S|xkTM9XP&<}a-)>N5^ukOI=JqRdK$rLE~4 z{!NL~;Ku!@&>*zKfUqyO=_y51j9j>QF}S)^kZ4r+>H9RITxI4gzr1NZ3vNMk8Uk3G zd0LgTNQKsVM0w7=O+FBL1}!a$N=n!2cMN&$wS}EZ@+X{KYwI~%ZSabdr0$rd{G;;< zUVK6-6K-;ZW7bKR+)K80-n&()zhEN+K?}r*-Dn4UvhQ^;yR#;4p~INL9jU7uCA2Uf z*VOdBPotuuRzHjr&MSZKH+)RUHwePfJ&dHFydh{_$o+Q!iLi73{kH?-W=#ugm962S z@1WV&AosdJoc}907#SVTg=A$FMd@ZA16xLvErNj`K^QmTynxGyMtX^KkE!@VUBDp~ z{F-}ewT=QruZ%c_7Y+2z!$o!^KMFPYCX<@sh!-qdmVal>cBeWZhhf83ndCf(htzuV z>*fG!+85EW#B?tb@79o6s4M5@^70f$LC#w_3B+$_*~tk!Db1;` zsc7qp;cbhfdamjFiL!{)yU_=4W@TlS))@4`N27bV#n5!wzf#{nyHEt|dDF*d%RmMn zJwoFrBS70geAI_c2*OuAHx^A8V26DIBd~15Yk(GvRE}BtauSGqHDU%umy3ys5s|}! ztRfT=)*R907H~&0YM$J^yE4ZHNDkF(#EkWxC9UyTUWiyGoSAK4)Z=>rRV~?qE;&zO zNWw-}lGb_5@BPR)cUM<6jTyslEvP0|id>L9+p{<^XQ|(-twqtat#V8*Oc5vI#p5<- zE@ozCUbwJGJN9Vx8ydd(8Zql@&Zl0uaG=bw=+~r}ikA29kr2oXEnV{_@NZLKVT4dT zOwzD*QjZbKEYB5+bcW5i?l!TcZfRN}hw78j1N;l_oK~N4MMp__Dw?N5hpsoZCs)aZ z6lsnbLq0cX5fTN0yXVhesCj@}O;Oh3bL!FTaUwxUL~7O*$q4Aun-WWm|23;WB(#h* zVyGfF0x$N}^}76=1Cs7pMMkFo3Fi^c00<8rKVGhN2pbz`0P#!Te^3U=y$*ov1G;96r*$YZ*e?p>xSAi~Jmp)NwTF_(XEC{2!F4WqH*f{FicDz8r zS9nu=;*68`fA||ESYTj<#z^{E^fF*80O8hD)6G zHT+AUT=DWli$?Xl-~Y?v?xNwdj`AF;9lI5Y z?F)~RKJyLRL?0aDL?eOk!>3OaDxn>HHbn*%ymX{R)s(wQel%RkAL6gyfAxdhZu2F| zf`YaE2gUX2y`)xx!_bm)R&smlD}H?Uj>t#i>3@!Z^b$reFS(ij4LxYU=a@t`IsS2l zrzj~v`ibER{F~mlse;4Tf}D{1{}KkaF09{Czv|>&7p|K(7|k!y!nwNMbkSqYaQcLo z06F2kI9g4TfmzBpj>nTHIfe=C^a2&Yc7mXMmAo6$PZTp;lUAAsthIX82BIQQno1YA zBHOw8x6;^(S3Oo-Rd2d|A{TuIY zOv%sw>gwu}MPW0}>2M!Hk}pFYZf~!w?rajBY?q15GHKPDxmA?GOjSUgGU^~sw=Q-j zjsRzCYlY}?)#pbmoDh#{;6NEOrjNu>{2AbC=yD~(grW`?J&E&D)epxWo}~_nQa~%^ zmP`3pd+(k|omhJ%x${F5G=&*ypN>QcAKtt3drYwM3ba`XuJ`GUYcgHnHzmKE~^?O=c-h+h`B1u;3AMGss_cm`l zXDRl$rL?AS@vDp_i=W6RTAYkMaDW0!s&8My;gk%0Wvq~r>s;WYhbe-%MXdVFh$gQn*_9hjV|CwdIS8o2v`;_w*Cqw#;(%;En zf@DeVGkU?9{d@P?>J1!Jq_%(GzAV~kM@Q0hzaZlzKgL7fJ~3`a{GRd#B8O2!NcG~f zK6XqxxOcx`W7aI~A1x!ngoF;anwvkfF;ogfTO(8#J-dQ=t0luIngA+H8&aEJP}rjE zOSzkrH{onfyn2YNcUTV9jd|+L>gtX8wnB_#ADMgu<>Yh@&&{qm{m`{uQ$;&YrL?fs zdF3miu=$wyzFA)=p2phRO{-AbKFoSf<;{np*mIE*PMK2cn6-U@Ky4oxq?S&>E@zI# z9gMd~wE_`98;DfA#*Lb+`Rl!RU+CyVi9AEX98y|dT5~*+ui`dw$izL8PlknpE>2bI zE6_xDie*O-9lYCN-`>-tE!Wz z$rXzh>3s^Hdp>Tj$T~Y-_REFD!q&_8i!vixOkeSO&Pkop@A9F9`G%gKjFPa}1|bbn z+SSLt-0IbRt+mnya*tlMK75+9Zq1OQz+wMNnW{B=Q%;`2au*T?o`)J56v;v%U1Kr#bL)wmxPb1lM;%07q-p4{e(L!HvYMQ>M3%}S9gIXip! z!B}t-x12>YW}SF6H1u_1(2od*e!!%l0ZTFlNDfWQB2L32Dq-@kKAxYzjQa?M)b|^` zkVX=+4Pwfwa>f#tF zBNINCqmN`HFcOL-_uL`JTf|ipaAP}f9w-|=i24tu z`a@T0Cvb(w&0$WP#Ftdt4P;;ZBsUC`uDT%X#RyWd8;8OM-VkewuQ@YW;QY>7d=)_(CkC zhyatK@|!o!89(CLN28~F?~0qNO+@7j>pdpAKeM*AHN*@(VRUi5j`d{Y0XoMG1@>3d z$0_VaKEhE*QYV_;mziw}taZpdHA?B7mc=QMy%4G6u=JZh2&g* zIVCiCEpaNy6UY!gJlE`k;r2L0e;wcoJAXO@oeY`iW_`!B1oV>50eP{t7Vg->L6W>Z z^oCdL#$pFKpnE*c{QbDnHQS%`U@h2KTB;DLB0GEW;sHwb)F2Q)F!eNnfTn~9EZhw6#nd-%>!pj?om|*F;{f=BGNfjSkIe~YiOg^S|s^X}B z@V}(?xo#2DQF{u5Io^DFn=xV2ouwrcXD^ZVH!4UJSu(Wl+rbRQw zxkx|2-|bs9neGBr)ul_&HVCTUZtwQ0Ew8ds_h>bnr%Gzgx{+5r9JNP_v4n`f5T<7p zMXH8MD;eq=80?bSU)k7q+V561CGFl7yTZ*8y@H<``3`_DWOw~R>eqkSjYz`1 zmrZ`TRX)6=`_j$FFNttxPb2M8=fF(yHs32KtPsX(-|`%;DkFa6=+UKTY{=WK_c4gD zM`CpH{@RI0(H1_*P!lLhZ(FRZ@ipjpw)^p&DrV$nEZ=ao=L>vBR{PF1kyNk)(bQ1bz&oT$aO)WW&N!YNML=L z1L;~=*ll-Xkdi3~b4J(ODAGj}Ijx?sLhlx723 z??^kov%AvqDuFnx4bM|*%BeL@PB8jf;iJYGD$%Q@9Y4+h0j#Ztx{9s8{`3l22~dj9 z!BO5Ksku!FFy}}P-R!;=A)RRLESW4 zdW{8;Bod!3TYgZ#Fak;-qsmQ)rk5DQm5i z>rZ66_3IVFEkQlIe&TW+h3RYBA8{iXtEkuzd*EOI5;5#P3e7EBnpFRtk|TxKT#*Bc zRch@2IG7y`v#jT4JbeH4Cm@Pj!!fy{Vw2NsBueosIcQ|S!dJhIBZ27>!W^2F>>9(% z<-nXw8Sq#eUi;l`WW=>2BKPjz?Ot*K_x=39p9|xESO^5VW6xP5Nf9|bm-$2We|u~I z_T6c{D!fCU8B8jL#3O^T;>vibNd=Mn~652_Y8zMYuaR67M$a8tqO+uagxj~z9NF&$5CqCrN&MMUF?+`&j#uYC|t-m#-s%Ttete~t8c zEm3(+JO+@k3q7yjMYHO2P8#>Os^_nCu za$>S{594K{Nc+9nk&973;J5zkdPFgQ%L9Lx-y7PecSU30FafPJH+ z)XOg9BT#P6dGt}zL`CK_gEdZ{c4KrvQ@e?l1i0+pxUxnsVwIjql@Q19ChbEhA0@=Ie{YLOGe5JjKWVJF_b-IPS{AXe$=JBb z@ew-+JY&wB9?cR}zy$DJg0$r1dNhj5ADG4L{q0@in1y~6YuG%E{#OQ~=A!3RtU;!T zwxB(4=D&0IP)eZ)%2wcE_)(w+beb}F6|8ZXKK}^Nj+!h!@jybt^LzJ%jnRn@R~7UX zg(+(UZ-o?L`<*>uQ*codQx@`VZM6r=W+RrvKwDp{Oc-fi(}B=Xr@Kt%;fK~Z{hMau z?G5hk$6jpP*M+#8_wOmMvTxSK4KFMdJ6kqgX7Zfp?k`lXnU~(58t(ei5N{FsA>1@o z&e?<{{y8R|>}yEs5y|uiblo;=2;ab3%0j%Ex=y!u#k2`|*Z0(ZxZdE#mm&A5Y4gl~ zHN4j5pfDMdD!|scztJw6`>mcXzIe%!ix)0b{o1y^jah+c;LtDN&RDx!^+C#nqtzax zak)@{1O5bT#aTCI(fB+2}L;-1qAZ0gi| zsQJKrj~Q$nB_GM>=DKds&8~q)CFqs0KPa(?Qkl?OPEPI_k^OTXPL!41Ul#iBG8#Y- z(?Rnb+SpMCZ5Ax>%&*(dfeDhac=17)wIBYLM)ImYL{)QPr>-9YxBAK>zwX7XS$_v5 zwY(?@Os_Tmyb(-QN?KZoSYw0cRu&F7iM=!fuqLvU^>XM^Z~o`N-rLfL7=P{qk`CH{ zF$*W7{lpq){)nI0NhbuX>LsLU>{q%XrkmBm4J*ztdDv%L*r{6*skW$#ZJv*x-+0 zLYNJH8a>$vWI#Z29{PNSS?Y+bF%VgtB(V(YjMZ(asUBOoat6sOIW|OUCFw>Zpvkud z_Jr$n%xeAN-z#L?gbC!~g%qi9=A)+UUi(3Ih^qxoz9j z1PgnUzn^(_G$a=G-TyRTZGhe)T*CfM!LAxKrmlKNh?3FM(|hLI5LIbtgG%Dwqeq*5 zceKrTLi!GPd#?}(Pb9?q>^`tiM>qLjZ+U)sU`7TwmvFYGFs(jslcIsoTRaStH@=q> zaDi<2RCl#~K>6oif53ZY?oq@r#PBu;9j+UQ-NSRgZRq^A0j-bSH?NTjQP)9q^9WOR z&h8mfl%^lQ4OTD&m4vg{c2l`~kH7d$MIGUlZ*elF$bkS42BJQgH)RAo zn$eceuVGx#zEsTyF{!Q=4o~EV0`t7<6|$Zmnpvas76927K^@fg;$v{Lo!$Y z%od@uW$VYuaRF^*1IJEPUgzO)jDjb2SSy|_BqmMXsDrM0gULV@64(o2E1$b_f3vhH;8-ohrAI{}Jq{PBc8Sl{ z2;Fj&#QbSj76Qf`#wT1Bj_)}P^^crNIy?s8Y2w5~q(eqg#V==wAIj+R26hZpyOul{ z7q*1NL{z~mbrhgA7~k=(%{NJGp{CraMW+&`Y~EG&YV}tc#^~ThaL=8Ra0}H!Y$a%7 zmGgMMf|eEodKpHOpFf#g0`nDiC2LKSfw^l)SwM@sQaZNsD(52e5N|Szj`YUV^>vS# ze_}-NRSAw5^qjY^Fg!04;RkbHrDDD@?@SmG#@Qvb6P?Y-Sbit%9wjp`Pbl4m1{aFg z2^O-Ij9C#X)KugTvu3cQ(Omjf;dlwMu{~|PnVi7*mQyJyJ)U}iFxuUG#Na-fm$dgUkE0K z`<3h3E^{fvZ)~+g8OWfFkonxolJoD6%*0%_56y_>QbyEXyB0tj4?ZE8TOKoFK3~jO zMF&onM0bpVC^Mxtj^IKZuKPXv9EHAy`<1rq9{N{yelVF-=Q~VX>)DP-XJXD-_c*gS zur6KtNgEF$=9u+_F;mY!;`tK4K7(lq_P<{Zbj|rmBu46@QCGj1>dz-li&2WqU-Wu2Q^Qx@3@LjT*{D@9FXM+IGrMWVlq4XI5PPhG&z5=3Pt6ba57Y=Hm=Y z%>%-K))k*mh7k#>tel9%&cEZ_?IvyqdWAeRgIw@*u}aY}m&B@okgd>;9UC)Ow=3=r zK)ikxPnH9SD-W>eP(fupFgsWD)wb(HRPc~ylQjhuB)k-&%kMvW)ayQ4RFtfjQ9Q`| z_&QUvk}r~A!Fbfi{RFrS*cKLuH}j@~qHFc`megvwA)M1VBcL!7J6?L9f#G(UfxkZF zuJnUTgt%sz>9Jl@SR3R;!k}Hu&28w2FLLMr#%0jdm%<)>A+_gB+1ZXOR9`{rmFgVQ z(gC7aT^cb(-u!K=^hJvEk-P%mXj}_`kkC);sqHuegvvRaFGdB(7b$W8e-Vh2k%95a z$cS|COZsa*twU8RoU6r;vhw_&=Gw7hBHg3QLu87__C>a&a-Q6W{FNm;hTmR~%o_ir zuN0HLLoFTEWtWWl#y z`_Sjx`?rOm48AN(FlK{D=FX%}8(u%e&s%=7|Agq4+T6Yxl(?OZ_J6~=2JCie3tqM9 zCs;(6H&FNigbAn26hPw^7Yn(_j~}mnxLAwc`e~SZJ+v!WO4g7xTwvq@aYpVPDAm3y z>q&e@V8d_86)%IAKqrCEkyrDe`765AnIi!-d6I`N4#6(T1t*kwoLLeF5)S^tY+k*= z%g@O>%N#q*ZATKvhV==)%PRNPkivbRaZ)_Y zSen>eKJAl`oJ>mU7H}NmzN;qrooCqd5$fmGoz2XKfo}rnchFIhg$Q}ML2Vz^gV24A zX+!8C0BTeXCD{_A&UaF-{{AZH+=`5#c*4DgHeyN~Cs_hh0IPDEjO=@tnICK*`cRR| zcRo+uE}poRS0-kljXG1Rg3pKIiPwOlCE1eJ8l)ZEj!UtPYyDkwGbo?$b4yJh3Imjn zT$;~G;GnUbvstlorlHb^o{vPjSG*DSw>xG?pJQ%tp? zk7n1iX<%uVW0pdKMY#KU%uK>joWyBC*ol=S!#oNbDoX!?j{eqoulJOTOqHEB-2ISmz;Z!V-Rt`@a;5iIaDn}0!js838K5FF1WuLFKkm(#X^(!;2 zIR2;zxgs||^DLk6*cL=SB4t=Z7x5{y0W#U~MDr0GB)(S&9A&vdgi~bJB%A=TMs5wd z(iV-nx z8>#Ly1OGI$%8}#};_ZA_x81ots-ISFEy=8?V4!mlW4h*mUu2v)gE8HA(5!ceO{qf> zy*)8C1a}vxUbTCHP8A-QQJ}Ag{Y3ay+>F-aF+;9PBl^SI6V8l-m71%_?d>tt+(~%_-=ZDJN&=UW^-8oBL4SG$tX8di#c3}m_s+nz~ ze`d+AUoScX=yK5}0+2;+(N}O3U3aU~0oOU$KVSlo#HjQ|sMEH*zQGw{=%_MEDY`+K zToUtB4l#%co;>MzpOH!90ZD{mt{Hp0l7Y_+7d?m&io5yRu_Ly$Bb`24&Ae&VxOrFh zE)6X#*7EAu#Uni56nt5nQWozEp%L0KD8jxMP)A-Ms{LAU?IgRhruJ`R&c1k4EsJtTX}1TXFwYf*^25o%aI@~$}eGLSAW z!4*FQE8)ZY_X2UoWeepf2(W~6)^O~<$;g>)yuEwE!Bab5Zk}?>Rr0G(8j31Nq9(y zNbYeE#tl&Xah1wOUDpnKt$Q%9xB8CDbGC z8l$B>F6w{mzq`C4prG^1yZe-h!l~aB7_GU!+f@(QgKP<70*0?t$*pku2@h$#WXZSe z#6SFv>J1I`S(6HCZAA~w7j5P=P1+HJ9tgdw@rC^gr%K)BtXCA}zTA12oCdhj?_a+H zHU$Qo^i_zdK#V8MIi*!W*0STtuZwqhd)_n75jljqgoVNl2vZeX$&ttdBS;CG8e_$0 zMv@^ybu=A$r~}<9;;n?MDR|Dorm)0l>Pa_F87XJ(=Xc2}U43GMKfq??G%-n2(0AGW zKN^eGtSyH%vg<>CQ1S^+y33a@bC>iJWLfVf#R8vnLAeg5o)>*kjzx^ZEUH40$q@cVb~W^wLz$VZNf|1YEo>5fYSb?1CmO4R?~Ym23%Pt?x}VLVuyUCUfZeOJz}~eYLly1haMj+8$l2(fG-o; z+kc=k<5B3Bp%#|?V7ziBQheuZV!M%CbU9!6TxpA3xhlElqRUI(Eh%*#8y@b0Q2%1& zbfIgKH{!Hw|^#^}>O^LJ}_2Qg85|28t7sM(QZo+FdN7HncVQX_2rECj}`{@S=c%j?R}5 z4*xf3!E`$D;FACoROExYRYrV!&jWW|s&3zIYV(Ddn7#HFHcG~nPWHau&;|o2D$>2x zSZs~Z^0Ra)5Y>Lc=F0l3%BK=!rp~|_hkZTSz3<06r8P_QB4tFD&bAMFdB{AK9xo#; zt%FbYobu2rsrFu_W-ePm3aSDiMkGuZIw(k0T5;tO6gMZBYR z<4ArbpvSSV&E3taVV6^4!FACzx{$+=b0aMTU*VKqdLe87&#Xnmu_M zx`#mocF2Zu(J&4{mZme}@87??`|KL6E>zU>gf($1)c;6)a8ojlW%g`PSt$E@4=E`r z)_1KNPwf#+Z$JCSSkr;^WZ*{BlWlQk_Fej6BE%Bp+Cv@4u7m}Q0mA?O!VNqcT*9O78yjOr@ z?&S$gP6`kYE*JB9k(^yE|h=vUGv`<#H%D!))o|W zvfZ@Djx9J);!6__!z0*P?aYjhl8o^?Pw@2sSJ`wy!v-eaCSaB{4zCaO3;Za|!6a#+ zI$PFEYiR$`(eJ3-eT0=%xnM-@6vpU@nSmxF=oM1`Z{F*3if5mZ!` zFwjbGuxYX-9$ctat8~7g%4UzTsuu=1IRfR#>HLSwV6o8DPcVp%4s8XuG?>oOYBOWkX*54kTmh zZR6~#PMHvJz z7HfLrxtZ`PP&4?1naPSDRAbmMY_` zFM@q8MD{2!y}idF=r_$D(^>eO8Zk%<(6*p6p(UB}D=9%ddAeHnkNb2;8wmP_nvJ{1 zSR9ktOV3{@igR)XsF%TzVwN~($$?=a{%>jn^`DIRe!DNRzt>_dFq50ghXBFM?q8er zVbG)Hty4g$TRY2=%^i2h8~iFDX`A&eoI5j(@sJ2&M^@zBU>aI$u_O&J8J3a(Z*L9D z?s=%%ndl1rC^H5|;WTNw}U<5$%z}NOLWb z^VUsNveM*=$xbWeb!V1Hnzk{kqqNoGFOfDp`PsACg2ngx_js64wA^b`c5JIEus>VR z%*~i4+Qg*0k4*nF!&^NTI9`z$QM#oZca)6S&J)E3Gw`P_!Ml8kf*m@oIhErZe2Av1hGoW;7HAKVkKwg>ZGCl3< zEf_kC>L3wSFeKUYOfzN=uqkGiJSv`3PCb0B`Q0kMAWm?MP2hV z6{W@0tPv%B`pyU=4g^chmwB?;RWm#l#;*N)@7f*$di#BNj2Zz6vZ{8N_l#2$gQ(&yZrR#HNp4zjspdj>Q!9ivG`2Mob(f*JROhJ9G zr^ugEk>2{;v2$+i8v6}gy=4=2yEWN04!(UxF2wU+ ztw}M6l))e&8tpa*toW7z6k@{bm+v(|qU^EMn9}>STL2HM*R3NJ97o(0M#7DCIX7VY z`13K${Y}9dDE+|NRqC?~l zSGzWDC6LK8NN=X+N``gJ=@^`Hw{h-0&EgX;zIm7Qk9wn9%Hu`1Hw? zF|rXdb26_xW^t>-zekxB#hQ#dxW8=_iZACk^45^tj5rs@{-5`_-sm0dy&*e0`}UeG z43Nl~f{_H(NO*}0dp4?wWe7D&uP8_z)J0FOte;MU#*RS99GDyt5;Lj$W zM@0kOi@wqh<$Iis$sBQN`}S5gZvEEs?&HUcHfI2@a9eWw5A=K4H0mG&3n|%9Cr2Xa zz#XXIRYjSNeeuHwh(E^^q&izG=RmfZZ|Y0q|c zpD+m>d$Z;^(G>BBuwou8b_`EXPg1Dfj>rwpiT?)IbPi_8k;(Q3_J{^SR`0bhz9y_Ku9c6kHoE}IB11Ma?{+y}zAe%XO zQ&IBRz01z^>~KYC$X{XJ-b+NM!lV`QdrsbuSUx~HoZhybizCb0U&y%zMh#82w6?Nh z(1Ec-joU@?IF>D&Ew`mo5yNV2t>kbS8G(7KZu-PmUc=tSx^*4r4_&9?{;VP@g#?qN zvifr4xh@PY60%N%2g3ve$KeS-l4;}!@^bLTGm(tc)YarHiK|AI-K(n$=+_n(nR59u zc8-@5e?$pJi>g^#c_^^WNj-|allK`r*=P30*t(XUSn|%FITPi3 zjKv6Sq`G2gKgSLFSt~LhGscK}jVaiCS|sQSuZ&afA_rKopr7cFoe{024%SwViqjoE z1WFH{{2=^uB4f0QCC6@89*c<*B2x%2Go;?d-Q6g0@DzSMQ;*Nwe;2y_?2Avx32;`x zDvuxUeOU6ehrTd)f800|sdt;*B&`JQE=mpr!8WFW_ub@vmRLaJ#T|wO#g!rQFrm)eR0` z{h{vakoXt3#Zs-%;-g^adPVJbqDMo(RJWY%o#-;5m*H;MlUdfx6=5?c-d>YsP3MaG zdeh~hs-kyM?UVOb077=v?vsxJF$k53)YvRa2X}YvQXQ33q&(E`(~7M$DYwwqak+l| zhc90)AUb*Xjv7&>V$RK-^W$^83I*#gt{M4P;&DBbKYr715h3uceA?e}>DTvEIQfyB zNL1S<=Gx)NTUGFBG8+maH$6R~$N{2AM3Bvi&lms)2jgVRS*cbx#>T(szjY*h1w~Pp zd%L`$$Ztlf)dcFk2M@H`JuIw5GYSd{jvp6U>NQZ-cZUn#WcZ*?ElrLIu8+x`jl4Bs8VfZ5?+N6d zxgYM&4Q6fH@!H+-xWUKAc#5@{)k~8t%o(7K7KfTTS zsN2~&{)5G*84LA}?9;oKR*98y|K)@?rHA^Ps`TDFe3?q&u{+jjaQ&NE}+?W}JP5D~?!p z(`MQ8Y7&bUq4S-t#DzO?fnQOfK$XO=$t{RGfp?E^vE(|>e4bY zm>ef+0wa&!s*<>^2N)o0+!&fXe6{iDL^VZa<&zp>{RGg5Oenb(rgc>$=K>Mov(!n~ zV6~tD0$M=$iw9!k#;>q0=gEQub?0z-R2Fi9)KyR?ndj=Ak!e#m%^EZ_VEX&_mGR6p)gkPQx|b{!n8mo z|K%#<$dqB^0L^Wb;&m)ekN18*HTloo=zuT3+i#mHt}FAUJTW?ONgxhIPLee;Z|Ygf zH%)(BxWe+k{fE=py#^oq$}(}i8I1#D704^m_kP1nC^&auKM4CWM^fX{7(*)z4^q_J zNX9)dC0YEh${1VKf3RxFZ=vqeL&xUKp{M3=L$V);5$_W;4}}c5j4~$b3mrVH${ZJ* zSz?+ng}7|I7-ry9LJzu2LtvF(%66u+x~IVRe8 z3qoXDASwEJJ22XXwEN9pJ6rp9w$@GEgjBiUTTZ5M04JIOUf81iO(Be-dhzgKPQV|( zG>L+?wtEj78K zMHVQY(&9WJXRLdomF46S7V#>7M2IWfx^d}t+%%%X@)KKWcnOM6)Xw)46j#hT;%s6? zk{;wSZNprR9yQmIO6JzC(2{4+(4tY$KNLhetikj7F?}HRjed?7MmlFgLfBt{sLAw{ z1rgKtTbx8hjbRasM&j+0$2x9Cs|i8)hev|Aksm%ZsWs6R?b-M{-}YnG;qeSAd!LFm z7~}qS+hj{*u>MBVI2uwGC~Pr*dhK>~byorxxr7Bjsy94(_;A~+{)q(fga!`Lf3aU_ zin!`5jpJoXQ})g$BmrX>VqBo)+va{PT`=IA_8%V$Is-ZeZi~)#=f}k*53mY_Khgi( z^^7pe-Pf3RW2so)V^}`mBOu^)IZr>ocb$7Rj{Aao=ACaagch)flWy-H-|6+kZ6_t( z9uj3n6TEZA)tgnWHIm4OPcY>GMJh{T|3ox-b|{TQcwFzRppp6Eduvhx^uF-2}42diQ#7ysf9x)7H-8}`d>w)~^;P43dh`)X;Oo#&wnI;qzLY_Nk zFTurn(~p{3_8DOYR4{25Tvh?svj32pRhM>E?_@m;PCf<_vfVD7s@n$|27ot ztZX#;a>sP(w$~mCI(;&4@f(3@$vlazgyPwJc`UPDvEi*)(MMIDAu$hKIgp(2hG@z2 z2PP$nuqI$7qOq>nM+o4fhrP0|zbHy=h)B`Svrk5?89uY0w6yfCswy;==LBR+683-G z+^L^mvgLMFH|)!&PPu~8A+fY@b#i)rFLe$y;#^3tRjV3WT22d+@xlgI;-6&*;In6n z>ZU?4d_!H8V-_kSgr|&F`BDO;B@Dr`sD;#-ILS) zq?b9WDs$aE0V26tXRHFAekgsZ-kT8PdHvjL&iDMAX?`gE)TyW0Yx=T5TwF8aS=u|0XUDAi8BY&@9nTR({FSe(EG&emv)`* z*WP>RFudTFxWtKgX~O9O#3J$uUEs$p90fW)}c~dRxV})~Z}#|Hc5PfW1}6_rJ=_%4!4QyyQ_|+$B`U ziV<76T6a)*i6>Gj>eUZfQOmYaSm=D&@UD{^Iaqh5bhvlf`9J#?!%5HnJWx_g>dmA2 zH*(h7iyVC4r=MgjUIGIaME0)^GJXl`3&2OWq#}N2(B76|<-z-&Cw%qWrY<`fJ?BH$ zgd<1DibY~2rteVHe`?}wVQU~G#@v8>==W(i@5}{1Vhfa4^!l(H_IcEfrn!QAeRFr_ov7y70ewM;Qb2hdN4` zAc!}Rf27nv1+fo;mddARNW^}BvX->#Omt6QAERe5N=)Q3Qy-?OqjNKOJ>7bUa+`j7 z)P%H$Im+ha7yNiRI^e*VOzVA94h)DfdM9dPJZ9P;Rh5I-ZkWOcd?fI5xjRVNX^Aj7 zM30t<>UVEtkD+UGYuV~pYZM2tu`jeXmPp*WP_o1d1Ln&xbM5LeZ=@3WtC^L zDNp(Lb`KGv?dUL)M~!CuU&>uy!)p)LN@eT5d?HJh?!{-ng_CM!#1SlI)z#H?{>LQnY zol9R&2sM~Yh~T(!{1#&e?hzzcXfe2n$KLN*YTFMX>5R88RW9wntg*b`fyW+mq6R z>j3!uQ3st0CVLc_iJR0cY`g9rE<(wXTRZRR7@YR>19SUq!wivlJM+{jXooqeR`eta zQg2)5`K1qhQ5H3HK|F59!HU^Ti(Y?1 zHM5rCl%uxPo$v)z9(>L6>K=KqKV-O5T&Q`@nsZ96Y|j8MZ=Goe&5M)`=*?ngcljcJ z2Lx)#*IwGVZr;2;bBTl!3J_4?vGPV8nl5mL9HfQrjoKXU%DK(oUGMqDo>yZt=0S6WK|2nfCvC1c&-t7s4Y` zqyL=tyS^{9OUPu(HqaTaTaJ&G4#|c$4lk!3Hl8kyGFH)Q6<*&I>+uAU=t}L7VQEnR zmed<74~d(->x}Hf9G}0xv^~}@CHItaz_n%3f(2Rr(P_5YGtcBf{PHOHM=zW>{`7Rr zrCoBRCt7j(ac6h=INY9`3o=WAN-cPyEH28bfkEyay#2jzunG_yj(ws%8PLdZHcln3 zS}D_#&p)nIHU`_7aUf8pfzHQNP>P*do=g1xlLywmd9EB5(T1WMMR3#GR zfJT#Z#&^r+p>Y(3-*Gfuo$(O+FxmEfl#0wx-j@zv z6%e3QyulbO1HMl;$EL^9p14??bXUH0G)Oph^e8|@?1JGoNKP<~{| zAHK(ujN#%U27R$QP*KAT&DAjJT_j&viuv7{sY2?qgQR-xn?<-M1uwKF6&n4#mOLre zi-8m;9wjIYP93o<4C*F>1kUR8MaRqHlqWxv-Ba{olWBeIL)RJNjFx6hAi+)wHd%8Y z%PbV>nmtSNq6)&tbEU-=KYq@QQF1jk%LuzQPn8h{pM!=befxeQIApoP+#g=eX6Mp~ z7Z7f1l=SLr8wo=sD4i;?#%+i6o%BVc~NS(5IFEue~>a>v3=2zDbfYd?HDb%9M(dmZ4};nLGDOoaP&=DwfrvpxU8vu$@jxUOYc>T{m&;W+kVAC@RhGL#WN#D~p? zzwEI^OI8Y`e(zq0Y;UTN$5Gz^fkG z@!R+I3W?WQ>^#O7m)(bil`TmS(?lDHSzAWG$zf$ofD7v3B=`KM?f!p5wtwi(a9MZw6oJyW#X-R9rj}A4J{Ll{5ehR>?=oB!~fC2AqcFY^6 z(JitZNrlp&LFng-oYF1T(BeUX@Y&A5R5)d`X{aGVUMSL(*tj6D`@=sy!peL|9HMUr zxcE&vTBi0!4-XGFH%R;efh6^bgye4YNChK@y#|b6TzapCs@5{>P^bNprW~$w!*Ul4 z9C%D6FhQkqOwsHZ&GD)~w;K(Z@MTY*>2r@3FR(e|-tKD?q&@h-TapHFf`NpfwRziY zWfAz*04b~=AVWc}T78rXmfqiH(IVg@s~Lxkhgr=ZAh$MiMnTWcEMmZ0Gqcj91&JJW z#SI?xvP`=Og}UItXG3!6<-;fxV@BjM%p|GS*szG9f$=7w7#D;F9X>2>GS`iiDV|?! zxI469#-Ium22eZ;qm*RjXFOP$w<{`M@coCsMC+y^yWgCDc_Z>{QRwY__{ zG~d@*JL=7iloP6&0aeXV@nK3-av_U<3m^bbDmXS`keH!V@G=BK#3JR4yo15b=&&+o zawzskh8@%$elJjTT5P?fr|QY75+Bb%y@C}1@fubGw}g%U}!iL7u5z2XgPdMIObq$JIVj|Rb0l1S7`AXG3RK{KvZi!2AEWStDVX zqq=U`E802QF}*NH3@ZX2!pN{S+^<$!D9Z6wk=={Vurs3X)vGI)P6RonAV%ktO*qzl z`dFQ9Uek<4;+-l|#D6K)X^sW?+1Xo5mAY}JU4Mc46b)YI0DbG8!)0eGU8E&;(zTT| z$ZAcr^}pQHcHl^+;x%qej5wvJ96F_th##4pY0D$DQP!`iuQ$}zzD+fI|GxOwH4AIR zkI@#ei8vdF_d~};WbRj|#ybZ>LxncwwpxFcBb6?f;gCQ}3D4da)en&qbg`0#9j{&j zQS=wb0fJk1-Q_xOSnOB7727&FYd1;HmC4uOYy)?L3AY`H6-)?1O{`;EZun_GQ%n>9 zdlxU}*C9$ueFP&nW@2@gWA0+*X{rhvhR9&P5HM)UrFqC%(AFH%^ z1}8V`#Za`X$)Y&}*7odBj{bb+VS0)EeO*=TbrkmV{2>)YTV&Ll&TxB|r|iy?I^be`)bJ8t|$f8O99@O%ehyXHD{= zw{18G{1OaKO*T{xm9eM_P^QZ*Sc?+UDO~P zX!(R|Dj`@9cH*zw0j8=OK0G(Wz47s5?!qFqkXDCjL;71>Le>pNMa7ai!<#%O zb61AX!ejTw>(s*whuIlUU)O!k0TUx()D6VXjrP%!3t>b2r~O^_ox1XLdH_E~KabvW z30HX)Nj81VsI0GC4%kd;c> zn{uu7g#D6v@4g|$Nz4DC9$j<4#ft%zU9^f=R7SVz&b=XrWqDUT&}o&yf)Rmy*_LE> zlaYf`sFtQ?x~=Bf+ggKe_n5C{Dr5Dp>Yf{K3w3uE5i(1hl6e92lvO_6RPBK9Wyx3RpwaWv3yYm@4%7s_?~8U0?{qdJ7uWFR@J5B~ zIQY&dtE0a&Sw<6Uu78yM%QbH*x$-T?H%_**8LTZ)<$k0-K7yR)*vh@WSJ*@U#Jlz{4T*I*x9~ z=dNPC&6wzE=J^F4B`TJ%Ck#Ic-t2p_%5jfI;Q#wcje&1Wp9B7d_v;b4_W5HYXO9fS z08d4HTKC9@1q;?Dibfm>mK%}@aUc7T#CzBW;nXYMHAazHjaN{RZ_!?$0eG0fzw;$k z_LyQx{G_(_YH_vrf~9F&eh@=z1-+g`7hMLgm{QS}yx&f}S zA$PNiR_ijdLxrB&XjXV+*xy5)g}b;rTe_~!VZnm_y(Bv23`nI3SH&w+_mGw z%ykR<-87l~S#ES`>}ZwjUV~n-bI=%`IpE68+6=Iif4KR;=mr1J+Po|`D?TGJaTV%w zxF9WFR)*vN-dWAA35++8zcOsE;lu3~2VM6i*Qk~^Rw1Kd>w9W(-LeWbY71o+B>c}q zogCZroGIc;o#=Zlnio7NH^)Y5DC}ok?jZ_pzuz;Xsn6uZEhElb1u;`cu0d0^J6coj z{N>A+Gcz|v&y(30_CG7mOhvNTZ328aUaMZrQmZHmHOPM87RY%&Y#C8wlyP)#3?ePEk$<_?-SB69mEk45@GWiyZs|Iln!dlywNAQKF z-1z7UjEuir-*&lhKz0S;w2qFB6OILk%1V_An_*c0Penz4#?T)KDEdzBTMYdz{Y5A9?wEbl7kBG6Nr48m$8_w{tFOFs%jVR1KUpVecn66~d=hrl-*u=h zsR96wcw*J6MBIqKIJbT~wHX10l%i56 z`X{vh@3mH?BJt@DU^*(Ru{(?2bEk}XEB{tdM2PSSTE8AthU^#eF8^s;5rI%7sHB1Z z<#i6}GMK1nY{n56xGnXWB-?$jRZ=a}yK{@s!X2q|PmH+8k726X;GHWSOqr%Rc7h(Z zU~!gbE!F5eAe4OBMvP?kLtZ?snwjdIO_K&$Ox`)nR(M$aS`m)gA$00j+v(G<<4%og zK56KPureq?k>!gPFUEzR?_;FQ1On(}Z&Uw0;+nKkXd#dleO-r4C2Fx0XK2*sV5;4k zj8eA=q>1LkIldn&YeGE@37W!GWU3xcGa^Zpfyvm|h3YseQ0>5fPrtkS02gZ18!0({ zmY=ap8<}{N3mM(Nhn%ur*e20WE@UNvsh8c*fCP{~ifp-Bp3JE)kZC=?sNY-2w8-G^tg zdhJ?Bw8XG&8#;`YBBR+W!KYm$rV%rDRi<6yy+M0S0kqU)sR0n4VYtgw9|O`!$5&2$ zcr27rH(3Go^=;m{*-PAY6;^7?V^Emh8F^Fv^Obg6Xnk9iOC~tQp&48%{J3v?O{0!= zzNwE*JEfAn^n8i!EU5P<-Ib!bmjv1qooM=SGB*%&V5yy(yPfY^?t5)w56)OOw^q`k zF#jQ%AqW7=n7zXw9JJ`&Ur-}BU=2^=A>n4i=ZF=10|tyl1V9sQ^q{O1%P}q5e8XOGEEou1v z#_^Ayj!r)^722nmNZOxc@-MLypCAw&y%=nZ<1Al6);k&#v(DZ9znQ5TI{*B$33L*R zd@hbC>a2LHH5~JOzTl257ZP6}MEzZ`)tqu`=+5l!MRVV=Cq4$K+6qKiTujz{wAop7 z`|;y*)o^XNlaUb#IZdI1b`~ws@(>qlgr|-|N|qpoJ$dw~YO~LW5Xahd z=bg;cSL<>%l&xTx+!=uRr{(1DHBL@DmK?tRVk&tS^xuxDC0Y~l{ZA5zXC^A}aN#DQ z`X-Mz(-xn_Q`K+k+`mzs!>Hc+`hf&hH@G`Kc`*9Y$`3&d2=CGP+P40YZOHfii9MRx z@0<-U{zFyC4QH}iYKa_=trMLUrl4&Yt#CfARzFeJJ^6u>X9^8fvbPrFK6UX;sOVsqTUuj6|`M|lA$w4Mu~ zmHq@YBL_0#TadexP!l77QVqh8rr>kDR&=Gy4^>GO$mX2_D8dM2rRcnVmTLLoN_Wvq z9~~GvLWa;*NnY_)T{lhzFF^iBKA841uV^SfsGHp;NQ(zHJ&}GnEui!K{J2zx?|0Gv z&u?U6p0{vb#Py)NUYBJymXQuif{tTPfAVK-Gjm{Jg7^k*!`~of#CI)nUPHH_T7X8o zSEMTW91U8u_4!~4?-5g5Z=`xl>~u!hhe?}a9|jw*Nfv2^`2?~|0XH%XuiEe_G8Ize zr%dtT;TP1OoE0CjX*$G{&MfCsrSmnTya)A`{6AcPH+>EWg?0J%p2;i`ilM%{daDLO zJK+r_-C2EmnTzO*(Vn}iBT&B*GW7l0D1&jG-ki?E<|ck(-$P|XkiWI6)g0))gV}n8 zOQvKTQ`i-h&G*j-iD)!p?HX*pAE|1lTKM+)v-r*;3d}yclb(FuGKDZBj6uKy4EwCN zeu_~Q#uEdcwtymEf04Z@KMv{?d}W`$*dOxU>{JR>fWgBn=}c?Y_0Fed~yCELgR zbWwOf&n_Q#t~hmY$-YiwG~Z_Z`skP#v@9bAGbUjx3roAVM9G&)lPf%l{`6_NJ0gl) zWojwpA?26#LrQffO@c?-Pz~P^8e!9ux=lTPSlOmLx2TD3bC_A%y>&AqvnM;W%y+;6^-Lpj}( z$pj24`5{9bvRr8z9bVqMdV)dI@7Fd3fh}6TEwkx%MQNwZ({GrnEaCdzC07z4dWcCa z;uUu{H?K*G)F~@;@N}9uWeOx+E~QJJR|Go~s5m=X4jecDUa_b2`EyTIxezP{O>Q)K zstB_fu#5E%B^u$yn4_!)8SU0>mQ|8$&|YvZ5Gtk%Pj~MTmj0lPD+B(SH0cTn0~x0x zik#e@TuMQjWNKFQ0%Ww{*fO=HC%Uf%Ys1eKXahw4`U}D}V_DG(3`#Fm2Rr`$82SF% z>(*8uz>l-`Qe)KBUyJ7)HZhYVsRLkm&AkM`O@LdPzwK~~*XOstgpG$vO-=T)Q}~lP z|MBAY$q@9t7`HI%HD6OqL^~W2v;1XHDPmK>Qoz(Hq%2}0!-DB%%Xf!2HgM2KqdAx*=afL zH`DR@f-l#gamn?8I>`W*YLbBni=j+$x@2Xwc;z6nwjCKW7t1u*_%U-Ye++OIYS54I z3!QjWzkYt>-yGb?^)}J%k&$`gS>>R;rOO2NiWs&pf{_#^{UkbZI!uIWq%D6oByNOz zAK1#!7gNuj`QpC!(INd+_l4-Nv+EQYFCXeO8+9euCCUe_50cO%@Is zjkVcc`QXrqvHQjjbmp(ZgqJx8jo%t)!4L?m1qB5_`=`DC(U!vcs{BdW{f=2C3h8w| zV&{1f6@Ewsm_{GG3O~Hgb2HYND^~*a*jwka=ppy@Daqe8D@nUayUA33j4{bNa zvlvDiqpZehc~{gz>6+BTJ@sNZasdtvwtYT3HxU3N+QM8}gux^fsgK!9Gsd1e;=xFI z3M?VMn7|O-?gM=Ym+uMD78>3vsgswceM3p3a=ew4n7&DJA5~*Z(}iK!3E!`Fm}P;E z4vbbvGYM%oy?Dk&Isv?`#_j2q4a;%fL_<2df`KL1RWFHYY1PYflRpN^+OjIkH4;+A z7d>?-SnKhY@PJ0!mw4q8+j`MYmZ~0>NJ0W9;|}HWW-$ByHx+G?OV#NM82i{cl@QOZ zsR?)bZa`jY>fG}W(4d;cb-5(%@n?*z6m!=&%Ny>O;R-=g1v%o$VTkFS3oRS(bCgk> z@UW9MIj1~7wS(2vIFBmw{(^Z(KH5-30BTH=WXLCwaQVl2VW6FDao*_n=R`x}m$z2y zf_8>iJU3R99t#e*^=0&`!)3!mN+|+|zYpPqL9!N)CRM(OD4azYAz{F^?MmP@CfUCi5kOksyrBk8=cVwwv31w}WO z6JM$v=DKzHx+wa?p35-!#?~E;YeZqb%go>bVRV#Q&uYKX7IG!oW$X%Nh4{ z`xK@@4l~yr8XtFkE^za)_4z%2QY3NWK#gUVGCFcfb^m!&y7pFt8|U5nsO$KUkg;!} zwiE|T-|jZ}ZY*{jVv)lX_D9T3jQcutMUB-T>2tH?vR8VJ<0q!fW2=XhikaBaY3d$5 z_DJ$Y0;ai05RwY@nC=i`+2X|lqZL^gz=Q)`Ymp4rk~o^eyX~B!hLk?%{c;vluUIcy zMB@W(9z1uoZlit|qg_Sr3IUkx3MT89kFamUX9cS{D!#VqIX{2N{dUIVI9LK21luun zb8*>K>7wOmW7&C1H|Yd09xC+LQrPb~Ns;iturf#>Sra5x?%%%MrMnb#_yjrxrffOL~W<7AEvGJK(f#ew(GwbHCY6l4OTSH^sn8ZL zk`s>Hbn4W~CQo7nd}#O?t--79I9j#>$voQ2?c4SDo5Nl}oziKM8<=Cv&@DsSGpc;f zuyp1?u_p5|=Ej13%htY@lh(dYn=PHWw^Wt-lVkk!IEYIBX-AgVy#3nVzBS$|TX9!e zC;V8x@*mq}7p|nF2#E)zx`)pK$nWGC^B-T?bNH9XGe4Fs85KxfKebcBFiNd5{4=Ff zk_xRC^5+K#q2LD0I>5?eZaMz>Q7u%i6X8E|cRXJ+jxuhPcFewo7Obw$RdnKS(!j7JB!l6NC;>IexM&I z3E2c_zq^DNz@>pF16_R1mJiQu@;`>dTf$IfshV2JsdG!^r}il@Ifx#M@Zm?A#v;+- zYe$By(2H6@fF#*Yla3RRws^6=j?O9T^9`ptZ7N;Zh4UQpA$#U8usq)5PngEW_Y)=k z3QktMqpUBAlpK?vYBWv#)$vTE8ZMOz2WQ<^mRlzibP!Jw*xIP}aJ`c{U`He;pAGn% zsn*09p+kB}Y^)nS#0(x0Z`Iepu@m2-%}otZ_{Vs*rw^c^vWU8xli<({jzr#t`Ds!f zE!(@UTZ(Fit zhAXaDJ3;^cel_#5lUz$lL$Pn&w|{>gW5~<(e%m*0#G04!K6nO{=kpJW+fQJsgoG$R z->>Qf(K#a(`;b^)_|`iOr!WaA&6L~f7jBtIGG)gRnV)X@bceAvBg3%Z#HrLi`}~gf z8wX`Hbrj7c;vrl=VK`Zc@d_rkD5}qfe{T0-#C87s>;fWl35g=Y3&nM(8~o0qF2hDW z-AR$gNh?#taWm!79g>3Kmh?LsXdc7?8adX1K2|KiNcB+R^x2Wao2NNjD~pu%m*W1! z9XR2bZ|@YvzsN|cQ>YhFb)DjZBNjaDQCp`#mI+GK-z2M2ds@b%QCSd>FH|4Y%bY6- zY?xq0N!4SO|1BE_lkdY8`kL60qZRw$(`@kT^SzV5T2~3CKI4GXiq?{{H9xY z;|Ug0bhM4&RvrgYG78dYEXw?t+9u!6+UAe&nx17~)UK~1@iqzU0e1qUeWefE-A>GUMuuni1051Y zu33kNB-3G?ZP57M@?{&IP^3^$+W0KF0&ui2K z_>NYCb07LccKlc!iJf*g2Z%%QdJJ!lVUc|b){+buTD+h$kM616M|u3N_v24i?c7Iw z#?>4%m)ntg@m&{YrwBOSdZUxK9XQJWTKKyTm4nQ5ZP}d$m z16!R9PW}|6WEQY_??9^#9n*B z+IDrFh5q#ISHZ#u&kl+aCdMPf7Gb^H`xoqTFk*fWU89P4wuHidm&;GOix~q}S}7_j z50=~(iS=+!gpU%!u7&Dmk3ZC>4_Z|5)9UaocFf4IJ@$(@7FpuUFF^M={ojt6%IhT^ z38(r8#-{qoC8VmB6x7b?xu(+6&aMpqzQsN3fv}rACNU#FS+)E5EjXh#*4BrOy{@>6 zMknqaW3^l*D9EIN9XwU3N(gR}nD}8!2acICdra}${x3xq)I37t;!VU#IJBr9!c`T) z12Zq?#Y5HYE&3eZ>~ZeXBp(G1S`wKRDP5R@!&30}mJ@%-V3c}Lz)_AKRbUP`tOV%4 zzKsY+DCSZ*WkJ<}vkE3_NoXe@G;trsh(A7S(?b zp(Zzgs4jr{aolziEEM}(fB#-c8vbwp;4J$wVP)uHr+^k?Uc(3J86kB$clokqs)~I! zZ`uSc!gZ?tgNf&dZ<6lMG>Z&0dRkZ(PeBtu_Vy~)?6G3+!Pb8*HRXyj3i9$|Vxj4C zrFN>@8QU|1Dt%7u<;o+pOBiRLJ14aS4QWzUGfv*Hp4i-qeNf|2TZ^IUxX?*1z zNH0n3>7qqULrcbhx|c|H%UkOIV5+xACqspnS%e~j`3F(tRD@E&opQihKr7sC-XzUF z(|7V1kt72siX?`egyy;@!6-j<>J&vqUCt&iyM_ z9K647VX4t?JVZ{mSFA#W2z3bxoXKiu=LQJ#v@?QEe(8auhV5nZV*kB@W*VriG3FaE zAS7;VsHhPUmWUez#v>rjtdR`FxIK-|DBjBH-+8C+u%I{T4N=R)qY4Re?`_6X;(;b{ zjL9*dV7RNbC!aTPKhz2ggCR?u$vx4m)5u~Jyk?(al*bWyw zXJ_&#m(~pwb>e~98RV3Wi>`nZfMJnmwv&<0ls100g*)U1Zm&CN7!tBl3Rs;dfL_TJ(pq}iw*f*Sfvp>L(ejgr`>^tH!m;2+7M%J z+!%Jtoq9F@f^7$`Xj5dRFinTETciMfA$gP=B+&KdZ*R0Mc4zwXz_PrhSXT<+RsDHKno1rwAO zFIo|1VIpxl8wOKse{nI?vMmFpQU|x&lfqLJRKvfyhkk>Qj@0L+egER(S^?ePZ@CJD z3*!>?B^H<>z6*^HGUJh9#%EoUK93%&&LtXasfLW0seHSSpTWsdlH4Ug%OsY$WHOD0 zOZ~F)7=|y{6SwLzrSr_DQxvG1nl(+`97gMxHF!Ksb|5 z^BFLfaUR2$xav0(*FE-P3m|(h{6!S4jQAbErOiH%sDV4G{eRiW`*seqva(VtHWe(8Nr*RjP&+B&C0tb*&;uP?t4b!YXF@+K~?urkQy zL-oDg@T0|SGS8!d!AJDbqp&7-U74D_;q^r$W%zuQ;mw~=GZ6o_W>T=pg?$72ssurO z#70AJ>&F!a_&0uG%=y_g*1MPH(i4_DtaEwJ;MG{iizIzeqXfx3J2>q)N03*G6;-yG zS@6A<+5-OqI0M-mR}tdLd-&!SsLb84AZg*WY2Ee}?w%_66yJW08PZF}t3Ny)yHL}+EEv$asF@f` zTP7_OSl!z47i~4Q37gnqBUd|VZ%Fpl_+X+@&t_)cd+R-Pvga8~H4Y(^S`i=0RsiQ? z5Ac516~t@!j-pMQIQ!q(dGHUA3+sIwkoNf4eq!bFqB99{6s)aFBp;AFdlh*R_Cv@nJ3#0zHO_)8zAy)9pdNVPSFNk!U%*=dFZa{;d3o4 znB@Z@*Vb0N_z)}g^vxGmJFW+8tiz`h-RoU42?7K%Y&tyjwPq)UD6;RU&N2pi_F5(x z3^cV@r`l>he(QZhzBpva7dZ)|71;3$n(7A+9IkG;>jDqPm~%V|KVC*0H_)^`W6IBjLupplgXT{TIbP^;xx)xj^(aBn!gpZpz-pk;rs)>!>swk- zN_4H>?pY21GBy$txbZ2uOMh6d3d0Fvt`aN)lba9N8NlNv7|%p4tZc_We>_(w#b2p& z&xqcD(9F)JjVdFuoV`f}v|)a?`Eh>J8Z2lNAc>o3q`N5RX?I$JTd83+G%VU;DG$Rn zOHZ+n{6S8QMd|}&$6Idh8chf}K#tSC;@x`P|AJZ5q&1B+Jkp9xSC@m0Skj>Ut2;{@smzzF;?;ph%A(NgMfp(*E48dL zf*OlO{n+i$01;VN_g6Rrtcdq;g9jeF!v)7jXgIVk%)CTRom>#JILjk9CcW3`y}Ja* zJ|}G-+cbm!{UG}eP9P}o17nAVj`mN26t$1cX^%-AxQ!pJe2Jbl!>m`MCHsg!^Jq*Ap+(SFT<= zG^CX44Cf}qoO#J_Z8$zBDVoE19mg0Q)3NNCH%GhnHO`neL9=j$4h(xQy}E1HuF(rI zzD1>Csbyhu8Uf2820t*L>wW_EMIr35F%07WM(r}g%gQ7UHEqR=V5#DK#;kM;< z`aiDM(b#E~q*?#byB|!5$B(5xGPc9VHg9QPm5p~R@~%AkC6PZJSmD$uDmV;ld-d)e zV61Viv_a#z#YkU+lbF)rJr3!JW-I@XIs0L3`qMn0y34x^+kwe z!1(~x7f5Gz_)U28>Uftf{f%at8ZZ2VyA92&XZDCv+xrULcbw}d8HnVVcAmPD0JIi+ zFhr{Ow6rSMEbQ?f8O-QyyQ`|XfRqQ04@rSu^5_vV+lVju69DV9wMF~Qoo`HxEDs)7 z|9sgp*}IXmtBy|b1kyx@P5VhbG0TVvL{4_@yR)uOlrXg)pzygulRS%KWEtY^MDWEhabk}a9 zeiZ%XUS&%lW;GR=LXBa&j&;ZpPd!83Ldghf;|L#`(OhJN4QX zU#&T^a#~sy>Q;Jv0xBqqn91<$b8-|EbadqRVMGRh4XKAn{K5F6IUMqM8vC)tN)iQV zYEkXYaT7K6X4bs&{^A@u^l#%8VSE4v znLu@7IxQpx#{HfuE0u?f8{|}iCC_=OTwHLsbWq0b_bo_gdj?MOdWB+yA<@Jwvksjs zo(H%aEOT&LkR@siVtW|Ej(T#I^O(%2+LBjH(puJ`)u#Mrs?9o)T^?W_WU5kIsj^XO z;s)0zE>Ymsx2p%)O9YoV>%|yMp3KrhfOg&xog>i z*q1%Zw(Gj3Y}q;pUmFZEJOXRn9=3ShU43!Ol({)Ag&)BJwDLapt7yMzlh6Ga@#V<4 zs0;)lYjr7Wj(SY$HQzf(3ZVgl`{)9qAjRDI-%K&8n;P`@7}xt$5aiea!R3_lgl^-^XUmp7SEG95(^SU z;`8CuE?NZKR;ZngTykfTt)}^yic_wduf;8<$xcRi;yHOn?Sg_^+E`QwsCfa37ykP5 z`c9n}%St<;iQ@VOg1Cc^5ft*J?R;0h6Vzxm)ngBU|BtTY|F=7Oyt zC<|d+`rD=5Wx0*lkw=5Yv<8WCco+2xH6^*_){K%ria+-VAs0fw| zWh=zO#%vipa^nH8j+#{`gQb5G1^@N)=j4jf%e9;O=!)Tj)acu7+vJ^@YW8=>1u8hO zi97i}FF$QPn+s#IF_GD%mzQipb;{!Dmu&N-{+6sO2iop1iF=f_)`kM&#ED&#Z!hoR znscXV^M%9S{pmNkoB-M4@#GT&l(CgiSC0Go7g5FnIHikrrOdmwcDAcqHn-{QkArab_~t z)T9P~1A8a`tav$DQ` z)=KX;{vAGwA`3_+#A(;wMuZq z{A?r0T!i_}h6T{@Vp-cHG6?9tw)$pw>kQ|T zT{v%Xr2l$f(zj*l31|yU7B;mg>9^M;wN_OZH*3_wCo;smvg4X<#L9V7zuX6_R(}^~ z?dVtlG%|gtukJd>Jk3mKn?OHzT~>|Oxc4H<&@L+cm){64yMUE;5nqieGLqBM+GsKC z%Dzed(MHq^_Zk0&sQ z-Y0qZe$PkrM^Jq3PXCXe6LP>J#$*Q$v|e&Jwf>LZpE($7*89TsY%$Bwd;%iQ51N-g z+kyrigP)SVh8SK?C4RAf&+U?dkw^ay^@7VH3(fWaJ*qs2}LE(%)0#9;$@9i|+8+IK{oq>IZae zgknT$@p9M_bdGDh{0OTgFefUC(BQITN#0M21;&Wa!8P*?%Ri0KxK^Ml@}w5Tfg12Va!nBxDKWsCCRsE*Mv=?1UA63Tc}=_ zug#dsA#WR7egB%r+w-;G__tmV*s`dYHOt{u5hWR3zqn5jIgeH>>l2^vjJbXgC!!{bng^Trx6g;`Hl?H@Qs_*Ka=6&t&@g^dU^yV zMZasZJ8I3*k7>fJcqsaxJ65b-{pv)_f`jIh8O0D5NoUZUM zIN{m0Z^S9_gHKv;?(lS{w>hK4G-@(dmfya88_X_$+0?fe!irDXrzDJc&wB3tjT?Z~ z==jm_DPmWQ9g$z@P5#p!6Fs%8Q@7~?&QCF8oFzndZ@jC{1Ye`sp5+)(U0PR6V7za6^~xk-0wYAF&^UYlC4jNHsJwK=zBAU}(8ONa{B9cvT=A>6_a4 zQD93T^U&_SVaDL%M*cJ_ne&8Lao!~9%enSFwnkEUK=sGk4-=Rxt&92oOoe$4#E@E_ zkH3v6-&WAdzC#U;o7;EMNJiZ=i&TdMCQ3Z%grs-vjo*xf7qfk8dWPoWB};_%n?sbb zg^+Q{yBj|q_TNR0x!!{(D6-{XrViD5`hZxetw;Mzq|0L?+;0MkxugoP{9runiqkte4L#Ph$&x6z1>mi+Z#> zrFWb|)3lmD)7naS!mGBndHQdYUl)n_>kG%m(Vofvq0okWiSHE{p2v^Zvi_UOBUyI- z2!$?|AKdfyeVYoKqo3`!vsiD#N3&56@1e9M7XPQW>oEbd`FUkW_%Qy&Imfr%o(V35 z&@I|A)}9r=%u>Hg@))rU6i8=#kxp-t(R%& z(j~}4;{W^xZesu6Kl6Wo>;FES|GOqSx6A+Ew!*I-Z{JDnmp)%JtP5W=&E}e>nm7gi EFQ;BR5C8xG literal 0 HcmV?d00001 diff --git a/tests/ref_imgs/draw/render/l8/demo_render_line_opa_128.png b/tests/ref_imgs/draw/render/l8/demo_render_line_opa_128.png new file mode 100644 index 0000000000000000000000000000000000000000..08128b318d73e030fc39626191ee35c439732911 GIT binary patch literal 10897 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 literal 0 HcmV?d00001 diff --git a/tests/ref_imgs/draw/render/l8/demo_render_text_opa_128.png b/tests/ref_imgs/draw/render/l8/demo_render_text_opa_128.png new file mode 100644 index 0000000000000000000000000000000000000000..df8185de971b6eb7ab5f7c8f51137f10e308f0f3 GIT binary patch literal 16180 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%0DK#QmG`qu{TSHgJ@}8LZCCuLBm(lw7{E5v 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 literal 0 HcmV?d00001 diff --git a/tests/ref_imgs/draw/render/l8/demo_render_text_opa_255.png b/tests/ref_imgs/draw/render/l8/demo_render_text_opa_255.png new file mode 100644 index 0000000000000000000000000000000000000000..afb77ba1ffa91371333605d28042bb009105ee0a GIT binary patch literal 16261 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 Bl~(`& literal 0 HcmV?d00001 diff --git a/tests/ref_imgs/draw/render/l8/demo_render_triangle_opa_128.png b/tests/ref_imgs/draw/render/l8/demo_render_triangle_opa_128.png new file mode 100644 index 0000000000000000000000000000000000000000..370584f1970459e932acf3c7ea66c943fc708c1d GIT binary patch literal 13550 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 P3IyqC8{NWc*+l(6ag1OF literal 0 HcmV?d00001 diff --git a/tests/ref_imgs/draw/render/l8/demo_render_triangle_opa_255.png b/tests/ref_imgs/draw/render/l8/demo_render_triangle_opa_255.png new file mode 100644 index 0000000000000000000000000000000000000000..f4fe746af443b9cdacc9223b7e0d354e26f4c421 GIT binary patch literal 18186 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 literal 0 HcmV?d00001 diff --git a/tests/ref_imgs/draw/render/rgb565/demo_render_image_recolor_2_opa_255.png b/tests/ref_imgs/draw/render/rgb565/demo_render_image_recolor_2_opa_255.png new file mode 100644 index 0000000000000000000000000000000000000000..bba0a89f96d2ecfb9432e72a7be38c7fb2485a81 GIT binary patch literal 13042 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 PeFg&^Q|L& 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 literal 0 HcmV?d00001 diff --git a/tests/ref_imgs/draw/render/rgb888/demo_render_image_normal_2_opa_255.png b/tests/ref_imgs/draw/render/rgb888/demo_render_image_normal_2_opa_255.png new file mode 100644 index 0000000000000000000000000000000000000000..28863049b68e15c502e2ec3271bf8586523f7251 GIT binary patch literal 15680 zcmeHu`8(A8_rLCnHn~fd6k3E3WslHGvSpV&`#!SoQ>j!!kz~Im#2EY7ciFe3F&K<} zAN!1D%=jMn`?|h=#OJzSKXkdqn0dX<^PIn?iK&Rj#x7Fm2M!+PeL;8kal!My zZy#pKlq@2DV?mCP)9mmllDECTk^i+3e1?M}Q;$`EicBp^HzBT>SXz@5qn0 z$$^oo#jzc06w9R;Zi16)B;VgF>oinXLc+T1qZU5fE?=&JBssmKbl2CN20c(pbmj$< zC4O*Mblx0OXs+5Kd}+@mWi4lCXMg{SkDPBpLMkdMR3eMKmp!KD8kpiYm-SV9yE0mv z!oHyNbF*}^`uh5)l+EU*Cir=GcXx7fvbeZ-XJ_a0=g;51T~dx@6*6#L?9U$^HAf(p zCz>NfOv?Y5U;i8(otB=ir>i?h+JQf@Yz{9gFNZJVRtO3hsq_sG58vM2zIyfQwQJYH z!opfxTZ>IPlNI**^DPT)yVX@yH#Rmr+}$bjf}NZSHufAec_X2|If~%sO2hQazn%nA zi5m+;aErSEb7T&&=Vu>yH6!nrK1-eI)li@gbO-S|gq%Ei(tmR)EFvN~y>@LipNE$W zPjd3amTB3zEN95qlcB8GA39kb9Ubm7T{mTAW1^$ao_KRb<;!`6prPhwK56MKxS8Xu zLLYfDfBfLTawV<0y1J@L?&i&#A|e`TT8&LjTylQmqN2YW8>fE0V}?hNlas?@vG4<% zu<><{FqJPtH@z0WCMTPjn~$zeG&@(wcrPV5>kkhPcgt-WJ2=d@MjaqW_)aLccOz-; zXg$h^|FRm+_iVgY=I&|)@;nH!f-}cWx7g9Cd=RXgayC#IEzMYz|d{X|$XR0l_?#^Z$hg6huAWE@b=~XRp zp^GWIF*KKlk1urCR#mkFXNIgo5Q=thySZ*HiXgXDl$1hHC`T==-!BgvQFa2-CvIB| zyK7k5*w{RM`cy?l<-vo-&Ra#Qyiu)I@TlGL6sN$zNUE7MCsL~EQdH|{X67r(0#~oz z;0P;b3k(P_HZ~60NKGX#&m{SC5d4?rG#~IswXzBuZ|yAPhP-*BrexkaHQnF;9!_F( zbTlt7FFl6!W!$Z|eyAelT z2SlFc;-aC&;s5mP5e$0(k?%w=D8wwN!-?HDr;PtO5bVQFc9&okUY zZjEphy6Sa}B0d#^Aq|zeOV#A?C>I!_^-!K&2{*Zew#MGGFdq@pOfDF>EFdtCtD#|d zlrb0#qKc%aq@-kNX=${7;a`z^2L}aK{Nk|=*8~K1w!4wl{v}^kEE+oEuybQ$J->dr zk{1WoXSy@e(wzJM!7g|nIIv*5n9E3`l@swLY-i3qjP%&qu=n=f{PRbridGcWyLMLA zhED8PBDcZa%C$DZViitZU0p=w>Kh(qy@evO_98p%M|B1mvCvci``!o!;cG zcqxs@@BRJ#ySo9=k4Rmz%c>R%l+ESj@rUpk+&-f(ii(PY8JL!aD{xMdA+KLcNO(Ss zB%Im2^&$A4nGt@jh9*Jzm2$6GKm7d7aUzjA6=O#0Rlo?D(cY@F*?;tU+Msy(TG1CYBJYk1}waKkww=Fj(%1%FRV+Yey-j9zAiw$;oMPc2+uY z$K!6j8hgE!j-DR5{zC)ova&OxH`Ffy3_0Sg+8kMkDRZvink-;Y`>mPUWVicoE<=4cR7^yyb zhLh(%^31h-y38cMWv=r_f$@ZoYVSi{r8F%-pm^5{8XDahNqz!6Joi!9rluwubr~7) z?%i2-_Fr=z!NI{&PwAr8x%XDN`81L~w^})1%8QCTep56v(|6p5dwbWF6n1(FtlLkY zJ{=byudut)P*-$4Rj~^;jb6B8$vc|YH9*T=jRjVma0jX^w%v<8ITL8({h2+ov5~URP~q*q$hH# zfqQaIiV#F0(rD4F?W(@Kf(i=A*2pUqGBJMX;1yn82#}EwD*}N)VdK7hAp_JsP*h|+ zbLRW^@2Zw=jFqaz}^4>H}#a~cqpk}7HD@^@MqDoaU8QP`?uf))vp z=klAq82u<3;3_imn^xwxZ{M6u+#J=Y`OQ&$8q+f~M(Do0yz6*U-n*odb8eo_4lXW9 zVlz!8C-ijougR$?Vt;;W>V%*fK_xuA%7Vd?k1r#~q{0h}!x3ED;qxFd05RbrlMj}- zcF@@r$Rgw3gq^!qRaFJiyG-EV;211(pE0AY#V9XI!fD*q77jyfuT7K5UeKu_<%xtE z1wp~~E)nB0x3roXq{F1FEJ6b=+W z)6>&KAaaSP81iWgH4a3AkNIc=l8Qqnj-P@Xju9~%0jLBZRE~t`(I_?EtY_Z(3g`(- zeTgQvbap1r@})pB9%mCC%6l3d(rl3^{L8`fZ&5DU=$Jj5nXW`;YL@T%G;oT;hYk&S z6U1apKCavlQ#*&j>s9p#61GA znj1uVXgeb-pxf=iv@Z~3kMS7 zFPpMQ^|NVdh^lmYX&xaSFTJ^HwiU2 zo3k=AKk;OyrCIkcKp5I%G|UyIrltr1>zyq)XPhUGaydC=26B+){n>mU%}0;g43No0 zeQj+^*$_$i1Ci>jwlkad6N|V0<|M9&?5)iJUsZQu@+U9aJ37h+?i8tK7}W$-sk8Yr zC(XPKjf&V^uu>=-aH_cBNFm!{b|Ou=6?&8I9B^G%n~*cOawSAeG^oS@D|YHss2Ye``H{45#ypKv00@3Rpc~L7?U&R?I^K zoQ%>K#1lwsS!Jtz-%P3leCK|rN$r*5R363E3Z*i;5rgZEme!`)>o>2iRHl8GhR#}2 zTIwSpd(&<5A*7zE>4*`cDorn$w3?|UKzR`6`hA}XySp124(fQh&Hu>+RD?s+kl+4Z zOrDtI5_=wt;5aBKB(%!C=TlO)UBIK<*%`CGCeL_WC84@uIQ;XYdm0*3a7;N!&0O5x z98gILVQ-|r|Ldnur&w91XKa^Ge1x9lL&V@ld}pTIXJ}@&Gkx~#YhSHI2jHxbjtKVT z^Z_&5GqI|?0mRWwUTnr&$3^<5ul835QlO|&A3uJ)tQ7vXO7wF~Oi55xEw%Ih*|TRCaJkFN+(Di{ z9WbCT0QKEBmxh^#XQT^r)gC^4sPA4FCQX(%WtM72&56G!lZqMd9aOQiv24}@bF7#O&3`CONkrNkquGlAAPIVEh!J32Vf z))n@&)3oHEm3tG2e!bNU2RitB*$r~5%iC~L0qfI*?VUFz#d^yl)HPIY&Q9`P*{Y5P z;k2-Dd4&8eZ)J4|Y%rK6+B7O~KWHY#(owzr?Fe|@|=QI;>JU0X{F zP>5%ampU;rFi>XG8Q0aN9$dFldywe_BcpO;k$o?3aNXa~S5BR}AuV0%vueS_#8hTX z+vwFmZcoKzW@Z8?vP!?fIO2{C;XD2e3=9n2+EsUWeRphXDy_$^$dJfGzB*ay>nkB4 zfnj4|d4lfy`SU(>HsEK#Ga1iGR<1Uk0}#+2@Ksk2&&^$y0yvnAat>w7?U{Rdg8l$9 z-^AF1fr)EzVd40R6L6~H@tx-+o!-8E`y+S%+FMWFyOmOPHM&hLUNVq8V0-Z3!APF7 zVNIY@7GJZOe%+BiFchA?aJfDqK@N?U5UI@LlMjlnLEaD8%_8FWMg|R|q6%%}!hP_c z+K)G70d7M>hc=#LTxKyNkpuyPNNxhlRaa9ZZEO@72tm3RcFMZCOUuY4$p@AL=c}pN z+nDQxBqS1v8S06E8qhQa1q4Jn!dO^X($dmE{RRaEJ$v?yk&)4&*_9fG_ZCoU)=d9` zF+|_Hch3PM!_RMbnv$^Nt1ZB&II+#lr#?9|g9C-2r|0G61)0ao#|MYz4d0zxMIJQq z9+rr{7XXh75)>p#Uv;3YiAiW>6^iA3rp8cma!icAmX_OeM{HYL8#I2><|h2L6r|}~ z20(kS#=*aMuTzvQEXKX7*Aqz#xaP)2<;cm|S)cKrN8xy`GM%nP?3?4Z zSw*xkDqT=zTA<0hr9Pya9-7#BaJ80+>gLqjF{=)t~Wx!Cm2 zJgvBriz3UFM5MQe$9Wl#hnYHxN=lm>8?Qn_{QdnI4jno~PcJDUF;ED|T?*kMc;ZY@ zdT1H9$+sKGB`4I63wh5GSD(JnHQq&1Q_GwNyuFqJrm_0^)>gY+-6EA~X*;PArhN{> zG1n;JKQ0g2C!nMqFn;ehi_{J6?TbOnFfy7H*=Ys@?7m~>%Tepe)I+6y`v%F^m6TX} zFGePDX|gqHAB%`YFmeJndX!3Bh7GkuTUlQ7)fKB^oWJnmE9WD5Al;NB|KRbC6dhDn zmc#bi6o4g$`Y9?ZYIBLRI&VoQ`$?hAUA(Nc^v}jdNDC=R$)@IJ92g~xjGc+H@O=GX zSK#p#(4s&X>!EbPrr6$wyak^1JtKqrrrUkA9v=^nm9;fEBIRXe*0#2}PYM+?dQHkb z?6Fz8z|9=(?PDbzzo2g(;_$rbsvJ2!G2su8C>2Y)-;KY{p%yU^aD|U=W{1tl(6FGe zF!<$5Fb)1Xco5uyYRd4k%TTFirVcnxT+lFfLTvfwSH>CuX-*zJx=Nzj^?ZA9@Zht+ zz!7GGnyxc(PofdkY9+wW|7(GC=gu8Nba8rmIvU;C6`1z@dk4tfl*e0JTm3nrS=jmI zz-513T`>zUCOWC)ueI|F3w|Ul7FV;@te{8TM4AO{4%@=XrRV0Vpgbc&D*!dUU!8Zk z`zB==+i0m`S$+J=*ts~lih>_Ms-g6GcqZXR z^2*9XH8pg0c9Gh-)gkw8K&3Zt=qWSqC1tdXMmUJ9top+d{>G61gXLt4R02N3dd{III>m(Vkn$E!Gb6Yq@ zCGtDg0d7r|mjXshMS1yt_f?JrQdaDYw-JpMVr|bwQWt=(ml-dC8lIiCyUs4ZH5&Z< zIo;R`7FJd-=eV4O=;-KcX4L_}VYng7?r-|SE$}7p&L}grHfKz&j3s=k6Tg1_v99ja z`1l$LXC`7)EF>wZm-3iDx{b12Qv>o>P|)%H`gh|hKM4_$WjHybVyB}=zUKBG<_Ht^ z3L-8JL=ys{#MV6V%Qw~4)xkgm_vXBw`Gl*N7kOWIX<_m%GDH^^0?l)=vtuU>|N8X{+R70oA*E&z zGJbf8r1J7|fOL5A(BZ?*_+lauSV(IWcAm6jwmZ%iC4b+;VsMhKBLY$%HO1mi4XG3BRf!I0=rh^o$JK)$vB?F!aGs-;3F> z?Au61;IX!}v;Z7292&x7S$rB;e(7e>1ogYZCHR7@tiG%AI@;NN{dLJOF)`6B5E31w zKjl_tnrl|&M@m=I7@l0dLnqdTPHqk;4-<=`pmM7X&CC?KDtd2pS5)}d#ft6iF?|P> zyYC@!ad82)u)BZ%zMb7{ZEY2T-mr}sl3m5(YCA!;b)172uWF%|b zl>n^~oThn)Pa4s@JUps)6i__K-3ji?X55~<-uR4!ecz3A&X{7nxYK-bk4T_(dg(e@ zq?U9WlpGpZauO62jQ=Um=QomL>Ef_cURk;OCV4YfHGO`5{@1U^NaP+E%^;EIJj%1O zT19kounx{@1RT!RXtxcA+oTX89Gq_5K#W|D5sBCox7NoIntZcvK#wRabO&#NStb@# zg|M(NO-950C%iIxle}(q+^Z)`&4P}>>O3TYvLobq$AkFrqS~OqpVbUc^r7#sj z8E#xV{WmA4-26ggW1}G&`idvC{te&tRr~OW2ygd7$EH^|-KR^-%AN>)0l)}T6l=77 zsGn=fdFs?DW@cs%4hR3KP*6iaeRkssyG{5C%LaN&yV==@+43?BSd1TZU%`2SGLMao zWu~@2(bw14)3c!{S%MKy-=Jm~!(97;gg%)auaO~pt1rq9gf<9Sz<8i4fd0^o!BpSi zS*jzHAj~{5l+Q{sPtj;JS+$FcogGfpj*@*%R8(t`-NMqcamkgwAkgZjmbv*qJ$4C0 z5-F{TQcBGS_%h0YWy>OTWRSGVk`iw)QNieA;0`d47jkd|uMzY?5V%P4t3R2K9zDtt z)t9<2I%5rbQ^C!H(Lj~y-u6tghM!X;kMl_7_Ll&rzrJej+rhTs zqoZ#wD>WHEbm>i31C|ABGC7bO%cBhJ{o=)o;78#ryb<>HnZ&x~bB2{Z&;0#g<(<-a zmAI*6FCIsu1$ldWSD7x4TP$B|^(t7`YIAnZuE>V!Z?x!HAVF15b{XBiZKSK~37;W% zPVmfoxShg*q2b~EET2pJ$GO6=CWzV=Ey#Aw@O$svEjc+U5Q%{lvPz6_>(m;g0>yz4qaE*+MUM&2g|S= zWW9l!HIGM+9(j0xl$LcJtz|O{xY5&K((NQ^B=qI$S9So+r6qZ&?D266Jn4GjKma%y z8OcF|PF_E-X$`~8{o&_0_KACHF?BqQU}xq0FF+1Isk-`|bY zJLR`%B%Of%n5clHwRk53wZlh*Eg&o%?Cr1e^XGL6Cw~511Vn9B&FlF1=~H+`1tty&`=4EPVi}X^$$*b9S=~KGV}4-!bFrTiuZ-N0M`an47zCi&+EL; zMy9*DIoR2Kc2}D%Ei7D0S6?1J4igDGj3Io)OfpiwOm;O_UsLnbzg7*rj6$LIy&)h{ z{wgReZInSl+TG?ea)8UnoFAxq_HrG7>4HZ&&=L)67kIkjvnNoz)G4|poNT2Qv?J!ZU*->hO&XJiRVgby=oH<2Sj5#y6oA`9D5B@nf9p(k*M+6 z*;0sA2$!GT-3E5YN3Y@Upv}+E%cN8dsBTok%;*GtgWTrO1iaC{H~sr}9^0848AXi8 zkE>{ClmrG03=hlosqHXp0ah67Ut3`A)R6j&02PWQoWY^x_M1&9Dq6;1824g2354w4 zxzCTR&CSgn9I{k-D`@mec-ub6EbyD-Hhv@pthHLVOAgil+hP*;5OrH(Wf6NhAtB8z zxTwg;Vgx~cZq>sZrJk@-vqwWd^T-|oa}62`ASxQSAYxp4UC$LD5DfC19ASL6LaN_f zTFj$I0lacqna7VD$+MlBh6|(wSTq1hggx3O5GF{wqt1wK)g?gU;@F|8%E}Llsc@(P z0Rc~*#Dc%NI8X?l8UVNihZirNiiwoGqZwjnxbwUG_(2HL2H%rFECTz`5725;h^MD+HQ zn5bx1a`MktYjjJh1#Rxk#lbtzUyfT3uqd_Gsl!8$xDgz zq?(^UliFj}fzU#`ZrXO8p;4BBgd!KvB_}y$#OLXgl9HAy-7AZ|MD<1PKPkz{{qf@= zm>2Z)tZZ!ENpkqQx|GVwThQ*HXkcCnatjz1N7!^u#gZud2|W}BSOK9rusueEo1I-6 zN!taeYHw>Ruc*LfKZ%Nto*Emw0gwXTX=vm4;^HoNRkSyScJj2XiBPs0m%XptLH$F2 z{@kQVhKD~=j;yStZ4M0Ehngpma(wNY4jZ@z;= zt2`audCLAS0M+*X{h#5Sve|uQmupVlk~0eDq9%jS^y0;f+1Xhbpu+=CP3eMXG(1cM zn~9aR7;ZevK_vsEzf#_qe@1n4SIjgsJW>bqp-vZ+kh;|sOe_gCJ+xz>sQ+t=wKtUQ* zA<+3)+oWxXku;6{{rmTuXy?8J$2Oa_w@zdyR{Q8>YoszbkBDG%HUB3!U85pF@@vurAyGY zfl$SFY75nXd@!P%JNZ0z8s^_;UF;sxu=*S#xj*$yj|Q%HN`;ste3kWf0r09b_W@*S z8oUQpt{ZKF<4VVZRo`j_xl12>2dxJ-fB{-B`VkgveWMpSpe!Xtf?>`f5Dm@^Fl(F* ztE;PP-teW%G3`)T&L!(ijEvw%fzAfMsDHg>Y?AeTSrs^H;8QThw<_~Sm6ercVjWU@ z0Jo&)E5M}yFM-2TU6b;!tpU>q%mW)?(@LM!@dseI+1k#)=m=(npd9d>%ONK@0VR}` zl>x*QQ+o&m?758%BG3doC_VMbn6r$FjEIKB zK0kKsSW{g4jhi>OGc%GLoD+8q-M(#*$smKkv)SI-N>D%sO_m3(Pj|`!nz8+BDgL_}QN1AYsP1R!W+WW*5dWo~`}bTX)p@-cQTEiIS&x3$n0Dl z0l;Id1LurMqPo<)Ku_fGOlRW*ea&ZXlZJ9Ki8&zZzJ0TRSqZRQ7(&5HhChLl^e7Fw zJk%|iaHr)R_pSp42TamUcN_3>!IlGAmzsL{!Uc2i zN1-bIzY$xs{tH+s@D{;qoXaoh=?HhdX>tZ7i9dga*Vi}5Bz9r365udZR8Z;|xX(LI zH|(+LNBKNfDKx|#;NDTQ)Md!xZjGP2qkbN(Ow^Pb~z z=)JlRPrH&xS}1N)m>xz%M5t#_cGtU`vjjoTZfqdqjso&%X=p^qxgRR6s3<8ZX`gbF zEh&++`bS3~WY|?K3kItdO@6ZH7Bsbia|hR5@2Y?twoJU|-xVLD@BaAlFR<5}2NZL0 zW@TyX=!2BU{d$#p{Aav}J#iXAYs_TfetzQ8KQ9lD;nvRtn!EZfaHO2ja zwHd&?i1i%B)UylcM^-9*{Y#+Mq2c4j?rLagFfm2^`0)dXL8?-O7YGzkj~g39ft$m! zUW*T5W$4kP)6w;Udf8h&5kcVp;w;X}V_%nePe|7!@Bjqx@`C6+8@4C=?u~i|cqGLg z^I-WH2!RNc+#Zld{ys~RJ7TVQG0&#FK$K0Xxl`6Vs0cVV$RBZj{+8C(IVM;@fF^hD z++mR~w^#sJi(~nk+0LGQqN|&xmAN=n4d$n->o3qfNtuU$+WhaNnmI3BzRXD9AiWHZ zIviHB0>aRF`PXAzNT3${O!J@-;1HxHus&Gd+9cxt=fL;jaBS@CrC>ZljX)_0nFw4^ z1DT}CYkjYQpKwIa(bvl4F{ii$*6xI|Yhsh(3AZM3G$4 zDwu&aFl2#hua=x^xDR9e?`df!)r*pA=#`bY?CgY3xp;sMpnOnu*4d6fAT|QgSt%(` zCx33>c2`0aHdcLystf-b#lICaC<&{U*R{9rSnsYWd^XY47#bxbYumTy4KPgJ{azWc z?FRcbkmc?a=vFXEfY&wIW;uBk6bSpd^)fhEDUb@&P+%Ad-iZkbO)?=92_>_3?b%Pd zCRAVf%ZZ5Og1&|+I)OkK8402;YI}Nm!uSZL1u?=V^K*0gYEyfK$<)P^5U$AfsVErk zLd$XNyVWyrGa&r5lvHSPa)W{Q*6UZVAl@7BR0@?(fA{v{|DCrt8B*=3J0$3DR%QgB z(A#{rT9%s^6r+HE z!=H9oBV7B!3K{w5)vH%9pnAIf_4DWNAeGFjo#GvXz5}{Owd!bU-sr0D-tSvN=K~D` z=<;Hp=-+XrtgWoTE)f`07z`|w;9$&KRt3|u;NXURzZB7bjEM>1;!^BgT7uSOyAZ>Z ziNWY*>V&W7z&i|PTz8$aa=g$vNfS%*QoOuPy}j;}>#UNYtk<9l;uMh8rnxX0vXn!B za)u{^XhD(1irIpI0)hnwr}NzRXK$X#0h56$R@V9n?sF&x-?T^!)Q2}jMfGBQ`2%2w z<;*y8ew+i_ah7!J=8;i)n{mwFL*WUDi9odwrLoRCsFak8 zvL)W0p1K0ju%g($K(Fu{h#OTQ1z`rhR%-P~Z*S^j{w802cpkr#ka89l7Q57DBe5QH zSN?0Hl@){425w<54{;b|fK7HX{`5HHC#)7MEiWVN>`KQtR{^q$TX*Dc-O|f8(1cZv zp&_Sk0z*6;1*G@<{A&94mV%`owAFSJi3JiB92eO1`p4ONH9sAZ*GVG5@>5v3K(U&l zqM|N#_Tq6moa^D^7RInFu=|96UtEirR?d!(Yw7A*ca!1UB6)yN!Cq=Ww)4xEFCjAE zTEOsY`)Jsx z0xy5{tu6-KLub)gSjmE`xtzs`9q8ot`b)VI(kJfoK81gezAXp%(xU90NEH z4fO{eKQyFRc6sI`^VzdE=NBN7FkzUeL}_Izb_HX5dNj4PM7x|4E@N@BY%H%|ze#r< zEV74Uf$#prW8WDkF*Y{lS4D%VB78q=ERYu+;6-TfFxUlO5n4It%%`e_{rOu^(5KGM zR5R2$#|~%bc260!Vk!tK%i+c3q@*Px5u(&wF4qq196lb6Hl#2?ltM8_4yeA-bNujO z5xd}MB^pcAD+4YJ3m3@jfyt0q5G1gm3&UOP$OsKia(|7691souSz)*QxwG3=-kVme z`d;28uU>hyT5%$(x6=VvpsFw>UqsA;U`}0(!4QYa)@xrJObyyz4%(Epol&E2n3W1r zW9Ykd$i-|Z_^`R?&d&Mn_q}#4OQia-u3j7X9yz8}4l@DJh|-`v0uTX~f+KHv z%~oC&XdtW?p->q+cU=7|1|0(b4EQR8HiPwP@D-rS0g_)EvpD^ zKiI91ED+@>DHu zR3xZ(>w+>B6eI8^9O0{HCmgE(R9oWSk;8N^&csVn=k+2E)N0zKa^EVOCU=N+3mL4WzIb7@vM^ieE4BBP?&s(+R=PSvL-A|Z-i?jP zMaWINNXEnLu&uq_8IhKeaW1S0?iSR`{wCs|KmCOb(4!a*gTxEsm{GEG&(*RA4j9nG-Ei=EY0h}Ab~~Y%SN^t;->c!tpA^bUQ$@#BremY(^#~g}mpA1yr0T%6blwoqd5N%23@BPT7LyH{ z1Bl7Vlk1%}h77gNZ!(S?7~&C)&Cb^x8Oq*R`RMQS0}MgXu}x2o=BK4K;_-N^@)?_x zZi-`9?~alim0r=gWYK~`3T=mP$;G%3xU@Ajcbm>3V3>U#R>yXncd1nHKD4#9Q&W?{ z)z!Ux_<8H)Ji4L35)_l^2rBkJUad`BLy`8JQ!+Yh2M;x4-K!(kLJ7%n>#|jD>Sgl3ld$i2W*n!o&i%sh!4 literal 0 HcmV?d00001 diff --git a/tests/ref_imgs/draw/render/rgb888/demo_render_image_recolor_opa_128.png b/tests/ref_imgs/draw/render/rgb888/demo_render_image_recolor_1_opa_128.png similarity index 100% rename from tests/ref_imgs/draw/render/rgb888/demo_render_image_recolor_opa_128.png rename to tests/ref_imgs/draw/render/rgb888/demo_render_image_recolor_1_opa_128.png diff --git a/tests/ref_imgs/draw/render/rgb888/demo_render_image_recolor_opa_255.png b/tests/ref_imgs/draw/render/rgb888/demo_render_image_recolor_1_opa_255.png similarity index 100% rename from tests/ref_imgs/draw/render/rgb888/demo_render_image_recolor_opa_255.png rename to tests/ref_imgs/draw/render/rgb888/demo_render_image_recolor_1_opa_255.png diff --git a/tests/ref_imgs/draw/render/rgb888/demo_render_image_recolor_2_opa_128.png b/tests/ref_imgs/draw/render/rgb888/demo_render_image_recolor_2_opa_128.png new file mode 100644 index 0000000000000000000000000000000000000000..c9a8d0832d8c9b05e128e88501d245ea423a4fea GIT binary patch literal 13935 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 literal 0 HcmV?d00001 diff --git a/tests/ref_imgs/draw/render/xrgb8888/demo_render_image_normal_opa_128.png b/tests/ref_imgs/draw/render/xrgb8888/demo_render_image_normal_1_opa_128.png similarity index 100% rename from tests/ref_imgs/draw/render/xrgb8888/demo_render_image_normal_opa_128.png rename to tests/ref_imgs/draw/render/xrgb8888/demo_render_image_normal_1_opa_128.png diff --git a/tests/ref_imgs/draw/render/xrgb8888/demo_render_image_normal_opa_255.png b/tests/ref_imgs/draw/render/xrgb8888/demo_render_image_normal_1_opa_255.png similarity index 100% rename from tests/ref_imgs/draw/render/xrgb8888/demo_render_image_normal_opa_255.png rename to tests/ref_imgs/draw/render/xrgb8888/demo_render_image_normal_1_opa_255.png diff --git a/tests/ref_imgs/draw/render/xrgb8888/demo_render_image_normal_2_opa_128.png b/tests/ref_imgs/draw/render/xrgb8888/demo_render_image_normal_2_opa_128.png new file mode 100644 index 0000000000000000000000000000000000000000..d7aa7434480e8b7cc47f68638d1939f89efa282d GIT binary patch literal 14539 zcmeHu`#+QYAHNQFI?_QA;;w|`kVA9Gp@TzmRt`B#IpsL#VNP|s<(6L& zZb&O_#&^3To1wUAX*JjC-W&jNK+)SXidJ|@=CZWGL4+d2wz{u#!dCH&S*dN7j8QRl zV!{j091reyu(v-TD0scFyU*S`TqBn0Pe0QQ>z_HCBDd#gi$L_dbPct@wO=pm>HE=zy8lO*fNF z_R)9@K~7Cg-K%)n>JFmDhQ|a42YY$7js-{QzL}Vq@X=5(wN=P@-s)azTVaoCb;o$B z`9hGl-+l*AJ|g|WN$JX!D;Ff6aLDA|Nm@LZ`5~xfwisIc)+?w70j953B5Q z3@Ev;pea7cn`3xj9MxuKNL@7AMo;{zda4mAk~18_%41!AzO+E(JZl*kfMyc6|G{GUWlDSv{9aw?fB!aysHkXKf-Yj^>zavv zQJ#!%n7Y?iBna19JN9u8RNsyS?eVOGYUe0YdOv^uqh~6+WZ(WO+X{K*ig~jIPR8A= zmzL$%3)5vx8)_2PC-Ur3JXWOe@ekj;v8@-DIHa;`;jW@lpA#(dO1>ou3hPPXd!}d~ zpHr^&`ACjF4p)#&|CZ-gBYQG+s=M%t$WmgWLw7uK&+BVJ@t;nrW&PxD8tkl%8y9nh zcNc}TWC8=d{BQ*_gpByfK*iintAvds7PJ?;Wi+HLZAh*t_5vlld`-1Ml^u82o8!F-SnuEGa#N zhPHO}kb}WT{%{Pqu~k+Hnf!flu%N@UA%?$jzI%C%n|-nFiyzL?(lR|gUG`*(NrqGe zv7u)Qb$>SNU!9-%c$=5rxQ5kM(G<~hxn^c&aN_s?wmeV8!Nj=Rw}42)q>!em*N~pYA|6QS>y%V9w zj=Aa~i%-YJy}cfpYc+a{4JX=GxDes=nQ(iB({^?&SR}!vhA{^&>hvLvv8$nk*OZA| zua2o@G&)EU@d}ORygyH5!9-JyjBK{zo47e$U0oO7gqc8`qrEQi{_SYG`)7uf-borSlad9^vTRTCGR18tG$O(-OUBL)U)P(gpV8r|<8C$&-@MLg zRM*guOfgi*=>!=_h2fJTzZP`i0^q(d7_8j{+0{1Qo`Isz=3H@rKo&AyG|~c|O9va& zTPpLnj1rg-V|;F_`=R}N>3%pg=kvhU`+cJ?et*cD9cxK$N98%%W@f0f{St<#WX8il5fFqn4Fw^F|$Q{;Ocs<>>usI^c%l_ zXA9Lag~pU-3g786l}?bq2S7l-1+Ssmq+K$HEFT74yASC$(K;4&Y`^n}4RpVro}Ne|D_lp()b;`<_@8^) zlIa~C9dF;BN6`^upIfcv|6N`mM$FaHW?mRxpwVcu+1h7PTisQ&J0uV8f8i3^0RHO5 zH;*DBA_4;~vKsV@dIBJ3f=xl2wT_)RcQ1(@U5N37AiKP=9iB^*T}a%Zdh*3$`D2*0 znaqw7R+E8)Le8q5TF%`Z%0#j-c&RCWTzUDgDKzk4W>-reistw1ZuKC$CQ-sO4e=nB zaR%5o0!>YRxODKSTrNh=>W!k}{H|b-@BglVfNwM5Y3Wb{-icg4+$4DQhpy0KYJJ#L z_xkcwAcVQS$=9g1Q8=B}d^2zEA?>4{6en3aUY=50GgoM7Vk2Uj1v&&X$PIKL&|epu z1y$~f$(&5_#zxQeDUFR#pWa8AkXq7=$NQ?CB_t$DZKLDjEOgf5m{u`?Y?vCMZ}ZN3 z)hNXBWYY?tZ)IUIz)mcf%q=MvdM0&8A>vBT;PiG>@#i}@rwE-q7iIq18dGiryl(!J zC%j_m?IMHinUSrGT})gQ%C=*B+9ZJsdRd8+l2##^KTPCqb9PH9r?oat3mYPxP_5#ZvO@`toUkH;1ZC6SrKR2p zN*-$=|DMapedRn|sSF#=Y<+&$WU{a{LKj+2d+W;+ol}m}A9>nMW6v7r-%D=Eq)dPW zeJ7uE>-_P98b}KZ+TN!RaZZ^szOk{olIeGB`9JpA6B-jlDP#az@XR=F#rQw`z#w=` zbW~InKHogX2ZE$fD3;}6ex3Ogy}yjn8puCHAq#DON_ue{E61&d27g^yUS2*vAMBkM z*SiZHK{F3&?@#2p?aoOnD-W*^^LIjHx7e+%*Aq7J37Gn*DfG^4H`g`9WFTO2xhIl5 z&Dq`INEDtaM>(2nh#&K~3o4{Rc-y0P}3z43lm(*C#(qO8OGRiHrIYCVn4x`k*{GN|HM!s$N|;cI|^b zs=B(GF*mrf^0JIq_z96tCZCHhL@?O1ZC|Q{4UXza=6kD$_VxWEpcUON_JO>$L`&dv zb~r(?<5rhUpSO=>%FHAiY+=WVL+2$Q@0o)VSnE9Ah~?;e@R#kc96#7uJH%i_PITtj zRt$OILOeDCwHi+!w)io(MxhUJX&aI(4&BI$0F4)?+<}#J@mS^cG+3W$B zfo%`%^XJb1S4~b$X=;l0F$}OysafG0MLz{zKlhk#-pJVHw(qVRG%ZW-wEW3+E2r_@ zb|_QrkpxC21&1M%m(@PGC~InKKd83Xld{T46a}csUqc+{q?d0lo88gc`sEiyHb{uS zb^Elsy880+auA7^+cRY*bMn-w5bQu>W8)S(X!j=0>9WXSEEe1GZ-I=dbo|dQE}DETa5tGQ(BCDO#Sxl+m9b$z9M*U;lw!p0!dJqtUIlpRz#sjlblL>eeg_f zRBS*%m7}7)LJplyHy&S1omb2M269_RL*w6Yoe0-Rt)JDoUrjByw{fv#1xjuEIH(;m zvA%w7Yu%RMGV68VUl@p>RSwy}}@B@gW{lJ~s9!wKa6EkG;OW4(*1hs;cVfG~jUb zks#KPc}K0T+DR1MFDv|3&;k#kCzZjN<5`xgYis)+ZGzSZzhx~%k)TZ@BQU(+fenCH z6e)}v*O-l!nQ5PIuS!%pzkJyPw}`i(&++bh#f;jE48ZWHN<{r$?yUtR>lb{ixPLdR zf$GyV5U{kljp?8M@#6=ZiO;CtIG=A0T6k$`=@kdRefv(mTSZ|UXHyK{(ft4}x$*ly zbF7Mr%S|J03ORR6dv8vOC_E3{*-8R)BVMooN9j(In z9Y(@-2Gz$UtHeh`Uw>z{Xv=hQvP-&YcSl-^X5^;nAMb zFYPlDzIdkF=Ac~ux4t|#eXYBPVmz7(dJJ}B{VFxCUAtrowFr|A5nO?3`py?VTyeN2 zo(34!!>j!ah8!hSSD)Lo!`OAMxR20v))-6}`wWmAvLm3B=9}H|v9@-pSx{QCG)VyJ zCg&iCvOQs-&F9faMpTg(!O*0AbilWBH@BbOc=+g1^DAv;YA7Lmd9n)~&qJY5SK4~- z5Lr-#!Xe#q&;vsWF4gw_IK)*kM<|pU!Q$}sqL+TS+pyuAv$J|dJ&$pNjnE(>3$9c6 zIo11|*ZF?3x$JVtw>>)V!M6p4;f^a{^q}3E;_LGRO`3u%AD2QI__{jKv*~^SS%Vql zLz9gab5R;yVaNpo0VF%Q!Z97~M7|e<{0Z z_)iQJt)i@~@ciV#{m8CoJyT&?k}y1l4d;t}_&l}<%2I2{0iB_wqGFmQW9n*}6-u~h zbVC5G@@UUos>%*`VwVhZVP`QpVIxsGc06WelXAy1HY|)Aw7aVE+H#~L((Q6*P3i8p z$>MHby^rCDn|5~NabSE_)zmbK-Bv|*J-zXdy}Ge8qSSYAc6N4Tn>BI`+2w~r>};+3 zGim|@3x_VqdeBZ6%Z;{PP#bsl!4Eyn5_=<3#DFeg$B0Zn$tyt1jbc^S3!@V2XL z_DP{+=W2U`i%{~#Qd%!Y$|=1~Ck@b>oZE;2yNKW`a}U7eq?k@eO~0PnIq1w}Jv!jB$3 z`jI(iKX<%C4POl-*33yr%%vH(u;Hl6Qfv8@owL86N#*f)9koA$wbG!**n!xY-qP5e zl_SjpTBqIj+T)zonuW>hOAb35Xwe;Jg4tHr$kvQ-!dkiUTdG+ed55#Ry?gQBP{ET& z5B#FE4oxr!Qt20XUB?=1Vp-)!N4A$J`>f6m=e1{Bly(-BMU#e~KHWoPfzJSbq#87{ z!2_7E9H2DYo^3A`2dSkf-Sw>$d%wl?*px3jdZ$3CwWf+XSNDyMj)F z=W?riNMIm)eHnB}Wg?4;U{%lcNfpg;J&O!R-p2H=z4m}0k0iy)X3vlc^1z3+<_Ru! zP_(bp?W~gg{ImGYrL)5clApLIkAEP8xv;Ur-}P%x-k~LIbWnQ|3>#_~emDog$oq76 zjAOW~N*?99{_OI4S$TPqprVm)oztb_jPm;mpqwqNtca|IIR;vSCw|{9P@}+LcfChA zF6H4>t!oj!Vata6o4paFyvl0XY@of|$r_pof04Gh-?BXsOoW#yoc#>S=~7!yR6X}P9wobQb0rAI-- zjWhhs^0G44!Xt|?&Sssr+O;D|X{^3O8{6@wS)CJ0Lqnn@d?fyQ~urp1)i0p#zY(+PXaF*8x!AxZ7 zcQ%ew@>GIgZ&u>Z<=ky$!|8LIM=PRqhutw^M-SlZ)ZSXl7l~@Ct4QkK+0BvhQX4pz zr@G+S!Ez+>C-U4HV?U*aVDkL$$8T}ljnVy2#c9Q?vi(2<1NsUs;#Dg`kQAg6PDBtI z|L*c$J;$L%kgUIM#zONb*VIlTkwmobAgra3WNnw4IpbXIU2P9Wx@GxtZ|My}V=p6; z41yNi2u*m|wSXvo_Uzeg1bb(DGymJ3XOW_3&M2PoSI(pHfKmm3kKC^K{@}7L%O2tW zm_L7N%{Dq$8`|u>0HUY)9=UjeW)yU)Tz1-hIdxZyKkqIBjo0DH>)Hnc8J55;02_ibpa3A*^U8Z zb9X-YhpZeE%IP-Pi^6%Ee;nl600PR50vJ+wgYrNjM=f9JqATc45jx4Q5yGQs-0SB) zSVBqUdS~AQb~v$#V_+VMr#++lk>Kpv^OK_^^&!R9T1okvI44}*r2rV7=%S1?FLP0z z;vX4azb0=-dMN@?DCj0)Uu-_gW*d1j0;kzdsHPGa!hm zKQ}s;PWJ;EsRJ4sJy&g(dFS8O|^)Kv1SQCkV27Ai$~m4^i#GfW6PH-h{ASy)96cAZJ0K&UZ)G zZ%)D;umiU;C^B9T(%Z*bFg(@g<=xWTLB9crrFiAuy?e#Q9{cuf7nBXKSHVq-cDJSm z0_<}Epb3B=y&epQTsOoMJ?AUQ#ZkHdKQ6Ct!88e?Z>_(MYcpETumy&LR~{CMvF38% z$UG0+prnvVF*TMuHQNj%Pig%sdw=fQ7tZ!DCvK^O(Nom)f&ZJVtgQapD2lf+Gp{0X zaDPm`b&h3u+WF6!nJ31s-7yS|cWT1Eh z6^GZb3fKyOic%|~Dsyli49{eU&cZLD=x2@|pv`$F7_}s%NzlErDyrAyxe~EdqUk5r(@+e;Wo^B^^0dz7sSyovI71b53|nL% z99~B|Yp_Dw(`b6oG5JJB`#GWZ^KTp#jzyF547L_q^5h(nS{}JFfW(VB{Q@u*!1KWw z0i6IyNdOMO9)mt7s@zySw<+9v?i6559@>~dr|R6w%IEL;*{jCmSH~a3eAlp;KjbD$ z$r^H||5hBHt4N7qyuF%lo~PpWMt^km2eA-K_v@$~8joEL6he&LdTUuuJ1Zpx$v21k))#%d&_{2oKY!baqxhiR54c6;@j4{ora%UdBwXL=`5g%~=~xwyD;nS5Z+ z>&rnql2xQD1kUz!de}YC5cM~vi*Mu02Q<(%4RUfL4ljoi1>NeH?59tk8W&>#SqfOt zje3N0x?X5mOzrRQfBU&)Y@0taGN?mH3xQ6A5{eAm2KgVrQ!cNIry0xtaFE}+8z6yr z(6&|!RUk;PLXE4dEXzG`P5`#aV!hPzb)|xINHcJvot;HFtx4Oi^_37Ps{3}JTPWu- zr5pAt9kl*-TU0 zhi8U`@iT1Q;=R3P3-!Agzduno0ybNutM#(CR;1-fNYfD`n-^Oj`NeIU9Ez~Eq>xAK zB6qxab=RmEG)GBsaVN(+RaNsk_3EmsW1$3n;5M)zAy_7RWM_5PMxk(0gcH@6dAHQ_ z0Z2R0OQC278}oqxSxF&(r(!4?m~8~BD^ zf8N?V=(NPfqgmv*7!IVwwxT)lhfvItVP;7pTw8J_s=3MFxqDU#dk>1qo<%S`vqX$? zBgMbI^ct85CAwVKB=cQWEXv9%?N6nYl=)WNuVlf5j~xqy!Gw+;jnb9M?f^Xxz_F7l ze{u<>w3$C!#t@`8<~7}2T`5Y!b%7avL>7>Q7DA7a5G7sqy&n+@c6l-tRGhQx=RuX74 zFDW_aq}g*v($dn{_03)!e%IK0;6;cczj>+wEz1Kt0HlPTDNriFtbVmcuCISzIs5&) zH2~=0;dzvZ*j9&2rUh@_q_?`mH@~2GCx#ZbDC1cGmA-$*;co(k;`{f%6|X#hmyw=6 zOpF|HU+4LZKQ%WuKPnVIaj-a5VED%VD)qNe2S#6`s7ieQOaPF6tEg+dP)O^=1B*1{Pv16g2ndKh z`?U*jo5Ax8?V4I9H=x~g3hSJz;l!5r$O#@ICSOurE%cSnBs$Loz@S#giv+Lvsio5`Lsmn0gA*0N9JysvtB_u2?!Lw94Ln$@Odtrf&aCLKaJq^Vr zfMY#N)ce~qs3`6dg&hDN=>Hsz1W3?Y9t5$$l>|i-U1|VX2e#EzPu`2HCOxRm$rP8S zc)e`x?O)w2=}E*hk;4#EaWdjsJ$c84Hfv1qv!LzF6z%xp%MFXEP8PwK#1i`!N_Gl%nc0HRMZHEL@u1Vwjpb5j@U4{>W67>{9@M7IOPGVLT|~y7gI6QK`i@K>WFY<*ULf3(Uh5FAuhf#=QW>+^iDy1C6= z`;!G*-rNS>{(S{r{kvc|9FiTqj6W_AZ2i(#E6nzCa^)LvFCeGz5Zg1faw0tkoDX*` zM}6tGMjd~Ee-+u~gra*rSl~uk_Xx~WqJ*`W2&mE6jfA!k2@8rT|DV>RqRFkIM5!6A>(ail$wc&Nn!W&+2~_?weCf^ zX{G9%qfL5$heZPcQe`m(?$zk zU)!dZSAX;|24G>Bb3(~Ab1?=DOuZpKxg*q>p-G$Rfs} z9^eHHH2}d!>5?N=v1WP7g@yk&)!?TOcYgk30$50^4Du?@A+;n%SIUm{sQHKQq5Xf5 zUf$cVAialYv?sSbva@rpuCtL04LWk9iRL`aK+0jA_z^X9uO}oRkfU! zZ&^fmn!?%;VXQ0x+|GZwHpVR$-LwagB2xPj|evg4d}OLlnKBpg;|NW~4eck;xWH zx&?Lzm>~`UE#JPG>o@fTT@?79_?zm|daV4%u(T(60Qdt8gmVfdyh+zYh`+XMmx?*j zz=8o9c{r&CxDEe6n$nlnx6<7*jEiFo6evq5=LyiOe+`^O;bG21Z$ViN`g*Dn^Xu2e zPoGu~zaAeSZ>RzA+#ZE%pPW#^G6OU3lsHu%NNkRZbswpG^Xv*RG8@7>CT4xL`hBp9 zChcu)fG%Dv>H+F$q?rSd=|L6yXuQ#lu4Nu7rutlss>n0jw|36t(;s3_Z``o6^RV3b z^yweUL@o1NOH0d{RQfpAu-L}P=GI%Vgmo;r#T%=A@(}oAV`C=(hzlhgIB)V$P91dd)eyoGYU!0RqyiZ_Y=j($9k|BEV+E3v zO@O41q7RZ{B8&85>c(kc-dI)j9U)q5=?H1UUiX&@9Bh+R6iBARkiEXiG~csg)19^N zd?Oy@215K*_V@<}Ulln_V8JYCeSLjkhX+A$mlpv$j~6eBVh37Eu9#+tAG=ft?`MO} zGyt+YJZ)(j#ruMyqTWLpZ}j78of`@OxD*q!D)0Fz4i$KO{Pv#$LTIOJ1~Fxm%V5D1 zSQjKkm%n8$7Y=865$JwE8~~S8yF3fV2PhS;*cJRcuR(z#s+8MIrBWRgf$Ze-3)$aO zBQ%)&0Lay}ywIdkJBxsm3?$anBo|`?GCS=e%kaf!($dtEUt- zZ-YmHZ-6C92!zgt%<(|sjbL<{;K*DR$?InF0tY=CLdJJ>*bsrJ+u=HQOW(nXvUq1; z{Fd5Y7EdEL%GqiR8mOrOJOqF%kcMfiMc8Zl`uf+dojy#W`=u1^rO(K(HxBtloD+%z z{veHd$yDumC~)R=8G z4JBlkxNz(EI6w(hpE_nWh(3uw96i=sY6gqcD%5Y=IGFQ%mY*=n^D|af%(?3p%WVZ_ zS6YhOkt4~k?S)4p&+Iw!2_r93C3{cnxX-g&1!caKl|VrO{Gqw|riK5vt}b4^HlFSW z6jqZW=5VSzwM^b4F)^*;a$H#0@(^LU`QgJyPjeClgkC)PZM0r&lkQlJK{*JDlxBB$ zzN7l!oGfI{AQZ1uR?dP=iFWnZl)~@GoEl{90~1osE;C`XiBdZpP|)CN?+glP@0lm# zbe~t*rdTFRTwJ^_A`X~B3oIhBn!%j>*_!(F#;9il8fuTaoU)&A_|w>l4+5|M41J)K zSGp4)?e2a7EX)Am9_als243#&KS3C91*!Tn0_bzYbpo$nryaYL{}Ha!2NF?VAD~9Q zRuoW1K|m&!Oe5X)e48dM2Z43BpuoW2_CB?i*U-@^xT~sla5Tc`)862Qm$AcA zY4O1Cb|E3I<(sea`OJVir>-HNtEM8K=AMIiui%^}!w2WN(;gn<4Z~F4!p4R#{*XZW z6Y#q#`J9)wrkOI6u6v@`)P2HWMO|#q5dnc4Aj$#)Paf`91e@W_;DH1L{s3_l5ZHh5 z;T{2jgT|l0Qu}dmn*V*_zbO5e8voV9|Epa?7Pz-G*go*zUnG*G{%dysb@>0r+JD3U g{~yHjVORR{cXgpdHX{9?^aV_fEDdXJJ^bVU0E^h^=Kufz literal 0 HcmV?d00001 diff --git a/tests/ref_imgs/draw/render/xrgb8888/demo_render_image_normal_2_opa_255.png b/tests/ref_imgs/draw/render/xrgb8888/demo_render_image_normal_2_opa_255.png new file mode 100644 index 0000000000000000000000000000000000000000..28863049b68e15c502e2ec3271bf8586523f7251 GIT binary patch literal 15680 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 literal 0 HcmV?d00001 diff --git a/tests/ref_imgs/draw/render/xrgb8888/demo_render_image_recolor_opa_128.png b/tests/ref_imgs/draw/render/xrgb8888/demo_render_image_recolor_1_opa_128.png similarity index 100% rename from tests/ref_imgs/draw/render/xrgb8888/demo_render_image_recolor_opa_128.png rename to tests/ref_imgs/draw/render/xrgb8888/demo_render_image_recolor_1_opa_128.png diff --git a/tests/ref_imgs/draw/render/xrgb8888/demo_render_image_recolor_opa_255.png b/tests/ref_imgs/draw/render/xrgb8888/demo_render_image_recolor_1_opa_255.png similarity index 100% rename from tests/ref_imgs/draw/render/xrgb8888/demo_render_image_recolor_opa_255.png rename to tests/ref_imgs/draw/render/xrgb8888/demo_render_image_recolor_1_opa_255.png diff --git a/tests/ref_imgs/draw/render/xrgb8888/demo_render_image_recolor_2_opa_128.png b/tests/ref_imgs/draw/render/xrgb8888/demo_render_image_recolor_2_opa_128.png new file mode 100644 index 0000000000000000000000000000000000000000..c9a8d0832d8c9b05e128e88501d245ea423a4fea GIT binary patch literal 13935 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 literal 0 HcmV?d00001 diff --git a/tests/src/test_cases/draw/test_render_to_al88.c b/tests/src/test_cases/draw/test_render_to_al88.c new file mode 100644 index 000000000..24d89e3ff --- /dev/null +++ b/tests/src/test_cases/draw/test_render_to_al88.c @@ -0,0 +1,37 @@ +#if LV_BUILD_TEST +#include "../lvgl.h" +#include "../demos/lv_demos.h" + +#include "unity/unity.h" + +void setUp(void) +{ + /* Function run before every test */ +} + +void tearDown(void) +{ + /* Function run after every test */ + lv_display_set_color_format(NULL, LV_COLOR_FORMAT_XRGB8888); +} + +void test_render_to_al88(void) +{ + lv_display_set_color_format(NULL, LV_COLOR_FORMAT_AL88); + + lv_opa_t opa_values[2] = {0xff, 0x80}; + uint32_t opa; + for(opa = 0; opa < 2; opa++) { + uint32_t i; + for(i = 0; i < _LV_DEMO_RENDER_SCENE_NUM; i++) { + lv_demo_render(i, opa_values[opa]); + + char buf[128]; + lv_snprintf(buf, sizeof(buf), "draw/render/al88/demo_render_%s_opa_%d.png", + lv_demo_render_get_scene_name(i), opa_values[opa]); + TEST_ASSERT_EQUAL_SCREENSHOT(buf); + } + } +} + +#endif diff --git a/tests/src/test_cases/draw/test_render_to_l8.c b/tests/src/test_cases/draw/test_render_to_l8.c new file mode 100644 index 000000000..c5c194b80 --- /dev/null +++ b/tests/src/test_cases/draw/test_render_to_l8.c @@ -0,0 +1,37 @@ +#if LV_BUILD_TEST +#include "../lvgl.h" +#include "../demos/lv_demos.h" + +#include "unity/unity.h" + +void setUp(void) +{ + /* Function run before every test */ +} + +void tearDown(void) +{ + /* Function run after every test */ + lv_display_set_color_format(NULL, LV_COLOR_FORMAT_XRGB8888); +} + +void test_render_to_l8(void) +{ + lv_display_set_color_format(NULL, LV_COLOR_FORMAT_L8); + + lv_opa_t opa_values[2] = {0xff, 0x80}; + uint32_t opa; + for(opa = 0; opa < 2; opa++) { + uint32_t i; + for(i = 0; i < _LV_DEMO_RENDER_SCENE_NUM; i++) { + lv_demo_render(i, opa_values[opa]); + + char buf[128]; + lv_snprintf(buf, sizeof(buf), "draw/render/l8/demo_render_%s_opa_%d.png", + lv_demo_render_get_scene_name(i), opa_values[opa]); + TEST_ASSERT_EQUAL_SCREENSHOT(buf); + } + } +} + +#endif diff --git a/tests/unity/unity_support.c b/tests/unity/unity_support.c index c045d6ddf..a2a563977 100644 --- a/tests/unity/unity_support.c +++ b/tests/unity/unity_support.c @@ -1,4 +1,4 @@ -/** +/** * @file lv_test_assert.c * * Copyright 2002-2010 Guillaume Cottenceau. @@ -419,6 +419,36 @@ static void buf_to_xrgb8888(const uint8_t * buf_in, uint8_t * buf_out, lv_color_ buf_out[x * 4 + 0] = buf_in[x * 3 + 2]; } + buf_in += stride; + buf_out += 800 * 4; + } + } + else if(cf_in == LV_COLOR_FORMAT_L8) { + uint32_t y; + for(y = 0; y < 480; y++) { + uint32_t x; + for(x = 0; x < 800; x++) { + buf_out[x * 4 + 3] = 0xff; + buf_out[x * 4 + 2] = buf_in[x]; + buf_out[x * 4 + 1] = buf_in[x]; + buf_out[x * 4 + 0] = buf_in[x]; + } + + buf_in += stride; + buf_out += 800 * 4; + } + } + else if (cf_in == LV_COLOR_FORMAT_AL88) { + uint32_t y; + for (y = 0; y < 480; y++) { + uint32_t x; + for (x = 0; x < 800; x++) { + buf_out[x * 4 + 3] = buf_in[x * 2 + 1]; + buf_out[x * 4 + 2] = buf_in[x * 2 + 0]; + buf_out[x * 4 + 1] = buf_in[x * 2 + 0]; + buf_out[x * 4 + 0] = buf_in[x * 2 + 0]; + } + buf_in += stride; buf_out += 800 * 4; }