Compare commits

..

9 Commits

10 changed files with 723 additions and 577 deletions

3
.gitmodules vendored
View File

@@ -13,9 +13,6 @@
[submodule "eink/flash"]
path = eink/flash
url = git@git.blackmark.me:avr/flash.git
[submodule "eink/spi"]
path = eink/spi
url = git@git.blackmark.me:avr/spi.git
[submodule "eink/avr-libstdcpp"]
path = eink/avr-libstdcpp
url = git@github.com:modm-io/avr-libstdcpp.git

View File

@@ -151,7 +151,7 @@
<Value>%24(PackRepoDir)\Atmel\ATmega_DFP\1.4.346\include</Value>
</ListValues>
</avrgcccpp.assembler.general.IncludePaths>
</AvrGccCpp>
</AvrGccCpp>
</ToolchainSettings>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)' == 'Debug' ">
@@ -211,37 +211,37 @@
</ListValues>
</avrgcccpp.assembler.general.IncludePaths>
<avrgcccpp.assembler.debugging.DebugLevel>Default (-Wa,-g)</avrgcccpp.assembler.debugging.DebugLevel>
</AvrGccCpp>
</AvrGccCpp>
</ToolchainSettings>
</PropertyGroup>
<ItemGroup>
<Compile Include="clock.hpp">
<SubType>compile</SubType>
</Compile>
<Compile Include="eink\eink_spi.hpp">
<SubType>compile</SubType>
</Compile>
<Compile Include="eink\eink.hpp">
<SubType>compile</SubType>
</Compile>
<Compile Include="eink\font.hpp">
<SubType>compile</SubType>
</Compile>
<Compile Include="eink\otp.hpp">
<SubType>compile</SubType>
</Compile>
<Compile Include="flash\flash.hpp">
<SubType>compile</SubType>
</Compile>
<Compile Include="image.hpp">
<SubType>compile</SubType>
</Compile>
<Compile Include="io\io.hpp">
<SubType>compile</SubType>
</Compile>
<Compile Include="main.cpp">
<SubType>compile</SubType>
</Compile>
<Compile Include="spi\config.hpp">
<SubType>compile</SubType>
</Compile>
<Compile Include="spi\hardware.hpp">
<SubType>compile</SubType>
</Compile>
<Compile Include="spi\software.hpp">
<SubType>compile</SubType>
</Compile>
<Compile Include="spi\spi.hpp">
<SubType>compile</SubType>
</Compile>
<Compile Include="uart\config.hpp">
<SubType>compile</SubType>
</Compile>
@@ -260,21 +260,6 @@
<Compile Include="uart\uart.hpp">
<SubType>compile</SubType>
</Compile>
<Compile Include="util\array.hpp">
<SubType>compile</SubType>
</Compile>
<Compile Include="util\func.hpp">
<SubType>compile</SubType>
</Compile>
<Compile Include="util\new.cpp">
<SubType>compile</SubType>
</Compile>
<Compile Include="util\new.hpp">
<SubType>compile</SubType>
</Compile>
<Compile Include="util\type.hpp">
<SubType>compile</SubType>
</Compile>
<Compile Include="util\util.hpp">
<SubType>compile</SubType>
</Compile>
@@ -283,7 +268,6 @@
<Folder Include="flash" />
<Folder Include="io" />
<Folder Include="eink" />
<Folder Include="spi" />
<Folder Include="util" />
<Folder Include="uart" />
</ItemGroup>

288
eink/image.hpp Normal file
View File

@@ -0,0 +1,288 @@
#pragma once
#include <array>
#include <tuple>
#include <utility>
#include <cstdint>
#include "flash/flash.hpp"
constexpr auto RLE_IMAGE = flash::Wrapper{std::tuple{
std::to_array<std::pair<std::uint8_t, std::uint8_t>>({
{255, 0xff}, {17, 0xff}, {1, 0x0f}, {3, 0xff}, {1, 0xc0}, {2, 0x00}, {1, 0x01}, {7, 0xff}, {1, 0xfe},
{1, 0x07}, {1, 0xf0}, {1, 0x3f}, {2, 0xff}, {1, 0xfe}, {1, 0x07}, {1, 0xf0}, {1, 0x3e}, {1, 0x07},
{1, 0xe0}, {1, 0x3f}, {1, 0xff}, {1, 0xc0}, {3, 0x00}, {1, 0x3f}, {6, 0xff}, {1, 0xf8}, {1, 0x03},
{1, 0xc0}, {1, 0x1f}, {2, 0xff}, {1, 0xf8}, {1, 0x03}, {1, 0xe0}, {1, 0x1e}, {1, 0x67}, {1, 0x80},
{1, 0x1f}, {1, 0xff}, {1, 0xc0}, {3, 0x00}, {1, 0x0f}, {6, 0xff}, {1, 0xf8}, {1, 0xe1}, {1, 0xe7},
{1, 0x0f}, {2, 0xff}, {1, 0xf8}, {1, 0xe1}, {1, 0xc3}, {1, 0x0c}, {1, 0xf3}, {1, 0x02}, {1, 0x3f},
{1, 0xff}, {1, 0xc0}, {3, 0x00}, {1, 0x03}, {6, 0xff}, {1, 0xfd}, {1, 0xf1}, {1, 0xff}, {1, 0x8f},
{2, 0xff}, {1, 0xfd}, {1, 0xf1}, {1, 0xc7}, {1, 0x8e}, {1, 0xf7}, {1, 0x0f}, {1, 0xbf}, {1, 0xff},
{1, 0xc0}, {2, 0x00}, {2, 0x01}, {7, 0xff}, {1, 0xf1}, {1, 0xff}, {1, 0x8f}, {1, 0xf7}, {2, 0xff},
{1, 0xf1}, {1, 0xc7}, {1, 0x8e}, {1, 0x06}, {1, 0x1f}, {2, 0xff}, {1, 0xc0}, {2, 0x00}, {1, 0x03},
{1, 0x00}, {7, 0xff}, {1, 0xf1}, {1, 0xff}, {1, 0x8f}, {1, 0x80}, {2, 0xff}, {1, 0xf1}, {2, 0xc7},
{1, 0x0e}, {1, 0x3f}, {2, 0xff}, {1, 0xc0}, {2, 0x00}, {1, 0x07}, {1, 0x00}, {1, 0x7f}, {6, 0xff},
{1, 0xf1}, {1, 0xfe}, {1, 0x1f}, {1, 0x00}, {2, 0x3f}, {1, 0xf1}, {2, 0xc7}, {1, 0xfe}, {1, 0x3f},
{2, 0xff}, {1, 0xc0}, {2, 0x00}, {1, 0x0f}, {1, 0x00}, {1, 0x3f}, {6, 0xff}, {1, 0xe1}, {1, 0xf8},
{1, 0x3e}, {1, 0x0c}, {1, 0x1e}, {1, 0x1f}, {1, 0xe3}, {1, 0xc3}, {1, 0x07}, {1, 0xfe}, {1, 0x3f},
{2, 0xff}, {1, 0xc0}, {2, 0x00}, {1, 0x1f}, {1, 0x00}, {1, 0x1f}, {6, 0xff}, {1, 0xe3}, {1, 0xf8},
{1, 0x1e}, {1, 0x3f}, {1, 0x04}, {1, 0x3f}, {1, 0xc3}, {1, 0xe0}, {1, 0x07}, {1, 0xfe}, {1, 0x3f},
{2, 0xff}, {1, 0xc0}, {2, 0x00}, {1, 0x3f}, {1, 0x00}, {1, 0x0f}, {6, 0xff}, {1, 0xc7}, {1, 0xff},
{1, 0x0f}, {1, 0x7f}, {1, 0x80}, {1, 0x7f}, {1, 0xc7}, {1, 0xf0}, {1, 0x47}, {1, 0xfe}, {1, 0x3f},
{2, 0xff}, {1, 0xc0}, {2, 0x00}, {1, 0x7f}, {1, 0x00}, {1, 0x0f}, {6, 0xff}, {1, 0x87}, {1, 0xff},
{1, 0x87}, {1, 0xff}, {1, 0xc0}, {1, 0xff}, {1, 0x87}, {1, 0xff}, {1, 0xc7}, {1, 0xfe}, {1, 0x3f},
{2, 0xff}, {1, 0xc0}, {2, 0x00}, {1, 0x3f}, {1, 0x00}, {1, 0x07}, {6, 0xff}, {1, 0x0f}, {1, 0xff},
{1, 0xc7}, {3, 0xff}, {1, 0x0f}, {1, 0xff}, {1, 0x8f}, {1, 0xfe}, {1, 0x1f}, {2, 0xff}, {1, 0xc7},
{2, 0xe0}, {1, 0x7f}, {1, 0x1c}, {1, 0x07}, {5, 0xff}, {1, 0xfe}, {1, 0x1f}, {1, 0xef}, {1, 0x87},
{2, 0xff}, {1, 0xfe}, {1, 0x1f}, {1, 0xff}, {1, 0x8f}, {1, 0xff}, {1, 0x0f}, {1, 0xbf}, {1, 0xff},
{1, 0xc7}, {1, 0xe1}, {1, 0xf0}, {1, 0x7d}, {1, 0x3e}, {1, 0x03}, {5, 0xff}, {1, 0xfc}, {1, 0x30},
{1, 0xc7}, {1, 0x0f}, {2, 0xff}, {1, 0xfc}, {1, 0x31}, {1, 0xe7}, {1, 0x0f}, {1, 0xff}, {1, 0x07},
{1, 0x1f}, {1, 0xff}, {1, 0xc3}, {1, 0xe1}, {1, 0xf0}, {1, 0x7c}, {1, 0x3e}, {1, 0x03}, {5, 0xff},
{1, 0xf8}, {1, 0x00}, {1, 0xc0}, {1, 0x0f}, {2, 0xff}, {1, 0xf8}, {1, 0x00}, {1, 0xc0}, {1, 0x1f},
{1, 0xff}, {1, 0x80}, {1, 0x1f}, {1, 0xff}, {1, 0xc3}, {1, 0xf1}, {2, 0xf8}, {1, 0x3f}, {1, 0x03},
{5, 0xff}, {1, 0xf8}, {1, 0x00}, {1, 0xe0}, {1, 0x1f}, {2, 0xff}, {1, 0xf8}, {1, 0x00}, {1, 0xe0},
{1, 0x3f}, {1, 0xff}, {1, 0xc0}, {1, 0x3f}, {1, 0xff}, {1, 0xc3}, {1, 0xf3}, {2, 0xf8}, {1, 0x7f},
{1, 0x01}, {7, 0xff}, {1, 0xfc}, {5, 0xff}, {1, 0xf8}, {2, 0xff}, {1, 0xf9}, {2, 0xff}, {1, 0xc1},
{1, 0xf3}, {1, 0xf9}, {1, 0xf8}, {1, 0x7f}, {1, 0x81}, {19, 0xff}, {1, 0xc1}, {1, 0xfb}, {1, 0xfd},
{1, 0xf0}, {1, 0xff}, {1, 0x81}, {19, 0xff}, {1, 0xc1}, {2, 0xff}, {1, 0xf0}, {1, 0xff}, {1, 0xc1},
{19, 0xff}, {1, 0xc0}, {2, 0xff}, {1, 0xed}, {1, 0xff}, {1, 0xc1}, {19, 0xff}, {1, 0xc0}, {1, 0xff},
{1, 0xbf}, {1, 0xe1}, {1, 0xf7}, {1, 0xe1}, {19, 0xff}, {1, 0xc0}, {1, 0xff}, {1, 0x3f}, {1, 0xdb},
{1, 0xf3}, {1, 0xe1}, {19, 0xff}, {1, 0xc0}, {1, 0xff}, {1, 0x3f}, {1, 0xd7}, {1, 0xe3}, {1, 0xf1},
{19, 0xff}, {1, 0xc0}, {1, 0x7f}, {1, 0x1f}, {1, 0xd7}, {1, 0xe1}, {1, 0xf1}, {19, 0xff}, {1, 0xe0},
{1, 0x7e}, {1, 0x1f}, {1, 0x9f}, {1, 0xe1}, {1, 0xf1}, {19, 0xff}, {1, 0xe0}, {1, 0x3e}, {1, 0x1f},
{1, 0x8f}, {1, 0xc3}, {1, 0xe1}, {19, 0xff}, {1, 0xe0}, {1, 0x3e}, {2, 0x0f}, {1, 0xc3}, {1, 0xe1},
{19, 0xff}, {1, 0xe0}, {1, 0x3c}, {2, 0x0f}, {1, 0x87}, {1, 0xc1}, {19, 0xff}, {1, 0xf0}, {1, 0x1c},
{1, 0x06}, {1, 0x07}, {1, 0x87}, {1, 0xc1}, {19, 0xff}, {1, 0xf0}, {3, 0x00}, {1, 0x1f}, {1, 0x81},
{19, 0xff}, {1, 0xf0}, {3, 0x00}, {1, 0x1f}, {1, 0x81}, {19, 0xff}, {1, 0xf8}, {3, 0x00}, {1, 0x1f},
{1, 0x81}, {19, 0xff}, {1, 0xf8}, {3, 0x00}, {1, 0x1f}, {1, 0x81}, {19, 0xff}, {1, 0xfc}, {3, 0x00},
{1, 0x1f}, {1, 0x01}, {19, 0xff}, {1, 0xfe}, {3, 0x00}, {1, 0x1e}, {1, 0x01}, {19, 0xff}, {1, 0xfe},
{3, 0x00}, {1, 0x1c}, {1, 0x01}, {20, 0xff}, {3, 0x00}, {1, 0x10}, {1, 0x01}, {20, 0xff}, {1, 0x80},
{3, 0x00}, {1, 0x01}, {20, 0xff}, {1, 0xc0}, {3, 0x00}, {1, 0x01}, {20, 0xff}, {1, 0xf0}, {3, 0x00},
{1, 0x01}, {20, 0xff}, {1, 0xf8}, {3, 0x00}, {1, 0x01}, {20, 0xff}, {1, 0xfe}, {3, 0x00}, {1, 0x01},
{21, 0xff}, {1, 0xc0}, {2, 0x00}, {1, 0x01}, {21, 0xff}, {1, 0xfc}, {2, 0x00}, {1, 0x01}, {255, 0xff},
{255, 0xff}, {135, 0xff}, {1, 0x83}, {2, 0xff}, {1, 0x00}, {1, 0x7f}, {3, 0xff}, {1, 0x80}, {1, 0x3f},
{1, 0xff}, {1, 0xf0}, {1, 0x0f}, {11, 0xff}, {1, 0xfe}, {1, 0x01}, {1, 0xff}, {1, 0xfc}, {1, 0x00},
{1, 0x1f}, {3, 0xff}, {1, 0x00}, {1, 0x1f}, {1, 0xff}, {1, 0xc0}, {1, 0x03}, {11, 0xff}, {1, 0xf0},
{1, 0x01}, {1, 0xff}, {1, 0xf8}, {1, 0x00}, {1, 0x0f}, {2, 0xff}, {1, 0xfe}, {1, 0x00}, {1, 0x07},
{1, 0xff}, {1, 0x80}, {1, 0x01}, {11, 0xff}, {1, 0xc0}, {1, 0x01}, {1, 0xff}, {1, 0xf0}, {1, 0x00},
{1, 0x07}, {2, 0xff}, {1, 0xfc}, {1, 0x00}, {1, 0x07}, {1, 0xff}, {2, 0x00}, {11, 0xff}, {1, 0xc0},
{1, 0x01}, {1, 0xff}, {1, 0xf0}, {1, 0x1c}, {1, 0x03}, {2, 0xff}, {1, 0xf8}, {1, 0x00}, {1, 0x03},
{1, 0xfe}, {2, 0x00}, {11, 0xff}, {1, 0xc0}, {1, 0x01}, {1, 0xff}, {1, 0xe0}, {1, 0x3f}, {1, 0x03},
{2, 0xff}, {1, 0xf0}, {1, 0x1f}, {1, 0x01}, {1, 0xfe}, {1, 0x03}, {1, 0xc0}, {1, 0x7f}, {10, 0xff},
{1, 0xc0}, {1, 0x01}, {1, 0xff}, {1, 0xe0}, {1, 0x7f}, {1, 0x83}, {2, 0xff}, {1, 0xf0}, {1, 0x3f},
{1, 0x81}, {1, 0xfc}, {1, 0x07}, {1, 0xe0}, {1, 0x7f}, {11, 0xff}, {1, 0x01}, {1, 0xff}, {1, 0xe0},
{1, 0x7f}, {1, 0x81}, {2, 0xff}, {1, 0xf0}, {1, 0x3f}, {1, 0x81}, {1, 0xfc}, {1, 0x0f}, {1, 0xf0},
{1, 0x3f}, {11, 0xff}, {1, 0x01}, {1, 0xff}, {1, 0xe0}, {1, 0x7f}, {1, 0x81}, {1, 0xff}, {1, 0x3f},
{1, 0xe0}, {1, 0x7f}, {1, 0xc0}, {1, 0xfc}, {1, 0x0f}, {1, 0xf0}, {1, 0x3f}, {11, 0xff}, {1, 0x01},
{1, 0xff}, {1, 0xe0}, {1, 0x7f}, {1, 0x83}, {1, 0xfc}, {1, 0x0f}, {1, 0xe0}, {1, 0x7f}, {1, 0xc0},
{1, 0xf8}, {1, 0x0f}, {1, 0xf0}, {1, 0x3f}, {11, 0xff}, {1, 0x01}, {1, 0xff}, {1, 0xe0}, {1, 0x7f},
{1, 0x83}, {1, 0xfc}, {1, 0x07}, {1, 0xe0}, {1, 0x7f}, {1, 0xc0}, {1, 0xf8}, {1, 0x1f}, {1, 0xf0},
{1, 0x1f}, {11, 0xff}, {1, 0x01}, {1, 0xff}, {1, 0xe0}, {1, 0x3f}, {1, 0x83}, {1, 0xf8}, {1, 0x07},
{1, 0xe0}, {1, 0x7f}, {1, 0xc0}, {1, 0xf8}, {1, 0x1f}, {1, 0xf8}, {1, 0x1f}, {11, 0xff}, {1, 0x01},
{1, 0xff}, {1, 0xf0}, {1, 0x1f}, {1, 0x07}, {1, 0xf8}, {1, 0x07}, {1, 0xe0}, {1, 0x7f}, {1, 0xc0},
{1, 0x78}, {1, 0x1f}, {1, 0xf8}, {1, 0x1f}, {11, 0xff}, {1, 0x01}, {1, 0xff}, {1, 0xf8}, {2, 0x07},
{1, 0xf8}, {1, 0x07}, {1, 0xc0}, {1, 0x7f}, {1, 0xc0}, {1, 0x78}, {1, 0x1f}, {1, 0xf8}, {1, 0x1f},
{11, 0xff}, {1, 0x01}, {1, 0xff}, {1, 0xf8}, {1, 0x00}, {1, 0x0f}, {1, 0xf8}, {1, 0x07}, {1, 0xc0},
{1, 0x7f}, {1, 0xc0}, {1, 0x78}, {1, 0x1f}, {1, 0xf8}, {1, 0x1f}, {11, 0xff}, {1, 0x01}, {1, 0xff},
{1, 0xfc}, {1, 0x00}, {1, 0x1f}, {1, 0xfc}, {1, 0x0f}, {1, 0xc0}, {1, 0x7f}, {1, 0xc0}, {1, 0x78},
{1, 0x1f}, {1, 0xf8}, {1, 0x1f}, {11, 0xff}, {1, 0x01}, {1, 0xff}, {1, 0xfe}, {1, 0x00}, {1, 0x1f},
{1, 0xfe}, {1, 0x1f}, {1, 0xc0}, {1, 0x7f}, {1, 0xe0}, {1, 0x78}, {1, 0x1f}, {1, 0xf8}, {1, 0x1f},
{11, 0xff}, {1, 0x01}, {1, 0xff}, {1, 0xfc}, {1, 0x00}, {1, 0x0f}, {2, 0xff}, {1, 0xc0}, {1, 0x7f},
{1, 0xe0}, {1, 0x78}, {1, 0x1f}, {1, 0xf8}, {1, 0x1f}, {11, 0xff}, {1, 0x01}, {1, 0xff}, {1, 0xf0},
{1, 0x20}, {1, 0x07}, {2, 0xff}, {1, 0xc0}, {1, 0x7f}, {1, 0xc0}, {1, 0x78}, {1, 0x1f}, {1, 0xf8},
{1, 0x1f}, {11, 0xff}, {1, 0x01}, {1, 0xff}, {1, 0xf0}, {1, 0x78}, {1, 0x03}, {2, 0xff}, {1, 0xc0},
{1, 0x7f}, {1, 0xc0}, {1, 0x78}, {1, 0x1f}, {1, 0xf8}, {1, 0x1f}, {11, 0xff}, {1, 0x01}, {1, 0xff},
{1, 0xe0}, {1, 0xfe}, {1, 0x01}, {2, 0xff}, {1, 0xe0}, {1, 0x7f}, {1, 0xc0}, {1, 0x78}, {1, 0x1f},
{1, 0xf8}, {1, 0x1f}, {11, 0xff}, {1, 0x01}, {1, 0xff}, {1, 0xc0}, {1, 0xff}, {1, 0x01}, {2, 0xff},
{1, 0xe0}, {1, 0x7f}, {1, 0xc0}, {1, 0xf8}, {1, 0x1f}, {1, 0xf8}, {1, 0x1f}, {11, 0xff}, {1, 0x01},
{1, 0xff}, {1, 0xc0}, {1, 0xff}, {1, 0x80}, {2, 0xff}, {1, 0xe0}, {1, 0x7f}, {1, 0xc0}, {1, 0xf8},
{1, 0x1f}, {1, 0xf0}, {1, 0x1f}, {11, 0xff}, {1, 0x01}, {1, 0xff}, {1, 0xc1}, {1, 0xff}, {1, 0xc0},
{2, 0xff}, {1, 0xe0}, {1, 0x7f}, {1, 0xc0}, {1, 0xf8}, {1, 0x1f}, {1, 0xf0}, {1, 0x3f}, {11, 0xff},
{1, 0x01}, {1, 0xff}, {1, 0xc1}, {1, 0xff}, {1, 0xc0}, {2, 0xff}, {1, 0xe0}, {1, 0x7f}, {1, 0xc0},
{1, 0xfc}, {1, 0x0f}, {1, 0xf0}, {1, 0x3f}, {11, 0xff}, {1, 0x01}, {1, 0xff}, {1, 0xc1}, {1, 0xff},
{1, 0xc0}, {1, 0xff}, {1, 0x3f}, {1, 0xf0}, {1, 0x3f}, {1, 0x80}, {1, 0xfc}, {1, 0x0f}, {1, 0xf0},
{1, 0x3f}, {11, 0xff}, {1, 0x01}, {1, 0xff}, {1, 0xc0}, {1, 0xff}, {1, 0x80}, {1, 0xfc}, {1, 0x0f},
{1, 0xf0}, {1, 0x3f}, {1, 0x81}, {1, 0xfc}, {1, 0x0f}, {1, 0xe0}, {1, 0x3f}, {11, 0xff}, {1, 0x01},
{1, 0xff}, {1, 0xc0}, {1, 0x7f}, {1, 0x81}, {1, 0xfc}, {1, 0x07}, {1, 0xf0}, {1, 0x1f}, {1, 0x01},
{1, 0xfe}, {1, 0x07}, {1, 0xe0}, {1, 0x7f}, {10, 0xff}, {1, 0x80}, {1, 0x00}, {1, 0x07}, {1, 0xc0},
{1, 0x3f}, {1, 0x01}, {1, 0xf8}, {1, 0x07}, {1, 0xf8}, {1, 0x0e}, {1, 0x03}, {1, 0xfe}, {1, 0x03},
{1, 0x80}, {1, 0x7f}, {10, 0xff}, {1, 0x80}, {1, 0x00}, {1, 0x07}, {1, 0xe0}, {1, 0x00}, {1, 0x03},
{1, 0xf8}, {1, 0x07}, {1, 0xf8}, {1, 0x00}, {1, 0x03}, {1, 0xff}, {2, 0x00}, {11, 0xff}, {1, 0x80},
{1, 0x00}, {1, 0x07}, {1, 0xf0}, {1, 0x00}, {1, 0x03}, {1, 0xf8}, {1, 0x07}, {1, 0xfc}, {1, 0x00},
{1, 0x07}, {1, 0xff}, {1, 0x00}, {1, 0x01}, {11, 0xff}, {1, 0x80}, {1, 0x00}, {1, 0x07}, {1, 0xf8},
{1, 0x00}, {1, 0x07}, {1, 0xf8}, {1, 0x07}, {1, 0xfe}, {1, 0x00}, {1, 0x0f}, {1, 0xff}, {1, 0x80},
{1, 0x03}, {11, 0xff}, {1, 0x80}, {1, 0x00}, {1, 0x07}, {1, 0xfc}, {1, 0x00}, {1, 0x1f}, {1, 0xfc},
{1, 0x0f}, {1, 0xff}, {1, 0x00}, {1, 0x1f}, {1, 0xff}, {1, 0xe0}, {1, 0x07}, {15, 0xff}, {1, 0x80},
{1, 0xff}, {1, 0xfe}, {1, 0x1f}, {1, 0xff}, {1, 0xe0}, {1, 0x7f}, {1, 0xff}, {1, 0xf8}, {1, 0x1f},
{255, 0xff}, {255, 0xff}, {217, 0xff}, {1, 0xfc}, {4, 0x00}, {1, 0x0f}, {19, 0xff}, {1, 0xf9}, {24, 0xff},
{1, 0xfb}, {24, 0xff}, {1, 0xfb}, {1, 0xff}, {1, 0xfa}, {1, 0x1f}, {21, 0xff}, {1, 0xfb}, {1, 0xff},
{1, 0xe1}, {1, 0x1f}, {4, 0xff}, {1, 0xfc}, {7, 0x00}, {1, 0x3f}, {8, 0xff}, {1, 0xfb}, {1, 0xff},
{1, 0xc1}, {1, 0x0f}, {4, 0xff}, {1, 0xf0}, {7, 0x00}, {1, 0x1f}, {8, 0xff}, {1, 0xfb}, {1, 0xff},
{1, 0x81}, {1, 0x8f}, {4, 0xff}, {1, 0xf0}, {7, 0x00}, {1, 0x0f}, {8, 0xff}, {1, 0xfb}, {1, 0xff},
{1, 0x00}, {1, 0x87}, {4, 0xff}, {1, 0xf0}, {7, 0x00}, {1, 0x1f}, {8, 0xff}, {1, 0xfb}, {1, 0xff},
{1, 0x00}, {1, 0x87}, {4, 0xff}, {1, 0xec}, {7, 0x00}, {1, 0x37}, {8, 0xff}, {1, 0xfb}, {1, 0xff},
{1, 0x00}, {1, 0x47}, {4, 0xff}, {1, 0xe7}, {3, 0x00}, {1, 0x3e}, {3, 0x00}, {1, 0xc7}, {8, 0xff},
{1, 0xfb}, {1, 0xfe}, {1, 0x00}, {1, 0x43}, {4, 0xff}, {1, 0xe1}, {1, 0x80}, {2, 0x00}, {1, 0x30},
{2, 0x00}, {1, 0x03}, {1, 0x87}, {2, 0xff}, {1, 0xfe}, {1, 0x00}, {4, 0xff}, {1, 0xfb}, {1, 0xff},
{1, 0x00}, {1, 0x43}, {4, 0xff}, {1, 0xe0}, {1, 0x60}, {2, 0x00}, {1, 0x60}, {2, 0x00}, {1, 0x0e},
{1, 0x07}, {2, 0xff}, {1, 0xf0}, {1, 0x00}, {1, 0x1f}, {3, 0xff}, {1, 0xfb}, {1, 0xff}, {1, 0x00},
{1, 0x23}, {2, 0xff}, {1, 0xfe}, {1, 0xff}, {1, 0xe0}, {1, 0x38}, {2, 0x00}, {1, 0x6c}, {2, 0x00},
{1, 0x18}, {1, 0x07}, {2, 0xff}, {1, 0xe0}, {1, 0x00}, {1, 0x0f}, {3, 0xff}, {1, 0xfb}, {1, 0xfe},
{1, 0x00}, {1, 0x23}, {2, 0xff}, {1, 0xfe}, {1, 0xff}, {1, 0xe0}, {1, 0x0e}, {2, 0x00}, {1, 0x7e},
{2, 0x00}, {1, 0x60}, {1, 0x07}, {2, 0xff}, {1, 0x80}, {1, 0x00}, {1, 0x03}, {3, 0xff}, {1, 0xfb},
{1, 0xff}, {1, 0x00}, {1, 0x13}, {2, 0xff}, {1, 0xfe}, {1, 0xff}, {1, 0xe0}, {1, 0x03}, {2, 0x00},
{1, 0x66}, {1, 0x00}, {1, 0x01}, {1, 0xc0}, {1, 0x07}, {2, 0xff}, {2, 0x00}, {1, 0x01}, {3, 0xff},
{1, 0xfb}, {1, 0xff}, {1, 0x00}, {1, 0x17}, {2, 0xff}, {1, 0xfe}, {1, 0xff}, {1, 0xe0}, {1, 0x00},
{1, 0xc0}, {1, 0x00}, {1, 0x66}, {1, 0x00}, {1, 0x07}, {1, 0x00}, {1, 0x07}, {2, 0xff}, {2, 0x00},
{1, 0x01}, {3, 0xff}, {1, 0xfb}, {1, 0xff}, {1, 0x00}, {1, 0x1f}, {2, 0xff}, {1, 0xfe}, {1, 0xff},
{1, 0xe0}, {1, 0x00}, {1, 0x70}, {1, 0x00}, {1, 0x36}, {1, 0x00}, {1, 0x0c}, {1, 0x00}, {1, 0x07},
{1, 0xff}, {1, 0xfe}, {1, 0x07}, {1, 0x01}, {1, 0xc0}, {3, 0xff}, {1, 0xfb}, {1, 0xff}, {1, 0x01},
{3, 0xff}, {1, 0xfe}, {1, 0xff}, {1, 0xe0}, {1, 0x00}, {1, 0x1c}, {1, 0x00}, {1, 0x3c}, {1, 0x00},
{1, 0x30}, {1, 0x00}, {1, 0x07}, {1, 0xff}, {1, 0xfc}, {1, 0x07}, {1, 0x83}, {1, 0xc0}, {1, 0x7f},
{2, 0xff}, {1, 0xfb}, {1, 0xff}, {1, 0x01}, {3, 0xff}, {1, 0xfe}, {1, 0xff}, {1, 0xe0}, {1, 0x00},
{1, 0x06}, {3, 0x00}, {1, 0xc0}, {1, 0x00}, {1, 0x07}, {1, 0xff}, {1, 0xfc}, {1, 0x07}, {1, 0x01},
{1, 0xc0}, {1, 0x7f}, {2, 0xff}, {1, 0xfb}, {1, 0xff}, {1, 0x80}, {3, 0xff}, {1, 0xfe}, {1, 0xff},
{1, 0xe0}, {1, 0x00}, {1, 0x01}, {1, 0x80}, {1, 0x00}, {1, 0x03}, {1, 0x80}, {1, 0x00}, {1, 0x07},
{1, 0xff}, {1, 0xfc}, {2, 0x00}, {1, 0x07}, {3, 0xff}, {1, 0xfb}, {1, 0xff}, {1, 0x80}, {1, 0x7f},
{2, 0xff}, {1, 0xfe}, {1, 0xff}, {1, 0xe0}, {2, 0x00}, {1, 0x60}, {1, 0x00}, {1, 0x06}, {2, 0x00},
{1, 0x07}, {1, 0xff}, {1, 0xfc}, {2, 0x00}, {1, 0x3c}, {1, 0x1f}, {2, 0xff}, {1, 0xfb}, {1, 0xff},
{1, 0x80}, {1, 0x7f}, {2, 0xff}, {1, 0xfe}, {1, 0xff}, {1, 0xe0}, {2, 0x00}, {1, 0x38}, {1, 0x00},
{1, 0x18}, {2, 0x00}, {1, 0x07}, {1, 0xff}, {1, 0xfc}, {2, 0x00}, {1, 0x40}, {1, 0x03}, {2, 0xff},
{1, 0xfb}, {1, 0xff}, {1, 0x80}, {1, 0x3f}, {2, 0xff}, {1, 0xfe}, {1, 0xff}, {1, 0xe0}, {2, 0x00},
{1, 0x0c}, {1, 0x00}, {1, 0x60}, {2, 0x00}, {1, 0x07}, {1, 0xff}, {1, 0xfc}, {1, 0x00}, {1, 0x01},
{1, 0x80}, {1, 0x01}, {2, 0xff}, {1, 0xfb}, {1, 0xff}, {1, 0xc0}, {1, 0x3f}, {2, 0xff}, {1, 0xfe},
{1, 0xff}, {1, 0xe0}, {2, 0x00}, {1, 0x33}, {1, 0x01}, {1, 0xf0}, {2, 0x00}, {1, 0x07}, {1, 0xff},
{1, 0xfc}, {1, 0x00}, {1, 0x02}, {2, 0x00}, {1, 0x7f}, {1, 0xff}, {1, 0xfb}, {1, 0xff}, {1, 0xc0},
{1, 0x1f}, {2, 0xff}, {1, 0xfe}, {1, 0xff}, {1, 0xe0}, {2, 0x00}, {1, 0x60}, {1, 0xc3}, {1, 0x0c},
{2, 0x00}, {1, 0x07}, {1, 0xff}, {1, 0xfc}, {1, 0x00}, {1, 0x04}, {2, 0x00}, {1, 0x3f}, {1, 0xff},
{1, 0xfb}, {1, 0xff}, {1, 0xe0}, {1, 0x1f}, {2, 0xff}, {1, 0xfe}, {1, 0xff}, {1, 0xe0}, {1, 0x00},
{1, 0x01}, {1, 0x80}, {1, 0x7c}, {1, 0x06}, {2, 0x00}, {1, 0x07}, {1, 0xff}, {1, 0xfc}, {1, 0x00},
{1, 0x04}, {2, 0x00}, {1, 0x3f}, {1, 0xff}, {1, 0xfb}, {1, 0xff}, {1, 0xe0}, {1, 0x0f}, {2, 0xff},
{1, 0xfe}, {1, 0xff}, {1, 0xe0}, {1, 0x00}, {1, 0x06}, {2, 0x00}, {1, 0x01}, {1, 0x80}, {1, 0x00},
{1, 0x07}, {1, 0xff}, {1, 0xfe}, {1, 0x00}, {1, 0x08}, {1, 0x1c}, {1, 0x18}, {1, 0x1f}, {1, 0xff},
{1, 0xfb}, {1, 0xff}, {1, 0xe0}, {1, 0x0f}, {2, 0xff}, {1, 0xfe}, {1, 0xff}, {1, 0xe0}, {1, 0x00},
{1, 0x0c}, {3, 0x00}, {1, 0xc0}, {1, 0x00}, {1, 0x07}, {1, 0xff}, {1, 0xfe}, {1, 0x00}, {1, 0x08},
{1, 0x1c}, {1, 0x18}, {1, 0x1f}, {1, 0xff}, {1, 0xfb}, {1, 0xff}, {1, 0xf0}, {1, 0x07}, {2, 0xff},
{1, 0xfe}, {1, 0xff}, {1, 0xe0}, {1, 0x00}, {1, 0x30}, {3, 0x00}, {1, 0x30}, {1, 0x00}, {1, 0x07},
{2, 0xff}, {2, 0x00}, {1, 0x08}, {1, 0x00}, {1, 0x1f}, {1, 0xff}, {1, 0xfb}, {1, 0xff}, {1, 0xf0},
{1, 0x03}, {2, 0xff}, {1, 0xfe}, {1, 0xff}, {1, 0xe0}, {1, 0x00}, {1, 0x60}, {3, 0x00}, {1, 0x0c},
{1, 0x00}, {1, 0x07}, {2, 0xff}, {1, 0x80}, {1, 0x10}, {2, 0x00}, {1, 0x0f}, {1, 0xff}, {1, 0xfb},
{1, 0xff}, {1, 0xf8}, {1, 0x03}, {2, 0xff}, {1, 0xfe}, {1, 0xff}, {1, 0xe0}, {1, 0x01}, {1, 0x80},
{3, 0x00}, {1, 0x06}, {1, 0x00}, {1, 0x07}, {2, 0xff}, {1, 0xc0}, {1, 0x10}, {2, 0x00}, {1, 0x1f},
{1, 0xff}, {1, 0xfb}, {1, 0xff}, {1, 0xfc}, {1, 0x01}, {2, 0xff}, {1, 0xfe}, {1, 0xff}, {1, 0xe0},
{1, 0x07}, {4, 0x00}, {1, 0x01}, {1, 0x80}, {1, 0x07}, {2, 0xff}, {1, 0xe0}, {1, 0x10}, {2, 0x00},
{1, 0x0f}, {1, 0xff}, {1, 0xfb}, {1, 0xff}, {1, 0xfc}, {1, 0x01}, {1, 0xf8}, {1, 0x7f}, {1, 0xfe},
{1, 0xff}, {1, 0xe0}, {1, 0x0c}, {5, 0x00}, {1, 0xc0}, {1, 0x07}, {2, 0xff}, {1, 0xc0}, {1, 0x08},
{2, 0x00}, {1, 0x1f}, {1, 0xff}, {1, 0xfb}, {1, 0xff}, {1, 0xfe}, {1, 0x00}, {1, 0xe4}, {1, 0x3f},
{1, 0xfe}, {1, 0xff}, {1, 0xe0}, {1, 0x30}, {5, 0x00}, {1, 0x30}, {1, 0x07}, {2, 0xff}, {1, 0xc7},
{1, 0xd8}, {2, 0x00}, {1, 0x1f}, {1, 0xff}, {1, 0xfb}, {1, 0xff}, {1, 0xfe}, {1, 0x00}, {1, 0xc4},
{1, 0x1f}, {1, 0xfe}, {1, 0xff}, {1, 0xe0}, {1, 0x60}, {5, 0x00}, {1, 0x1c}, {1, 0x07}, {2, 0xff},
{1, 0xdf}, {1, 0xf8}, {2, 0x00}, {1, 0x1f}, {1, 0xff}, {1, 0xfb}, {2, 0xff}, {1, 0x00}, {1, 0x02},
{1, 0x1f}, {1, 0xfe}, {1, 0xff}, {1, 0xe1}, {1, 0x80}, {5, 0x00}, {1, 0x06}, {1, 0x07}, {3, 0xff},
{1, 0xfc}, {2, 0x00}, {1, 0x3f}, {1, 0xff}, {1, 0xfb}, {2, 0xff}, {1, 0x80}, {1, 0x01}, {1, 0x0f},
{1, 0xfe}, {1, 0xff}, {1, 0xe3}, {6, 0x00}, {1, 0x01}, {1, 0x87}, {3, 0xff}, {1, 0xfe}, {2, 0x00},
{1, 0x7f}, {1, 0xff}, {1, 0xfb}, {2, 0xff}, {1, 0xc0}, {1, 0x01}, {1, 0x87}, {1, 0xfe}, {1, 0xff},
{1, 0xec}, {7, 0x00}, {1, 0xc7}, {4, 0xff}, {2, 0x00}, {2, 0xff}, {1, 0xfb}, {2, 0xff}, {1, 0xc0},
{1, 0x00}, {1, 0x87}, {1, 0xfe}, {1, 0xff}, {1, 0xf0}, {7, 0x00}, {1, 0x37}, {4, 0xff}, {1, 0x80},
{1, 0x01}, {2, 0xff}, {1, 0xfb}, {2, 0xff}, {1, 0xe0}, {1, 0x00}, {1, 0x43}, {1, 0xfe}, {1, 0xff},
{1, 0xe0}, {7, 0x00}, {1, 0x1f}, {4, 0xff}, {1, 0xf0}, {1, 0x00}, {2, 0xff}, {1, 0xfb}, {2, 0xff},
{1, 0xf0}, {1, 0x00}, {1, 0x23}, {1, 0xfe}, {1, 0xff}, {1, 0xe0}, {7, 0x00}, {1, 0x07}, {5, 0xff},
{1, 0xfc}, {2, 0xff}, {1, 0xfb}, {2, 0xff}, {1, 0xf8}, {1, 0x00}, {1, 0x31}, {1, 0xfe}, {1, 0xff},
{1, 0xe0}, {7, 0x00}, {1, 0x0f}, {8, 0xff}, {1, 0xfb}, {2, 0xff}, {1, 0xfc}, {1, 0x00}, {1, 0x13},
{1, 0xfe}, {1, 0xff}, {1, 0xf0}, {7, 0x00}, {1, 0x0f}, {8, 0xff}, {1, 0xfb}, {2, 0xff}, {1, 0xfe},
{1, 0x00}, {1, 0x0f}, {1, 0xfe}, {1, 0xff}, {1, 0xf8}, {7, 0x00}, {1, 0x1f}, {8, 0xff}, {1, 0xfb},
{3, 0xff}, {1, 0x00}, {1, 0x0f}, {1, 0xfe}, {1, 0xff}, {1, 0xfc}, {7, 0x00}, {1, 0x7f}, {8, 0xff},
{1, 0xfb}, {3, 0xff}, {1, 0xc0}, {1, 0x1f}, {1, 0xfe}, {18, 0xff}, {1, 0xfb}, {3, 0xff}, {1, 0xe0},
{1, 0x7f}, {1, 0xfe}, {18, 0xff}, {1, 0xf9}, {3, 0xff}, {1, 0xfd}, {1, 0xff}, {1, 0xfc}, {18, 0xff},
{1, 0xfc}, {5, 0x00}, {1, 0x01}, {201, 0xff},
}),
std::to_array<std::pair<std::uint8_t, std::uint8_t>>({
{8, 0xff}, {1, 0xcf}, {24, 0xff}, {1, 0xcf}, {24, 0xff}, {1, 0xcf}, {24, 0xff}, {1, 0xcf}, {24, 0xff},
{1, 0xcf}, {1, 0xff}, {1, 0x9f}, {22, 0xff}, {1, 0xcf}, {1, 0xff}, {1, 0x9f}, {22, 0xff}, {1, 0xcf},
{1, 0xff}, {1, 0x9f}, {22, 0xff}, {1, 0xce}, {1, 0x3f}, {1, 0xff}, {1, 0xe7}, {21, 0xff}, {1, 0xcf},
{1, 0x1f}, {1, 0x9f}, {1, 0xcf}, {21, 0xff}, {1, 0xcf}, {1, 0xbc}, {1, 0x03}, {1, 0xcf}, {21, 0xff},
{1, 0xcf}, {1, 0xf8}, {1, 0x00}, {22, 0xff}, {1, 0xcf}, {1, 0xf0}, {1, 0x00}, {1, 0x7f}, {21, 0xff},
{1, 0xcf}, {1, 0xe0}, {1, 0x00}, {1, 0x3f}, {21, 0xff}, {1, 0xcf}, {1, 0xc0}, {1, 0x00}, {1, 0x3f},
{21, 0xff}, {1, 0xcf}, {1, 0xc0}, {1, 0x00}, {1, 0x1f}, {21, 0xff}, {1, 0xcf}, {1, 0xc0}, {1, 0x00},
{1, 0x1f}, {21, 0xff}, {1, 0xc8}, {1, 0x80}, {1, 0x00}, {1, 0x19}, {21, 0xff}, {1, 0xc8}, {1, 0x80},
{1, 0x00}, {1, 0x10}, {21, 0xff}, {1, 0xcf}, {1, 0x80}, {1, 0x00}, {1, 0x1f}, {21, 0xff}, {1, 0xcf},
{1, 0xc0}, {1, 0x00}, {1, 0x1f}, {21, 0xff}, {1, 0xcf}, {1, 0xc0}, {1, 0x00}, {1, 0x3f}, {21, 0xff},
{1, 0xcf}, {1, 0xc0}, {1, 0x00}, {1, 0x3f}, {21, 0xff}, {1, 0xcf}, {1, 0xe0}, {1, 0x00}, {1, 0x7f},
{21, 0xff}, {1, 0xcf}, {1, 0xf0}, {1, 0x00}, {1, 0x7f}, {21, 0xff}, {1, 0xcf}, {1, 0xf8}, {1, 0x01},
{22, 0xff}, {1, 0xcf}, {1, 0xbe}, {1, 0x03}, {1, 0xcf}, {21, 0xff}, {1, 0xcf}, {1, 0x1f}, {1, 0xff},
{1, 0xc7}, {21, 0xff}, {1, 0xcf}, {1, 0x3f}, {1, 0xff}, {1, 0xe7}, {21, 0xff}, {1, 0xcf}, {1, 0xff},
{1, 0x9f}, {22, 0xff}, {1, 0xcf}, {1, 0xff}, {1, 0x9f}, {22, 0xff}, {1, 0xcf}, {1, 0xff}, {1, 0x9f},
{22, 0xff}, {1, 0xcf}, {24, 0xff}, {1, 0xcf}, {24, 0xff}, {1, 0xcf}, {24, 0xff}, {1, 0xcf}, {24, 0xff},
{1, 0xcf}, {24, 0xff}, {1, 0xcf}, {24, 0xff}, {1, 0xcf}, {24, 0xff}, {1, 0xcf}, {8, 0xff}, {1, 0x87},
{15, 0xff}, {1, 0xcf}, {1, 0xff}, {1, 0xfc}, {1, 0x07}, {5, 0xff}, {1, 0x87}, {15, 0xff}, {1, 0xcf},
{1, 0xff}, {1, 0xf0}, {1, 0x03}, {5, 0xff}, {1, 0x87}, {15, 0xff}, {1, 0xcf}, {1, 0xff}, {1, 0xf0},
{1, 0x03}, {5, 0xff}, {1, 0x87}, {15, 0xff}, {1, 0xcf}, {1, 0xff}, {1, 0xe0}, {1, 0xfb}, {5, 0xff},
{1, 0x87}, {15, 0xff}, {1, 0xcf}, {1, 0xff}, {1, 0xe1}, {1, 0xff}, {2, 0xe1}, {1, 0xc2}, {1, 0x0f},
{1, 0xf0}, {1, 0x07}, {1, 0x80}, {1, 0x7c}, {1, 0x7f}, {1, 0x1f}, {11, 0xff}, {1, 0xcf}, {1, 0xff},
{1, 0xe1}, {1, 0xff}, {2, 0xe1}, {1, 0xc0}, {1, 0x07}, {1, 0xc0}, {1, 0x07}, {1, 0x00}, {1, 0x3c},
{1, 0x3e}, {1, 0x1f}, {11, 0xff}, {1, 0xcf}, {1, 0xff}, {1, 0xe0}, {1, 0x7f}, {2, 0xe1}, {1, 0xc0},
{1, 0x03}, {1, 0x80}, {1, 0x07}, {1, 0x00}, {1, 0x1c}, {1, 0x3e}, {1, 0x3f}, {11, 0xff}, {1, 0xcf},
{1, 0xff}, {1, 0xf0}, {1, 0x0f}, {2, 0xe1}, {1, 0xc1}, {1, 0xc3}, {2, 0x87}, {1, 0x7e}, {1, 0x1e},
{1, 0x3e}, {1, 0x3f}, {11, 0xff}, {1, 0xcf}, {1, 0xff}, {1, 0xf8}, {1, 0x03}, {2, 0xe1}, {1, 0xc1},
{1, 0xc3}, {1, 0x0f}, {1, 0x87}, {1, 0xfe}, {1, 0x1e}, {1, 0x1c}, {1, 0x3f}, {11, 0xff}, {1, 0xcf},
{1, 0xff}, {1, 0xfe}, {1, 0x03}, {2, 0xe1}, {2, 0xc3}, {1, 0x0f}, {1, 0x87}, {1, 0xc0}, {1, 0x1f},
{1, 0x1c}, {1, 0x7f}, {11, 0xff}, {1, 0xcf}, {2, 0xff}, {1, 0xc1}, {2, 0xe1}, {2, 0xc3}, {1, 0x0f},
{1, 0x87}, {1, 0x00}, {1, 0x1f}, {1, 0x1c}, {1, 0x7f}, {11, 0xff}, {1, 0xcf}, {2, 0xff}, {3, 0xe1},
{2, 0xc3}, {1, 0x0f}, {1, 0x86}, {1, 0x0e}, {1, 0x1f}, {1, 0x08}, {12, 0xff}, {1, 0xcf}, {2, 0xff},
{2, 0xe1}, {1, 0xc1}, {2, 0xc3}, {1, 0x0f}, {1, 0x86}, {1, 0x1e}, {1, 0x1f}, {1, 0x88}, {12, 0xff},
{1, 0xcf}, {1, 0xff}, {1, 0xe7}, {1, 0xc1}, {1, 0xe1}, {1, 0xc1}, {2, 0xc3}, {1, 0x07}, {1, 0x06},
{1, 0x1c}, {1, 0x1f}, {1, 0x88}, {12, 0xff}, {1, 0xcf}, {1, 0xff}, {1, 0xe0}, {1, 0x03}, {1, 0xe0},
{1, 0x01}, {2, 0xc3}, {1, 0x80}, {1, 0x06}, {1, 0x00}, {1, 0x1f}, {1, 0xc1}, {12, 0xff}, {1, 0xcf},
{1, 0xff}, {1, 0xe0}, {1, 0x07}, {1, 0xf0}, {1, 0x01}, {2, 0xc3}, {1, 0x80}, {1, 0x07}, {1, 0x00},
{1, 0x1f}, {1, 0xc1}, {12, 0xff}, {1, 0xcf}, {1, 0xff}, {1, 0xf0}, {1, 0x1f}, {1, 0xf8}, {1, 0x61},
{2, 0xc3}, {1, 0xe1}, {1, 0x87}, {1, 0x82}, {1, 0x1f}, {1, 0xc3}, {12, 0xff}, {1, 0xcf}, {11, 0xff},
{1, 0xc3}, {12, 0xff}, {1, 0xcf}, {11, 0xff}, {1, 0x87}, {12, 0xff}, {1, 0xcf}, {10, 0xff}, {1, 0xf8},
{1, 0x0f}, {12, 0xff}, {1, 0xcf}, {10, 0xff}, {1, 0xf8}, {1, 0x1f}, {12, 0xff}, {1, 0xcf}, {10, 0xff},
{1, 0xf8}, {1, 0x3f}, {12, 0xff}, {1, 0xcf}, {24, 0xff}, {1, 0xcf}, {24, 0xff}, {1, 0xcf}, {24, 0xff},
{1, 0xcf}, {16, 0xff}, {75, 0x00}, {16, 0xff}, {1, 0xf3}, {24, 0xff}, {1, 0xf3}, {24, 0xff}, {1, 0xf3},
{24, 0xff}, {1, 0xf3}, {24, 0xff}, {1, 0xf3}, {24, 0xff}, {1, 0xf3}, {24, 0xff}, {1, 0xf3}, {24, 0xff},
{1, 0xf3}, {24, 0xff}, {1, 0xf3}, {24, 0xff}, {1, 0xf3}, {24, 0xff}, {1, 0xf3}, {24, 0xff}, {1, 0xf3},
{1, 0xff}, {1, 0x87}, {1, 0xf0}, {21, 0xff}, {1, 0xf3}, {1, 0xff}, {1, 0x83}, {1, 0xf0}, {21, 0xff},
{1, 0xf3}, {1, 0xff}, {1, 0x83}, {1, 0xf0}, {21, 0xff}, {1, 0xf3}, {1, 0xff}, {1, 0x83}, {1, 0xe0},
{21, 0xff}, {1, 0xf3}, {1, 0xff}, {1, 0x81}, {1, 0xe0}, {1, 0xf8}, {1, 0x0f}, {2, 0x1f}, {17, 0xff},
{1, 0xf3}, {1, 0xff}, {1, 0x81}, {1, 0xe0}, {1, 0xf0}, {1, 0x07}, {2, 0x1f}, {17, 0xff}, {1, 0xf3},
{1, 0xff}, {1, 0x89}, {1, 0xc0}, {1, 0xf1}, {1, 0x87}, {1, 0x0f}, {1, 0x1f}, {17, 0xff}, {1, 0xf3},
{1, 0xff}, {1, 0x88}, {1, 0xc8}, {1, 0xff}, {1, 0xc7}, {1, 0x8e}, {1, 0x3f}, {17, 0xff}, {1, 0xf3},
{1, 0xff}, {2, 0x88}, {1, 0xff}, {1, 0x83}, {1, 0x8e}, {1, 0x3f}, {17, 0xff}, {1, 0xf3}, {1, 0xff},
{1, 0x8c}, {1, 0x88}, {1, 0xf8}, {1, 0x03}, {1, 0xc6}, {1, 0x3f}, {17, 0xff}, {1, 0xf3}, {1, 0xff},
{1, 0x8c}, {1, 0x18}, {1, 0xf0}, {1, 0x43}, {1, 0xc4}, {1, 0x7f}, {17, 0xff}, {1, 0xf3}, {1, 0xff},
{1, 0x8e}, {1, 0x18}, {1, 0xe1}, {1, 0xc3}, {1, 0xc4}, {1, 0x7f}, {17, 0xff}, {1, 0xf3}, {1, 0xff},
{1, 0x8e}, {1, 0x38}, {1, 0xe3}, {1, 0xc3}, {1, 0xe4}, {1, 0x7f}, {17, 0xff}, {1, 0xf3}, {1, 0xff},
{1, 0x8e}, {1, 0x38}, {1, 0xe1}, {1, 0x83}, {1, 0xe0}, {18, 0xff}, {1, 0xf3}, {1, 0xff}, {1, 0x8f},
{1, 0x38}, {1, 0xf0}, {1, 0x03}, {1, 0xf0}, {18, 0xff}, {1, 0xf3}, {1, 0xff}, {1, 0x8f}, {1, 0xf8},
{1, 0xf0}, {1, 0x23}, {1, 0xf1}, {18, 0xff}, {1, 0xf3}, {3, 0xff}, {1, 0xfc}, {1, 0xff}, {1, 0xf1},
{18, 0xff}, {1, 0xf3}, {5, 0xff}, {1, 0xf1}, {18, 0xff}, {1, 0xf3}, {5, 0xff}, {1, 0xc3}, {18, 0xff},
{1, 0xf3}, {5, 0xff}, {1, 0x83}, {18, 0xff}, {1, 0xf3}, {4, 0xff}, {2, 0x0f}, {18, 0xff}, {1, 0xf3},
{4, 0xff}, {1, 0x0f}, {19, 0xff}, {1, 0xf3}, {1, 0xff}, {1, 0x80}, {1, 0x07}, {1, 0x1f}, {1, 0x0f},
{19, 0xff}, {1, 0xf3}, {1, 0xff}, {1, 0x80}, {1, 0x07}, {1, 0x1f}, {1, 0x0f}, {19, 0xff}, {1, 0xf3},
{1, 0xff}, {1, 0x80}, {1, 0x07}, {1, 0x1f}, {1, 0x0f}, {19, 0xff}, {1, 0xf3}, {2, 0xff}, {1, 0x84},
{1, 0x03}, {1, 0x18}, {1, 0x7f}, {18, 0xff}, {1, 0xf3}, {2, 0xff}, {1, 0x8c}, {1, 0x03}, {1, 0x00},
{1, 0x3f}, {18, 0xff}, {1, 0xf3}, {2, 0xff}, {1, 0x0c}, {1, 0x03}, {1, 0x00}, {1, 0x1f}, {18, 0xff},
{1, 0xf3}, {2, 0xff}, {2, 0x1f}, {1, 0x0f}, {1, 0x1f}, {18, 0xff}, {1, 0xf3}, {1, 0xff}, {1, 0xfe},
{2, 0x1f}, {1, 0x0f}, {1, 0x1f}, {18, 0xff}, {1, 0xf3}, {1, 0xff}, {1, 0xfe}, {1, 0x3f}, {1, 0x1f},
{1, 0x0f}, {1, 0x1f}, {18, 0xff}, {1, 0xf3}, {1, 0xff}, {1, 0xfc}, {1, 0x3f}, {1, 0x1f}, {1, 0x0f},
{1, 0x1f}, {18, 0xff}, {1, 0xf3}, {1, 0xff}, {1, 0xfc}, {1, 0x7e}, {1, 0x1f}, {1, 0x0f}, {1, 0x1f},
{18, 0xff}, {1, 0xf3}, {1, 0xff}, {1, 0xf8}, {1, 0x7f}, {1, 0x1f}, {1, 0x0f}, {1, 0x1f}, {18, 0xff},
{1, 0xf3}, {1, 0xff}, {1, 0xf8}, {1, 0xff}, {1, 0x1f}, {1, 0x0f}, {1, 0x1f}, {18, 0xff}, {1, 0xf3},
{1, 0xff}, {1, 0xf0}, {1, 0xff}, {1, 0x03}, {1, 0x0f}, {1, 0x1f}, {18, 0xff}, {1, 0xf3}, {1, 0xff},
{1, 0xf1}, {1, 0xff}, {1, 0x03}, {1, 0x0f}, {1, 0x1f}, {18, 0xff}, {1, 0xf3}, {1, 0xff}, {1, 0xe1},
{1, 0xff}, {1, 0xc3}, {1, 0x9f}, {1, 0x1f}, {18, 0xff}, {1, 0xf3}, {1, 0xff}, {1, 0xe3}, {22, 0xff},
{1, 0xf3}, {24, 0xff}, {1, 0xf3}, {24, 0xff}, {1, 0xf3}, {24, 0xff}, {1, 0xf3}, {24, 0xff}, {1, 0xf3},
{24, 0xff}, {1, 0xf3}, {24, 0xff}, {1, 0xf3}, {24, 0xff}, {1, 0xf3}, {24, 0xff}, {1, 0xf3}, {24, 0xff},
{1, 0xf3}, {24, 0xff}, {1, 0xf3}, {24, 0xff}, {1, 0xf3}, {24, 0xff}, {1, 0xf3}, {24, 0xff}, {1, 0xf3},
{8, 0xff}, {75, 0x00}, {98, 0xff}, {1, 0x81}, {23, 0xff}, {1, 0xfe}, {1, 0x00}, {1, 0x7f}, {22, 0xff},
{1, 0xfc}, {1, 0x00}, {1, 0x1f}, {22, 0xff}, {1, 0xf8}, {1, 0x00}, {1, 0x0f}, {22, 0xff}, {1, 0xf8},
{1, 0x3e}, {1, 0x0f}, {22, 0xff}, {1, 0xf0}, {1, 0x7f}, {1, 0x07}, {22, 0xff}, {1, 0xf0}, {1, 0x23},
{1, 0x07}, {22, 0xff}, {1, 0xe0}, {1, 0x03}, {1, 0x07}, {22, 0xff}, {1, 0xe0}, {2, 0x07}, {22, 0xff},
{1, 0xe0}, {1, 0x06}, {1, 0x07}, {22, 0xff}, {1, 0xe0}, {1, 0x1c}, {1, 0x07}, {22, 0xff}, {1, 0xf0},
{1, 0x38}, {1, 0x07}, {22, 0xff}, {1, 0xf0}, {1, 0x7f}, {1, 0x07}, {22, 0xff}, {1, 0xf0}, {1, 0x7f},
{1, 0x0f}, {22, 0xff}, {1, 0xf8}, {1, 0x00}, {1, 0x0f}, {22, 0xff}, {1, 0xfc}, {1, 0x00}, {1, 0x1f},
{22, 0xff}, {1, 0xfe}, {1, 0x00}, {1, 0x3f}, {23, 0xff}, {1, 0x81}, {255, 0xff}, {255, 0xff}, {255, 0xff},
{255, 0xff}, {81, 0xff},
}),
}};

Submodule eink/io updated: bf94ebaac1...5407e94337

View File

@@ -1,449 +1,274 @@
#include "clock.hpp"
#include <array>
#include <type_traits>
#include <cstdint>
#include <cstring>
#include "eink/eink.hpp"
#include "flash/flash.hpp"
#include "io/io.hpp"
#include "spi/spi.hpp"
#include "uart/uart.hpp"
using uart_t = uart::Uart0<>;
#include "image.hpp"
using uart_t = uart::Uart0<uart::Config<115200>>;
REGISTER_UART0_INT_VECTORS(uart_t);
//////////////////////////////////////////////////////////////////////////
using spi_t = eink::Spi<io::P::C4, io::P::C5, io::P::C3, io::P::C2>;
using eink_t = eink::Eink<200, 200, spi_t, io::P::C1, io::P::C0>;
constexpr auto IMAGE [[gnu::progmem]] = std::to_array<uint8_t>({
0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x85, 0x79, 0x79, 0x79, 0x79, 0x79,
0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79,
0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x85, 0x79, 0x79, 0x79,
0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79,
0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x85, 0x79,
0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79,
0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79,
0x85, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79,
0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79,
0x79, 0x79, 0x85, 0x79, 0x79, 0x85, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79,
0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79,
0x79, 0x79, 0x79, 0x79, 0x85, 0x79, 0x79, 0x85, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79,
0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79,
0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x85, 0x79, 0x79, 0x85, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79,
0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79,
0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x85, 0xa0, 0x79, 0x79, 0x79, 0x85, 0x79, 0x79, 0x79, 0x79, 0x79,
0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79,
0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x85, 0xee, 0x79, 0x85, 0x79, 0x7d, 0x79, 0x79, 0x79,
0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79,
0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x85, 0x94, 0xe5, 0xf2, 0x7a, 0x7d, 0x79,
0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79,
0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x85, 0x79, 0xee, 0xf2, 0x86,
0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x01, 0x79,
0x79, 0x79, 0x79, 0x79, 0x79, 0x00, 0x00, 0x00, 0x00, 0x00, 0x51, 0x79, 0x79, 0x79, 0x79, 0x79, 0x85, 0x79, 0xf1,
0xf2, 0xa1, 0x79, 0x79, 0x0d, 0x51, 0x79, 0x01, 0x75, 0x79, 0x79, 0x79, 0x79, 0x79, 0x01, 0x75, 0x28, 0x00, 0x79,
0x00, 0x78, 0x04, 0x51, 0x79, 0x79, 0x79, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x75, 0x79, 0x79, 0x79, 0x79, 0x85,
0x79, 0xf2, 0xf2, 0xf2, 0x79, 0x79, 0x01, 0x00, 0x28, 0x00, 0x6c, 0x79, 0x79, 0x79, 0x79, 0x28, 0x00, 0x6c, 0x0d,
0x00, 0x78, 0x24, 0x78, 0x00, 0x00, 0x79, 0x79, 0x79, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x51, 0x79, 0x79, 0x79,
0x79, 0x85, 0xca, 0xf2, 0xf2, 0xf2, 0x79, 0x79, 0x52, 0x04, 0x78, 0x75, 0x51, 0x79, 0x79, 0x79, 0x79, 0x28, 0x75,
0x51, 0x04, 0x0c, 0x24, 0x78, 0x24, 0x00, 0x52, 0x79, 0x79, 0x79, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x78,
0x79, 0x79, 0x79, 0x85, 0xca, 0xf2, 0xf2, 0xf2, 0x7a, 0x79, 0x70, 0x0d, 0x78, 0x79, 0x52, 0x79, 0x79, 0x79, 0x79,
0x79, 0x78, 0x52, 0x04, 0x28, 0x75, 0x78, 0x27, 0x6c, 0x5e, 0x79, 0x79, 0x79, 0x00, 0x00, 0x00, 0x00, 0x00, 0x51,
0x00, 0x75, 0x79, 0x79, 0x79, 0x85, 0xca, 0xf2, 0xf2, 0xf2, 0x7a, 0x79, 0x79, 0x0d, 0x78, 0x79, 0x52, 0x79, 0x70,
0x79, 0x79, 0x79, 0x79, 0x52, 0x04, 0x28, 0x75, 0x00, 0x0c, 0x75, 0x79, 0x79, 0x79, 0x79, 0x00, 0x00, 0x00, 0x00,
0x00, 0x6c, 0x00, 0x6c, 0x79, 0x79, 0x79, 0xd6, 0xe9, 0xf2, 0xf2, 0xf2, 0xe6, 0x79, 0x79, 0x0d, 0x78, 0x79, 0x52,
0x28, 0x00, 0x78, 0x79, 0x79, 0x79, 0x52, 0x04, 0x79, 0x6c, 0x01, 0x0d, 0x78, 0x79, 0x79, 0x79, 0x79, 0x00, 0x00,
0x00, 0x00, 0x00, 0x75, 0x00, 0x51, 0x79, 0x79, 0x79, 0xd6, 0xe9, 0xf2, 0xf2, 0xf2, 0xef, 0x7a, 0x79, 0x0d, 0x78,
0x28, 0x6c, 0x0d, 0x00, 0x6c, 0x28, 0x78, 0x79, 0x52, 0x04, 0x79, 0x6c, 0x79, 0x0d, 0x78, 0x79, 0x79, 0x79, 0x79,
0x00, 0x00, 0x00, 0x00, 0x00, 0x78, 0x00, 0x00, 0x79, 0x79, 0x79, 0x85, 0xe5, 0xf2, 0xf2, 0xf2, 0x7a, 0x79, 0x79,
0x04, 0x78, 0x04, 0x75, 0x04, 0x24, 0x51, 0x0d, 0x75, 0x79, 0x6c, 0x04, 0x0c, 0x6c, 0x79, 0x0d, 0x78, 0x79, 0x79,
0x79, 0x79, 0x00, 0x00, 0x00, 0x00, 0x00, 0x79, 0x00, 0x00, 0x78, 0x79, 0x79, 0x85, 0xca, 0xf2, 0xf2, 0xf2, 0x7a,
0x79, 0x79, 0x04, 0x79, 0x04, 0x6c, 0x04, 0x79, 0x01, 0x03, 0x78, 0x28, 0x6c, 0x0d, 0x00, 0x6c, 0x79, 0x0d, 0x78,
0x79, 0x79, 0x79, 0x79, 0x00, 0x00, 0x00, 0x00, 0x51, 0x79, 0x00, 0x00, 0x75, 0x79, 0x79, 0x85, 0xca, 0xf2, 0xf2,
0xf2, 0x79, 0x79, 0x79, 0x52, 0x79, 0x79, 0x51, 0x5e, 0x79, 0x04, 0x00, 0x79, 0x28, 0x75, 0x28, 0x51, 0x6c, 0x79,
0x0d, 0x78, 0x79, 0x79, 0x79, 0x79, 0x00, 0x00, 0x00, 0x00, 0x6c, 0x79, 0x00, 0x00, 0x75, 0x79, 0x79, 0x85, 0xca,
0xf2, 0xf2, 0xf2, 0x79, 0x79, 0x79, 0x51, 0x79, 0x79, 0x01, 0x79, 0x79, 0x0d, 0x51, 0x79, 0x0d, 0x75, 0x79, 0x79,
0x6c, 0x79, 0x0d, 0x78, 0x79, 0x79, 0x79, 0x79, 0x00, 0x00, 0x00, 0x00, 0x51, 0x79, 0x00, 0x00, 0x6c, 0x79, 0x79,
0x85, 0x79, 0xf2, 0xf2, 0xa1, 0x79, 0x79, 0x28, 0x6c, 0x79, 0x79, 0x04, 0x79, 0x79, 0x79, 0x79, 0x79, 0x04, 0x78,
0x79, 0x28, 0x75, 0x79, 0x0d, 0x75, 0x79, 0x79, 0x79, 0x79, 0x6c, 0x28, 0x51, 0x04, 0x6c, 0x79, 0x6c, 0x01, 0x6c,
0x79, 0x79, 0x85, 0x79, 0xf1, 0xf2, 0xa1, 0x79, 0x79, 0x0d, 0x75, 0x79, 0x78, 0x01, 0x79, 0x79, 0x79, 0x79, 0x79,
0x01, 0x79, 0x79, 0x28, 0x75, 0x79, 0x28, 0x6c, 0x5e, 0x79, 0x79, 0x79, 0x6c, 0x28, 0x6c, 0x0d, 0x6c, 0x5e, 0x75,
0x04, 0x51, 0x79, 0x79, 0x85, 0x79, 0xee, 0xf2, 0x7d, 0x79, 0x79, 0x04, 0x0c, 0x24, 0x75, 0x51, 0x79, 0x79, 0x79,
0x79, 0x79, 0x51, 0x52, 0x0d, 0x0d, 0x75, 0x79, 0x28, 0x51, 0x04, 0x79, 0x79, 0x79, 0x51, 0x28, 0x6c, 0x0d, 0x6c,
0x0d, 0x75, 0x04, 0x51, 0x79, 0x79, 0x85, 0x94, 0xca, 0xf2, 0x7a, 0x7d, 0x79, 0x01, 0x00, 0x24, 0x00, 0x51, 0x79,
0x79, 0x79, 0x79, 0x28, 0x00, 0x00, 0x04, 0x00, 0x78, 0x79, 0x79, 0x00, 0x00, 0x79, 0x79, 0x79, 0x51, 0x79, 0x6c,
0x28, 0x75, 0x04, 0x75, 0x0d, 0x51, 0x79, 0x79, 0x85, 0xee, 0x79, 0x79, 0x79, 0x86, 0x79, 0x01, 0x00, 0x75, 0x00,
0x6c, 0x79, 0x79, 0x79, 0x79, 0x28, 0x00, 0x00, 0x0d, 0x00, 0x79, 0x79, 0x79, 0x01, 0x51, 0x79, 0x79, 0x79, 0x51,
0x79, 0x75, 0x28, 0x75, 0x04, 0x78, 0x0d, 0x00, 0x79, 0x79, 0x85, 0x9d, 0x79, 0x79, 0x79, 0x85, 0x79, 0x79, 0x79,
0x79, 0x0d, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x6c, 0x79, 0x79, 0x79, 0x28, 0x78, 0x79, 0x79,
0x79, 0x00, 0x79, 0x75, 0x28, 0x78, 0x04, 0x78, 0x28, 0x00, 0x79, 0x79, 0x85, 0x79, 0x79, 0x85, 0x79, 0x79, 0x79,
0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79,
0x79, 0x79, 0x79, 0x00, 0x79, 0x76, 0x79, 0x78, 0x01, 0x79, 0x28, 0x00, 0x79, 0x79, 0x85, 0x79, 0x79, 0x85, 0x79,
0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79,
0x79, 0x79, 0x79, 0x79, 0x79, 0x00, 0x79, 0x79, 0x79, 0x79, 0x01, 0x79, 0x79, 0x00, 0x79, 0x79, 0x85, 0x79, 0x79,
0x85, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79,
0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x00, 0x78, 0x79, 0x79, 0x79, 0x5d, 0x79, 0x79, 0x00, 0x79, 0x79, 0x85,
0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79,
0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x00, 0x78, 0x79, 0x78, 0x79, 0x51, 0x28, 0x79, 0x01, 0x79,
0x79, 0x85, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79,
0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x00, 0x78, 0x28, 0x78, 0x28, 0x70, 0x28, 0x78,
0x01, 0x79, 0x79, 0x85, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79,
0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x00, 0x78, 0x28, 0x78, 0x28, 0x76,
0x0d, 0x78, 0x04, 0x79, 0x79, 0x85, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79,
0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x00, 0x75, 0x28, 0x75,
0x28, 0x76, 0x0d, 0x75, 0x04, 0x79, 0x79, 0x85, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79,
0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x01, 0x75,
0x0d, 0x75, 0x0d, 0x79, 0x0d, 0x75, 0x04, 0x79, 0x79, 0x85, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79,
0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79,
0x01, 0x6c, 0x0d, 0x75, 0x0d, 0x78, 0x04, 0x78, 0x01, 0x79, 0x79, 0x85, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79,
0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79,
0x79, 0x79, 0x01, 0x6c, 0x0d, 0x6c, 0x04, 0x78, 0x04, 0x78, 0x01, 0x79, 0x79, 0x85, 0x79, 0x79, 0x79, 0x79, 0x79,
0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0xee, 0x7a, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79,
0x79, 0x79, 0x79, 0x79, 0x01, 0x6c, 0x04, 0x6c, 0x04, 0x78, 0x01, 0x79, 0x00, 0x79, 0x79, 0x85, 0x79, 0x79, 0x79,
0xf1, 0x86, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0xee, 0x7a, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79,
0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x04, 0x51, 0x04, 0x51, 0x01, 0x75, 0x01, 0x79, 0x00, 0x79, 0x79, 0x85, 0x79,
0x79, 0xca, 0xf2, 0xa1, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0xee, 0x7a, 0x79, 0x79, 0x79, 0x79, 0x79,
0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x6c, 0x28, 0x00, 0x79, 0x79,
0x85, 0x79, 0x79, 0xca, 0xf2, 0xa1, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0xee, 0x7a, 0x79, 0x79, 0x79,
0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x6c, 0x28, 0x00,
0x79, 0x79, 0x85, 0x79, 0x79, 0xe5, 0x86, 0x94, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0xee, 0x7a, 0x79,
0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x0d, 0x00, 0x00, 0x00, 0x00, 0x00, 0x6c,
0x28, 0x00, 0x79, 0x79, 0x85, 0x79, 0x79, 0xe5, 0x7d, 0x79, 0xca, 0x86, 0xee, 0xcb, 0xd7, 0xa1, 0x79, 0xee, 0xf2,
0x7a, 0xf2, 0x86, 0xe5, 0x7a, 0xe5, 0x7a, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x0d, 0x00, 0x00, 0x00, 0x00,
0x00, 0x6c, 0x28, 0x00, 0x79, 0x79, 0x85, 0x79, 0x79, 0xe5, 0x7d, 0x79, 0xca, 0x86, 0xee, 0xcb, 0xf2, 0xf2, 0x79,
0xf2, 0xf2, 0xcb, 0xf2, 0xa1, 0xe5, 0x7d, 0xee, 0x7a, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x28, 0x00, 0x00,
0x00, 0x00, 0x00, 0x6c, 0x0d, 0x00, 0x79, 0x79, 0x85, 0x79, 0x79, 0xe5, 0xa1, 0x79, 0xca, 0x86, 0xee, 0xcb, 0xf2,
0xf2, 0xcb, 0xf2, 0xf2, 0xcb, 0xf2, 0xf2, 0xe5, 0x7d, 0xee, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79,
0x00, 0x00, 0x00, 0x00, 0x00, 0x6c, 0x04, 0x00, 0x79, 0x79, 0x85, 0x79, 0x79, 0xca, 0xf2, 0x7d, 0xca, 0x86, 0xee,
0xcb, 0xa1, 0xee, 0xcb, 0x86, 0xee, 0xcb, 0x79, 0xf1, 0xca, 0x7d, 0xee, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79,
0x79, 0x79, 0x00, 0x00, 0x00, 0x00, 0x00, 0x6c, 0x01, 0x00, 0x79, 0x79, 0x85, 0x79, 0x79, 0x79, 0xf2, 0xa1, 0xca,
0x86, 0xee, 0xcb, 0xa1, 0xee, 0xe6, 0x7d, 0xee, 0x7a, 0x79, 0xf1, 0xca, 0x86, 0xf1, 0x79, 0x79, 0x79, 0x79, 0x79,
0x79, 0x79, 0x79, 0x79, 0x01, 0x00, 0x00, 0x00, 0x00, 0x1b, 0x00, 0x00, 0x79, 0x79, 0x85, 0x79, 0x79, 0x79, 0xee,
0xa1, 0xca, 0x86, 0xee, 0xcb, 0x86, 0xee, 0xe6, 0x7d, 0xee, 0x7a, 0xf1, 0xf2, 0x79, 0x86, 0xa0, 0x79, 0x79, 0x79,
0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x79, 0x79, 0x85, 0x79, 0x79,
0x79, 0x79, 0xf2, 0xca, 0x86, 0xee, 0xcb, 0x86, 0xee, 0xe6, 0x7d, 0xee, 0xcb, 0xf2, 0xf2, 0x79, 0x86, 0xa0, 0x79,
0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x0d, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x79, 0x79, 0x85,
0x79, 0x79, 0x79, 0x79, 0xf1, 0xca, 0x86, 0xee, 0xcb, 0x86, 0xee, 0xe6, 0x7d, 0xee, 0xe6, 0x86, 0xf1, 0x79, 0xa1,
0x86, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x79,
0x79, 0x85, 0x79, 0x79, 0x79, 0x79, 0xf1, 0xca, 0x86, 0xf1, 0xcb, 0x86, 0xee, 0xe6, 0x7d, 0xee, 0xe6, 0x7d, 0xf1,
0x79, 0xa0, 0x86, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x79, 0x79, 0x85, 0x79, 0x79, 0xe5, 0x79, 0xf2, 0xca, 0x86, 0xf1, 0xcb, 0x86, 0xee, 0xe6, 0x86, 0xf1, 0xe6,
0x7d, 0xf2, 0x79, 0xa0, 0x86, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x0d, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x79, 0x79, 0x85, 0x79, 0x79, 0xe5, 0xf2, 0xa1, 0xca, 0xf2, 0xf2, 0xcb, 0x86, 0xee, 0xcb, 0xf2,
0xf2, 0xe6, 0xf2, 0xf2, 0x79, 0xee, 0x7d, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x01,
0x00, 0x00, 0x00, 0x00, 0x00, 0x79, 0x79, 0x85, 0x79, 0x79, 0xe5, 0xf2, 0x86, 0x79, 0xf2, 0xf2, 0xcb, 0x86, 0xee,
0xcb, 0xf2, 0xf2, 0xcb, 0xf2, 0xf2, 0x79, 0xee, 0x7d, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79,
0x79, 0x79, 0x00, 0x00, 0x00, 0x00, 0x00, 0x79, 0x79, 0x85, 0x79, 0x79, 0xca, 0xf2, 0x7a, 0x79, 0xf1, 0xee, 0xcb,
0x86, 0xee, 0x7a, 0xf1, 0xee, 0x7a, 0xf2, 0xf1, 0x79, 0xee, 0x7a, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79,
0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x85, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79,
0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0xee, 0x7a, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79,
0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x85, 0x79, 0x79, 0x79, 0x79, 0x79,
0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0xf1, 0x79, 0x79, 0x79, 0x79, 0x79,
0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x85, 0x79, 0x79, 0x79,
0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0xee, 0xa1, 0x79, 0x79, 0x79,
0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x85, 0x79,
0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0xee, 0x86, 0x79,
0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79,
0x85, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0xee,
0x7d, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79,
0x79, 0x79, 0x85, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79,
0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79,
0x79, 0x79, 0x79, 0x79, 0x85, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79,
0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79,
0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x85, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79,
0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79,
0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x85, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79,
0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0xf2, 0xf2, 0xf2,
0xf2, 0xf2, 0xf2, 0xf2, 0xf2, 0xf2, 0xf2, 0xf2, 0xf2, 0xf2, 0xf2, 0xf2, 0xf2, 0xf2, 0xf2, 0xf2, 0xf2, 0xf2, 0xf2,
0xf2, 0xf2, 0xf2, 0xf2, 0xf2, 0xf2, 0xf2, 0xf2, 0xf2, 0xf2, 0xf2, 0xf2, 0xf2, 0xf2, 0xf2, 0xf2, 0xf2, 0xf2, 0xf2,
0xf2, 0xf2, 0xf2, 0xf2, 0xf2, 0xf2, 0xf2, 0xf2, 0xf2, 0xf2, 0xf2, 0xf2, 0xf2, 0xf2, 0xf2, 0xf2, 0xf2, 0xf2, 0xf2,
0xf2, 0xf2, 0xf2, 0xf2, 0xf2, 0xf2, 0xf2, 0xf2, 0xf2, 0xf2, 0xf2, 0xf2, 0xf2, 0xf2, 0xf2, 0xf2, 0xf2, 0xf2, 0xf2,
0xf2, 0xf2, 0xf2, 0xf2, 0xf2, 0xf2, 0xf2, 0xf2, 0xf2, 0xf2, 0xf2, 0xf2, 0xf2, 0xf2, 0xf2, 0xf2, 0xf2, 0xf2, 0xf2,
0xf2, 0xf2, 0xf2, 0xf2, 0xf2, 0xf2, 0xf2, 0xf2, 0xf2, 0xf2, 0xf2, 0xf2, 0xf2, 0xf2, 0xf2, 0xf2, 0xf2, 0xf2, 0xf2,
0xf2, 0xf2, 0xf2, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79,
0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x9d, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79,
0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79,
0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x9d, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79,
0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79,
0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x9d, 0x79, 0x79, 0x79, 0x79,
0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79,
0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x9d, 0x79, 0x79,
0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79,
0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x9d,
0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79,
0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79,
0x79, 0x9d, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79,
0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79,
0x79, 0x79, 0x79, 0x9d, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79,
0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79,
0x79, 0x79, 0x79, 0x79, 0x79, 0x9d, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79,
0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79,
0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x9d, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79,
0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79,
0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x9d, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79,
0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79,
0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x9d, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79,
0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79,
0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x9d, 0x79, 0x79, 0xa1, 0x79, 0xf1,
0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79,
0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x9d, 0x79, 0x79, 0xf2,
0x79, 0xf1, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x04, 0x75, 0x79, 0x79, 0x79, 0x00,
0x51, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x01, 0x00, 0x79, 0x79, 0x79, 0x0d, 0x00, 0x78, 0x79, 0x79, 0x9d, 0x79,
0x79, 0xf2, 0x79, 0xf1, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x00, 0x6c, 0x79, 0x79,
0x0d, 0x00, 0x00, 0x78, 0x79, 0x79, 0x79, 0x79, 0x79, 0x00, 0x00, 0x78, 0x79, 0x79, 0x01, 0x00, 0x6c, 0x79, 0x79,
0x9d, 0x79, 0x79, 0xf2, 0x79, 0xf2, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x04, 0x00, 0x6c,
0x79, 0x79, 0x04, 0x00, 0x00, 0x75, 0x79, 0x79, 0x79, 0x79, 0x28, 0x00, 0x00, 0x6c, 0x79, 0x79, 0x00, 0x00, 0x51,
0x79, 0x79, 0x9d, 0x79, 0x79, 0xf2, 0x7a, 0xf2, 0x79, 0xf2, 0x7d, 0xa0, 0xca, 0x7d, 0x79, 0x79, 0x79, 0x79, 0x00,
0x00, 0x6c, 0x79, 0x79, 0x01, 0x00, 0x00, 0x6c, 0x79, 0x79, 0x79, 0x79, 0x0d, 0x00, 0x00, 0x6c, 0x79, 0x28, 0x00,
0x00, 0x00, 0x79, 0x79, 0x9d, 0x79, 0x79, 0xf2, 0x7a, 0xf2, 0xca, 0xf2, 0x86, 0xa0, 0xca, 0x7d, 0x79, 0x79, 0x79,
0x79, 0x00, 0x00, 0x6c, 0x79, 0x79, 0x01, 0x6c, 0x01, 0x51, 0x79, 0x79, 0x79, 0x79, 0x04, 0x00, 0x00, 0x51, 0x79,
0x0d, 0x00, 0x00, 0x00, 0x79, 0x79, 0x9d, 0x79, 0x79, 0xd7, 0xcb, 0xf2, 0xca, 0xce, 0x86, 0xf1, 0xca, 0x7d, 0x79,
0x79, 0x79, 0x79, 0x00, 0x00, 0x6c, 0x79, 0x79, 0x00, 0x75, 0x0d, 0x51, 0x79, 0x79, 0x79, 0x79, 0x01, 0x6c, 0x0d,
0x00, 0x79, 0x0d, 0x00, 0x28, 0x00, 0x78, 0x79, 0x9d, 0x79, 0x79, 0xd7, 0xce, 0xef, 0x79, 0x79, 0x86, 0xee, 0xe5,
0x7a, 0x79, 0x79, 0x79, 0x79, 0x00, 0x00, 0x6c, 0x79, 0x79, 0x00, 0x78, 0x28, 0x51, 0x79, 0x79, 0x79, 0x79, 0x01,
0x75, 0x28, 0x00, 0x79, 0x04, 0x51, 0x79, 0x00, 0x78, 0x79, 0x9d, 0x79, 0x79, 0xd7, 0xe9, 0xef, 0x79, 0xca, 0xa1,
0xee, 0xe5, 0x7a, 0x79, 0x79, 0x79, 0x79, 0x79, 0x01, 0x6c, 0x79, 0x79, 0x00, 0x78, 0x28, 0x00, 0x79, 0x79, 0x79,
0x79, 0x01, 0x75, 0x28, 0x00, 0x79, 0x04, 0x6c, 0x79, 0x01, 0x75, 0x79, 0x9d, 0x79, 0x79, 0x86, 0xe9, 0xef, 0x79,
0xf2, 0xa1, 0xe5, 0xe6, 0x7a, 0x79, 0x79, 0x79, 0x79, 0x79, 0x01, 0x6c, 0x79, 0x79, 0x00, 0x78, 0x28, 0x00, 0x79,
0x28, 0x78, 0x79, 0x00, 0x78, 0x79, 0x00, 0x78, 0x04, 0x6c, 0x79, 0x01, 0x75, 0x79, 0x9d, 0x79, 0x79, 0x86, 0xf2,
0xee, 0xca, 0xa1, 0xa1, 0xe5, 0xef, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x01, 0x6c, 0x79, 0x79, 0x00, 0x78, 0x28,
0x51, 0x79, 0x04, 0x6c, 0x79, 0x00, 0x78, 0x79, 0x00, 0x78, 0x01, 0x6c, 0x79, 0x01, 0x75, 0x79, 0x9d, 0x79, 0x79,
0x86, 0xf1, 0xee, 0xe5, 0x7d, 0xa1, 0xe5, 0xef, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x01, 0x6c, 0x79, 0x79, 0x00,
0x78, 0x28, 0x51, 0x79, 0x04, 0x51, 0x79, 0x00, 0x78, 0x79, 0x00, 0x78, 0x01, 0x75, 0x79, 0x01, 0x6c, 0x79, 0x9d,
0x79, 0x79, 0x86, 0xa0, 0xee, 0xe5, 0x7a, 0xa1, 0xca, 0xef, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x01, 0x6c, 0x79,
0x79, 0x00, 0x75, 0x28, 0x51, 0x79, 0x01, 0x51, 0x79, 0x00, 0x78, 0x79, 0x00, 0x78, 0x01, 0x75, 0x79, 0x04, 0x6c,
0x79, 0x9d, 0x79, 0x79, 0x86, 0xa0, 0xee, 0xe5, 0xce, 0xa1, 0xca, 0xa1, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x01,
0x6c, 0x79, 0x79, 0x01, 0x6c, 0x0d, 0x6c, 0x79, 0x01, 0x51, 0x79, 0x00, 0x78, 0x79, 0x00, 0x75, 0x01, 0x75, 0x79,
0x04, 0x6c, 0x79, 0x9d, 0x79, 0x79, 0x86, 0x9d, 0xee, 0xca, 0xf2, 0xa1, 0x79, 0xa1, 0x79, 0x79, 0x79, 0x79, 0x79,
0x79, 0x01, 0x6c, 0x79, 0x79, 0x04, 0x00, 0x0d, 0x6c, 0x79, 0x01, 0x51, 0x28, 0x00, 0x78, 0x79, 0x00, 0x75, 0x01,
0x75, 0x79, 0x04, 0x6c, 0x79, 0x9d, 0x79, 0x79, 0x86, 0x79, 0xee, 0xca, 0xf2, 0xa0, 0x79, 0x86, 0x79, 0x79, 0x79,
0x79, 0x79, 0x79, 0x01, 0x6c, 0x79, 0x79, 0x04, 0x00, 0x00, 0x75, 0x79, 0x01, 0x51, 0x28, 0x00, 0x78, 0x79, 0x00,
0x75, 0x01, 0x75, 0x79, 0x04, 0x6c, 0x79, 0x9d, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x85, 0x79, 0x79, 0x86, 0x79,
0x79, 0x79, 0x79, 0x79, 0x79, 0x01, 0x6c, 0x79, 0x79, 0x0d, 0x00, 0x00, 0x78, 0x79, 0x04, 0x6c, 0x28, 0x00, 0x78,
0x79, 0x00, 0x75, 0x01, 0x75, 0x79, 0x04, 0x6c, 0x79, 0x9d, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79,
0x86, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x01, 0x6c, 0x79, 0x79, 0x28, 0x00, 0x00, 0x78, 0x79, 0x0d, 0x75, 0x28,
0x00, 0x78, 0x79, 0x01, 0x75, 0x01, 0x75, 0x79, 0x04, 0x6c, 0x79, 0x9d, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79,
0x79, 0xe5, 0x7d, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x01, 0x6c, 0x79, 0x79, 0x0d, 0x00, 0x00, 0x75, 0x79, 0x79,
0x79, 0x28, 0x00, 0x78, 0x79, 0x01, 0x75, 0x01, 0x75, 0x79, 0x04, 0x6c, 0x79, 0x9d, 0x79, 0x79, 0x79, 0x79, 0x79,
0x79, 0x79, 0x79, 0xee, 0x7d, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x01, 0x6c, 0x79, 0x79, 0x01, 0x09, 0x00, 0x6c,
0x79, 0x79, 0x79, 0x28, 0x00, 0x78, 0x79, 0x00, 0x75, 0x01, 0x75, 0x79, 0x04, 0x6c, 0x79, 0x9d, 0x79, 0x79, 0x79,
0x79, 0x79, 0x79, 0xe5, 0x7d, 0xf1, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x01, 0x6c, 0x79, 0x79, 0x01, 0x78,
0x00, 0x51, 0x79, 0x79, 0x79, 0x28, 0x00, 0x78, 0x79, 0x00, 0x75, 0x01, 0x75, 0x79, 0x04, 0x6c, 0x79, 0x9d, 0x79,
0x79, 0x79, 0x79, 0x79, 0x79, 0xe5, 0x7d, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x01, 0x6c, 0x79, 0x79,
0x00, 0x79, 0x04, 0x00, 0x79, 0x79, 0x79, 0x79, 0x00, 0x78, 0x79, 0x00, 0x75, 0x01, 0x75, 0x79, 0x04, 0x6c, 0x79,
0x9d, 0x79, 0x79, 0xf2, 0xf2, 0x7d, 0x86, 0xe5, 0x7d, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x01, 0x6c,
0x79, 0x28, 0x00, 0x79, 0x0d, 0x00, 0x79, 0x79, 0x79, 0x79, 0x00, 0x78, 0x79, 0x00, 0x78, 0x01, 0x75, 0x79, 0x04,
0x6c, 0x79, 0x9d, 0x79, 0x79, 0xf2, 0xf2, 0x7d, 0x86, 0xe5, 0x7d, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79,
0x01, 0x6c, 0x79, 0x28, 0x00, 0x79, 0x28, 0x00, 0x78, 0x79, 0x79, 0x79, 0x00, 0x78, 0x79, 0x00, 0x78, 0x01, 0x75,
0x79, 0x01, 0x6c, 0x79, 0x9d, 0x79, 0x79, 0xf2, 0xf2, 0x7d, 0x86, 0xe5, 0x7d, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79,
0x79, 0x79, 0x01, 0x6c, 0x79, 0x28, 0x51, 0x79, 0x79, 0x00, 0x78, 0x79, 0x79, 0x79, 0x00, 0x78, 0x79, 0x00, 0x78,
0x01, 0x75, 0x79, 0x01, 0x75, 0x79, 0x9d, 0x79, 0x79, 0x79, 0xe5, 0xe9, 0xf2, 0xe6, 0xe6, 0x7d, 0x79, 0x79, 0x79,
0x79, 0x79, 0x79, 0x79, 0x01, 0x6c, 0x79, 0x28, 0x51, 0x79, 0x79, 0x00, 0x78, 0x79, 0x79, 0x79, 0x00, 0x78, 0x79,
0x00, 0x78, 0x04, 0x6c, 0x79, 0x01, 0x75, 0x79, 0x9d, 0x79, 0x79, 0x79, 0xe5, 0xe6, 0xf2, 0xe6, 0xf2, 0x86, 0x79,
0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x01, 0x6c, 0x79, 0x28, 0x51, 0x79, 0x79, 0x00, 0x78, 0x28, 0x78, 0x79, 0x01,
0x75, 0x28, 0x00, 0x78, 0x04, 0x6c, 0x79, 0x01, 0x75, 0x79, 0x9d, 0x79, 0x79, 0x79, 0xee, 0xe6, 0xf2, 0xe6, 0xf2,
0xa1, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x01, 0x6c, 0x79, 0x28, 0x00, 0x79, 0x28, 0x00, 0x78, 0x04, 0x6c,
0x79, 0x01, 0x75, 0x28, 0x00, 0x79, 0x04, 0x6c, 0x79, 0x00, 0x75, 0x79, 0x9d, 0x79, 0x79, 0x79, 0xee, 0x79, 0x86,
0xe5, 0x7d, 0xa0, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x01, 0x6c, 0x79, 0x28, 0x00, 0x78, 0x28, 0x00, 0x79,
0x04, 0x51, 0x79, 0x01, 0x6c, 0x0d, 0x00, 0x79, 0x0d, 0x51, 0x79, 0x00, 0x78, 0x79, 0x9d, 0x79, 0x79, 0x79, 0xf1,
0x79, 0x86, 0xe5, 0x7d, 0xa0, 0x79, 0x79, 0x79, 0x79, 0x79, 0x28, 0x00, 0x00, 0x00, 0x51, 0x28, 0x00, 0x75, 0x0d,
0x00, 0x79, 0x01, 0x51, 0x79, 0x04, 0x51, 0x04, 0x51, 0x79, 0x0d, 0x00, 0x0d, 0x00, 0x78, 0x79, 0x9d, 0x79, 0x79,
0x79, 0xa0, 0x79, 0x86, 0xe5, 0x7d, 0xa0, 0x79, 0x79, 0x79, 0x79, 0x79, 0x28, 0x00, 0x00, 0x00, 0x51, 0x79, 0x00,
0x00, 0x00, 0x51, 0x79, 0x01, 0x51, 0x79, 0x04, 0x00, 0x00, 0x51, 0x79, 0x28, 0x00, 0x00, 0x00, 0x79, 0x79, 0x9d,
0x79, 0x79, 0x79, 0xa1, 0x79, 0x86, 0xe5, 0x7d, 0xa0, 0x79, 0x79, 0x79, 0x79, 0x79, 0x28, 0x00, 0x00, 0x00, 0x51,
0x79, 0x01, 0x00, 0x00, 0x51, 0x79, 0x01, 0x51, 0x79, 0x0d, 0x00, 0x00, 0x6c, 0x79, 0x28, 0x00, 0x00, 0x51, 0x79,
0x79, 0x9d, 0x79, 0x79, 0x79, 0x86, 0xca, 0x86, 0xe5, 0x7d, 0xa0, 0x79, 0x79, 0x79, 0x79, 0x79, 0x28, 0x00, 0x00,
0x00, 0x51, 0x79, 0x04, 0x00, 0x00, 0x6c, 0x79, 0x01, 0x51, 0x79, 0x28, 0x00, 0x00, 0x75, 0x79, 0x79, 0x00, 0x00,
0x6c, 0x79, 0x79, 0x9d, 0x79, 0x79, 0xca, 0x86, 0x79, 0x86, 0xe5, 0x7d, 0xa0, 0x79, 0x79, 0x79, 0x79, 0x79, 0x28,
0x00, 0x00, 0x00, 0x51, 0x79, 0x0d, 0x00, 0x00, 0x78, 0x79, 0x04, 0x6c, 0x79, 0x79, 0x00, 0x00, 0x78, 0x79, 0x79,
0x04, 0x00, 0x75, 0x79, 0x79, 0x9d, 0x79, 0x79, 0xca, 0x7d, 0x79, 0x86, 0xe5, 0x7d, 0xa0, 0x79, 0x79, 0x79, 0x79,
0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x01, 0x6c, 0x79, 0x79, 0x0d, 0x75, 0x79, 0x79, 0x0d, 0x51, 0x79,
0x79, 0x79, 0x28, 0x00, 0x79, 0x79, 0x79, 0x9d, 0x79, 0x79, 0xe5, 0x7d, 0x79, 0xf2, 0xe6, 0x7d, 0xa0, 0x79, 0x79,
0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79,
0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x9d, 0x79, 0x79, 0xe5, 0x7a, 0x79, 0xf2, 0xe6, 0x7d, 0xa0,
0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79,
0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x9d, 0x79, 0x79, 0xee, 0x7a, 0x79, 0xee, 0xcb,
0x7a, 0xa0, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79,
0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x9d, 0x79, 0x79, 0xee, 0x79, 0x79,
0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79,
0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x9d, 0x79, 0x79, 0x79,
0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79,
0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x9d, 0x79,
0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79,
0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79,
0x9d, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79,
0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79,
0x79, 0x79, 0x9d, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79,
0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79,
0x79, 0x79, 0x79, 0x79, 0x9d, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79,
0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79,
0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x9d, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79,
0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79,
0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x9d, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79,
0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79,
0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x9d, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79,
0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79,
0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x9d, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79,
0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79,
0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x9d, 0x79, 0x79, 0x79, 0x79,
0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79,
0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x9d, 0x79, 0x79,
0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79,
0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x9d,
0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79,
0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79,
0x79, 0x9d, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79,
0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79,
0x79, 0x79, 0x79, 0x9d, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0xf2, 0xf2,
0xf2, 0xf2, 0xf2, 0xf2, 0xf2, 0xf2, 0xf2, 0xf2, 0xf2, 0xf2, 0xf2, 0xf2, 0xf2, 0xf2, 0xf2, 0xf2, 0xf2, 0xf2, 0xf2,
0xf2, 0xf2, 0xf2, 0xf2, 0xf2, 0xf2, 0xf2, 0xf2, 0xf2, 0xf2, 0xf2, 0xf2, 0xf2, 0xf2, 0xf2, 0xf2, 0xf2, 0xf2, 0xf2,
0xf2, 0xf2, 0xf2, 0xf2, 0xf2, 0xf2, 0xf2, 0xf2, 0xf2, 0xf2, 0xf2, 0xf2, 0xf2, 0xf2, 0xf2, 0xf2, 0xf2, 0xf2, 0xf2,
0xf2, 0xf2, 0xf2, 0xf2, 0xf2, 0xf2, 0xf2, 0xf2, 0xf2, 0xf2, 0xf2, 0xf2, 0xf2, 0xf2, 0xf2, 0xf2, 0xf2, 0xf2, 0xf2,
0xf2, 0xf2, 0xf2, 0xf2, 0xf2, 0xf2, 0xf2, 0xf2, 0xf2, 0xf2, 0xf2, 0xf2, 0xf2, 0xf2, 0xf2, 0xf2, 0xf2, 0xf2, 0xf2,
0xf2, 0xf2, 0xf2, 0xf2, 0xf2, 0xf2, 0xf2, 0xf2, 0xf2, 0xf2, 0xf2, 0xf2, 0xf2, 0xf2, 0xf2, 0xf2, 0xf2, 0xf2, 0xf2,
0xf2, 0xf2, 0xf2, 0xf2, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79,
0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79,
0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79,
0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79,
0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79,
0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79,
0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79,
0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79,
0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0xf2, 0x7a, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79,
0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79,
0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0xe5, 0xf2, 0x86, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79,
0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79,
0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0xee, 0xf2, 0xf2, 0x79, 0x79, 0x79, 0x79,
0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79,
0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0xf1, 0xf2, 0xf2, 0x7a, 0x79,
0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79,
0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0xf1, 0x7a, 0xf1,
0x7a, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79,
0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf2,
0x79, 0xee, 0x7d, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79,
0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x6d, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79,
0x79, 0xf2, 0xef, 0xee, 0x7d, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79,
0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x76, 0x79, 0x79, 0x79, 0x79,
0x79, 0x79, 0xca, 0xf2, 0xf2, 0xee, 0x7d, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79,
0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x76, 0x79, 0x79,
0x1f, 0x6c, 0x79, 0x79, 0xca, 0xf2, 0xa1, 0xee, 0x7d, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79,
0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x76,
0x79, 0x79, 0x51, 0x6c, 0x79, 0x79, 0xca, 0xf2, 0xa1, 0xf1, 0x7d, 0x79, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x78, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79,
0x79, 0x76, 0x79, 0x28, 0x51, 0x51, 0x79, 0x79, 0xca, 0xf2, 0x7d, 0xf2, 0x7d, 0x28, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x75, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79,
0x79, 0x79, 0x79, 0x76, 0x79, 0x0d, 0x51, 0x52, 0x79, 0x79, 0x79, 0xf2, 0xcb, 0xf2, 0x7d, 0x28, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x6c, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79,
0x79, 0x79, 0x79, 0x79, 0x79, 0x76, 0x79, 0x04, 0x00, 0x01, 0x79, 0x79, 0x79, 0xf2, 0x79, 0xee, 0x7d, 0x28, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x75, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79,
0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x76, 0x79, 0x04, 0x00, 0x01, 0x79, 0x79, 0x79, 0xf2, 0x79, 0xee, 0x7a,
0x5e, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x5d, 0x79, 0x79, 0x79, 0x79, 0x79,
0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x76, 0x79, 0x04, 0x00, 0x03, 0x79, 0x79, 0x79, 0xf1, 0xf2,
0xf2, 0x7a, 0x0d, 0x0d, 0x00, 0x00, 0x00, 0x00, 0x51, 0x28, 0x00, 0x00, 0x00, 0x00, 0x51, 0x52, 0x79, 0x79, 0x79,
0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x76, 0x79, 0x01, 0x00, 0x03, 0x78, 0x79, 0x79,
0xee, 0xf2, 0xf2, 0x79, 0x0d, 0x24, 0x00, 0x00, 0x00, 0x00, 0x51, 0x01, 0x00, 0x00, 0x00, 0x00, 0x75, 0x51, 0x79,
0x79, 0x79, 0x79, 0x79, 0x00, 0x51, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x76, 0x79, 0x04, 0x00, 0x03, 0x78,
0x79, 0x79, 0xe5, 0xf2, 0xa1, 0x79, 0x0d, 0x51, 0x01, 0x00, 0x00, 0x00, 0x6c, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0d,
0x51, 0x79, 0x79, 0x79, 0x79, 0x04, 0x00, 0x00, 0x75, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x76, 0x79, 0x04, 0x00,
0x09, 0x78, 0x79, 0x79, 0x79, 0xf2, 0x77, 0x79, 0x0d, 0x00, 0x0d, 0x00, 0x00, 0x00, 0x6c, 0x0c, 0x00, 0x00, 0x00,
0x51, 0x01, 0x51, 0x79, 0x79, 0x79, 0x79, 0x01, 0x00, 0x00, 0x6c, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x76, 0x79,
0x01, 0x00, 0x09, 0x78, 0x79, 0x79, 0x79, 0x79, 0x76, 0x79, 0x0d, 0x00, 0x75, 0x00, 0x00, 0x00, 0x6c, 0x28, 0x00,
0x00, 0x00, 0x24, 0x00, 0x51, 0x79, 0x79, 0x79, 0x28, 0x00, 0x00, 0x00, 0x00, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79,
0x76, 0x79, 0x04, 0x00, 0x1b, 0x78, 0x79, 0x79, 0x79, 0x79, 0x76, 0x79, 0x0d, 0x00, 0x51, 0x01, 0x00, 0x00, 0x6c,
0x24, 0x00, 0x00, 0x00, 0x0d, 0x00, 0x51, 0x79, 0x79, 0x79, 0x0d, 0x00, 0x00, 0x00, 0x00, 0x78, 0x79, 0x79, 0x79,
0x79, 0x79, 0x76, 0x79, 0x04, 0x00, 0x1b, 0x79, 0x79, 0x79, 0x79, 0x79, 0x76, 0x79, 0x0d, 0x00, 0x00, 0x0c, 0x00,
0x00, 0x6c, 0x24, 0x00, 0x00, 0x6c, 0x01, 0x00, 0x51, 0x79, 0x79, 0x79, 0x0d, 0x00, 0x00, 0x00, 0x00, 0x78, 0x79,
0x79, 0x79, 0x79, 0x79, 0x76, 0x79, 0x04, 0x00, 0x6c, 0x79, 0x79, 0x79, 0x79, 0x79, 0x76, 0x79, 0x0d, 0x00, 0x00,
0x75, 0x00, 0x00, 0x51, 0x25, 0x00, 0x00, 0x24, 0x00, 0x00, 0x51, 0x79, 0x79, 0x79, 0x04, 0x6c, 0x01, 0x6c, 0x01,
0x75, 0x79, 0x79, 0x79, 0x79, 0x79, 0x76, 0x79, 0x04, 0x51, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x76, 0x79, 0x0d,
0x00, 0x00, 0x51, 0x04, 0x00, 0x51, 0x0d, 0x00, 0x00, 0x04, 0x00, 0x00, 0x51, 0x79, 0x79, 0x79, 0x01, 0x6c, 0x04,
0x75, 0x01, 0x6c, 0x79, 0x79, 0x79, 0x79, 0x79, 0x76, 0x79, 0x04, 0x51, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x76,
0x79, 0x0d, 0x00, 0x00, 0x00, 0x0c, 0x00, 0x00, 0x00, 0x00, 0x6c, 0x00, 0x00, 0x00, 0x51, 0x79, 0x79, 0x79, 0x01,
0x6c, 0x01, 0x6c, 0x01, 0x6c, 0x79, 0x79, 0x79, 0x79, 0x79, 0x76, 0x79, 0x0d, 0x00, 0x79, 0x79, 0x79, 0x79, 0x79,
0x79, 0x76, 0x79, 0x0d, 0x00, 0x00, 0x00, 0x6c, 0x00, 0x00, 0x00, 0x00, 0x27, 0x00, 0x00, 0x00, 0x51, 0x79, 0x79,
0x79, 0x01, 0x00, 0x00, 0x00, 0x51, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x76, 0x79, 0x0d, 0x00, 0x78, 0x79, 0x79,
0x79, 0x79, 0x79, 0x76, 0x79, 0x0d, 0x00, 0x00, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, 0x51,
0x79, 0x79, 0x79, 0x01, 0x00, 0x00, 0x00, 0x78, 0x00, 0x79, 0x79, 0x79, 0x79, 0x79, 0x76, 0x79, 0x0d, 0x00, 0x78,
0x79, 0x79, 0x79, 0x79, 0x79, 0x76, 0x79, 0x0d, 0x00, 0x00, 0x00, 0x00, 0x27, 0x00, 0x00, 0x6c, 0x00, 0x00, 0x00,
0x00, 0x51, 0x79, 0x79, 0x79, 0x01, 0x00, 0x00, 0x00, 0x01, 0x00, 0x6c, 0x79, 0x79, 0x79, 0x79, 0x76, 0x79, 0x0d,
0x00, 0x75, 0x79, 0x79, 0x79, 0x79, 0x79, 0x76, 0x79, 0x0d, 0x00, 0x00, 0x00, 0x00, 0x6c, 0x00, 0x00, 0x0c, 0x00,
0x00, 0x00, 0x00, 0x51, 0x79, 0x79, 0x79, 0x01, 0x00, 0x00, 0x6c, 0x00, 0x00, 0x51, 0x79, 0x79, 0x79, 0x79, 0x76,
0x79, 0x28, 0x00, 0x75, 0x79, 0x79, 0x79, 0x79, 0x79, 0x76, 0x79, 0x0d, 0x00, 0x00, 0x00, 0x00, 0x0c, 0x04, 0x51,
0x28, 0x00, 0x00, 0x00, 0x00, 0x51, 0x79, 0x79, 0x79, 0x01, 0x00, 0x00, 0x09, 0x00, 0x00, 0x00, 0x78, 0x79, 0x79,
0x79, 0x76, 0x79, 0x28, 0x00, 0x6c, 0x79, 0x79, 0x79, 0x79, 0x79, 0x76, 0x79, 0x0d, 0x00, 0x00, 0x00, 0x00, 0x04,
0x24, 0x6c, 0x51, 0x01, 0x00, 0x00, 0x00, 0x51, 0x79, 0x79, 0x79, 0x01, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0x75,
0x79, 0x79, 0x79, 0x76, 0x79, 0x79, 0x00, 0x6c, 0x79, 0x79, 0x79, 0x79, 0x79, 0x76, 0x79, 0x0d, 0x00, 0x00, 0x00,
0x6c, 0x00, 0x6c, 0x0d, 0x00, 0x04, 0x00, 0x00, 0x00, 0x51, 0x79, 0x79, 0x79, 0x01, 0x00, 0x00, 0x03, 0x00, 0x00,
0x00, 0x75, 0x79, 0x79, 0x79, 0x76, 0x79, 0x79, 0x00, 0x51, 0x79, 0x79, 0x79, 0x79, 0x79, 0x76, 0x79, 0x0d, 0x00,
0x00, 0x00, 0x0c, 0x00, 0x00, 0x00, 0x00, 0x24, 0x00, 0x00, 0x00, 0x51, 0x79, 0x79, 0x79, 0x04, 0x00, 0x00, 0x01,
0x75, 0x00, 0x04, 0x6c, 0x79, 0x79, 0x79, 0x76, 0x79, 0x79, 0x00, 0x51, 0x79, 0x79, 0x79, 0x79, 0x79, 0x76, 0x79,
0x0d, 0x00, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, 0x00, 0x6c, 0x00, 0x00, 0x00, 0x51, 0x79, 0x79, 0x79, 0x04, 0x00,
0x00, 0x01, 0x75, 0x00, 0x04, 0x6c, 0x79, 0x79, 0x79, 0x76, 0x79, 0x79, 0x01, 0x00, 0x79, 0x79, 0x79, 0x79, 0x79,
0x76, 0x79, 0x0d, 0x00, 0x00, 0x6c, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x00, 0x00, 0x51, 0x79, 0x79, 0x79,
0x0d, 0x00, 0x00, 0x00, 0x1b, 0x00, 0x00, 0x6c, 0x79, 0x79, 0x79, 0x76, 0x79, 0x79, 0x01, 0x00, 0x78, 0x79, 0x79,
0x79, 0x79, 0x76, 0x79, 0x0d, 0x00, 0x00, 0x24, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x24, 0x00, 0x00, 0x51, 0x79,
0x79, 0x79, 0x28, 0x00, 0x51, 0x00, 0x00, 0x00, 0x00, 0x51, 0x79, 0x79, 0x79, 0x76, 0x79, 0x79, 0x04, 0x00, 0x78,
0x79, 0x79, 0x79, 0x79, 0x76, 0x79, 0x0d, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x6c, 0x00, 0x00,
0x51, 0x79, 0x79, 0x79, 0x79, 0x00, 0x51, 0x00, 0x00, 0x00, 0x00, 0x6c, 0x79, 0x79, 0x79, 0x76, 0x79, 0x79, 0x0d,
0x00, 0x75, 0x79, 0x79, 0x79, 0x79, 0x76, 0x79, 0x0d, 0x00, 0x6c, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x04, 0x00, 0x51, 0x79, 0x79, 0x79, 0x79, 0x01, 0x51, 0x00, 0x00, 0x00, 0x00, 0x51, 0x79, 0x79, 0x79, 0x76, 0x79,
0x79, 0x0d, 0x00, 0x75, 0x0d, 0x75, 0x79, 0x79, 0x76, 0x79, 0x0d, 0x00, 0x24, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x0c, 0x00, 0x51, 0x79, 0x79, 0x79, 0x79, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x6c, 0x79, 0x79, 0x79,
0x76, 0x79, 0x79, 0x28, 0x00, 0x6c, 0x1c, 0x6c, 0x79, 0x79, 0x76, 0x79, 0x0d, 0x00, 0x04, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x6c, 0x00, 0x51, 0x79, 0x79, 0x79, 0x79, 0x6c, 0x5e, 0x01, 0x00, 0x00, 0x00, 0x6c, 0x79,
0x79, 0x79, 0x76, 0x79, 0x79, 0x28, 0x00, 0x6c, 0x1b, 0x51, 0x79, 0x79, 0x76, 0x79, 0x0d, 0x51, 0x01, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x51, 0x04, 0x51, 0x79, 0x79, 0x79, 0x79, 0x78, 0x79, 0x01, 0x00, 0x00, 0x00,
0x6c, 0x79, 0x79, 0x79, 0x76, 0x79, 0x79, 0x79, 0x00, 0x00, 0x51, 0x51, 0x79, 0x79, 0x76, 0x79, 0x0d, 0x24, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0c, 0x51, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x04, 0x00,
0x00, 0x00, 0x75, 0x79, 0x79, 0x79, 0x76, 0x79, 0x79, 0x79, 0x01, 0x00, 0x00, 0x01, 0x79, 0x79, 0x76, 0x79, 0x0d,
0x0c, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x6c, 0x51, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79,
0x0d, 0x00, 0x00, 0x00, 0x78, 0x79, 0x79, 0x79, 0x76, 0x79, 0x79, 0x79, 0x04, 0x00, 0x00, 0x04, 0x78, 0x79, 0x76,
0x79, 0x5e, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x51, 0x52, 0x79, 0x79, 0x79, 0x79,
0x79, 0x79, 0x28, 0x00, 0x00, 0x00, 0x79, 0x79, 0x79, 0x79, 0x76, 0x79, 0x79, 0x79, 0x04, 0x00, 0x00, 0x03, 0x78,
0x79, 0x76, 0x79, 0x28, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x5d, 0x79, 0x79,
0x79, 0x79, 0x79, 0x79, 0x79, 0x00, 0x00, 0x51, 0x79, 0x79, 0x79, 0x79, 0x76, 0x79, 0x79, 0x79, 0x0d, 0x00, 0x00,
0x09, 0x75, 0x79, 0x76, 0x79, 0x0d, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x75,
0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x0d, 0x00, 0x00, 0x79, 0x79, 0x79, 0x79, 0x76, 0x79, 0x79, 0x79, 0x28,
0x00, 0x00, 0x1b, 0x75, 0x79, 0x76, 0x79, 0x0d, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x51, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x0d, 0x79, 0x79, 0x79, 0x79, 0x76, 0x79, 0x79,
0x79, 0x79, 0x00, 0x00, 0x6c, 0x6c, 0x79, 0x76, 0x79, 0x0d, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x6c, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x76,
0x79, 0x79, 0x79, 0x79, 0x01, 0x00, 0x51, 0x75, 0x79, 0x76, 0x79, 0x28, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x6c, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79,
0x79, 0x76, 0x79, 0x79, 0x79, 0x79, 0x04, 0x00, 0x00, 0x79, 0x79, 0x76, 0x79, 0x79, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x75, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79,
0x79, 0x79, 0x79, 0x76, 0x79, 0x79, 0x79, 0x79, 0x0d, 0x00, 0x00, 0x79, 0x79, 0x76, 0x79, 0x79, 0x01, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79,
0x79, 0x79, 0x79, 0x79, 0x79, 0x76, 0x79, 0x79, 0x79, 0x79, 0x79, 0x00, 0x51, 0x79, 0x79, 0x76, 0x79, 0x79, 0x79,
0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79,
0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x76, 0x79, 0x79, 0x79, 0x79, 0x79, 0x01, 0x75, 0x79, 0x79, 0x76, 0x79,
0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79,
0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x6d, 0x79, 0x79, 0x79, 0x79, 0x79, 0x28, 0x79, 0x79, 0x79,
0x75, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79,
0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x78, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79,
0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79,
0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79,
0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79,
0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79,
0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79,
0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79,
0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79,
0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79,
0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79,
0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79,
0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79,
0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79,
0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79,
0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79,
0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79,
0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79, 0x79,
0x79,
});
using eink::Voltage::VSH1;
using eink::Voltage::VSH2;
using eink::Voltage::VSL1;
using eink::Voltage::VSS1;
//////////////////////////////////////////////////////////////////////////
constexpr auto
ORIGINAL_WAVEFORM_LUT =
flash::Wrapper<eink::Waveform>{
eink::Waveform{
.lut = {{{
{.phaseD = VSH1, .phaseC = VSH1, .phaseB = VSS1, .phaseA = VSH1},
{.phaseD = VSL1, .phaseC = VSL1, .phaseB = VSH1, .phaseA = VSL1},
{.phaseD = VSL1, .phaseC = VSH1, .phaseB = VSL1, .phaseA = VSH1},
{.phaseD = VSL1, .phaseC = VSL1, .phaseB = VSL1, .phaseA = VSH1},
{.phaseD = VSS1, .phaseC = VSS1, .phaseB = VSL1, .phaseA = VSH1},
{.phaseD = VSL1, .phaseC = VSL1, .phaseB = VSH1, .phaseA = VSL1},
{.phaseD = VSS1, .phaseC = VSS1, .phaseB = VSH1, .phaseA = VSL1},
{.phaseD = VSS1, .phaseC = VSS1, .phaseB = VSH1, .phaseA = VSL1},
{.phaseD = VSS1, .phaseC = VSS1, .phaseB = VSS1, .phaseA = VSH1},
{.phaseD = VSS1, .phaseC = VSS1, .phaseB = VSS1, .phaseA = VSS1},
{.phaseD = VSS1, .phaseC = VSS1, .phaseB = VSH1, .phaseA = VSS1},
{.phaseD = VSS1, .phaseC = VSS1, .phaseB = VSS1, .phaseA = VSH1},
}},
{{
{.phaseD = VSS1, .phaseC = VSS1, .phaseB = VSH1, .phaseA = VSH1},
{.phaseD = VSS1, .phaseC = VSL1, .phaseB = VSH1, .phaseA = VSL1},
{.phaseD = VSL1, .phaseC = VSH1, .phaseB = VSL1, .phaseA = VSH1},
{.phaseD = VSS1, .phaseC = VSH1, .phaseB = VSL1, .phaseA = VSH1},
{.phaseD = VSS1, .phaseC = VSS1, .phaseB = VSL1, .phaseA = VSH1},
{.phaseD = VSS1, .phaseC = VSS1, .phaseB = VSH1, .phaseA = VSL1},
{.phaseD = VSS1, .phaseC = VSL1, .phaseB = VSS1, .phaseA = VSS1},
{.phaseD = VSS1, .phaseC = VSS1, .phaseB = VSS1, .phaseA = VSS1},
{.phaseD = VSS1, .phaseC = VSS1, .phaseB = VSL1, .phaseA = VSS1},
{.phaseD = VSS1, .phaseC = VSS1, .phaseB = VSS1, .phaseA = VSS1},
{.phaseD = VSS1, .phaseC = VSS1, .phaseB = VSS1, .phaseA = VSS1},
{.phaseD = VSL1, .phaseC = VSS1, .phaseB = VSS1, .phaseA = VSS1},
}},
{{
{.phaseD = VSL1, .phaseC = VSL1, .phaseB = VSS1, .phaseA = VSS1},
{.phaseD = VSL1, .phaseC = VSL1, .phaseB = VSH1, .phaseA = VSL1},
{.phaseD = VSL1, .phaseC = VSH1, .phaseB = VSL1, .phaseA = VSH1},
{.phaseD = VSH1, .phaseC = VSH1, .phaseB = VSL1, .phaseA = VSH1},
{.phaseD = VSS1, .phaseC = VSS1, .phaseB = VSL1, .phaseA = VSH1},
{.phaseD = VSS1, .phaseC = VSS1, .phaseB = VSH1, .phaseA = VSL1},
{.phaseD = VSS1, .phaseC = VSS1, .phaseB = VSS1, .phaseA = VSS1},
{.phaseD = VSS1, .phaseC = VSS1, .phaseB = VSS1, .phaseA = VSS1},
{.phaseD = VSH2, .phaseC = VSL1, .phaseB = VSL1, .phaseA = VSS1},
{.phaseD = VSH2, .phaseC = VSS1, .phaseB = VSL1, .phaseA = VSL1},
{.phaseD = VSH2, .phaseC = VSH2, .phaseB = VSH2, .phaseA = VSL1},
{.phaseD = VSS1, .phaseC = VSH2, .phaseB = VSH2, .phaseA = VSH2},
}},
{{
{.phaseD = VSL1, .phaseC = VSL1, .phaseB = VSS1, .phaseA = VSS1},
{.phaseD = VSL1, .phaseC = VSL1, .phaseB = VSH1, .phaseA = VSL1},
{.phaseD = VSL1, .phaseC = VSH1, .phaseB = VSL1, .phaseA = VSH1},
{.phaseD = VSH1, .phaseC = VSH1, .phaseB = VSL1, .phaseA = VSH1},
{.phaseD = VSS1, .phaseC = VSS1, .phaseB = VSL1, .phaseA = VSH1},
{.phaseD = VSS1, .phaseC = VSS1, .phaseB = VSH1, .phaseA = VSL1},
{.phaseD = VSS1, .phaseC = VSS1, .phaseB = VSS1, .phaseA = VSS1},
{.phaseD = VSS1, .phaseC = VSS1, .phaseB = VSS1, .phaseA = VSS1},
{.phaseD = VSH2, .phaseC = VSL1, .phaseB = VSL1, .phaseA = VSS1},
{.phaseD = VSH2, .phaseC = VSS1, .phaseB = VSL1, .phaseA = VSL1},
{.phaseD = VSH2, .phaseC = VSH2, .phaseB = VSH2, .phaseA = VSL1},
{.phaseD = VSS1, .phaseC = VSH2, .phaseB = VSH2, .phaseA = VSH2},
}},
{{
{.phaseD = VSS1, .phaseC = VSS1, .phaseB = VSS1, .phaseA = VSS1},
{.phaseD = VSS1, .phaseC = VSS1, .phaseB = VSL1, .phaseA = VSH1},
{.phaseD = VSS1, .phaseC = VSS1, .phaseB = VSS1, .phaseA = VSS1},
{.phaseD = VSS1, .phaseC = VSS1, .phaseB = VSS1, .phaseA = VSS1},
{.phaseD = VSS1, .phaseC = VSS1, .phaseB = VSS1, .phaseA = VSS1},
{.phaseD = VSS1, .phaseC = VSS1, .phaseB = VSS1, .phaseA = VSS1},
{.phaseD = VSS1, .phaseC = VSS1, .phaseB = VSS1, .phaseA = VSS1},
{.phaseD = VSS1, .phaseC = VSS1, .phaseB = VSS1, .phaseA = VSS1},
{.phaseD = VSS1, .phaseC = VSS1, .phaseB = VSS1, .phaseA = VSS1},
{.phaseD = VSS1, .phaseC = VSS1, .phaseB = VSS1, .phaseA = VSS1},
{.phaseD = VSS1, .phaseC = VSS1, .phaseB = VSS1, .phaseA = VSS1},
{.phaseD = VSS1, .phaseC = VSS1, .phaseB = VSS1, .phaseA = VSS1},
}}},
.timings =
{
{
.frameCountPhaseA = 32,
.frameCountPhaseB = 16,
.repeatSubPhaseAB = 0,
.frameCountPhaseC = 19,
.frameCountPhaseD = 20,
.repeatSubPhaseCD = 0,
.repeat = 0,
},
{
.frameCountPhaseA = 3,
.frameCountPhaseB = 3,
.repeatSubPhaseAB = 6,
.frameCountPhaseC = 12,
.frameCountPhaseD = 10,
.repeatSubPhaseCD = 0,
.repeat = 0,
},
{
.frameCountPhaseA = 3,
.frameCountPhaseB = 4,
.repeatSubPhaseAB = 0,
.frameCountPhaseC = 3,
.frameCountPhaseD = 4,
.repeatSubPhaseCD = 0,
.repeat = 10,
},
{
.frameCountPhaseA = 3,
.frameCountPhaseB = 3,
.repeatSubPhaseAB = 10,
.frameCountPhaseC = 22,
.frameCountPhaseD = 2,
.repeatSubPhaseCD = 0,
.repeat = 0,
},
{
.frameCountPhaseA = 3,
.frameCountPhaseB = 3,
.repeatSubPhaseAB = 3,
.frameCountPhaseC = 0,
.frameCountPhaseD = 0,
.repeatSubPhaseCD = 0,
.repeat = 0,
},
{
.frameCountPhaseA = 2,
.frameCountPhaseB = 2,
.repeatSubPhaseAB = 3,
.frameCountPhaseC = 5,
.frameCountPhaseD = 5,
.repeatSubPhaseCD = 1,
.repeat = 0,
},
{
.frameCountPhaseA = 22,
.frameCountPhaseB = 20,
.repeatSubPhaseAB = 0,
.frameCountPhaseC = 20,
.frameCountPhaseD = 0,
.repeatSubPhaseCD = 0,
.repeat = 0,
},
{
.frameCountPhaseA = 0,
.frameCountPhaseB = 0,
.repeatSubPhaseAB = 0,
.frameCountPhaseC = 0,
.frameCountPhaseD = 0,
.repeatSubPhaseCD = 0,
.repeat = 0,
},
{
.frameCountPhaseA = 4,
.frameCountPhaseB = 5,
.repeatSubPhaseAB = 0,
.frameCountPhaseC = 3,
.frameCountPhaseD = 40,
.repeatSubPhaseCD = 0,
.repeat = 2,
},
{
.frameCountPhaseA = 2,
.frameCountPhaseB = 3,
.repeatSubPhaseAB = 0,
.frameCountPhaseC = 3,
.frameCountPhaseD = 50,
.repeatSubPhaseCD = 0,
.repeat = 1,
},
{
.frameCountPhaseA = 6,
.frameCountPhaseB = 3,
.repeatSubPhaseAB = 0,
.frameCountPhaseC = 34,
.frameCountPhaseD = 5,
.repeatSubPhaseCD = 0,
.repeat = 0,
},
{
.frameCountPhaseA = 4,
.frameCountPhaseB = 5,
.repeatSubPhaseAB = 0,
.frameCountPhaseC = 5,
.frameCountPhaseD = 1,
.repeatSubPhaseCD = 0,
.repeat = 0,
},
},
.frameRates = {2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2},
.subPhaseGateStates = {},
}};
static inline consteval auto createFastWaveformLut(const flash::Wrapper<eink::Waveform> &original)
{
auto fastWaveformLut = original.value;
for (auto i = std::size_t{0}; i < std::size(fastWaveformLut.timings) - 1; ++i) {
fastWaveformLut.timings[i].frameCountPhaseA = 0;
fastWaveformLut.timings[i].frameCountPhaseB = 0;
fastWaveformLut.timings[i].repeatSubPhaseAB = 0;
fastWaveformLut.timings[i].frameCountPhaseC = 0;
fastWaveformLut.timings[i].frameCountPhaseD = 0;
fastWaveformLut.timings[i].repeatSubPhaseCD = 0;
fastWaveformLut.timings[i].repeat = 0;
}
fastWaveformLut.timings[11].frameCountPhaseA = 4;
fastWaveformLut.timings[11].frameCountPhaseB = 5;
fastWaveformLut.timings[11].repeatSubPhaseAB = 2;
fastWaveformLut.timings[11].frameCountPhaseC = 5;
fastWaveformLut.timings[11].frameCountPhaseD = 1;
fastWaveformLut.timings[11].repeatSubPhaseCD = 2;
fastWaveformLut.timings[11].repeat = 4;
return flash::Wrapper{fastWaveformLut};
}
constexpr auto FAST_WAVEFORM_LUT = createFastWaveformLut(ORIGINAL_WAVEFORM_LUT);
void dumpOTP(eink_t &einkDisplay, uart_t &serial)
{
constexpr auto printWidth = 16;
auto printedCnt = std::size_t{0};
einkDisplay.dumpOTP([&serial, &printedCnt](const auto &data) {
constexpr auto printAddress = true;
if (printedCnt > 0 && printedCnt % printWidth == 0) {
serial << F("\r\n");
}
if (printAddress && printedCnt % printWidth == 0) {
serial << F("0x");
serial.txNumber<std::size_t, 16, 4>(printedCnt);
serial << F(": ");
}
serial << F("0x");
serial.txNumber<std::remove_cvref_t<decltype(data)>, 16, 2>(data);
serial << F(", ");
++printedCnt;
});
serial << F("\r\n");
}
int main()
{
using spi_t = spi::Software<spi::SoftwareConfig<io::P::C4, io::P::NONE, io::P::C5, io::P::C3>>;
uart_t serial;
serial.init();
@@ -451,16 +276,69 @@ int main()
serial << F("e-Paper demo") << F("\r\n");
auto einkDisplay = eink::Eink<200, 200, spi_t, io::P::C1, io::P::C2, io::P::C0>{};
einkDisplay.init();
auto einkDisplay = eink_t{};
serial << F("e-Paper init") << F("\r\n");
einkDisplay.init();
serial << F("e-Paper dump OTP") << F("\r\n");
dumpOTP(einkDisplay, serial);
serial << F("e-Paper clear") << F("\r\n");
einkDisplay.clear();
serial << F("e-Paper update") << F("\r\n");
einkDisplay.update();
serial << F("e-Paper draw fast") << F("\r\n");
einkDisplay.draw(RLE_IMAGE);
serial << F("e-Paper update") << F("\r\n");
einkDisplay.update(FAST_WAVEFORM_LUT);
serial << F("e-Paper clear") << F("\r\n");
einkDisplay.clear();
serial << F("e-Paper update") << F("\r\n");
einkDisplay.update();
serial << F("e-Paper draw") << F("\r\n");
einkDisplay.draw(IMAGE);
einkDisplay.draw(RLE_IMAGE);
serial << F("e-Paper update") << F("\r\n");
einkDisplay.update();
serial << F("e-Paper clear") << F("\r\n");
einkDisplay.clear();
serial << F("e-Paper update") << F("\r\n");
einkDisplay.update();
serial << F("e-Paper draw text") << F("\r\n");
const auto startX = 16;
const auto startY = 58;
einkDisplay.drawText({startX, startY}, "B->B: ", eink_t::Color::BLACK, eink_t::Color::WHITE);
einkDisplay.drawText({startX + 6 * 8, startY}, "Black on black", eink_t::Color::BLACK, eink_t::Color::BLACK);
einkDisplay.drawText({startX, startY + 10}, "B->R: ", eink_t::Color::BLACK, eink_t::Color::WHITE);
einkDisplay.drawText({startX + 6 * 8, startY + 10}, "Black on red", eink_t::Color::BLACK, eink_t::Color::RED);
einkDisplay.drawText({startX, startY + 20}, "B->W: ", eink_t::Color::BLACK, eink_t::Color::WHITE);
einkDisplay.drawText({startX + 6 * 8, startY + 20}, "Black on white", eink_t::Color::BLACK, eink_t::Color::WHITE);
einkDisplay.drawText({startX, startY + 30}, "R->B: ", eink_t::Color::BLACK, eink_t::Color::WHITE);
einkDisplay.drawText({startX + 6 * 8, startY + 30}, "Red on black", eink_t::Color::RED, eink_t::Color::BLACK);
einkDisplay.drawText({startX, startY + 40}, "R->R: ", eink_t::Color::BLACK, eink_t::Color::WHITE);
einkDisplay.drawText({startX + 6 * 8, startY + 40}, "Red on red", eink_t::Color::RED, eink_t::Color::RED);
einkDisplay.drawText({startX, startY + 50}, "R->W: ", eink_t::Color::BLACK, eink_t::Color::WHITE);
einkDisplay.drawText({startX + 6 * 8, startY + 50}, "Red on white", eink_t::Color::RED, eink_t::Color::WHITE);
einkDisplay.drawText({startX, startY + 60}, "W->B: ", eink_t::Color::BLACK, eink_t::Color::WHITE);
einkDisplay.drawText({startX + 6 * 8, startY + 60}, "White on black", eink_t::Color::WHITE, eink_t::Color::BLACK);
einkDisplay.drawText({startX, startY + 70}, "W->R: ", eink_t::Color::BLACK, eink_t::Color::WHITE);
einkDisplay.drawText({startX + 6 * 8, startY + 70}, "White on red", eink_t::Color::WHITE, eink_t::Color::RED);
einkDisplay.drawText({startX, startY + 80}, "W->W: ", eink_t::Color::BLACK, eink_t::Color::WHITE);
einkDisplay.drawText({startX + 6 * 8, startY + 80}, "White on white", eink_t::Color::WHITE, eink_t::Color::WHITE);
serial << F("e-Paper update") << F("\r\n");
einkDisplay.update();
einkDisplay.clear();
einkDisplay.drawText({0, 0 * 5 * 8}, "Big", eink_t::Color::BLACK, eink_t::Color::WHITE, 5);
einkDisplay.drawText({0, 1 * 5 * 8}, "scale", eink_t::Color::BLACK, eink_t::Color::WHITE, 5);
einkDisplay.drawText({0, 2 * 5 * 8}, "O.o", eink_t::Color::RED, eink_t::Color::WHITE, 5);
einkDisplay.update();
serial << F("e-Paper sleep") << F("\r\n");
einkDisplay.sleep();

Submodule eink/spi deleted from 85346f258f