From 65cb6080de515f7f014cc0aea025a275268d8332 Mon Sep 17 00:00:00 2001 From: kenji Date: Wed, 28 May 2025 18:16:00 -0400 Subject: [PATCH] Initial commit of base code --- .gitignore | 3 + CMakeLists.txt | 53 ++ build/webkeyboard.uf2 | Bin 0 -> 842752 bytes dhcpserver.c | 300 +++++++++ dhcpserver.h | 49 ++ hid.c | 136 ++++ hid.h | 6 + html/index.html | 393 ++++++++++++ html/indicators.shtml | 15 + html/success.html | 35 ++ html/wifi.shtml | 137 ++++ lwipopts.h | 100 +++ main.c | 26 + main.h | 7 + my_fsdata.c | 1388 +++++++++++++++++++++++++++++++++++++++++ parse_keys.c | 64 ++ parse_keys.h | 393 ++++++++++++ server.c | 388 ++++++++++++ server.h | 35 ++ tusb_config.h | 85 +++ usb_descriptors.c | 195 ++++++ usb_descriptors.h | 44 ++ 22 files changed, 3852 insertions(+) create mode 100644 .gitignore create mode 100644 CMakeLists.txt create mode 100644 build/webkeyboard.uf2 create mode 100644 dhcpserver.c create mode 100644 dhcpserver.h create mode 100644 hid.c create mode 100644 hid.h create mode 100644 html/index.html create mode 100644 html/indicators.shtml create mode 100644 html/success.html create mode 100644 html/wifi.shtml create mode 100644 lwipopts.h create mode 100644 main.c create mode 100644 main.h create mode 100644 my_fsdata.c create mode 100644 parse_keys.c create mode 100644 parse_keys.h create mode 100644 server.c create mode 100644 server.h create mode 100644 tusb_config.h create mode 100644 usb_descriptors.c create mode 100644 usb_descriptors.h diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..1b51b6f --- /dev/null +++ b/.gitignore @@ -0,0 +1,3 @@ +/build/**/* +!/build/**/*.uf2 +/external/**/* diff --git a/CMakeLists.txt b/CMakeLists.txt new file mode 100644 index 0000000..6a62249 --- /dev/null +++ b/CMakeLists.txt @@ -0,0 +1,53 @@ +cmake_minimum_required(VERSION 3.13) +set(PROJECT webkeyboard) +set(PICO_SDK_PATH /home/kenji/programming/pico/c/pico-sdk) +set(PICO_BOARD pico_w) +include (${PICO_SDK_PATH}/external/pico_sdk_import.cmake) +project(${PROJECT} C CXX ASM) + +set(MAKE_FS_DATA_SCRIPT ${CMAKE_CURRENT_LIST_DIR}/external/makefsdata) +set(HTML_DIR ${CMAKE_CURRENT_LIST_DIR}/html) + +if (NOT EXISTS ${MAKE_FS_DATA_SCRIPT}) + file(DOWNLOAD + https://raw.githubusercontent.com/lwip-tcpip/lwip/e799c266facc3c70190676eccad49d6c2db2caac/src/apps/http/makefsdata/makefsdata + ${MAKE_FS_DATA_SCRIPT} + ) +endif() +message("Running makefsdata script") +execute_process(COMMAND + perl ${MAKE_FS_DATA_SCRIPT} + WORKING_DIRECTORY ${HTML_DIR} + ECHO_OUTPUT_VARIABLE + ECHO_ERROR_VARIABLE + ) +file(RENAME ${HTML_DIR}/fsdata.c ${CMAKE_CURRENT_LIST_DIR}/my_fsdata.c) + +pico_sdk_init() + +add_executable(${PROJECT}) +target_sources(${PROJECT} PRIVATE + main.c + server.c + hid.c + usb_descriptors.c + parse_keys.c + dhcpserver.c +) + +pico_enable_stdio_usb(${PROJECT} 1) +pico_enable_stdio_uart(${PROJECT} 1) + +pico_add_extra_outputs(${PROJECT}) + +target_include_directories(${PROJECT} PRIVATE ${CMAKE_CURRENT_LIST_DIR}) + +target_link_libraries(${PROJECT} + pico_cyw43_arch_lwip_threadsafe_background + pico_lwip_http + pico_stdlib + pico_multicore + tinyusb_device +) + + diff --git a/build/webkeyboard.uf2 b/build/webkeyboard.uf2 new file mode 100644 index 0000000000000000000000000000000000000000..d6cde63b424fc4678f86efda258f1d71990e9d72 GIT binary patch literal 842752 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

T!<`@LuHMXt8Ky|CV_v3_$enGt3CwKZCs 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

JYJNXB^nDM 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­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

g^ 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 TE&RLue^K=RWc^1Yfc*bofv41! literal 0 HcmV?d00001 diff --git a/dhcpserver.c b/dhcpserver.c new file mode 100644 index 0000000..ba24b63 --- /dev/null +++ b/dhcpserver.c @@ -0,0 +1,300 @@ +/* + * This file is part of the MicroPython project, http://micropython.org/ + * + * The MIT License (MIT) + * + * Copyright (c) 2018-2019 Damien P. George + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in + * all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN + * THE SOFTWARE. + */ + +// For DHCP specs see: +// https://www.ietf.org/rfc/rfc2131.txt +// https://tools.ietf.org/html/rfc2132 -- DHCP Options and BOOTP Vendor Extensions + +#include +#include +#include + +#include "cyw43_config.h" +#include "dhcpserver.h" +#include "lwip/udp.h" + +#define DHCPDISCOVER (1) +#define DHCPOFFER (2) +#define DHCPREQUEST (3) +#define DHCPDECLINE (4) +#define DHCPACK (5) +#define DHCPNACK (6) +#define DHCPRELEASE (7) +#define DHCPINFORM (8) + +#define DHCP_OPT_PAD (0) +#define DHCP_OPT_SUBNET_MASK (1) +#define DHCP_OPT_ROUTER (3) +#define DHCP_OPT_DNS (6) +#define DHCP_OPT_HOST_NAME (12) +#define DHCP_OPT_REQUESTED_IP (50) +#define DHCP_OPT_IP_LEASE_TIME (51) +#define DHCP_OPT_MSG_TYPE (53) +#define DHCP_OPT_SERVER_ID (54) +#define DHCP_OPT_PARAM_REQUEST_LIST (55) +#define DHCP_OPT_MAX_MSG_SIZE (57) +#define DHCP_OPT_VENDOR_CLASS_ID (60) +#define DHCP_OPT_CLIENT_ID (61) +#define DHCP_OPT_END (255) + +#define PORT_DHCP_SERVER (67) +#define PORT_DHCP_CLIENT (68) + +#define DEFAULT_DNS MAKE_IP4(8, 8, 8, 8) +#define DEFAULT_LEASE_TIME_S (24 * 60 * 60) // in seconds + +#define MAC_LEN (6) +#define MAKE_IP4(a, b, c, d) ((a) << 24 | (b) << 16 | (c) << 8 | (d)) + +typedef struct { + uint8_t op; // message opcode + uint8_t htype; // hardware address type + uint8_t hlen; // hardware address length + uint8_t hops; + uint32_t xid; // transaction id, chosen by client + uint16_t secs; // client seconds elapsed + uint16_t flags; + uint8_t ciaddr[4]; // client IP address + uint8_t yiaddr[4]; // your IP address + uint8_t siaddr[4]; // next server IP address + uint8_t giaddr[4]; // relay agent IP address + uint8_t chaddr[16]; // client hardware address + uint8_t sname[64]; // server host name + uint8_t file[128]; // boot file name + uint8_t options[312]; // optional parameters, variable, starts with magic +} dhcp_msg_t; + +static int dhcp_socket_new_dgram(struct udp_pcb **udp, void *cb_data, udp_recv_fn cb_udp_recv) { + // family is AF_INET + // type is SOCK_DGRAM + + *udp = udp_new(); + if (*udp == NULL) { + return -ENOMEM; + } + + // Register callback + udp_recv(*udp, cb_udp_recv, (void *)cb_data); + + return 0; // success +} + +static void dhcp_socket_free(struct udp_pcb **udp) { + if (*udp != NULL) { + udp_remove(*udp); + *udp = NULL; + } +} + +static int dhcp_socket_bind(struct udp_pcb **udp, uint32_t ip, uint16_t port) { + ip_addr_t addr; + IP4_ADDR(&addr, ip >> 24 & 0xff, ip >> 16 & 0xff, ip >> 8 & 0xff, ip & 0xff); + // TODO convert lwIP errors to errno + return udp_bind(*udp, &addr, port); +} + +static int dhcp_socket_sendto(struct udp_pcb **udp, const void *buf, size_t len, uint32_t ip, uint16_t port) { + if (len > 0xffff) { + len = 0xffff; + } + + struct pbuf *p = pbuf_alloc(PBUF_TRANSPORT, len, PBUF_RAM); + if (p == NULL) { + return -ENOMEM; + } + + memcpy(p->payload, buf, len); + + ip_addr_t dest; + IP4_ADDR(&dest, ip >> 24 & 0xff, ip >> 16 & 0xff, ip >> 8 & 0xff, ip & 0xff); + err_t err = udp_sendto(*udp, p, &dest, port); + + pbuf_free(p); + + if (err != ERR_OK) { + return err; + } + + return len; +} + +static uint8_t *opt_find(uint8_t *opt, uint8_t cmd) { + for (int i = 0; i < 308 && opt[i] != DHCP_OPT_END;) { + if (opt[i] == cmd) { + return &opt[i]; + } + i += 2 + opt[i + 1]; + } + return NULL; +} + +static void opt_write_n(uint8_t **opt, uint8_t cmd, size_t n, void *data) { + uint8_t *o = *opt; + *o++ = cmd; + *o++ = n; + memcpy(o, data, n); + *opt = o + n; +} + +static void opt_write_u8(uint8_t **opt, uint8_t cmd, uint8_t val) { + uint8_t *o = *opt; + *o++ = cmd; + *o++ = 1; + *o++ = val; + *opt = o; +} + +static void opt_write_u32(uint8_t **opt, uint8_t cmd, uint32_t val) { + uint8_t *o = *opt; + *o++ = cmd; + *o++ = 4; + *o++ = val >> 24; + *o++ = val >> 16; + *o++ = val >> 8; + *o++ = val; + *opt = o; +} + +static void dhcp_server_process(void *arg, struct udp_pcb *upcb, struct pbuf *p, const ip_addr_t *src_addr, u16_t src_port) { + dhcp_server_t *d = arg; + (void)upcb; + (void)src_addr; + (void)src_port; + + // This is around 548 bytes + dhcp_msg_t dhcp_msg; + + #define DHCP_MIN_SIZE (240 + 3) + if (p->tot_len < DHCP_MIN_SIZE) { + goto ignore_request; + } + + size_t len = pbuf_copy_partial(p, &dhcp_msg, sizeof(dhcp_msg), 0); + if (len < DHCP_MIN_SIZE) { + goto ignore_request; + } + + dhcp_msg.op = DHCPOFFER; + memcpy(&dhcp_msg.yiaddr, &d->ip.addr, 4); + + uint8_t *opt = (uint8_t *)&dhcp_msg.options; + opt += 4; // assume magic cookie: 99, 130, 83, 99 + + switch (opt[2]) { + case DHCPDISCOVER: { + int yi = DHCPS_MAX_IP; + for (int i = 0; i < DHCPS_MAX_IP; ++i) { + if (memcmp(d->lease[i].mac, dhcp_msg.chaddr, MAC_LEN) == 0) { + // MAC match, use this IP address + yi = i; + break; + } + if (yi == DHCPS_MAX_IP) { + // Look for a free IP address + if (memcmp(d->lease[i].mac, "\x00\x00\x00\x00\x00\x00", MAC_LEN) == 0) { + // IP available + yi = i; + } + uint32_t expiry = d->lease[i].expiry << 16 | 0xffff; + if ((int32_t)(expiry - cyw43_hal_ticks_ms()) < 0) { + // IP expired, reuse it + memset(d->lease[i].mac, 0, MAC_LEN); + yi = i; + } + } + } + if (yi == DHCPS_MAX_IP) { + // No more IP addresses left + goto ignore_request; + } + dhcp_msg.yiaddr[3] = DHCPS_BASE_IP + yi; + opt_write_u8(&opt, DHCP_OPT_MSG_TYPE, DHCPOFFER); + break; + } + + case DHCPREQUEST: { + uint8_t *o = opt_find(opt, DHCP_OPT_REQUESTED_IP); + if (o == NULL) { + // Should be NACK + goto ignore_request; + } + if (memcmp(o + 2, &d->ip.addr, 3) != 0) { + // Should be NACK + goto ignore_request; + } + uint8_t yi = o[5] - DHCPS_BASE_IP; + if (yi >= DHCPS_MAX_IP) { + // Should be NACK + goto ignore_request; + } + if (memcmp(d->lease[yi].mac, dhcp_msg.chaddr, MAC_LEN) == 0) { + // MAC match, ok to use this IP address + } else if (memcmp(d->lease[yi].mac, "\x00\x00\x00\x00\x00\x00", MAC_LEN) == 0) { + // IP unused, ok to use this IP address + memcpy(d->lease[yi].mac, dhcp_msg.chaddr, MAC_LEN); + } else { + // IP already in use + // Should be NACK + goto ignore_request; + } + d->lease[yi].expiry = (cyw43_hal_ticks_ms() + DEFAULT_LEASE_TIME_S * 1000) >> 16; + dhcp_msg.yiaddr[3] = DHCPS_BASE_IP + yi; + opt_write_u8(&opt, DHCP_OPT_MSG_TYPE, DHCPACK); + // printf("DHCPS: client connected: MAC=%02x:%02x:%02x:%02x:%02x:%02x IP=%u.%u.%u.%u\n", + // dhcp_msg.chaddr[0], dhcp_msg.chaddr[1], dhcp_msg.chaddr[2], dhcp_msg.chaddr[3], dhcp_msg.chaddr[4], dhcp_msg.chaddr[5], + // dhcp_msg.yiaddr[0], dhcp_msg.yiaddr[1], dhcp_msg.yiaddr[2], dhcp_msg.yiaddr[3]); + break; + } + + default: + goto ignore_request; + } + + opt_write_n(&opt, DHCP_OPT_SERVER_ID, 4, &d->ip.addr); + opt_write_n(&opt, DHCP_OPT_SUBNET_MASK, 4, &d->nm.addr); + opt_write_n(&opt, DHCP_OPT_ROUTER, 4, &d->ip.addr); // aka gateway; can have mulitple addresses + opt_write_u32(&opt, DHCP_OPT_DNS, DEFAULT_DNS); // can have mulitple addresses + opt_write_u32(&opt, DHCP_OPT_IP_LEASE_TIME, DEFAULT_LEASE_TIME_S); + *opt++ = DHCP_OPT_END; + dhcp_socket_sendto(&d->udp, &dhcp_msg, opt - (uint8_t *)&dhcp_msg, 0xffffffff, PORT_DHCP_CLIENT); + +ignore_request: + pbuf_free(p); +} + +void dhcp_server_init(dhcp_server_t *d, ip_addr_t *ip, ip_addr_t *nm) { + ip_addr_copy(d->ip, *ip); + ip_addr_copy(d->nm, *nm); + memset(d->lease, 0, sizeof(d->lease)); + if (dhcp_socket_new_dgram(&d->udp, d, dhcp_server_process) != 0) { + return; + } + dhcp_socket_bind(&d->udp, 0, PORT_DHCP_SERVER); +} + +void dhcp_server_deinit(dhcp_server_t *d) { + dhcp_socket_free(&d->udp); +} diff --git a/dhcpserver.h b/dhcpserver.h new file mode 100644 index 0000000..2349d2e --- /dev/null +++ b/dhcpserver.h @@ -0,0 +1,49 @@ +/* + * This file is part of the MicroPython project, http://micropython.org/ + * + * The MIT License (MIT) + * + * Copyright (c) 2018-2019 Damien P. George + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in + * all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN + * THE SOFTWARE. + */ +#ifndef MICROPY_INCLUDED_LIB_NETUTILS_DHCPSERVER_H +#define MICROPY_INCLUDED_LIB_NETUTILS_DHCPSERVER_H + +#include "lwip/ip_addr.h" + +#define DHCPS_BASE_IP (16) +#define DHCPS_MAX_IP (8) + +typedef struct _dhcp_server_lease_t { + uint8_t mac[6]; + uint16_t expiry; +} dhcp_server_lease_t; + +typedef struct _dhcp_server_t { + ip_addr_t ip; + ip_addr_t nm; + dhcp_server_lease_t lease[DHCPS_MAX_IP]; + struct udp_pcb *udp; +} dhcp_server_t; + +void dhcp_server_init(dhcp_server_t *d, ip_addr_t *ip, ip_addr_t *nm); +void dhcp_server_deinit(dhcp_server_t *d); + +#endif // MICROPY_INCLUDED_LIB_NETUTILS_DHCPSERVER_H diff --git a/hid.c b/hid.c new file mode 100644 index 0000000..15c263b --- /dev/null +++ b/hid.c @@ -0,0 +1,136 @@ +/* + * The MIT License (MIT) + * + * Copyright (c) 2019 Ha Thach (tinyusb.org) + * sekigon-gonnoc + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in + * all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN + * THE SOFTWARE. + * + */ + +#include +#include +#include + +#include "pico/stdlib.h" + +#include "tusb.h" + +#include "usb_descriptors.h" +#include "server.h" +#include "main.h" + + +/*------------- MAIN -------------*/ +int run_hid_device(void) { + // init device stack on native usb (roothub port0) + tud_init(0); + + while (true) { + tud_task(); // tinyusb device task + //tud_cdc_write_flush(); + } + + return 0; +} + + +// Invoked when received SET_REPORT control request or +// received data on OUT endpoint ( Report ID = 0, Type = 0 ) + +void tud_hid_set_report_cb(uint8_t instance, uint8_t report_id, hid_report_type_t report_type, uint8_t const* buffer, uint16_t bufsize) +{ + + + if (instance == 0 && report_type==HID_REPORT_TYPE_OUTPUT && report_id==REPORT_ID_KEYBOARD && bufsize==1) { + //received keyboard LED status, so update + set_indicator(buffer); + } + + char tempbuf[128]; + size_t count; + if(bufsize>0) { + count = sprintf(tempbuf, "\nReceived device set report type %u on interface %u with ID %u (%u)\n", report_type, instance, report_id, bufsize); + tud_cdc_write(tempbuf, count); + for(int i=0;i0) { + count = sprintf(tempbuf, "\nReceived device get report type %u on interface %u with ID %u (%u)\n", report_type, instance, report_id, reqlen); + tud_cdc_write(tempbuf, count); + for(int i=0;i0) { + count = sprintf(tempbuf, "\nDevice sent report on interface %u (%u)\n", instance, len); + tud_cdc_write(tempbuf, count); + for(int i=0;i + + + + +Web Keyboard + + + + + + + + +

+
+
+
+ +
+ +
+
Currently pressed keys:
+
+
+ +
+ + +
+ +
+ +
+ + + + diff --git a/html/indicators.shtml b/html/indicators.shtml new file mode 100644 index 0000000..1e9705b --- /dev/null +++ b/html/indicators.shtml @@ -0,0 +1,15 @@ + + + + + +Keyboard Indicators + + + +
NumLock
+
CapsLock
+
ScrollLock
+ + + diff --git a/html/success.html b/html/success.html new file mode 100644 index 0000000..ea0cf74 --- /dev/null +++ b/html/success.html @@ -0,0 +1,35 @@ + + + + + +Success + + + + + + + + +

Success

+ +

Redirecting in 15...

+ + + + diff --git a/html/wifi.shtml b/html/wifi.shtml new file mode 100644 index 0000000..1a9ca0e --- /dev/null +++ b/html/wifi.shtml @@ -0,0 +1,137 @@ + + + + + +Web Keyboard Wi-Fi Settings + + + + + + + + + +

Web Keyboard Wi-Fi Settings

+ +
+
+

Wi-Fi Network

+ +
+
SSID:
+
>
+
+ +
+
Password:
+
>
+
+ +
+
Hostname:
+
>
+
+ +

Manual Network Configuration

+ +
+
Use DHCP:
+
> +
+
+ +
+
IP Address:
+
>. + >. + >. + > +
+
+ +
+
Netmask:
+
>. + >. + >. + > +
+
+ +
+
Default Gateway:
+
>. + >. + >. + > +
+
+ +
+
+
*
+ *Device will need to be rebooted for settings to take effect.
+
+ +
+ + + + diff --git a/lwipopts.h b/lwipopts.h new file mode 100644 index 0000000..60c177f --- /dev/null +++ b/lwipopts.h @@ -0,0 +1,100 @@ +#ifndef __LWIPOPTS_H__ +#define __LWIPOPTS_H__ + +// Common settings used in most of the pico_w examples +// (see https://www.nongnu.org/lwip/2_1_x/group__lwip__opts.html for details) + +// allow override in some examples +#ifndef NO_SYS +#define NO_SYS 1 +#endif +// allow override in some examples +#ifndef LWIP_SOCKET +#define LWIP_SOCKET 0 +#endif +#if PICO_CYW43_ARCH_POLL +#define MEM_LIBC_MALLOC 1 +#else +// MEM_LIBC_MALLOC is incompatible with non polling versions +#define MEM_LIBC_MALLOC 0 +#endif +#define MEM_ALIGNMENT 4 +#ifndef MEM_SIZE +#define MEM_SIZE 4000 +#endif +#define MEMP_NUM_TCP_SEG 32 +#define MEMP_NUM_ARP_QUEUE 10 +#define PBUF_POOL_SIZE 24 +#define LWIP_ARP 1 +#define LWIP_ETHERNET 1 +#define LWIP_ICMP 1 +#define LWIP_RAW 1 +#define TCP_WND (8 * TCP_MSS) +#define TCP_MSS 1460 +#define TCP_SND_BUF (8 * TCP_MSS) +#define TCP_SND_QUEUELEN ((4 * (TCP_SND_BUF) + (TCP_MSS - 1)) / (TCP_MSS)) +#define LWIP_NETIF_STATUS_CALLBACK 1 +#define LWIP_NETIF_LINK_CALLBACK 1 +#define LWIP_NETIF_HOSTNAME 1 +#define LWIP_NETCONN 0 +#define MEM_STATS 0 +#define SYS_STATS 0 +#define MEMP_STATS 0 +#define LINK_STATS 0 +// #define ETH_PAD_SIZE 2 +#define LWIP_CHKSUM_ALGORITHM 3 +#define LWIP_DHCP 1 +#define LWIP_IPV4 1 +#define LWIP_TCP 1 +#define LWIP_UDP 1 +#define LWIP_DNS 1 +#define LWIP_TCP_KEEPALIVE 1 +#define LWIP_NETIF_TX_SINGLE_PBUF 1 +#define DHCP_DOES_ARP_CHECK 0 +#define LWIP_DHCP_DOES_ACD_CHECK 0 + +#ifndef NDEBUG +#define LWIP_DEBUG 1 +#define LWIP_STATS 1 +#define LWIP_STATS_DISPLAY 1 +#endif + +#define ETHARP_DEBUG LWIP_DBG_OFF +#define NETIF_DEBUG LWIP_DBG_OFF +#define PBUF_DEBUG LWIP_DBG_OFF +#define API_LIB_DEBUG LWIP_DBG_OFF +#define API_MSG_DEBUG LWIP_DBG_OFF +#define SOCKETS_DEBUG LWIP_DBG_OFF +#define ICMP_DEBUG LWIP_DBG_OFF +#define INET_DEBUG LWIP_DBG_OFF +#define IP_DEBUG LWIP_DBG_OFF +#define IP_REASS_DEBUG LWIP_DBG_OFF +#define RAW_DEBUG LWIP_DBG_OFF +#define MEM_DEBUG LWIP_DBG_OFF +#define MEMP_DEBUG LWIP_DBG_OFF +#define SYS_DEBUG LWIP_DBG_OFF +#define TCP_DEBUG LWIP_DBG_OFF +#define TCP_INPUT_DEBUG LWIP_DBG_OFF +#define TCP_OUTPUT_DEBUG LWIP_DBG_OFF +#define TCP_RTO_DEBUG LWIP_DBG_OFF +#define TCP_CWND_DEBUG LWIP_DBG_OFF +#define TCP_WND_DEBUG LWIP_DBG_OFF +#define TCP_FR_DEBUG LWIP_DBG_OFF +#define TCP_QLEN_DEBUG LWIP_DBG_OFF +#define TCP_RST_DEBUG LWIP_DBG_OFF +#define UDP_DEBUG LWIP_DBG_OFF +#define TCPIP_DEBUG LWIP_DBG_OFF +#define PPP_DEBUG LWIP_DBG_OFF +#define SLIP_DEBUG LWIP_DBG_OFF +#define DHCP_DEBUG LWIP_DBG_OFF + + +// HTTPD stuff +#define LWIP_HTTPD 1 +#define LWIP_HTTPD_CGI 1 +#define LWIP_HTTPD_SSI 1 +#define LWIP_HTTPD_SSI_INCLUDE_TAG 0 +#define HTTPD_FSDATA_FILE "my_fsdata.c" + + +#endif /* __LWIPOPTS_H__ */ diff --git a/main.c b/main.c new file mode 100644 index 0000000..17016c7 --- /dev/null +++ b/main.c @@ -0,0 +1,26 @@ +#include + +#include "pico/stdlib.h" +#include "pico/multicore.h" + +#include "main.h" +#include "server.h" +#include "hid.h" + +int main() { + stdio_init_all(); + + multicore_reset_core1(); + multicore_launch_core1(core1_main); + + multicore_lockout_victim_init(); + + run_hid_device(); +} + + +void core1_main() { + run_http_server(); +} + + diff --git a/main.h b/main.h new file mode 100644 index 0000000..44821c6 --- /dev/null +++ b/main.h @@ -0,0 +1,7 @@ +#ifndef MAIN_H_ +#define MAIN_H_ + +int main(); +void core1_main(); + +#endif diff --git a/my_fsdata.c b/my_fsdata.c new file mode 100644 index 0000000..d2e55f8 --- /dev/null +++ b/my_fsdata.c @@ -0,0 +1,1388 @@ +static const unsigned char data_fsdata_c[] = { + /* /fsdata.c */ + 0x2f, 0x66, 0x73, 0x64, 0x61, 0x74, 0x61, 0x2e, 0x63, 0, + 0x48, 0x54, 0x54, 0x50, 0x2f, 0x31, 0x2e, 0x30, 0x20, 0x32, + 0x30, 0x30, 0x20, 0x4f, 0x4b, 0xd, 0xa, 0x53, 0x65, 0x72, + 0x76, 0x65, 0x72, 0x3a, 0x20, 0x6c, 0x77, 0x49, 0x50, 0x2f, + 0x70, 0x72, 0x65, 0x2d, 0x30, 0x2e, 0x36, 0x20, 0x28, 0x68, + 0x74, 0x74, 0x70, 0x3a, 0x2f, 0x2f, 0x77, 0x77, 0x77, 0x2e, + 0x73, 0x69, 0x63, 0x73, 0x2e, 0x73, 0x65, 0x2f, 0x7e, 0x61, + 0x64, 0x61, 0x6d, 0x2f, 0x6c, 0x77, 0x69, 0x70, 0x2f, 0x29, + 0xd, 0xa, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x2d, + 0x74, 0x79, 0x70, 0x65, 0x3a, 0x20, 0x74, 0x65, 0x78, 0x74, + 0x2f, 0x70, 0x6c, 0x61, 0x69, 0x6e, 0xd, 0xa, 0xd, 0xa, +}; + +static const unsigned char data_indicators_shtml[] = { + /* /indicators.shtml */ + 0x2f, 0x69, 0x6e, 0x64, 0x69, 0x63, 0x61, 0x74, 0x6f, 0x72, 0x73, 0x2e, 0x73, 0x68, 0x74, 0x6d, 0x6c, 0, + 0x48, 0x54, 0x54, 0x50, 0x2f, 0x31, 0x2e, 0x30, 0x20, 0x32, + 0x30, 0x30, 0x20, 0x4f, 0x4b, 0xd, 0xa, 0x53, 0x65, 0x72, + 0x76, 0x65, 0x72, 0x3a, 0x20, 0x6c, 0x77, 0x49, 0x50, 0x2f, + 0x70, 0x72, 0x65, 0x2d, 0x30, 0x2e, 0x36, 0x20, 0x28, 0x68, + 0x74, 0x74, 0x70, 0x3a, 0x2f, 0x2f, 0x77, 0x77, 0x77, 0x2e, + 0x73, 0x69, 0x63, 0x73, 0x2e, 0x73, 0x65, 0x2f, 0x7e, 0x61, + 0x64, 0x61, 0x6d, 0x2f, 0x6c, 0x77, 0x69, 0x70, 0x2f, 0x29, + 0xd, 0xa, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x2d, + 0x74, 0x79, 0x70, 0x65, 0x3a, 0x20, 0x74, 0x65, 0x78, 0x74, + 0x2f, 0x68, 0x74, 0x6d, 0x6c, 0xd, 0xa, 0xd, 0xa, 0x3c, + 0x21, 0x44, 0x4f, 0x43, 0x54, 0x59, 0x50, 0x45, 0x20, 0x68, + 0x74, 0x6d, 0x6c, 0x3e, 0xa, 0xa, 0x3c, 0x68, 0x74, 0x6d, + 0x6c, 0x3e, 0xa, 0xa, 0x3c, 0x68, 0x65, 0x61, 0x64, 0x3e, + 0xa, 0x3c, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x3e, 0x4b, 0x65, + 0x79, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x20, 0x49, 0x6e, 0x64, + 0x69, 0x63, 0x61, 0x74, 0x6f, 0x72, 0x73, 0x3c, 0x2f, 0x74, + 0x69, 0x74, 0x6c, 0x65, 0x3e, 0xa, 0x3c, 0x2f, 0x68, 0x65, + 0x61, 0x64, 0x3e, 0xa, 0xa, 0x3c, 0x62, 0x6f, 0x64, 0x79, + 0x3e, 0xa, 0x3c, 0x64, 0x69, 0x76, 0x20, 0x69, 0x64, 0x3d, + 0x22, 0x6e, 0x75, 0x6d, 0x22, 0x20, 0x63, 0x6c, 0x61, 0x73, + 0x73, 0x3d, 0x22, 0x3c, 0x21, 0x2d, 0x2d, 0x23, 0x6e, 0x75, + 0x6d, 0x2d, 0x2d, 0x3e, 0x22, 0x3e, 0x4e, 0x75, 0x6d, 0x4c, + 0x6f, 0x63, 0x6b, 0x3c, 0x2f, 0x64, 0x69, 0x76, 0x3e, 0xa, + 0x3c, 0x64, 0x69, 0x76, 0x20, 0x69, 0x64, 0x3d, 0x22, 0x63, + 0x61, 0x70, 0x73, 0x22, 0x20, 0x63, 0x6c, 0x61, 0x73, 0x73, + 0x3d, 0x22, 0x3c, 0x21, 0x2d, 0x2d, 0x23, 0x63, 0x61, 0x70, + 0x73, 0x2d, 0x2d, 0x3e, 0x22, 0x3e, 0x43, 0x61, 0x70, 0x73, + 0x4c, 0x6f, 0x63, 0x6b, 0x3c, 0x2f, 0x64, 0x69, 0x76, 0x3e, + 0xa, 0x3c, 0x64, 0x69, 0x76, 0x20, 0x69, 0x64, 0x3d, 0x22, + 0x73, 0x63, 0x72, 0x6f, 0x6c, 0x6c, 0x22, 0x20, 0x63, 0x6c, + 0x61, 0x73, 0x73, 0x3d, 0x22, 0x3c, 0x21, 0x2d, 0x2d, 0x23, + 0x73, 0x63, 0x72, 0x6f, 0x6c, 0x6c, 0x2d, 0x2d, 0x3e, 0x22, + 0x3e, 0x53, 0x63, 0x72, 0x6f, 0x6c, 0x6c, 0x4c, 0x6f, 0x63, + 0x6b, 0x3c, 0x2f, 0x64, 0x69, 0x76, 0x3e, 0xa, 0x3c, 0x2f, + 0x62, 0x6f, 0x64, 0x79, 0x3e, 0xa, 0xa, 0x3c, 0x2f, 0x68, + 0x74, 0x6d, 0x6c, 0x3e, 0xa, }; + +static const unsigned char data_wifi_shtml[] = { + /* /wifi.shtml */ + 0x2f, 0x77, 0x69, 0x66, 0x69, 0x2e, 0x73, 0x68, 0x74, 0x6d, 0x6c, 0, + 0x48, 0x54, 0x54, 0x50, 0x2f, 0x31, 0x2e, 0x30, 0x20, 0x32, + 0x30, 0x30, 0x20, 0x4f, 0x4b, 0xd, 0xa, 0x53, 0x65, 0x72, + 0x76, 0x65, 0x72, 0x3a, 0x20, 0x6c, 0x77, 0x49, 0x50, 0x2f, + 0x70, 0x72, 0x65, 0x2d, 0x30, 0x2e, 0x36, 0x20, 0x28, 0x68, + 0x74, 0x74, 0x70, 0x3a, 0x2f, 0x2f, 0x77, 0x77, 0x77, 0x2e, + 0x73, 0x69, 0x63, 0x73, 0x2e, 0x73, 0x65, 0x2f, 0x7e, 0x61, + 0x64, 0x61, 0x6d, 0x2f, 0x6c, 0x77, 0x69, 0x70, 0x2f, 0x29, + 0xd, 0xa, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x2d, + 0x74, 0x79, 0x70, 0x65, 0x3a, 0x20, 0x74, 0x65, 0x78, 0x74, + 0x2f, 0x68, 0x74, 0x6d, 0x6c, 0xd, 0xa, 0xd, 0xa, 0x3c, + 0x21, 0x44, 0x4f, 0x43, 0x54, 0x59, 0x50, 0x45, 0x20, 0x68, + 0x74, 0x6d, 0x6c, 0x3e, 0xa, 0xa, 0x3c, 0x68, 0x74, 0x6d, + 0x6c, 0x3e, 0xa, 0xa, 0x3c, 0x68, 0x65, 0x61, 0x64, 0x3e, + 0xa, 0x3c, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x3e, 0x57, 0x65, + 0x62, 0x20, 0x4b, 0x65, 0x79, 0x62, 0x6f, 0x61, 0x72, 0x64, + 0x20, 0x57, 0x69, 0x2d, 0x46, 0x69, 0x20, 0x53, 0x65, 0x74, + 0x74, 0x69, 0x6e, 0x67, 0x73, 0x3c, 0x2f, 0x74, 0x69, 0x74, + 0x6c, 0x65, 0x3e, 0xa, 0xa, 0x3c, 0x73, 0x74, 0x79, 0x6c, + 0x65, 0x3e, 0xa, 0x64, 0x69, 0x76, 0x2e, 0x63, 0x6f, 0x6e, + 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x20, 0x7b, 0xa, 0x9, + 0x62, 0x61, 0x63, 0x6b, 0x67, 0x72, 0x6f, 0x75, 0x6e, 0x64, + 0x2d, 0x63, 0x6f, 0x6c, 0x6f, 0x72, 0x3a, 0x20, 0x23, 0x65, + 0x65, 0x65, 0x65, 0x65, 0x65, 0x3b, 0xa, 0x7d, 0xa, 0xa, + 0x64, 0x69, 0x76, 0x2e, 0x66, 0x69, 0x65, 0x6c, 0x64, 0x20, + 0x3e, 0x20, 0x64, 0x69, 0x76, 0x20, 0x7b, 0xa, 0x9, 0x64, + 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, 0x3a, 0x20, 0x69, 0x6e, + 0x6c, 0x69, 0x6e, 0x65, 0x2d, 0x62, 0x6c, 0x6f, 0x63, 0x6b, + 0x3b, 0xa, 0x7d, 0xa, 0xa, 0x64, 0x69, 0x76, 0x2e, 0x6c, + 0x61, 0x62, 0x65, 0x6c, 0x20, 0x7b, 0xa, 0x9, 0x74, 0x65, + 0x78, 0x74, 0x2d, 0x61, 0x6c, 0x69, 0x67, 0x6e, 0x3a, 0x20, + 0x72, 0x69, 0x67, 0x68, 0x74, 0x3b, 0xa, 0x9, 0x77, 0x69, + 0x64, 0x74, 0x68, 0x3a, 0x20, 0x31, 0x35, 0x30, 0x70, 0x78, + 0x3b, 0xa, 0x7d, 0xa, 0x64, 0x69, 0x76, 0x2e, 0x69, 0x6e, + 0x70, 0x75, 0x74, 0x20, 0x7b, 0xa, 0x9, 0x74, 0x65, 0x78, + 0x74, 0x2d, 0x61, 0x6c, 0x69, 0x67, 0x6e, 0x3a, 0x20, 0x6c, + 0x65, 0x66, 0x74, 0x3b, 0xa, 0x7d, 0xa, 0x69, 0x6e, 0x70, + 0x75, 0x74, 0x2e, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, + 0x20, 0x7b, 0xa, 0x9, 0x77, 0x69, 0x64, 0x74, 0x68, 0x3a, + 0x20, 0x33, 0x65, 0x6d, 0x3b, 0xa, 0x7d, 0xa, 0x3c, 0x2f, + 0x73, 0x74, 0x79, 0x6c, 0x65, 0x3e, 0xa, 0xa, 0x3c, 0x73, + 0x63, 0x72, 0x69, 0x70, 0x74, 0x3e, 0xa, 0xa, 0x66, 0x75, + 0x6e, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x74, 0x6f, 0x67, + 0x67, 0x6c, 0x65, 0x44, 0x48, 0x43, 0x50, 0x28, 0x29, 0x20, + 0x7b, 0xa, 0x9, 0x6c, 0x65, 0x74, 0x20, 0x62, 0x6f, 0x78, + 0x65, 0x73, 0x20, 0x3d, 0x20, 0x64, 0x6f, 0x63, 0x75, 0x6d, + 0x65, 0x6e, 0x74, 0x2e, 0x67, 0x65, 0x74, 0x45, 0x6c, 0x65, + 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x42, 0x79, 0x43, 0x6c, 0x61, + 0x73, 0x73, 0x4e, 0x61, 0x6d, 0x65, 0x28, 0x27, 0x6e, 0x65, + 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x27, 0x29, 0x3b, 0xa, 0x9, + 0x69, 0x66, 0x20, 0x28, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, + 0x6e, 0x74, 0x2e, 0x67, 0x65, 0x74, 0x45, 0x6c, 0x65, 0x6d, + 0x65, 0x6e, 0x74, 0x42, 0x79, 0x49, 0x64, 0x28, 0x27, 0x64, + 0x68, 0x63, 0x70, 0x27, 0x29, 0x2e, 0x63, 0x68, 0x65, 0x63, + 0x6b, 0x65, 0x64, 0x20, 0x29, 0x20, 0x7b, 0xa, 0x9, 0x9, + 0x66, 0x6f, 0x72, 0x20, 0x28, 0x62, 0x6f, 0x78, 0x20, 0x6f, + 0x66, 0x20, 0x62, 0x6f, 0x78, 0x65, 0x73, 0x29, 0x20, 0x7b, + 0xa, 0x9, 0x9, 0x9, 0x62, 0x6f, 0x78, 0x2e, 0x64, 0x69, + 0x73, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x20, 0x3d, 0x20, 0x74, + 0x72, 0x75, 0x65, 0x3b, 0xa, 0x9, 0x9, 0x7d, 0xa, 0x9, + 0x7d, 0x20, 0x65, 0x6c, 0x73, 0x65, 0x20, 0x7b, 0xa, 0x9, + 0x9, 0x66, 0x6f, 0x72, 0x20, 0x28, 0x62, 0x6f, 0x78, 0x20, + 0x6f, 0x66, 0x20, 0x62, 0x6f, 0x78, 0x65, 0x73, 0x29, 0x20, + 0x7b, 0xa, 0x9, 0x9, 0x9, 0x62, 0x6f, 0x78, 0x2e, 0x64, + 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x20, 0x3d, 0x20, + 0x66, 0x61, 0x6c, 0x73, 0x65, 0x3b, 0xa, 0x9, 0x9, 0x7d, + 0xa, 0x9, 0x7d, 0xa, 0x7d, 0xa, 0xa, 0x77, 0x69, 0x6e, + 0x64, 0x6f, 0x77, 0x2e, 0x6f, 0x6e, 0x6c, 0x6f, 0x61, 0x64, + 0x20, 0x3d, 0x20, 0x28, 0x29, 0x20, 0x3d, 0x3e, 0x20, 0x7b, + 0xa, 0x9, 0x74, 0x6f, 0x67, 0x67, 0x6c, 0x65, 0x44, 0x48, + 0x43, 0x50, 0x28, 0x29, 0x3b, 0xa, 0x9, 0x64, 0x6f, 0x63, + 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x67, 0x65, 0x74, 0x45, + 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x42, 0x79, 0x49, 0x64, + 0x28, 0x27, 0x64, 0x68, 0x63, 0x70, 0x27, 0x29, 0x2e, 0x6f, + 0x6e, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x20, 0x3d, 0x20, + 0x74, 0x6f, 0x67, 0x67, 0x6c, 0x65, 0x44, 0x48, 0x43, 0x50, + 0x3b, 0xa, 0x7d, 0x3b, 0xa, 0xa, 0x3c, 0x2f, 0x73, 0x63, + 0x72, 0x69, 0x70, 0x74, 0x3e, 0xa, 0xa, 0x3c, 0x2f, 0x68, + 0x65, 0x61, 0x64, 0x3e, 0xa, 0xa, 0x3c, 0x62, 0x6f, 0x64, + 0x79, 0x3e, 0xa, 0xa, 0x3c, 0x64, 0x69, 0x76, 0x3e, 0x3c, + 0x68, 0x31, 0x3e, 0x57, 0x65, 0x62, 0x20, 0x4b, 0x65, 0x79, + 0x62, 0x6f, 0x61, 0x72, 0x64, 0x20, 0x57, 0x69, 0x2d, 0x46, + 0x69, 0x20, 0x53, 0x65, 0x74, 0x74, 0x69, 0x6e, 0x67, 0x73, + 0x3c, 0x2f, 0x68, 0x31, 0x3e, 0x3c, 0x2f, 0x64, 0x69, 0x76, + 0x3e, 0xa, 0xa, 0x3c, 0x64, 0x69, 0x76, 0x20, 0x63, 0x6c, + 0x61, 0x73, 0x73, 0x3d, 0x22, 0x63, 0x6f, 0x6e, 0x74, 0x61, + 0x69, 0x6e, 0x65, 0x72, 0x22, 0x3e, 0xa, 0x3c, 0x66, 0x6f, + 0x72, 0x6d, 0x20, 0x6d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x3d, + 0x22, 0x67, 0x65, 0x74, 0x22, 0x20, 0x61, 0x63, 0x74, 0x69, + 0x6f, 0x6e, 0x3d, 0x22, 0x77, 0x69, 0x66, 0x69, 0x2e, 0x63, + 0x67, 0x69, 0x22, 0x3e, 0xa, 0x9, 0x3c, 0x64, 0x69, 0x76, + 0x3e, 0x3c, 0x68, 0x32, 0x3e, 0x57, 0x69, 0x2d, 0x46, 0x69, + 0x20, 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x3c, 0x2f, + 0x68, 0x32, 0x3e, 0x3c, 0x2f, 0x64, 0x69, 0x76, 0x3e, 0xa, + 0xa, 0x9, 0x3c, 0x64, 0x69, 0x76, 0x20, 0x63, 0x6c, 0x61, + 0x73, 0x73, 0x3d, 0x22, 0x66, 0x69, 0x65, 0x6c, 0x64, 0x22, + 0x3e, 0xa, 0x9, 0x9, 0x3c, 0x64, 0x69, 0x76, 0x20, 0x63, + 0x6c, 0x61, 0x73, 0x73, 0x3d, 0x22, 0x6c, 0x61, 0x62, 0x65, + 0x6c, 0x22, 0x3e, 0x53, 0x53, 0x49, 0x44, 0x3a, 0x3c, 0x2f, + 0x64, 0x69, 0x76, 0x3e, 0xa, 0x9, 0x9, 0x3c, 0x64, 0x69, + 0x76, 0x20, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x3d, 0x22, 0x69, + 0x6e, 0x70, 0x75, 0x74, 0x22, 0x3e, 0x3c, 0x69, 0x6e, 0x70, + 0x75, 0x74, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x74, + 0x65, 0x78, 0x74, 0x22, 0x20, 0x69, 0x64, 0x3d, 0x22, 0x73, + 0x73, 0x69, 0x64, 0x22, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, + 0x22, 0x73, 0x73, 0x69, 0x64, 0x22, 0xa, 0x9, 0x9, 0x9, + 0x6d, 0x61, 0x78, 0x6c, 0x65, 0x6e, 0x67, 0x74, 0x68, 0x3d, + 0x22, 0x33, 0x32, 0x22, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x23, + 0x73, 0x73, 0x69, 0x64, 0x2d, 0x2d, 0x3e, 0x3e, 0x3c, 0x2f, + 0x64, 0x69, 0x76, 0x3e, 0xa, 0x9, 0x3c, 0x2f, 0x64, 0x69, + 0x76, 0x3e, 0xa, 0x9, 0xa, 0x9, 0x3c, 0x64, 0x69, 0x76, + 0x20, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x3d, 0x22, 0x66, 0x69, + 0x65, 0x6c, 0x64, 0x22, 0x3e, 0xa, 0x9, 0x9, 0x3c, 0x64, + 0x69, 0x76, 0x20, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x3d, 0x22, + 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x22, 0x3e, 0x50, 0x61, 0x73, + 0x73, 0x77, 0x6f, 0x72, 0x64, 0x3a, 0x3c, 0x2f, 0x64, 0x69, + 0x76, 0x3e, 0xa, 0x9, 0x9, 0x3c, 0x64, 0x69, 0x76, 0x20, + 0x63, 0x6c, 0x61, 0x73, 0x73, 0x3d, 0x22, 0x69, 0x6e, 0x70, + 0x75, 0x74, 0x22, 0x3e, 0x3c, 0x69, 0x6e, 0x70, 0x75, 0x74, + 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x70, 0x61, 0x73, + 0x73, 0x77, 0x6f, 0x72, 0x64, 0x22, 0x20, 0x69, 0x64, 0x3d, + 0x22, 0x70, 0x61, 0x73, 0x73, 0x22, 0x20, 0x6e, 0x61, 0x6d, + 0x65, 0x3d, 0x22, 0x70, 0x61, 0x73, 0x73, 0x22, 0xa, 0x9, + 0x9, 0x9, 0x6d, 0x61, 0x78, 0x6c, 0x65, 0x6e, 0x67, 0x74, + 0x68, 0x3d, 0x22, 0x36, 0x33, 0x22, 0x20, 0x3c, 0x21, 0x2d, + 0x2d, 0x23, 0x70, 0x61, 0x73, 0x73, 0x2d, 0x2d, 0x3e, 0x3e, + 0x3c, 0x2f, 0x64, 0x69, 0x76, 0x3e, 0xa, 0x9, 0x3c, 0x2f, + 0x64, 0x69, 0x76, 0x3e, 0xa, 0xa, 0x9, 0x3c, 0x64, 0x69, + 0x76, 0x20, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x3d, 0x22, 0x66, + 0x69, 0x65, 0x6c, 0x64, 0x22, 0x3e, 0xa, 0x9, 0x9, 0x3c, + 0x64, 0x69, 0x76, 0x20, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x3d, + 0x22, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x22, 0x3e, 0x48, 0x6f, + 0x73, 0x74, 0x6e, 0x61, 0x6d, 0x65, 0x3a, 0x3c, 0x2f, 0x64, + 0x69, 0x76, 0x3e, 0xa, 0x9, 0x9, 0x3c, 0x64, 0x69, 0x76, + 0x20, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x3d, 0x22, 0x69, 0x6e, + 0x70, 0x75, 0x74, 0x22, 0x3e, 0x3c, 0x69, 0x6e, 0x70, 0x75, + 0x74, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x74, 0x65, + 0x78, 0x74, 0x22, 0x20, 0x69, 0x64, 0x3d, 0x22, 0x68, 0x6f, + 0x73, 0x74, 0x22, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, + 0x68, 0x6f, 0x73, 0x74, 0x22, 0xa, 0x9, 0x9, 0x9, 0x6d, + 0x61, 0x78, 0x6c, 0x65, 0x6e, 0x67, 0x74, 0x68, 0x3d, 0x22, + 0x36, 0x33, 0x22, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x23, 0x68, + 0x6f, 0x73, 0x74, 0x2d, 0x2d, 0x3e, 0x3e, 0x3c, 0x2f, 0x64, + 0x69, 0x76, 0x3e, 0xa, 0x9, 0x3c, 0x2f, 0x64, 0x69, 0x76, + 0x3e, 0xa, 0xa, 0x9, 0x3c, 0x64, 0x69, 0x76, 0x3e, 0x3c, + 0x68, 0x32, 0x3e, 0x4d, 0x61, 0x6e, 0x75, 0x61, 0x6c, 0x20, + 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x20, 0x43, 0x6f, + 0x6e, 0x66, 0x69, 0x67, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, + 0x6e, 0x3c, 0x2f, 0x68, 0x32, 0x3e, 0xa, 0xa, 0x9, 0x3c, + 0x64, 0x69, 0x76, 0x20, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x3d, + 0x22, 0x66, 0x69, 0x65, 0x6c, 0x64, 0x22, 0x3e, 0xa, 0x9, + 0x9, 0x3c, 0x64, 0x69, 0x76, 0x20, 0x63, 0x6c, 0x61, 0x73, + 0x73, 0x3d, 0x22, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x22, 0x3e, + 0x55, 0x73, 0x65, 0x20, 0x44, 0x48, 0x43, 0x50, 0x3a, 0x3c, + 0x2f, 0x64, 0x69, 0x76, 0x3e, 0xa, 0x9, 0x9, 0x3c, 0x64, + 0x69, 0x76, 0x20, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x3d, 0x22, + 0x69, 0x6e, 0x70, 0x75, 0x74, 0x22, 0x3e, 0x3c, 0x69, 0x6e, + 0x70, 0x75, 0x74, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, + 0x63, 0x68, 0x65, 0x63, 0x6b, 0x62, 0x6f, 0x78, 0x22, 0x20, + 0x69, 0x64, 0x3d, 0x22, 0x64, 0x68, 0x63, 0x70, 0x22, 0x20, + 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x64, 0x68, 0x63, 0x70, + 0x22, 0xa, 0x9, 0x9, 0x9, 0x3c, 0x21, 0x2d, 0x2d, 0x23, + 0x64, 0x68, 0x63, 0x70, 0x2d, 0x2d, 0x3e, 0x3e, 0xa, 0x9, + 0x9, 0x3c, 0x2f, 0x64, 0x69, 0x76, 0x3e, 0xa, 0x9, 0x3c, + 0x2f, 0x64, 0x69, 0x76, 0x3e, 0xa, 0xa, 0x9, 0x3c, 0x64, + 0x69, 0x76, 0x20, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x3d, 0x22, + 0x66, 0x69, 0x65, 0x6c, 0x64, 0x22, 0x3e, 0xa, 0x9, 0x9, + 0x3c, 0x64, 0x69, 0x76, 0x20, 0x63, 0x6c, 0x61, 0x73, 0x73, + 0x3d, 0x22, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x22, 0x3e, 0x49, + 0x50, 0x20, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x3a, + 0x3c, 0x2f, 0x64, 0x69, 0x76, 0x3e, 0xa, 0x9, 0x9, 0x3c, + 0x64, 0x69, 0x76, 0x20, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x3d, + 0x22, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x22, 0x3e, 0x3c, 0x69, + 0x6e, 0x70, 0x75, 0x74, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, + 0x22, 0x74, 0x65, 0x78, 0x74, 0x22, 0x20, 0x69, 0x64, 0x3d, + 0x22, 0x69, 0x70, 0x30, 0x22, 0x20, 0x6e, 0x61, 0x6d, 0x65, + 0x3d, 0x22, 0x69, 0x70, 0x30, 0x22, 0xa, 0x9, 0x9, 0x9, + 0x9, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x3d, 0x22, 0x6e, 0x65, + 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x22, 0x20, 0x70, 0x61, 0x74, + 0x74, 0x65, 0x72, 0x6e, 0x3d, 0x22, 0x5b, 0x30, 0x2d, 0x39, + 0x5d, 0x7b, 0x31, 0x2c, 0x33, 0x7d, 0x22, 0x20, 0x3c, 0x21, + 0x2d, 0x2d, 0x23, 0x69, 0x70, 0x30, 0x2d, 0x2d, 0x3e, 0x3e, + 0x2e, 0xa, 0x9, 0x9, 0x9, 0x3c, 0x69, 0x6e, 0x70, 0x75, + 0x74, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x74, 0x65, + 0x78, 0x74, 0x22, 0x20, 0x69, 0x64, 0x3d, 0x22, 0x69, 0x70, + 0x31, 0x22, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x69, + 0x70, 0x31, 0x22, 0xa, 0x9, 0x9, 0x9, 0x9, 0x63, 0x6c, + 0x61, 0x73, 0x73, 0x3d, 0x22, 0x6e, 0x65, 0x74, 0x77, 0x6f, + 0x72, 0x6b, 0x22, 0x20, 0x70, 0x61, 0x74, 0x74, 0x65, 0x72, + 0x6e, 0x3d, 0x22, 0x5b, 0x30, 0x2d, 0x39, 0x5d, 0x7b, 0x31, + 0x2c, 0x33, 0x7d, 0x22, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x23, + 0x69, 0x70, 0x31, 0x2d, 0x2d, 0x3e, 0x3e, 0x2e, 0xa, 0x9, + 0x9, 0x9, 0x3c, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x20, 0x74, + 0x79, 0x70, 0x65, 0x3d, 0x22, 0x74, 0x65, 0x78, 0x74, 0x22, + 0x20, 0x69, 0x64, 0x3d, 0x22, 0x69, 0x70, 0x32, 0x22, 0x20, + 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x69, 0x70, 0x32, 0x22, + 0xa, 0x9, 0x9, 0x9, 0x9, 0x63, 0x6c, 0x61, 0x73, 0x73, + 0x3d, 0x22, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x22, + 0x20, 0x70, 0x61, 0x74, 0x74, 0x65, 0x72, 0x6e, 0x3d, 0x22, + 0x5b, 0x30, 0x2d, 0x39, 0x5d, 0x7b, 0x31, 0x2c, 0x33, 0x7d, + 0x22, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x23, 0x69, 0x70, 0x32, + 0x2d, 0x2d, 0x3e, 0x3e, 0x2e, 0xa, 0x9, 0x9, 0x9, 0x3c, + 0x69, 0x6e, 0x70, 0x75, 0x74, 0x20, 0x74, 0x79, 0x70, 0x65, + 0x3d, 0x22, 0x74, 0x65, 0x78, 0x74, 0x22, 0x20, 0x69, 0x64, + 0x3d, 0x22, 0x69, 0x70, 0x33, 0x22, 0x20, 0x6e, 0x61, 0x6d, + 0x65, 0x3d, 0x22, 0x69, 0x70, 0x33, 0x22, 0xa, 0x9, 0x9, + 0x9, 0x9, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x3d, 0x22, 0x6e, + 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x22, 0x20, 0x70, 0x61, + 0x74, 0x74, 0x65, 0x72, 0x6e, 0x3d, 0x22, 0x5b, 0x30, 0x2d, + 0x39, 0x5d, 0x7b, 0x31, 0x2c, 0x33, 0x7d, 0x22, 0x20, 0x3c, + 0x21, 0x2d, 0x2d, 0x23, 0x69, 0x70, 0x33, 0x2d, 0x2d, 0x3e, + 0x3e, 0xa, 0x9, 0x9, 0x9, 0x3c, 0x2f, 0x64, 0x69, 0x76, + 0x3e, 0xa, 0x9, 0x3c, 0x2f, 0x64, 0x69, 0x76, 0x3e, 0xa, + 0xa, 0x9, 0x3c, 0x64, 0x69, 0x76, 0x20, 0x63, 0x6c, 0x61, + 0x73, 0x73, 0x3d, 0x22, 0x66, 0x69, 0x65, 0x6c, 0x64, 0x22, + 0x3e, 0xa, 0x9, 0x9, 0x3c, 0x64, 0x69, 0x76, 0x20, 0x63, + 0x6c, 0x61, 0x73, 0x73, 0x3d, 0x22, 0x6c, 0x61, 0x62, 0x65, + 0x6c, 0x22, 0x3e, 0x4e, 0x65, 0x74, 0x6d, 0x61, 0x73, 0x6b, + 0x3a, 0x3c, 0x2f, 0x64, 0x69, 0x76, 0x3e, 0xa, 0x9, 0x9, + 0x3c, 0x64, 0x69, 0x76, 0x20, 0x63, 0x6c, 0x61, 0x73, 0x73, + 0x3d, 0x22, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x22, 0x3e, 0x3c, + 0x69, 0x6e, 0x70, 0x75, 0x74, 0x20, 0x74, 0x79, 0x70, 0x65, + 0x3d, 0x22, 0x74, 0x65, 0x78, 0x74, 0x22, 0x20, 0x69, 0x64, + 0x3d, 0x22, 0x6d, 0x61, 0x73, 0x6b, 0x30, 0x22, 0x20, 0x6e, + 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x6d, 0x61, 0x73, 0x6b, 0x30, + 0x22, 0xa, 0x9, 0x9, 0x9, 0x9, 0x63, 0x6c, 0x61, 0x73, + 0x73, 0x3d, 0x22, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, + 0x22, 0x20, 0x70, 0x61, 0x74, 0x74, 0x65, 0x72, 0x6e, 0x3d, + 0x22, 0x5b, 0x30, 0x2d, 0x39, 0x5d, 0x7b, 0x31, 0x2c, 0x33, + 0x7d, 0x22, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x23, 0x6d, 0x61, + 0x73, 0x6b, 0x30, 0x2d, 0x2d, 0x3e, 0x3e, 0x2e, 0xa, 0x9, + 0x9, 0x9, 0x3c, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x20, 0x74, + 0x79, 0x70, 0x65, 0x3d, 0x22, 0x74, 0x65, 0x78, 0x74, 0x22, + 0x20, 0x69, 0x64, 0x3d, 0x22, 0x6d, 0x61, 0x73, 0x6b, 0x31, + 0x22, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x6d, 0x61, + 0x73, 0x6b, 0x31, 0x22, 0xa, 0x9, 0x9, 0x9, 0x9, 0x63, + 0x6c, 0x61, 0x73, 0x73, 0x3d, 0x22, 0x6e, 0x65, 0x74, 0x77, + 0x6f, 0x72, 0x6b, 0x22, 0x20, 0x70, 0x61, 0x74, 0x74, 0x65, + 0x72, 0x6e, 0x3d, 0x22, 0x5b, 0x30, 0x2d, 0x39, 0x5d, 0x7b, + 0x31, 0x2c, 0x33, 0x7d, 0x22, 0x20, 0x3c, 0x21, 0x2d, 0x2d, + 0x23, 0x6d, 0x61, 0x73, 0x6b, 0x31, 0x2d, 0x2d, 0x3e, 0x3e, + 0x2e, 0xa, 0x9, 0x9, 0x9, 0x3c, 0x69, 0x6e, 0x70, 0x75, + 0x74, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x74, 0x65, + 0x78, 0x74, 0x22, 0x20, 0x69, 0x64, 0x3d, 0x22, 0x6d, 0x61, + 0x73, 0x6b, 0x32, 0x22, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, + 0x22, 0x6d, 0x61, 0x73, 0x6b, 0x32, 0x22, 0xa, 0x9, 0x9, + 0x9, 0x9, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x3d, 0x22, 0x6e, + 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x22, 0x20, 0x70, 0x61, + 0x74, 0x74, 0x65, 0x72, 0x6e, 0x3d, 0x22, 0x5b, 0x30, 0x2d, + 0x39, 0x5d, 0x7b, 0x31, 0x2c, 0x33, 0x7d, 0x22, 0x20, 0x3c, + 0x21, 0x2d, 0x2d, 0x23, 0x6d, 0x61, 0x73, 0x6b, 0x32, 0x2d, + 0x2d, 0x3e, 0x3e, 0x2e, 0xa, 0x9, 0x9, 0x9, 0x3c, 0x69, + 0x6e, 0x70, 0x75, 0x74, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, + 0x22, 0x74, 0x65, 0x78, 0x74, 0x22, 0x20, 0x69, 0x64, 0x3d, + 0x22, 0x6d, 0x61, 0x73, 0x6b, 0x33, 0x22, 0x20, 0x6e, 0x61, + 0x6d, 0x65, 0x3d, 0x22, 0x6d, 0x61, 0x73, 0x6b, 0x33, 0x22, + 0xa, 0x9, 0x9, 0x9, 0x9, 0x63, 0x6c, 0x61, 0x73, 0x73, + 0x3d, 0x22, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x22, + 0x20, 0x70, 0x61, 0x74, 0x74, 0x65, 0x72, 0x6e, 0x3d, 0x22, + 0x5b, 0x30, 0x2d, 0x39, 0x5d, 0x7b, 0x31, 0x2c, 0x33, 0x7d, + 0x22, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x23, 0x6d, 0x61, 0x73, + 0x6b, 0x33, 0x2d, 0x2d, 0x3e, 0x3e, 0xa, 0x9, 0x9, 0x3c, + 0x2f, 0x64, 0x69, 0x76, 0x3e, 0xa, 0x9, 0x3c, 0x2f, 0x64, + 0x69, 0x76, 0x3e, 0xa, 0xa, 0x9, 0x3c, 0x64, 0x69, 0x76, + 0x20, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x3d, 0x22, 0x66, 0x69, + 0x65, 0x6c, 0x64, 0x22, 0x3e, 0xa, 0x9, 0x9, 0x3c, 0x64, + 0x69, 0x76, 0x20, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x3d, 0x22, + 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x22, 0x3e, 0x44, 0x65, 0x66, + 0x61, 0x75, 0x6c, 0x74, 0x20, 0x47, 0x61, 0x74, 0x65, 0x77, + 0x61, 0x79, 0x3a, 0x3c, 0x2f, 0x64, 0x69, 0x76, 0x3e, 0xa, + 0x9, 0x9, 0x3c, 0x64, 0x69, 0x76, 0x20, 0x63, 0x6c, 0x61, + 0x73, 0x73, 0x3d, 0x22, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x22, + 0x3e, 0x3c, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x20, 0x74, 0x79, + 0x70, 0x65, 0x3d, 0x22, 0x74, 0x65, 0x78, 0x74, 0x22, 0x20, + 0x69, 0x64, 0x3d, 0x22, 0x67, 0x77, 0x30, 0x22, 0x20, 0x6e, + 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x67, 0x77, 0x30, 0x22, 0xa, + 0x9, 0x9, 0x9, 0x9, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x3d, + 0x22, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x22, 0x20, + 0x70, 0x61, 0x74, 0x74, 0x65, 0x72, 0x6e, 0x3d, 0x22, 0x5b, + 0x30, 0x2d, 0x39, 0x5d, 0x7b, 0x31, 0x2c, 0x33, 0x7d, 0x22, + 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x23, 0x67, 0x77, 0x30, 0x2d, + 0x2d, 0x3e, 0x3e, 0x2e, 0xa, 0x9, 0x9, 0x9, 0x3c, 0x69, + 0x6e, 0x70, 0x75, 0x74, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, + 0x22, 0x74, 0x65, 0x78, 0x74, 0x22, 0x20, 0x69, 0x64, 0x3d, + 0x22, 0x67, 0x77, 0x31, 0x22, 0x20, 0x6e, 0x61, 0x6d, 0x65, + 0x3d, 0x22, 0x67, 0x77, 0x31, 0x22, 0xa, 0x9, 0x9, 0x9, + 0x9, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x3d, 0x22, 0x6e, 0x65, + 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x22, 0x20, 0x70, 0x61, 0x74, + 0x74, 0x65, 0x72, 0x6e, 0x3d, 0x22, 0x5b, 0x30, 0x2d, 0x39, + 0x5d, 0x7b, 0x31, 0x2c, 0x33, 0x7d, 0x22, 0x20, 0x3c, 0x21, + 0x2d, 0x2d, 0x23, 0x67, 0x77, 0x31, 0x2d, 0x2d, 0x3e, 0x3e, + 0x2e, 0xa, 0x9, 0x9, 0x9, 0x3c, 0x69, 0x6e, 0x70, 0x75, + 0x74, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x74, 0x65, + 0x78, 0x74, 0x22, 0x20, 0x69, 0x64, 0x3d, 0x22, 0x67, 0x77, + 0x32, 0x22, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x67, + 0x77, 0x32, 0x22, 0xa, 0x9, 0x9, 0x9, 0x9, 0x63, 0x6c, + 0x61, 0x73, 0x73, 0x3d, 0x22, 0x6e, 0x65, 0x74, 0x77, 0x6f, + 0x72, 0x6b, 0x22, 0x20, 0x70, 0x61, 0x74, 0x74, 0x65, 0x72, + 0x6e, 0x3d, 0x22, 0x5b, 0x30, 0x2d, 0x39, 0x5d, 0x7b, 0x31, + 0x2c, 0x33, 0x7d, 0x22, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x23, + 0x67, 0x77, 0x32, 0x2d, 0x2d, 0x3e, 0x3e, 0x2e, 0xa, 0x9, + 0x9, 0x9, 0x3c, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x20, 0x74, + 0x79, 0x70, 0x65, 0x3d, 0x22, 0x74, 0x65, 0x78, 0x74, 0x22, + 0x20, 0x69, 0x64, 0x3d, 0x22, 0x67, 0x77, 0x33, 0x22, 0x20, + 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x67, 0x77, 0x33, 0x22, + 0xa, 0x9, 0x9, 0x9, 0x9, 0x63, 0x6c, 0x61, 0x73, 0x73, + 0x3d, 0x22, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x22, + 0x20, 0x70, 0x61, 0x74, 0x74, 0x65, 0x72, 0x6e, 0x3d, 0x22, + 0x5b, 0x30, 0x2d, 0x39, 0x5d, 0x7b, 0x31, 0x2c, 0x33, 0x7d, + 0x22, 0x20, 0x3c, 0x21, 0x2d, 0x2d, 0x23, 0x67, 0x77, 0x33, + 0x2d, 0x2d, 0x3e, 0x3e, 0xa, 0x9, 0x9, 0x3c, 0x2f, 0x64, + 0x69, 0x76, 0x3e, 0xa, 0x9, 0x3c, 0x2f, 0x64, 0x69, 0x76, + 0x3e, 0xa, 0xa, 0x9, 0x3c, 0x64, 0x69, 0x76, 0x20, 0x63, + 0x6c, 0x61, 0x73, 0x73, 0x3d, 0x22, 0x66, 0x69, 0x65, 0x6c, + 0x64, 0x22, 0x3e, 0xa, 0x9, 0x9, 0x3c, 0x64, 0x69, 0x76, + 0x20, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x3d, 0x22, 0x6c, 0x61, + 0x62, 0x65, 0x6c, 0x22, 0x3e, 0x3c, 0x2f, 0x64, 0x69, 0x76, + 0x3e, 0xa, 0x9, 0x9, 0x3c, 0x64, 0x69, 0x76, 0x20, 0x63, + 0x6c, 0x61, 0x73, 0x73, 0x3d, 0x22, 0x69, 0x6e, 0x70, 0x75, + 0x74, 0x22, 0x3e, 0x3c, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x20, + 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3d, 0x22, 0x53, 0x61, 0x76, + 0x65, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x73, + 0x75, 0x62, 0x6d, 0x69, 0x74, 0x22, 0x3e, 0x2a, 0x3c, 0x62, + 0x72, 0x3e, 0xa, 0x9, 0x9, 0x9, 0x2a, 0x44, 0x65, 0x76, + 0x69, 0x63, 0x65, 0x20, 0x77, 0x69, 0x6c, 0x6c, 0x20, 0x6e, + 0x65, 0x65, 0x64, 0x20, 0x74, 0x6f, 0x20, 0x62, 0x65, 0x20, + 0x72, 0x65, 0x62, 0x6f, 0x6f, 0x74, 0x65, 0x64, 0x20, 0x66, + 0x6f, 0x72, 0x20, 0x73, 0x65, 0x74, 0x74, 0x69, 0x6e, 0x67, + 0x73, 0x20, 0x74, 0x6f, 0x20, 0x74, 0x61, 0x6b, 0x65, 0x20, + 0x65, 0x66, 0x66, 0x65, 0x63, 0x74, 0x2e, 0x3c, 0x2f, 0x64, + 0x69, 0x76, 0x3e, 0xa, 0x9, 0x3c, 0x2f, 0x64, 0x69, 0x76, + 0x3e, 0xa, 0x3c, 0x2f, 0x66, 0x6f, 0x72, 0x6d, 0x3e, 0xa, + 0x3c, 0x2f, 0x64, 0x69, 0x76, 0x3e, 0xa, 0xa, 0x3c, 0x2f, + 0x62, 0x6f, 0x64, 0x79, 0x3e, 0xa, 0xa, 0x3c, 0x2f, 0x68, + 0x74, 0x6d, 0x6c, 0x3e, 0xa, }; + +static const unsigned char data_index_html[] = { + /* /index.html */ + 0x2f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x2e, 0x68, 0x74, 0x6d, 0x6c, 0, + 0x48, 0x54, 0x54, 0x50, 0x2f, 0x31, 0x2e, 0x30, 0x20, 0x32, + 0x30, 0x30, 0x20, 0x4f, 0x4b, 0xd, 0xa, 0x53, 0x65, 0x72, + 0x76, 0x65, 0x72, 0x3a, 0x20, 0x6c, 0x77, 0x49, 0x50, 0x2f, + 0x70, 0x72, 0x65, 0x2d, 0x30, 0x2e, 0x36, 0x20, 0x28, 0x68, + 0x74, 0x74, 0x70, 0x3a, 0x2f, 0x2f, 0x77, 0x77, 0x77, 0x2e, + 0x73, 0x69, 0x63, 0x73, 0x2e, 0x73, 0x65, 0x2f, 0x7e, 0x61, + 0x64, 0x61, 0x6d, 0x2f, 0x6c, 0x77, 0x69, 0x70, 0x2f, 0x29, + 0xd, 0xa, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x2d, + 0x74, 0x79, 0x70, 0x65, 0x3a, 0x20, 0x74, 0x65, 0x78, 0x74, + 0x2f, 0x68, 0x74, 0x6d, 0x6c, 0xd, 0xa, 0xd, 0xa, 0x3c, + 0x21, 0x44, 0x4f, 0x43, 0x54, 0x59, 0x50, 0x45, 0x20, 0x68, + 0x74, 0x6d, 0x6c, 0x3e, 0xa, 0xa, 0x3c, 0x68, 0x74, 0x6d, + 0x6c, 0x3e, 0xa, 0xa, 0x3c, 0x68, 0x65, 0x61, 0x64, 0x3e, + 0xa, 0x3c, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x3e, 0x57, 0x65, + 0x62, 0x20, 0x4b, 0x65, 0x79, 0x62, 0x6f, 0x61, 0x72, 0x64, + 0x3c, 0x2f, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x3e, 0xa, 0xa, + 0x3c, 0x73, 0x74, 0x79, 0x6c, 0x65, 0x3e, 0xa, 0xa, 0x64, + 0x69, 0x76, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, + 0x65, 0x72, 0x20, 0x3e, 0x20, 0x64, 0x69, 0x76, 0x20, 0x7b, + 0xa, 0x9, 0x64, 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, 0x3a, + 0x20, 0x69, 0x6e, 0x6c, 0x69, 0x6e, 0x65, 0x2d, 0x62, 0x6c, + 0x6f, 0x63, 0x6b, 0x3b, 0xa, 0x7d, 0xa, 0xa, 0x64, 0x69, + 0x76, 0x23, 0x69, 0x6e, 0x64, 0x69, 0x63, 0x61, 0x74, 0x6f, + 0x72, 0x73, 0x20, 0x7b, 0xa, 0x9, 0x74, 0x65, 0x78, 0x74, + 0x2d, 0x61, 0x6c, 0x69, 0x67, 0x6e, 0x3a, 0x20, 0x63, 0x65, + 0x6e, 0x74, 0x65, 0x72, 0x3b, 0xa, 0x9, 0x76, 0x65, 0x72, + 0x74, 0x69, 0x63, 0x61, 0x6c, 0x2d, 0x61, 0x6c, 0x69, 0x67, + 0x6e, 0x3a, 0x20, 0x74, 0x6f, 0x70, 0x3b, 0xa, 0x9, 0x66, + 0x6f, 0x6e, 0x74, 0x2d, 0x73, 0x69, 0x7a, 0x65, 0x3a, 0x20, + 0x31, 0x2e, 0x32, 0x65, 0x6d, 0x3b, 0xa, 0x7d, 0xa, 0xa, + 0x64, 0x69, 0x76, 0x23, 0x69, 0x6e, 0x64, 0x69, 0x63, 0x61, + 0x74, 0x6f, 0x72, 0x73, 0x20, 0x2e, 0x6f, 0x6e, 0x20, 0x7b, + 0xa, 0x9, 0x62, 0x61, 0x63, 0x6b, 0x67, 0x72, 0x6f, 0x75, + 0x6e, 0x64, 0x2d, 0x63, 0x6f, 0x6c, 0x6f, 0x72, 0x3a, 0x20, + 0x23, 0x34, 0x30, 0x66, 0x66, 0x34, 0x30, 0x3b, 0xa, 0x7d, + 0xa, 0xa, 0x64, 0x69, 0x76, 0x23, 0x69, 0x6e, 0x64, 0x69, + 0x63, 0x61, 0x74, 0x6f, 0x72, 0x73, 0x20, 0x2e, 0x6f, 0x66, + 0x66, 0x20, 0x7b, 0xa, 0x9, 0x62, 0x61, 0x63, 0x6b, 0x67, + 0x72, 0x6f, 0x75, 0x6e, 0x64, 0x2d, 0x63, 0x6f, 0x6c, 0x6f, + 0x72, 0x3a, 0x20, 0x23, 0x64, 0x64, 0x64, 0x64, 0x64, 0x64, + 0x3b, 0xa, 0x7d, 0xa, 0xa, 0x64, 0x69, 0x76, 0x23, 0x6b, + 0x65, 0x79, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x20, 0x7b, 0xa, + 0x9, 0x62, 0x61, 0x63, 0x6b, 0x67, 0x72, 0x6f, 0x75, 0x6e, + 0x64, 0x2d, 0x63, 0x6f, 0x6c, 0x6f, 0x72, 0x3a, 0x20, 0x23, + 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x3b, 0xa, 0x7d, 0xa, + 0xa, 0x64, 0x69, 0x76, 0x2e, 0x6b, 0x65, 0x79, 0x20, 0x7b, + 0xa, 0x9, 0x74, 0x65, 0x78, 0x74, 0x2d, 0x61, 0x6c, 0x69, + 0x67, 0x6e, 0x3a, 0x63, 0x65, 0x6e, 0x74, 0x65, 0x72, 0x3b, + 0xa, 0x9, 0x76, 0x65, 0x72, 0x74, 0x69, 0x63, 0x61, 0x6c, + 0x2d, 0x61, 0x6c, 0x69, 0x67, 0x6e, 0x3a, 0x20, 0x74, 0x6f, + 0x70, 0x3b, 0xa, 0x9, 0x64, 0x69, 0x73, 0x70, 0x6c, 0x61, + 0x79, 0x3a, 0x20, 0x69, 0x6e, 0x6c, 0x69, 0x6e, 0x65, 0x2d, + 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x3b, 0xa, 0x9, 0x62, 0x61, + 0x63, 0x6b, 0x67, 0x72, 0x6f, 0x75, 0x6e, 0x64, 0x2d, 0x63, + 0x6f, 0x6c, 0x6f, 0x72, 0x3a, 0x20, 0x23, 0x64, 0x64, 0x64, + 0x64, 0x64, 0x64, 0x3b, 0xa, 0x9, 0x6d, 0x61, 0x72, 0x67, + 0x69, 0x6e, 0x3a, 0x20, 0x31, 0x70, 0x78, 0x3b, 0xa, 0x9, + 0x77, 0x69, 0x64, 0x74, 0x68, 0x3a, 0x20, 0x33, 0x65, 0x6d, + 0x3b, 0xa, 0x9, 0x68, 0x65, 0x69, 0x67, 0x68, 0x74, 0x3a, + 0x20, 0x33, 0x2e, 0x35, 0x65, 0x6d, 0x3b, 0xa, 0x9, 0x66, + 0x6f, 0x6e, 0x74, 0x2d, 0x73, 0x69, 0x7a, 0x65, 0x3a, 0x20, + 0x30, 0x2e, 0x38, 0x65, 0x6d, 0x3b, 0xa, 0x7d, 0xa, 0xa, + 0x64, 0x69, 0x76, 0x2e, 0x70, 0x72, 0x65, 0x73, 0x73, 0x65, + 0x64, 0x20, 0x7b, 0xa, 0x9, 0x62, 0x61, 0x63, 0x6b, 0x67, + 0x72, 0x6f, 0x75, 0x6e, 0x64, 0x2d, 0x63, 0x6f, 0x6c, 0x6f, + 0x72, 0x3a, 0x20, 0x23, 0x66, 0x66, 0x34, 0x30, 0x34, 0x30, + 0x3b, 0xa, 0x7d, 0xa, 0xa, 0x64, 0x69, 0x76, 0x2e, 0x62, + 0x6c, 0x61, 0x6e, 0x6b, 0x20, 0x7b, 0xa, 0x9, 0x6f, 0x70, + 0x61, 0x63, 0x69, 0x74, 0x79, 0x3a, 0x20, 0x30, 0x3b, 0xa, + 0x7d, 0xa, 0xa, 0x64, 0x69, 0x76, 0x2e, 0x69, 0x6e, 0x66, + 0x6f, 0x20, 0x64, 0x69, 0x76, 0x20, 0x7b, 0xa, 0x9, 0x66, + 0x6f, 0x6e, 0x74, 0x2d, 0x73, 0x69, 0x7a, 0x65, 0x3a, 0x20, + 0x31, 0x2e, 0x35, 0x65, 0x6d, 0x3b, 0xa, 0x9, 0x64, 0x69, + 0x73, 0x70, 0x6c, 0x61, 0x79, 0x3a, 0x20, 0x69, 0x6e, 0x6c, + 0x69, 0x6e, 0x65, 0x2d, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x3b, + 0xa, 0x9, 0x6d, 0x61, 0x72, 0x67, 0x69, 0x6e, 0x3a, 0x20, + 0x31, 0x65, 0x6d, 0x3b, 0xa, 0x7d, 0xa, 0xa, 0x64, 0x69, + 0x76, 0x23, 0x6d, 0x61, 0x63, 0x72, 0x6f, 0x73, 0x20, 0x64, + 0x69, 0x76, 0x20, 0x7b, 0xa, 0x9, 0x77, 0x69, 0x64, 0x74, + 0x68, 0x3a, 0x20, 0x39, 0x65, 0x6d, 0x3b, 0xa, 0x9, 0x64, + 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, 0x3a, 0x20, 0x69, 0x6e, + 0x6c, 0x69, 0x6e, 0x65, 0x2d, 0x62, 0x6c, 0x6f, 0x63, 0x6b, + 0x3b, 0xa, 0x9, 0x62, 0x61, 0x63, 0x6b, 0x67, 0x72, 0x6f, + 0x75, 0x6e, 0x64, 0x2d, 0x63, 0x6f, 0x6c, 0x6f, 0x72, 0x3a, + 0x20, 0x23, 0x64, 0x64, 0x64, 0x64, 0x64, 0x64, 0x3b, 0xa, + 0x9, 0x6d, 0x61, 0x72, 0x67, 0x69, 0x6e, 0x3a, 0x20, 0x31, + 0x65, 0x6d, 0x3b, 0xa, 0x9, 0x74, 0x65, 0x78, 0x74, 0x2d, + 0x61, 0x6c, 0x69, 0x67, 0x6e, 0x3a, 0x20, 0x63, 0x65, 0x6e, + 0x74, 0x65, 0x72, 0x3b, 0xa, 0x7d, 0xa, 0xa, 0x64, 0x69, + 0x76, 0x23, 0x6d, 0x61, 0x63, 0x72, 0x6f, 0x73, 0x20, 0x2e, + 0x6d, 0x6f, 0x75, 0x73, 0x65, 0x64, 0x6f, 0x77, 0x6e, 0x7b, + 0xa, 0x9, 0x62, 0x61, 0x63, 0x6b, 0x67, 0x72, 0x6f, 0x75, + 0x6e, 0x64, 0x2d, 0x63, 0x6f, 0x6c, 0x6f, 0x72, 0x3a, 0x20, + 0x23, 0x34, 0x30, 0x34, 0x30, 0x66, 0x66, 0x3b, 0xa, 0x7d, + 0xa, 0xa, 0x64, 0x69, 0x76, 0x23, 0x73, 0x74, 0x61, 0x74, + 0x75, 0x73, 0x5f, 0x66, 0x72, 0x61, 0x6d, 0x65, 0x73, 0x20, + 0x7b, 0xa, 0x9, 0x76, 0x69, 0x73, 0x69, 0x62, 0x69, 0x6c, + 0x69, 0x74, 0x79, 0x3a, 0x20, 0x68, 0x69, 0x64, 0x64, 0x65, + 0x6e, 0x3b, 0xa, 0x7d, 0xa, 0xa, 0x64, 0x69, 0x76, 0x2e, + 0x6d, 0x65, 0x6e, 0x75, 0x20, 0x7b, 0xa, 0x9, 0x64, 0x69, + 0x73, 0x70, 0x6c, 0x61, 0x79, 0x3a, 0x20, 0x69, 0x6e, 0x6c, + 0x69, 0x6e, 0x65, 0x2d, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x3b, + 0xa, 0x9, 0x70, 0x61, 0x64, 0x64, 0x69, 0x6e, 0x67, 0x3a, + 0x20, 0x31, 0x65, 0x6d, 0x3b, 0xa, 0x9, 0x62, 0x61, 0x63, + 0x6b, 0x67, 0x72, 0x6f, 0x75, 0x6e, 0x64, 0x2d, 0x63, 0x6f, + 0x6c, 0x6f, 0x72, 0x3a, 0x20, 0x23, 0x64, 0x64, 0x64, 0x64, + 0x64, 0x64, 0x3b, 0xa, 0x7d, 0xa, 0xa, 0x64, 0x69, 0x76, + 0x2e, 0x6d, 0x65, 0x6e, 0x75, 0x20, 0x61, 0x20, 0x7b, 0xa, + 0x9, 0x74, 0x65, 0x78, 0x74, 0x2d, 0x64, 0x65, 0x63, 0x6f, + 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3a, 0x20, 0x6e, 0x6f, + 0x6e, 0x65, 0x3b, 0xa, 0x9, 0x63, 0x6f, 0x6c, 0x6f, 0x72, + 0x3a, 0x20, 0x23, 0x30, 0x30, 0x30, 0x30, 0x66, 0x66, 0x3b, + 0xa, 0x7d, 0xa, 0xa, 0x64, 0x69, 0x76, 0x2e, 0x6d, 0x65, + 0x6e, 0x75, 0x20, 0x61, 0x3a, 0x68, 0x6f, 0x76, 0x65, 0x72, + 0x20, 0x7b, 0xa, 0x9, 0x74, 0x65, 0x78, 0x74, 0x2d, 0x64, + 0x65, 0x63, 0x6f, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3a, + 0x20, 0x75, 0x6e, 0x64, 0x65, 0x72, 0x6c, 0x69, 0x6e, 0x65, + 0x3b, 0xa, 0x7d, 0xa, 0xa, 0x3c, 0x2f, 0x73, 0x74, 0x79, + 0x6c, 0x65, 0x3e, 0xa, 0xa, 0x3c, 0x73, 0x63, 0x72, 0x69, + 0x70, 0x74, 0x3e, 0xa, 0x76, 0x61, 0x72, 0x20, 0x6b, 0x65, + 0x79, 0x73, 0x20, 0x3d, 0x20, 0x5b, 0x5d, 0x3b, 0xa, 0x76, + 0x61, 0x72, 0x20, 0x66, 0x65, 0x74, 0x63, 0x68, 0x71, 0x75, + 0x65, 0x75, 0x65, 0x20, 0x3d, 0x20, 0x5b, 0x5d, 0x3b, 0xa, + 0x76, 0x61, 0x72, 0x20, 0x63, 0x75, 0x72, 0x4c, 0x65, 0x64, + 0x20, 0x3d, 0x20, 0x30, 0x3b, 0xa, 0x63, 0x6f, 0x6e, 0x73, + 0x74, 0x20, 0x69, 0x6e, 0x64, 0x69, 0x63, 0x61, 0x74, 0x6f, + 0x72, 0x5f, 0x6c, 0x69, 0x73, 0x74, 0x20, 0x3d, 0x20, 0x5b, + 0xa, 0x9, 0x7b, 0x69, 0x64, 0x3a, 0x20, 0x22, 0x6e, 0x75, + 0x6d, 0x22, 0x2c, 0x20, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x3a, + 0x20, 0x22, 0x4e, 0x75, 0x6d, 0x4c, 0x6f, 0x63, 0x6b, 0x22, + 0x7d, 0x2c, 0xa, 0x9, 0x7b, 0x69, 0x64, 0x3a, 0x20, 0x22, + 0x63, 0x61, 0x70, 0x73, 0x22, 0x2c, 0x20, 0x6c, 0x61, 0x62, + 0x65, 0x6c, 0x3a, 0x20, 0x22, 0x43, 0x61, 0x70, 0x73, 0x4c, + 0x6f, 0x63, 0x6b, 0x22, 0x7d, 0x2c, 0xa, 0x9, 0x7b, 0x69, + 0x64, 0x3a, 0x20, 0x22, 0x73, 0x63, 0x72, 0x6f, 0x6c, 0x6c, + 0x22, 0x2c, 0x20, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x3a, 0x20, + 0x22, 0x53, 0x63, 0x72, 0x6f, 0x6c, 0x6c, 0x4c, 0x6f, 0x63, + 0x6b, 0x22, 0x7d, 0xa, 0x5d, 0x3b, 0xa, 0x63, 0x6f, 0x6e, + 0x73, 0x74, 0x20, 0x6d, 0x61, 0x63, 0x72, 0x6f, 0x5f, 0x6c, + 0x69, 0x73, 0x74, 0x20, 0x3d, 0x20, 0x5b, 0xa, 0x9, 0x7b, + 0x69, 0x64, 0x3a, 0x20, 0x22, 0x70, 0x6f, 0x77, 0x65, 0x72, + 0x22, 0x2c, 0x20, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x3a, 0x20, + 0x22, 0x50, 0x6f, 0x77, 0x65, 0x72, 0x22, 0x2c, 0x20, 0x6b, + 0x65, 0x79, 0x73, 0x3a, 0x20, 0x5b, 0x22, 0x57, 0x61, 0x6b, + 0x65, 0x55, 0x70, 0x22, 0x5d, 0x7d, 0x2c, 0xa, 0x9, 0x7b, + 0x69, 0x64, 0x3a, 0x20, 0x22, 0x72, 0x65, 0x73, 0x65, 0x74, + 0x22, 0x2c, 0x20, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x3a, 0x20, + 0x22, 0x43, 0x54, 0x52, 0x4c, 0x2b, 0x41, 0x4c, 0x54, 0x2b, + 0x44, 0x45, 0x4c, 0x22, 0x2c, 0x20, 0x6b, 0x65, 0x79, 0x73, + 0x3a, 0x20, 0x5b, 0x22, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x6f, + 0x6c, 0x4c, 0x65, 0x66, 0x74, 0x22, 0x2c, 0x22, 0x41, 0x6c, + 0x74, 0x4c, 0x65, 0x66, 0x74, 0x22, 0x2c, 0x22, 0x44, 0x65, + 0x6c, 0x65, 0x74, 0x65, 0x22, 0x5d, 0x7d, 0x2c, 0xa, 0x9, + 0x7b, 0x69, 0x64, 0x3a, 0x20, 0x22, 0x63, 0x6c, 0x6f, 0x73, + 0x65, 0x22, 0x2c, 0x20, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x3a, + 0x20, 0x22, 0x41, 0x4c, 0x54, 0x2b, 0x46, 0x34, 0x22, 0x2c, + 0x20, 0x6b, 0x65, 0x79, 0x73, 0x3a, 0x20, 0x5b, 0x22, 0x41, + 0x6c, 0x74, 0x4c, 0x65, 0x66, 0x74, 0x22, 0x2c, 0x20, 0x22, + 0x46, 0x34, 0x22, 0x5d, 0x7d, 0x2c, 0xa, 0x9, 0x7b, 0x69, + 0x64, 0x3a, 0x20, 0x22, 0x63, 0x79, 0x63, 0x6c, 0x65, 0x22, + 0x2c, 0x20, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x3a, 0x20, 0x22, + 0x41, 0x4c, 0x54, 0x2b, 0x54, 0x61, 0x62, 0x22, 0x2c, 0x20, + 0x6b, 0x65, 0x79, 0x73, 0x3a, 0x20, 0x5b, 0x22, 0x41, 0x6c, + 0x74, 0x4c, 0x65, 0x66, 0x74, 0x22, 0x2c, 0x20, 0x22, 0x54, + 0x61, 0x62, 0x22, 0x5d, 0x7d, 0xa, 0x5d, 0x3b, 0xa, 0x63, + 0x6f, 0x6e, 0x73, 0x74, 0x20, 0x6b, 0x65, 0x79, 0x5f, 0x6c, + 0x69, 0x73, 0x74, 0x20, 0x3d, 0x20, 0x5b, 0xa, 0x9, 0x5b, + 0xa, 0x9, 0x9, 0x7b, 0x69, 0x64, 0x3a, 0x20, 0x22, 0x45, + 0x73, 0x63, 0x61, 0x70, 0x65, 0x22, 0x2c, 0x20, 0x6c, 0x61, + 0x62, 0x65, 0x6c, 0x3a, 0x20, 0x22, 0x45, 0x53, 0x43, 0x22, + 0x2c, 0x20, 0x77, 0x69, 0x64, 0x74, 0x68, 0x3a, 0x20, 0x32, + 0x7d, 0x2c, 0xa, 0x9, 0x9, 0x7b, 0x69, 0x64, 0x3a, 0x20, + 0x22, 0x46, 0x31, 0x22, 0x2c, 0x20, 0x6c, 0x61, 0x62, 0x65, + 0x6c, 0x3a, 0x20, 0x22, 0x46, 0x31, 0x22, 0x7d, 0x2c, 0xa, + 0x9, 0x9, 0x7b, 0x69, 0x64, 0x3a, 0x20, 0x22, 0x46, 0x32, + 0x22, 0x2c, 0x20, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x3a, 0x20, + 0x22, 0x46, 0x32, 0x22, 0x7d, 0x2c, 0xa, 0x9, 0x9, 0x7b, + 0x69, 0x64, 0x3a, 0x20, 0x22, 0x46, 0x33, 0x22, 0x2c, 0x20, + 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x3a, 0x20, 0x22, 0x46, 0x33, + 0x22, 0x7d, 0x2c, 0xa, 0x9, 0x9, 0x7b, 0x69, 0x64, 0x3a, + 0x20, 0x22, 0x46, 0x34, 0x22, 0x2c, 0x20, 0x6c, 0x61, 0x62, + 0x65, 0x6c, 0x3a, 0x20, 0x22, 0x46, 0x34, 0x22, 0x7d, 0x2c, + 0xa, 0x9, 0x9, 0x7b, 0x69, 0x64, 0x3a, 0x20, 0x22, 0x46, + 0x35, 0x22, 0x2c, 0x20, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x3a, + 0x20, 0x22, 0x46, 0x35, 0x22, 0x7d, 0x2c, 0xa, 0x9, 0x9, + 0x7b, 0x69, 0x64, 0x3a, 0x20, 0x22, 0x46, 0x36, 0x22, 0x2c, + 0x20, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x3a, 0x20, 0x22, 0x46, + 0x36, 0x22, 0x7d, 0x2c, 0xa, 0x9, 0x9, 0x7b, 0x69, 0x64, + 0x3a, 0x20, 0x22, 0x46, 0x37, 0x22, 0x2c, 0x20, 0x6c, 0x61, + 0x62, 0x65, 0x6c, 0x3a, 0x20, 0x22, 0x46, 0x37, 0x22, 0x7d, + 0x2c, 0xa, 0x9, 0x9, 0x7b, 0x69, 0x64, 0x3a, 0x20, 0x22, + 0x46, 0x38, 0x22, 0x2c, 0x20, 0x6c, 0x61, 0x62, 0x65, 0x6c, + 0x3a, 0x20, 0x22, 0x46, 0x38, 0x22, 0x7d, 0x2c, 0xa, 0x9, + 0x9, 0x7b, 0x69, 0x64, 0x3a, 0x20, 0x22, 0x46, 0x39, 0x22, + 0x2c, 0x20, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x3a, 0x20, 0x22, + 0x46, 0x39, 0x22, 0x7d, 0x2c, 0xa, 0x9, 0x9, 0x7b, 0x69, + 0x64, 0x3a, 0x20, 0x22, 0x46, 0x31, 0x30, 0x22, 0x2c, 0x20, + 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x3a, 0x20, 0x22, 0x46, 0x31, + 0x30, 0x22, 0x7d, 0x2c, 0xa, 0x9, 0x9, 0x7b, 0x69, 0x64, + 0x3a, 0x20, 0x22, 0x46, 0x31, 0x31, 0x22, 0x2c, 0x20, 0x6c, + 0x61, 0x62, 0x65, 0x6c, 0x3a, 0x20, 0x22, 0x46, 0x31, 0x31, + 0x22, 0x7d, 0x2c, 0xa, 0x9, 0x9, 0x7b, 0x69, 0x64, 0x3a, + 0x20, 0x22, 0x46, 0x31, 0x32, 0x22, 0x2c, 0x20, 0x6c, 0x61, + 0x62, 0x65, 0x6c, 0x3a, 0x20, 0x22, 0x46, 0x31, 0x32, 0x22, + 0x7d, 0x2c, 0xa, 0x9, 0x9, 0x7b, 0x69, 0x64, 0x3a, 0x20, + 0x22, 0x22, 0x2c, 0x20, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x3a, + 0x20, 0x22, 0x22, 0x7d, 0x2c, 0xa, 0x9, 0x9, 0x7b, 0x69, + 0x64, 0x3a, 0x20, 0x22, 0x50, 0x72, 0x69, 0x6e, 0x74, 0x53, + 0x63, 0x72, 0x65, 0x65, 0x6e, 0x22, 0x2c, 0x20, 0x6c, 0x61, + 0x62, 0x65, 0x6c, 0x3a, 0x20, 0x22, 0x50, 0x72, 0x69, 0x6e, + 0x74, 0x3c, 0x62, 0x72, 0x3e, 0x53, 0x63, 0x72, 0x65, 0x65, + 0x6e, 0x22, 0x7d, 0x2c, 0xa, 0x9, 0x9, 0x7b, 0x69, 0x64, + 0x3a, 0x20, 0x22, 0x53, 0x63, 0x72, 0x6f, 0x6c, 0x6c, 0x4c, + 0x6f, 0x63, 0x6b, 0x22, 0x2c, 0x20, 0x6c, 0x61, 0x62, 0x65, + 0x6c, 0x3a, 0x20, 0x22, 0x53, 0x63, 0x72, 0x6f, 0x6c, 0x6c, + 0x3c, 0x62, 0x72, 0x3e, 0x4c, 0x6f, 0x63, 0x6b, 0x22, 0x7d, + 0x2c, 0xa, 0x9, 0x9, 0x7b, 0x69, 0x64, 0x3a, 0x20, 0x22, + 0x50, 0x61, 0x75, 0x73, 0x65, 0x22, 0x2c, 0x20, 0x6c, 0x61, + 0x62, 0x65, 0x6c, 0x3a, 0x20, 0x22, 0x50, 0x61, 0x75, 0x73, + 0x65, 0x22, 0x7d, 0xa, 0x9, 0x5d, 0x2c, 0xa, 0x9, 0x5b, + 0xa, 0x9, 0x9, 0x7b, 0x69, 0x64, 0x3a, 0x20, 0x22, 0x42, + 0x61, 0x63, 0x6b, 0x71, 0x75, 0x6f, 0x74, 0x65, 0x22, 0x2c, + 0x20, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x3a, 0x20, 0x22, 0x7e, + 0x3c, 0x62, 0x72, 0x3e, 0x60, 0x22, 0x7d, 0x2c, 0xa, 0x9, + 0x9, 0x7b, 0x69, 0x64, 0x3a, 0x20, 0x22, 0x44, 0x69, 0x67, + 0x69, 0x74, 0x31, 0x22, 0x2c, 0x20, 0x6c, 0x61, 0x62, 0x65, + 0x6c, 0x3a, 0x20, 0x22, 0x21, 0x3c, 0x62, 0x72, 0x3e, 0x31, + 0x22, 0x7d, 0x2c, 0xa, 0x9, 0x9, 0x7b, 0x69, 0x64, 0x3a, + 0x20, 0x22, 0x44, 0x69, 0x67, 0x69, 0x74, 0x32, 0x22, 0x2c, + 0x20, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x3a, 0x20, 0x22, 0x40, + 0x3c, 0x62, 0x72, 0x3e, 0x32, 0x22, 0x7d, 0x2c, 0xa, 0x9, + 0x9, 0x7b, 0x69, 0x64, 0x3a, 0x20, 0x22, 0x44, 0x69, 0x67, + 0x69, 0x74, 0x33, 0x22, 0x2c, 0x20, 0x6c, 0x61, 0x62, 0x65, + 0x6c, 0x3a, 0x20, 0x22, 0x23, 0x3c, 0x62, 0x72, 0x3e, 0x33, + 0x22, 0x7d, 0x2c, 0xa, 0x9, 0x9, 0x7b, 0x69, 0x64, 0x3a, + 0x20, 0x22, 0x44, 0x69, 0x67, 0x69, 0x74, 0x34, 0x22, 0x2c, + 0x20, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x3a, 0x20, 0x22, 0x24, + 0x3c, 0x62, 0x72, 0x3e, 0x34, 0x22, 0x7d, 0x2c, 0xa, 0x9, + 0x9, 0x7b, 0x69, 0x64, 0x3a, 0x20, 0x22, 0x44, 0x69, 0x67, + 0x69, 0x74, 0x35, 0x22, 0x2c, 0x20, 0x6c, 0x61, 0x62, 0x65, + 0x6c, 0x3a, 0x20, 0x22, 0x25, 0x3c, 0x62, 0x72, 0x3e, 0x35, + 0x22, 0x7d, 0x2c, 0xa, 0x9, 0x9, 0x7b, 0x69, 0x64, 0x3a, + 0x20, 0x22, 0x44, 0x69, 0x67, 0x69, 0x74, 0x36, 0x22, 0x2c, + 0x20, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x3a, 0x20, 0x22, 0x5e, + 0x3c, 0x62, 0x72, 0x3e, 0x36, 0x22, 0x7d, 0x2c, 0xa, 0x9, + 0x9, 0x7b, 0x69, 0x64, 0x3a, 0x20, 0x22, 0x44, 0x69, 0x67, + 0x69, 0x74, 0x37, 0x22, 0x2c, 0x20, 0x6c, 0x61, 0x62, 0x65, + 0x6c, 0x3a, 0x20, 0x22, 0x26, 0x3c, 0x62, 0x72, 0x3e, 0x37, + 0x22, 0x7d, 0x2c, 0xa, 0x9, 0x9, 0x7b, 0x69, 0x64, 0x3a, + 0x20, 0x22, 0x44, 0x69, 0x67, 0x69, 0x74, 0x38, 0x22, 0x2c, + 0x20, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x3a, 0x20, 0x22, 0x2a, + 0x3c, 0x62, 0x72, 0x3e, 0x38, 0x22, 0x7d, 0x2c, 0xa, 0x9, + 0x9, 0x7b, 0x69, 0x64, 0x3a, 0x20, 0x22, 0x44, 0x69, 0x67, + 0x69, 0x74, 0x39, 0x22, 0x2c, 0x20, 0x6c, 0x61, 0x62, 0x65, + 0x6c, 0x3a, 0x20, 0x22, 0x28, 0x3c, 0x62, 0x72, 0x3e, 0x39, + 0x22, 0x7d, 0x2c, 0xa, 0x9, 0x9, 0x7b, 0x69, 0x64, 0x3a, + 0x20, 0x22, 0x44, 0x69, 0x67, 0x69, 0x74, 0x30, 0x22, 0x2c, + 0x20, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x3a, 0x20, 0x22, 0x29, + 0x3c, 0x62, 0x72, 0x3e, 0x30, 0x22, 0x7d, 0x2c, 0xa, 0x9, + 0x9, 0x7b, 0x69, 0x64, 0x3a, 0x20, 0x22, 0x4d, 0x69, 0x6e, + 0x75, 0x73, 0x22, 0x2c, 0x20, 0x6c, 0x61, 0x62, 0x65, 0x6c, + 0x3a, 0x20, 0x22, 0x5f, 0x3c, 0x62, 0x72, 0x3e, 0x2d, 0x22, + 0x7d, 0x2c, 0xa, 0x9, 0x9, 0x7b, 0x69, 0x64, 0x3a, 0x20, + 0x22, 0x45, 0x71, 0x75, 0x61, 0x6c, 0x22, 0x2c, 0x20, 0x6c, + 0x61, 0x62, 0x65, 0x6c, 0x3a, 0x20, 0x22, 0x2b, 0x3c, 0x62, + 0x72, 0x3e, 0x3d, 0x22, 0x7d, 0x2c, 0xa, 0x9, 0x9, 0x7b, + 0x69, 0x64, 0x3a, 0x20, 0x22, 0x42, 0x61, 0x63, 0x6b, 0x73, + 0x70, 0x61, 0x63, 0x65, 0x22, 0x2c, 0x20, 0x6c, 0x61, 0x62, + 0x65, 0x6c, 0x3a, 0x20, 0x22, 0x42, 0x61, 0x63, 0x6b, 0x73, + 0x70, 0x61, 0x63, 0x65, 0x22, 0x2c, 0x20, 0x77, 0x69, 0x64, + 0x74, 0x68, 0x3a, 0x20, 0x32, 0x7d, 0x2c, 0xa, 0x9, 0x9, + 0x7b, 0x69, 0x64, 0x3a, 0x20, 0x22, 0x49, 0x6e, 0x73, 0x65, + 0x72, 0x74, 0x22, 0x2c, 0x20, 0x6c, 0x61, 0x62, 0x65, 0x6c, + 0x3a, 0x20, 0x22, 0x49, 0x6e, 0x73, 0x65, 0x72, 0x74, 0x22, + 0x20, 0x7d, 0x2c, 0xa, 0x9, 0x9, 0x7b, 0x69, 0x64, 0x3a, + 0x20, 0x22, 0x48, 0x6f, 0x6d, 0x65, 0x22, 0x2c, 0x20, 0x6c, + 0x61, 0x62, 0x65, 0x6c, 0x3a, 0x20, 0x22, 0x48, 0x6f, 0x6d, + 0x65, 0x22, 0x20, 0x7d, 0x2c, 0xa, 0x9, 0x9, 0x7b, 0x69, + 0x64, 0x3a, 0x20, 0x22, 0x50, 0x61, 0x67, 0x65, 0x55, 0x70, + 0x22, 0x2c, 0x20, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x3a, 0x20, + 0x22, 0x50, 0x61, 0x67, 0x65, 0x3c, 0x62, 0x72, 0x3e, 0x55, + 0x70, 0x22, 0x7d, 0x2c, 0xa, 0x9, 0x9, 0x7b, 0x69, 0x64, + 0x3a, 0x20, 0x22, 0x4e, 0x75, 0x6d, 0x4c, 0x6f, 0x63, 0x6b, + 0x22, 0x2c, 0x20, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x3a, 0x20, + 0x22, 0x4e, 0x75, 0x6d, 0x22, 0x7d, 0x2c, 0xa, 0x9, 0x9, + 0x7b, 0x69, 0x64, 0x3a, 0x20, 0x22, 0x4e, 0x75, 0x6d, 0x70, + 0x61, 0x64, 0x44, 0x69, 0x76, 0x69, 0x64, 0x65, 0x22, 0x2c, + 0x20, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x3a, 0x20, 0x22, 0x2f, + 0x22, 0x7d, 0x2c, 0xa, 0x9, 0x9, 0x7b, 0x69, 0x64, 0x3a, + 0x20, 0x22, 0x4e, 0x75, 0x6d, 0x70, 0x61, 0x64, 0x4d, 0x75, + 0x6c, 0x74, 0x69, 0x70, 0x6c, 0x79, 0x22, 0x2c, 0x20, 0x6c, + 0x61, 0x62, 0x65, 0x6c, 0x3a, 0x20, 0x22, 0x2a, 0x22, 0x7d, + 0x2c, 0xa, 0x9, 0x9, 0x7b, 0x69, 0x64, 0x3a, 0x20, 0x22, + 0x4e, 0x75, 0x6d, 0x70, 0x61, 0x64, 0x53, 0x75, 0x62, 0x74, + 0x72, 0x61, 0x63, 0x74, 0x22, 0x2c, 0x20, 0x6c, 0x61, 0x62, + 0x65, 0x6c, 0x3a, 0x20, 0x22, 0x2d, 0x22, 0x7d, 0xa, 0x9, + 0x5d, 0x2c, 0xa, 0x9, 0x5b, 0xa, 0x9, 0x9, 0x7b, 0x69, + 0x64, 0x3a, 0x20, 0x22, 0x54, 0x61, 0x62, 0x22, 0x2c, 0x20, + 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x3a, 0x20, 0x22, 0x54, 0x61, + 0x62, 0x22, 0x2c, 0x20, 0x77, 0x69, 0x64, 0x74, 0x68, 0x3a, + 0x20, 0x31, 0x2e, 0x35, 0x7d, 0x2c, 0xa, 0x9, 0x9, 0x7b, + 0x69, 0x64, 0x3a, 0x20, 0x22, 0x4b, 0x65, 0x79, 0x51, 0x22, + 0x2c, 0x20, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x3a, 0x20, 0x22, + 0x51, 0x22, 0x7d, 0x2c, 0xa, 0x9, 0x9, 0x7b, 0x69, 0x64, + 0x3a, 0x20, 0x22, 0x4b, 0x65, 0x79, 0x57, 0x22, 0x2c, 0x20, + 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x3a, 0x20, 0x22, 0x57, 0x22, + 0x7d, 0x2c, 0xa, 0x9, 0x9, 0x7b, 0x69, 0x64, 0x3a, 0x20, + 0x22, 0x4b, 0x65, 0x79, 0x45, 0x22, 0x2c, 0x20, 0x6c, 0x61, + 0x62, 0x65, 0x6c, 0x3a, 0x20, 0x22, 0x45, 0x22, 0x7d, 0x2c, + 0xa, 0x9, 0x9, 0x7b, 0x69, 0x64, 0x3a, 0x20, 0x22, 0x4b, + 0x65, 0x79, 0x52, 0x22, 0x2c, 0x20, 0x6c, 0x61, 0x62, 0x65, + 0x6c, 0x3a, 0x20, 0x22, 0x52, 0x22, 0x7d, 0x2c, 0xa, 0x9, + 0x9, 0x7b, 0x69, 0x64, 0x3a, 0x20, 0x22, 0x4b, 0x65, 0x79, + 0x54, 0x22, 0x2c, 0x20, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x3a, + 0x20, 0x22, 0x54, 0x22, 0x7d, 0x2c, 0xa, 0x9, 0x9, 0x7b, + 0x69, 0x64, 0x3a, 0x20, 0x22, 0x4b, 0x65, 0x79, 0x59, 0x22, + 0x2c, 0x20, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x3a, 0x20, 0x22, + 0x59, 0x22, 0x7d, 0x2c, 0xa, 0x9, 0x9, 0x7b, 0x69, 0x64, + 0x3a, 0x20, 0x22, 0x4b, 0x65, 0x79, 0x55, 0x22, 0x2c, 0x20, + 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x3a, 0x20, 0x22, 0x55, 0x22, + 0x7d, 0x2c, 0xa, 0x9, 0x9, 0x7b, 0x69, 0x64, 0x3a, 0x20, + 0x22, 0x4b, 0x65, 0x79, 0x49, 0x22, 0x2c, 0x20, 0x6c, 0x61, + 0x62, 0x65, 0x6c, 0x3a, 0x20, 0x22, 0x49, 0x22, 0x7d, 0x2c, + 0xa, 0x9, 0x9, 0x7b, 0x69, 0x64, 0x3a, 0x20, 0x22, 0x4b, + 0x65, 0x79, 0x4f, 0x22, 0x2c, 0x20, 0x6c, 0x61, 0x62, 0x65, + 0x6c, 0x3a, 0x20, 0x22, 0x4f, 0x22, 0x7d, 0x2c, 0xa, 0x9, + 0x9, 0x7b, 0x69, 0x64, 0x3a, 0x20, 0x22, 0x4b, 0x65, 0x79, + 0x50, 0x22, 0x2c, 0x20, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x3a, + 0x20, 0x22, 0x50, 0x22, 0x7d, 0x2c, 0xa, 0x9, 0x9, 0x7b, + 0x69, 0x64, 0x3a, 0x20, 0x22, 0x42, 0x72, 0x61, 0x63, 0x6b, + 0x65, 0x74, 0x4c, 0x65, 0x66, 0x74, 0x22, 0x2c, 0x20, 0x6c, + 0x61, 0x62, 0x65, 0x6c, 0x3a, 0x20, 0x22, 0x7b, 0x3c, 0x62, + 0x72, 0x3e, 0x5b, 0x22, 0x7d, 0x2c, 0xa, 0x9, 0x9, 0x7b, + 0x69, 0x64, 0x3a, 0x20, 0x22, 0x42, 0x72, 0x61, 0x63, 0x6b, + 0x65, 0x74, 0x52, 0x69, 0x67, 0x68, 0x74, 0x22, 0x2c, 0x20, + 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x3a, 0x20, 0x22, 0x7d, 0x3c, + 0x62, 0x72, 0x3e, 0x5d, 0x22, 0x7d, 0x2c, 0xa, 0x9, 0x9, + 0x7b, 0x69, 0x64, 0x3a, 0x20, 0x22, 0x42, 0x61, 0x63, 0x6b, + 0x73, 0x6c, 0x61, 0x73, 0x68, 0x22, 0x2c, 0x20, 0x6c, 0x61, + 0x62, 0x65, 0x6c, 0x3a, 0x20, 0x22, 0x7c, 0x3c, 0x62, 0x72, + 0x3e, 0x5c, 0x5c, 0x22, 0x2c, 0x20, 0x77, 0x69, 0x64, 0x74, + 0x68, 0x3a, 0x20, 0x31, 0x2e, 0x35, 0x7d, 0x2c, 0xa, 0x9, + 0x9, 0x7b, 0x69, 0x64, 0x3a, 0x20, 0x22, 0x44, 0x65, 0x6c, + 0x65, 0x74, 0x65, 0x22, 0x2c, 0x20, 0x6c, 0x61, 0x62, 0x65, + 0x6c, 0x3a, 0x20, 0x22, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, + 0x22, 0x7d, 0x2c, 0xa, 0x9, 0x9, 0x7b, 0x69, 0x64, 0x3a, + 0x20, 0x22, 0x45, 0x6e, 0x64, 0x22, 0x2c, 0x20, 0x6c, 0x61, + 0x62, 0x65, 0x6c, 0x3a, 0x20, 0x22, 0x45, 0x6e, 0x64, 0x22, + 0x7d, 0x2c, 0xa, 0x9, 0x9, 0x7b, 0x69, 0x64, 0x3a, 0x20, + 0x22, 0x50, 0x61, 0x67, 0x65, 0x44, 0x6f, 0x77, 0x6e, 0x22, + 0x2c, 0x20, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x3a, 0x20, 0x22, + 0x50, 0x61, 0x67, 0x65, 0x3c, 0x62, 0x72, 0x3e, 0x44, 0x6f, + 0x77, 0x6e, 0x22, 0x7d, 0x2c, 0xa, 0x9, 0x9, 0x7b, 0x69, + 0x64, 0x3a, 0x20, 0x22, 0x4e, 0x75, 0x6d, 0x70, 0x61, 0x64, + 0x37, 0x22, 0x2c, 0x20, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x3a, + 0x20, 0x22, 0x48, 0x6f, 0x6d, 0x65, 0x3c, 0x62, 0x72, 0x3e, + 0x37, 0x22, 0x7d, 0x2c, 0xa, 0x9, 0x9, 0x7b, 0x69, 0x64, + 0x3a, 0x20, 0x22, 0x4e, 0x75, 0x6d, 0x70, 0x61, 0x64, 0x38, + 0x22, 0x2c, 0x20, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x3a, 0x20, + 0x22, 0x55, 0x70, 0x3c, 0x62, 0x72, 0x3e, 0x38, 0x22, 0x7d, + 0x2c, 0xa, 0x9, 0x9, 0x7b, 0x69, 0x64, 0x3a, 0x20, 0x22, + 0x4e, 0x75, 0x6d, 0x70, 0x61, 0x64, 0x39, 0x22, 0x2c, 0x20, + 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x3a, 0x20, 0x22, 0x50, 0x67, + 0x55, 0x70, 0x3c, 0x62, 0x72, 0x3e, 0x39, 0x22, 0x7d, 0x2c, + 0xa, 0x9, 0x9, 0x7b, 0x69, 0x64, 0x3a, 0x20, 0x22, 0x4e, + 0x75, 0x6d, 0x70, 0x61, 0x64, 0x41, 0x64, 0x64, 0x22, 0x2c, + 0x20, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x3a, 0x20, 0x22, 0x2b, + 0x22, 0x2c, 0x20, 0x68, 0x65, 0x69, 0x67, 0x68, 0x74, 0x3a, + 0x20, 0x32, 0x7d, 0xa, 0x9, 0x5d, 0x2c, 0xa, 0x9, 0x5b, + 0xa, 0x9, 0x9, 0x7b, 0x69, 0x64, 0x3a, 0x20, 0x22, 0x43, + 0x61, 0x70, 0x73, 0x4c, 0x6f, 0x63, 0x6b, 0x22, 0x2c, 0x20, + 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x3a, 0x20, 0x22, 0x43, 0x61, + 0x70, 0x73, 0x3c, 0x62, 0x72, 0x3e, 0x4c, 0x6f, 0x63, 0x6b, + 0x22, 0x2c, 0x20, 0x77, 0x69, 0x64, 0x74, 0x68, 0x3a, 0x20, + 0x32, 0x7d, 0x2c, 0xa, 0x9, 0x9, 0x7b, 0x69, 0x64, 0x3a, + 0x20, 0x22, 0x4b, 0x65, 0x79, 0x41, 0x22, 0x2c, 0x20, 0x6c, + 0x61, 0x62, 0x65, 0x6c, 0x3a, 0x20, 0x22, 0x41, 0x22, 0x7d, + 0x2c, 0xa, 0x9, 0x9, 0x7b, 0x69, 0x64, 0x3a, 0x20, 0x22, + 0x4b, 0x65, 0x79, 0x53, 0x22, 0x2c, 0x20, 0x6c, 0x61, 0x62, + 0x65, 0x6c, 0x3a, 0x20, 0x22, 0x53, 0x22, 0x7d, 0x2c, 0xa, + 0x9, 0x9, 0x7b, 0x69, 0x64, 0x3a, 0x20, 0x22, 0x4b, 0x65, + 0x79, 0x44, 0x22, 0x2c, 0x20, 0x6c, 0x61, 0x62, 0x65, 0x6c, + 0x3a, 0x20, 0x22, 0x44, 0x22, 0x7d, 0x2c, 0xa, 0x9, 0x9, + 0x7b, 0x69, 0x64, 0x3a, 0x20, 0x22, 0x4b, 0x65, 0x79, 0x46, + 0x22, 0x2c, 0x20, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x3a, 0x20, + 0x22, 0x46, 0x22, 0x7d, 0x2c, 0xa, 0x9, 0x9, 0x7b, 0x69, + 0x64, 0x3a, 0x20, 0x22, 0x4b, 0x65, 0x79, 0x47, 0x22, 0x2c, + 0x20, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x3a, 0x20, 0x22, 0x47, + 0x22, 0x7d, 0x2c, 0xa, 0x9, 0x9, 0x7b, 0x69, 0x64, 0x3a, + 0x20, 0x22, 0x4b, 0x65, 0x79, 0x48, 0x22, 0x2c, 0x20, 0x6c, + 0x61, 0x62, 0x65, 0x6c, 0x3a, 0x20, 0x22, 0x48, 0x22, 0x7d, + 0x2c, 0xa, 0x9, 0x9, 0x7b, 0x69, 0x64, 0x3a, 0x20, 0x22, + 0x4b, 0x65, 0x79, 0x4a, 0x22, 0x2c, 0x20, 0x6c, 0x61, 0x62, + 0x65, 0x6c, 0x3a, 0x20, 0x22, 0x4a, 0x22, 0x7d, 0x2c, 0xa, + 0x9, 0x9, 0x7b, 0x69, 0x64, 0x3a, 0x20, 0x22, 0x4b, 0x65, + 0x79, 0x4b, 0x22, 0x2c, 0x20, 0x6c, 0x61, 0x62, 0x65, 0x6c, + 0x3a, 0x20, 0x22, 0x4b, 0x22, 0x7d, 0x2c, 0xa, 0x9, 0x9, + 0x7b, 0x69, 0x64, 0x3a, 0x20, 0x22, 0x4b, 0x65, 0x79, 0x4c, + 0x22, 0x2c, 0x20, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x3a, 0x20, + 0x22, 0x4c, 0x22, 0x7d, 0x2c, 0xa, 0x9, 0x9, 0x7b, 0x69, + 0x64, 0x3a, 0x20, 0x22, 0x53, 0x65, 0x6d, 0x69, 0x63, 0x6f, + 0x6c, 0x6f, 0x6e, 0x22, 0x2c, 0x20, 0x6c, 0x61, 0x62, 0x65, + 0x6c, 0x3a, 0x20, 0x22, 0x3a, 0x3c, 0x62, 0x72, 0x3e, 0x3b, + 0x22, 0x7d, 0x2c, 0xa, 0x9, 0x9, 0x7b, 0x69, 0x64, 0x3a, + 0x20, 0x22, 0x51, 0x75, 0x6f, 0x74, 0x65, 0x22, 0x2c, 0x20, + 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x3a, 0x20, 0x22, 0x5c, 0x22, + 0x3c, 0x62, 0x72, 0x3e, 0x5c, 0x27, 0x22, 0x7d, 0x2c, 0xa, + 0x9, 0x9, 0x7b, 0x69, 0x64, 0x3a, 0x20, 0x22, 0x45, 0x6e, + 0x74, 0x65, 0x72, 0x22, 0x2c, 0x20, 0x6c, 0x61, 0x62, 0x65, + 0x6c, 0x3a, 0x20, 0x22, 0x45, 0x6e, 0x74, 0x65, 0x72, 0x22, + 0x2c, 0x20, 0x77, 0x69, 0x64, 0x74, 0x68, 0x3a, 0x20, 0x32, + 0x7d, 0x2c, 0xa, 0x9, 0x9, 0x7b, 0x69, 0x64, 0x3a, 0x20, + 0x22, 0x22, 0x2c, 0x20, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x3a, + 0x20, 0x22, 0x22, 0x2c, 0x20, 0x77, 0x69, 0x64, 0x74, 0x68, + 0x3a, 0x20, 0x33, 0x2e, 0x31, 0x37, 0x7d, 0x2c, 0xa, 0x9, + 0x9, 0x7b, 0x69, 0x64, 0x3a, 0x20, 0x22, 0x4e, 0x75, 0x6d, + 0x70, 0x61, 0x64, 0x34, 0x22, 0x2c, 0x20, 0x6c, 0x61, 0x62, + 0x65, 0x6c, 0x3a, 0x20, 0x22, 0x4c, 0x65, 0x66, 0x74, 0x3c, + 0x62, 0x72, 0x3e, 0x34, 0x22, 0x7d, 0x2c, 0xa, 0x9, 0x9, + 0x7b, 0x69, 0x64, 0x3a, 0x20, 0x22, 0x4e, 0x75, 0x6d, 0x70, + 0x61, 0x64, 0x35, 0x22, 0x2c, 0x20, 0x6c, 0x61, 0x62, 0x65, + 0x6c, 0x3a, 0x20, 0x22, 0x35, 0x22, 0x7d, 0x2c, 0xa, 0x9, + 0x9, 0x7b, 0x69, 0x64, 0x3a, 0x20, 0x22, 0x4e, 0x75, 0x6d, + 0x70, 0x61, 0x64, 0x36, 0x22, 0x2c, 0x20, 0x6c, 0x61, 0x62, + 0x65, 0x6c, 0x3a, 0x20, 0x22, 0x52, 0x69, 0x67, 0x68, 0x74, + 0x3c, 0x62, 0x72, 0x3e, 0x36, 0x22, 0x7d, 0xa, 0x9, 0x5d, + 0x2c, 0xa, 0x9, 0x5b, 0xa, 0x9, 0x9, 0x7b, 0x69, 0x64, + 0x3a, 0x20, 0x22, 0x53, 0x68, 0x69, 0x66, 0x74, 0x4c, 0x65, + 0x66, 0x74, 0x22, 0x2c, 0x20, 0x6c, 0x61, 0x62, 0x65, 0x6c, + 0x3a, 0x20, 0x22, 0x53, 0x68, 0x69, 0x66, 0x74, 0x22, 0x2c, + 0x20, 0x77, 0x69, 0x64, 0x74, 0x68, 0x3a, 0x20, 0x32, 0x2e, + 0x35, 0x7d, 0x2c, 0xa, 0x9, 0x9, 0x7b, 0x69, 0x64, 0x3a, + 0x20, 0x22, 0x4b, 0x65, 0x79, 0x5a, 0x22, 0x2c, 0x20, 0x6c, + 0x61, 0x62, 0x65, 0x6c, 0x3a, 0x20, 0x22, 0x5a, 0x22, 0x7d, + 0x2c, 0xa, 0x9, 0x9, 0x7b, 0x69, 0x64, 0x3a, 0x20, 0x22, + 0x4b, 0x65, 0x79, 0x58, 0x22, 0x2c, 0x20, 0x6c, 0x61, 0x62, + 0x65, 0x6c, 0x3a, 0x20, 0x22, 0x58, 0x22, 0x7d, 0x2c, 0xa, + 0x9, 0x9, 0x7b, 0x69, 0x64, 0x3a, 0x20, 0x22, 0x4b, 0x65, + 0x79, 0x43, 0x22, 0x2c, 0x20, 0x6c, 0x61, 0x62, 0x65, 0x6c, + 0x3a, 0x20, 0x22, 0x43, 0x22, 0x7d, 0x2c, 0xa, 0x9, 0x9, + 0x7b, 0x69, 0x64, 0x3a, 0x20, 0x22, 0x4b, 0x65, 0x79, 0x56, + 0x22, 0x2c, 0x20, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x3a, 0x20, + 0x22, 0x56, 0x22, 0x7d, 0x2c, 0xa, 0x9, 0x9, 0x7b, 0x69, + 0x64, 0x3a, 0x20, 0x22, 0x4b, 0x65, 0x79, 0x42, 0x22, 0x2c, + 0x20, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x3a, 0x20, 0x22, 0x42, + 0x22, 0x7d, 0x2c, 0xa, 0x9, 0x9, 0x7b, 0x69, 0x64, 0x3a, + 0x20, 0x22, 0x4b, 0x65, 0x79, 0x4e, 0x22, 0x2c, 0x20, 0x6c, + 0x61, 0x62, 0x65, 0x6c, 0x3a, 0x20, 0x22, 0x4e, 0x22, 0x7d, + 0x2c, 0xa, 0x9, 0x9, 0x7b, 0x69, 0x64, 0x3a, 0x20, 0x22, + 0x4b, 0x65, 0x79, 0x4d, 0x22, 0x2c, 0x20, 0x6c, 0x61, 0x62, + 0x65, 0x6c, 0x3a, 0x20, 0x22, 0x4d, 0x22, 0x7d, 0x2c, 0xa, + 0x9, 0x9, 0x7b, 0x69, 0x64, 0x3a, 0x20, 0x22, 0x43, 0x6f, + 0x6d, 0x6d, 0x61, 0x22, 0x2c, 0x20, 0x6c, 0x61, 0x62, 0x65, + 0x6c, 0x3a, 0x20, 0x22, 0x5c, 0x3c, 0x3c, 0x62, 0x72, 0x3e, + 0x2c, 0x22, 0x7d, 0x2c, 0xa, 0x9, 0x9, 0x7b, 0x69, 0x64, + 0x3a, 0x20, 0x22, 0x50, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x22, + 0x2c, 0x20, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x3a, 0x20, 0x22, + 0x5c, 0x3e, 0x3c, 0x62, 0x72, 0x3e, 0x2e, 0x22, 0x7d, 0x2c, + 0xa, 0x9, 0x9, 0x7b, 0x69, 0x64, 0x3a, 0x20, 0x22, 0x53, + 0x6c, 0x61, 0x73, 0x68, 0x22, 0x2c, 0x20, 0x6c, 0x61, 0x62, + 0x65, 0x6c, 0x3a, 0x20, 0x22, 0x3f, 0x3c, 0x62, 0x72, 0x3e, + 0x2f, 0x22, 0x7d, 0x2c, 0xa, 0x9, 0x9, 0x7b, 0x69, 0x64, + 0x3a, 0x20, 0x22, 0x53, 0x68, 0x69, 0x66, 0x74, 0x52, 0x69, + 0x67, 0x68, 0x74, 0x22, 0x2c, 0x20, 0x6c, 0x61, 0x62, 0x65, + 0x6c, 0x3a, 0x20, 0x22, 0x53, 0x68, 0x69, 0x66, 0x74, 0x22, + 0x2c, 0x20, 0x77, 0x69, 0x64, 0x74, 0x68, 0x3a, 0x20, 0x32, + 0x2e, 0x36, 0x7d, 0x2c, 0xa, 0x9, 0x9, 0x7b, 0x69, 0x64, + 0x3a, 0x20, 0x22, 0x22, 0x2c, 0x20, 0x6c, 0x61, 0x62, 0x65, + 0x6c, 0x3a, 0x20, 0x22, 0x22, 0x7d, 0x2c, 0xa, 0x9, 0x9, + 0x7b, 0x69, 0x64, 0x3a, 0x20, 0x22, 0x41, 0x72, 0x72, 0x6f, + 0x77, 0x55, 0x70, 0x22, 0x2c, 0x20, 0x6c, 0x61, 0x62, 0x65, + 0x6c, 0x3a, 0x20, 0x22, 0x55, 0x70, 0x22, 0x7d, 0x2c, 0xa, + 0x9, 0x9, 0x7b, 0x69, 0x64, 0x3a, 0x20, 0x22, 0x22, 0x2c, + 0x20, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x3a, 0x20, 0x22, 0x22, + 0x7d, 0x2c, 0xa, 0x9, 0x9, 0x7b, 0x69, 0x64, 0x3a, 0x20, + 0x22, 0x4e, 0x75, 0x6d, 0x70, 0x61, 0x64, 0x31, 0x22, 0x2c, + 0x20, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x3a, 0x20, 0x22, 0x45, + 0x6e, 0x64, 0x3c, 0x62, 0x72, 0x3e, 0x31, 0x22, 0x7d, 0x2c, + 0xa, 0x9, 0x9, 0x7b, 0x69, 0x64, 0x3a, 0x20, 0x22, 0x4e, + 0x75, 0x6d, 0x70, 0x61, 0x64, 0x32, 0x22, 0x2c, 0x20, 0x6c, + 0x61, 0x62, 0x65, 0x6c, 0x3a, 0x20, 0x22, 0x44, 0x6f, 0x77, + 0x6e, 0x3c, 0x62, 0x72, 0x3e, 0x32, 0x22, 0x7d, 0x2c, 0xa, + 0x9, 0x9, 0x7b, 0x69, 0x64, 0x3a, 0x20, 0x22, 0x4e, 0x75, + 0x6d, 0x70, 0x61, 0x64, 0x33, 0x22, 0x2c, 0x20, 0x6c, 0x61, + 0x62, 0x65, 0x6c, 0x3a, 0x20, 0x22, 0x50, 0x67, 0x44, 0x6e, + 0x3c, 0x62, 0x72, 0x3e, 0x33, 0x22, 0x7d, 0x2c, 0xa, 0x9, + 0x9, 0x7b, 0x69, 0x64, 0x3a, 0x20, 0x22, 0x4e, 0x75, 0x6d, + 0x70, 0x61, 0x64, 0x45, 0x6e, 0x74, 0x65, 0x72, 0x22, 0x2c, + 0x20, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x3a, 0x20, 0x22, 0x45, + 0x6e, 0x74, 0x65, 0x72, 0x22, 0x2c, 0x20, 0x68, 0x65, 0x69, + 0x67, 0x68, 0x74, 0x3a, 0x20, 0x32, 0x7d, 0xa, 0x9, 0x5d, + 0x2c, 0xa, 0x9, 0x5b, 0xa, 0x9, 0x9, 0x7b, 0x69, 0x64, + 0x3a, 0x20, 0x22, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, + 0x4c, 0x65, 0x66, 0x74, 0x22, 0x2c, 0x20, 0x6c, 0x61, 0x62, + 0x65, 0x6c, 0x3a, 0x20, 0x22, 0x43, 0x6f, 0x6e, 0x74, 0x72, + 0x6f, 0x6c, 0x22, 0x2c, 0x20, 0x77, 0x69, 0x64, 0x74, 0x68, + 0x3a, 0x20, 0x32, 0x7d, 0x2c, 0xa, 0x9, 0x9, 0x7b, 0x69, + 0x64, 0x3a, 0x20, 0x22, 0x4d, 0x65, 0x74, 0x61, 0x4c, 0x65, + 0x66, 0x74, 0x22, 0x2c, 0x20, 0x6c, 0x61, 0x62, 0x65, 0x6c, + 0x3a, 0x20, 0x22, 0x4d, 0x65, 0x74, 0x61, 0x22, 0x7d, 0x2c, + 0xa, 0x9, 0x9, 0x7b, 0x69, 0x64, 0x3a, 0x20, 0x22, 0x41, + 0x6c, 0x74, 0x4c, 0x65, 0x66, 0x74, 0x22, 0x2c, 0x20, 0x6c, + 0x61, 0x62, 0x65, 0x6c, 0x3a, 0x20, 0x22, 0x41, 0x6c, 0x74, + 0x22, 0x2c, 0x20, 0x77, 0x69, 0x64, 0x74, 0x68, 0x3a, 0x20, + 0x31, 0x2e, 0x35, 0x7d, 0x2c, 0xa, 0x9, 0x9, 0x7b, 0x69, + 0x64, 0x3a, 0x20, 0x22, 0x53, 0x70, 0x61, 0x63, 0x65, 0x22, + 0x2c, 0x20, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x3a, 0x20, 0x22, + 0x53, 0x70, 0x61, 0x63, 0x65, 0x22, 0x2c, 0x20, 0x77, 0x69, + 0x64, 0x74, 0x68, 0x3a, 0x20, 0x36, 0x2e, 0x34, 0x7d, 0x2c, + 0xa, 0x9, 0x9, 0x7b, 0x69, 0x64, 0x3a, 0x20, 0x22, 0x41, + 0x6c, 0x74, 0x52, 0x69, 0x67, 0x68, 0x74, 0x22, 0x2c, 0x20, + 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x3a, 0x20, 0x22, 0x41, 0x6c, + 0x74, 0x22, 0x2c, 0x20, 0x77, 0x69, 0x64, 0x74, 0x68, 0x3a, + 0x20, 0x31, 0x2e, 0x35, 0x7d, 0x2c, 0xa, 0x9, 0x9, 0x7b, + 0x69, 0x64, 0x3a, 0x20, 0x22, 0x4d, 0x65, 0x74, 0x61, 0x52, + 0x69, 0x67, 0x68, 0x74, 0x22, 0x2c, 0x20, 0x6c, 0x61, 0x62, + 0x65, 0x6c, 0x3a, 0x20, 0x22, 0x4d, 0x65, 0x74, 0x61, 0x22, + 0x7d, 0x2c, 0xa, 0x9, 0x9, 0x7b, 0x69, 0x64, 0x3a, 0x20, + 0x22, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x52, 0x69, + 0x67, 0x68, 0x74, 0x22, 0x2c, 0x20, 0x6c, 0x61, 0x62, 0x65, + 0x6c, 0x3a, 0x20, 0x22, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x6f, + 0x6c, 0x22, 0x2c, 0x20, 0x77, 0x69, 0x64, 0x74, 0x68, 0x3a, + 0x20, 0x32, 0x7d, 0x2c, 0xa, 0x9, 0x9, 0x7b, 0x69, 0x64, + 0x3a, 0x20, 0x22, 0x41, 0x72, 0x72, 0x6f, 0x77, 0x4c, 0x65, + 0x66, 0x74, 0x22, 0x2c, 0x20, 0x6c, 0x61, 0x62, 0x65, 0x6c, + 0x3a, 0x20, 0x22, 0x4c, 0x65, 0x66, 0x74, 0x22, 0x7d, 0x2c, + 0xa, 0x9, 0x9, 0x7b, 0x69, 0x64, 0x3a, 0x20, 0x22, 0x41, + 0x72, 0x72, 0x6f, 0x77, 0x44, 0x6f, 0x77, 0x6e, 0x22, 0x2c, + 0x20, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x3a, 0x20, 0x22, 0x44, + 0x6f, 0x77, 0x6e, 0x22, 0x7d, 0x2c, 0xa, 0x9, 0x9, 0x7b, + 0x69, 0x64, 0x3a, 0x20, 0x22, 0x41, 0x72, 0x72, 0x6f, 0x77, + 0x52, 0x69, 0x67, 0x68, 0x74, 0x22, 0x2c, 0x20, 0x6c, 0x61, + 0x62, 0x65, 0x6c, 0x3a, 0x20, 0x22, 0x52, 0x69, 0x67, 0x68, + 0x74, 0x22, 0x7d, 0x2c, 0xa, 0x9, 0x9, 0x7b, 0x69, 0x64, + 0x3a, 0x20, 0x22, 0x4e, 0x75, 0x6d, 0x70, 0x61, 0x64, 0x30, + 0x22, 0x2c, 0x20, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x3a, 0x20, + 0x22, 0x49, 0x6e, 0x73, 0x3c, 0x62, 0x72, 0x3e, 0x30, 0x22, + 0x2c, 0x20, 0x77, 0x69, 0x64, 0x74, 0x68, 0x3a, 0x20, 0x32, + 0x7d, 0x2c, 0xa, 0x9, 0x9, 0x7b, 0x69, 0x64, 0x3a, 0x20, + 0x22, 0x4e, 0x75, 0x6d, 0x70, 0x61, 0x64, 0x44, 0x65, 0x63, + 0x69, 0x6d, 0x61, 0x6c, 0x22, 0x2c, 0x20, 0x6c, 0x61, 0x62, + 0x65, 0x6c, 0x3a, 0x20, 0x22, 0x44, 0x65, 0x6c, 0x3c, 0x62, + 0x72, 0x3e, 0x2e, 0x22, 0x7d, 0xa, 0x9, 0x5d, 0x2c, 0xa, + 0x5d, 0x3b, 0xa, 0xa, 0x77, 0x69, 0x6e, 0x64, 0x6f, 0x77, + 0x2e, 0x73, 0x65, 0x74, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x76, + 0x61, 0x6c, 0x28, 0x22, 0x72, 0x65, 0x66, 0x72, 0x65, 0x73, + 0x68, 0x49, 0x6e, 0x64, 0x69, 0x63, 0x61, 0x74, 0x6f, 0x72, + 0x73, 0x28, 0x29, 0x3b, 0x22, 0x2c, 0x32, 0x30, 0x30, 0x30, + 0x29, 0x3b, 0xa, 0xa, 0x77, 0x69, 0x6e, 0x64, 0x6f, 0x77, + 0x2e, 0x61, 0x64, 0x64, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x4c, + 0x69, 0x73, 0x74, 0x65, 0x6e, 0x65, 0x72, 0x28, 0x22, 0x6b, + 0x65, 0x79, 0x64, 0x6f, 0x77, 0x6e, 0x22, 0x2c, 0x20, 0x6f, + 0x6e, 0x4b, 0x65, 0x79, 0x44, 0x6f, 0x77, 0x6e, 0x2c, 0x20, + 0x74, 0x72, 0x75, 0x65, 0x29, 0x3b, 0xa, 0x77, 0x69, 0x6e, + 0x64, 0x6f, 0x77, 0x2e, 0x61, 0x64, 0x64, 0x45, 0x76, 0x65, + 0x6e, 0x74, 0x4c, 0x69, 0x73, 0x74, 0x65, 0x6e, 0x65, 0x72, + 0x28, 0x22, 0x6b, 0x65, 0x79, 0x75, 0x70, 0x22, 0x2c, 0x20, + 0x6f, 0x6e, 0x4b, 0x65, 0x79, 0x55, 0x70, 0x2c, 0x20, 0x74, + 0x72, 0x75, 0x65, 0x29, 0x3b, 0xa, 0xa, 0x77, 0x69, 0x6e, + 0x64, 0x6f, 0x77, 0x2e, 0x6f, 0x6e, 0x6c, 0x6f, 0x61, 0x64, + 0x20, 0x3d, 0x20, 0x28, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x29, + 0x20, 0x3d, 0x3e, 0x20, 0x7b, 0xa, 0x9, 0x63, 0x72, 0x65, + 0x61, 0x74, 0x65, 0x4d, 0x61, 0x63, 0x72, 0x6f, 0x73, 0x28, + 0x22, 0x6d, 0x61, 0x63, 0x72, 0x6f, 0x73, 0x22, 0x29, 0x3b, + 0xa, 0x9, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x4b, 0x65, + 0x79, 0x73, 0x28, 0x22, 0x6b, 0x65, 0x79, 0x62, 0x6f, 0x61, + 0x72, 0x64, 0x22, 0x29, 0x3b, 0xa, 0x7d, 0xa, 0xa, 0x66, + 0x75, 0x6e, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x6f, 0x6e, + 0x4b, 0x65, 0x79, 0x44, 0x6f, 0x77, 0x6e, 0x28, 0x65, 0x76, + 0x65, 0x6e, 0x74, 0x29, 0x20, 0x7b, 0xa, 0x9, 0x69, 0x66, + 0x20, 0x28, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x2e, 0x64, 0x65, + 0x66, 0x61, 0x75, 0x6c, 0x74, 0x50, 0x72, 0x65, 0x76, 0x65, + 0x6e, 0x74, 0x65, 0x64, 0x29, 0x20, 0x7b, 0xa, 0x9, 0x9, + 0x72, 0x65, 0x74, 0x75, 0x72, 0x6e, 0x3b, 0x20, 0x2f, 0x2f, + 0x20, 0x44, 0x6f, 0x20, 0x6e, 0x6f, 0x74, 0x68, 0x69, 0x6e, + 0x67, 0x20, 0x69, 0x66, 0x20, 0x74, 0x68, 0x65, 0x20, 0x65, + 0x76, 0x65, 0x6e, 0x74, 0x20, 0x77, 0x61, 0x73, 0x20, 0x61, + 0x6c, 0x72, 0x65, 0x61, 0x64, 0x79, 0x20, 0x70, 0x72, 0x6f, + 0x63, 0x65, 0x73, 0x73, 0x65, 0x64, 0xa, 0x9, 0x7d, 0xa, + 0x9, 0xa, 0x9, 0x70, 0x72, 0x65, 0x73, 0x73, 0x4b, 0x65, + 0x79, 0x28, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x2e, 0x63, 0x6f, + 0x64, 0x65, 0x29, 0x3b, 0xa, 0xa, 0x9, 0x2f, 0x2f, 0x20, + 0x43, 0x61, 0x6e, 0x63, 0x65, 0x6c, 0x20, 0x74, 0x68, 0x65, + 0x20, 0x64, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x20, 0x61, + 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x74, 0x6f, 0x20, 0x61, + 0x76, 0x6f, 0x69, 0x64, 0x20, 0x69, 0x74, 0x20, 0x62, 0x65, + 0x69, 0x6e, 0x67, 0x20, 0x68, 0x61, 0x6e, 0x64, 0x6c, 0x65, + 0x64, 0x20, 0x74, 0x77, 0x69, 0x63, 0x65, 0xa, 0x9, 0x65, + 0x76, 0x65, 0x6e, 0x74, 0x2e, 0x70, 0x72, 0x65, 0x76, 0x65, + 0x6e, 0x74, 0x44, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x28, + 0x29, 0x3b, 0xa, 0x7d, 0xa, 0xa, 0x66, 0x75, 0x6e, 0x63, + 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x70, 0x72, 0x65, 0x73, 0x73, + 0x4b, 0x65, 0x79, 0x28, 0x63, 0x6f, 0x64, 0x65, 0x29, 0x20, + 0x7b, 0xa, 0x9, 0x69, 0x66, 0x20, 0x28, 0x6b, 0x65, 0x79, + 0x73, 0x2e, 0x69, 0x6e, 0x63, 0x6c, 0x75, 0x64, 0x65, 0x73, + 0x28, 0x63, 0x6f, 0x64, 0x65, 0x29, 0x29, 0x20, 0x7b, 0x20, + 0x72, 0x65, 0x74, 0x75, 0x72, 0x6e, 0x3b, 0x20, 0x7d, 0xa, + 0xa, 0x9, 0x6b, 0x65, 0x79, 0x73, 0x2e, 0x70, 0x75, 0x73, + 0x68, 0x28, 0x63, 0x6f, 0x64, 0x65, 0x29, 0x3b, 0xa, 0xa, + 0x9, 0x73, 0x65, 0x6e, 0x64, 0x4b, 0x65, 0x79, 0x73, 0x28, + 0x6b, 0x65, 0x79, 0x73, 0x29, 0x3b, 0xa, 0x7d, 0xa, 0xa, + 0x66, 0x75, 0x6e, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x6f, + 0x6e, 0x4b, 0x65, 0x79, 0x55, 0x70, 0x28, 0x65, 0x76, 0x65, + 0x6e, 0x74, 0x29, 0x20, 0x7b, 0xa, 0x9, 0x69, 0x66, 0x20, + 0x28, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x2e, 0x64, 0x65, 0x66, + 0x61, 0x75, 0x6c, 0x74, 0x50, 0x72, 0x65, 0x76, 0x65, 0x6e, + 0x74, 0x65, 0x64, 0x29, 0x20, 0x7b, 0xa, 0x9, 0x9, 0x72, + 0x65, 0x74, 0x75, 0x72, 0x6e, 0x3b, 0x20, 0x2f, 0x2f, 0x20, + 0x44, 0x6f, 0x20, 0x6e, 0x6f, 0x74, 0x68, 0x69, 0x6e, 0x67, + 0x20, 0x69, 0x66, 0x20, 0x74, 0x68, 0x65, 0x20, 0x65, 0x76, + 0x65, 0x6e, 0x74, 0x20, 0x77, 0x61, 0x73, 0x20, 0x61, 0x6c, + 0x72, 0x65, 0x61, 0x64, 0x79, 0x20, 0x70, 0x72, 0x6f, 0x63, + 0x65, 0x73, 0x73, 0x65, 0x64, 0xa, 0x9, 0x20, 0x7d, 0xa, + 0xa, 0x9, 0x72, 0x65, 0x6c, 0x65, 0x61, 0x73, 0x65, 0x4b, + 0x65, 0x79, 0x28, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x2e, 0x63, + 0x6f, 0x64, 0x65, 0x29, 0x3b, 0xa, 0xa, 0x9, 0x2f, 0x2f, + 0x20, 0x43, 0x61, 0x6e, 0x63, 0x65, 0x6c, 0x20, 0x74, 0x68, + 0x65, 0x20, 0x64, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x20, + 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x74, 0x6f, 0x20, + 0x61, 0x76, 0x6f, 0x69, 0x64, 0x20, 0x69, 0x74, 0x20, 0x62, + 0x65, 0x69, 0x6e, 0x67, 0x20, 0x68, 0x61, 0x6e, 0x64, 0x6c, + 0x65, 0x64, 0x20, 0x74, 0x77, 0x69, 0x63, 0x65, 0xa, 0x9, + 0x65, 0x76, 0x65, 0x6e, 0x74, 0x2e, 0x70, 0x72, 0x65, 0x76, + 0x65, 0x6e, 0x74, 0x44, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, + 0x28, 0x29, 0x3b, 0xa, 0x7d, 0xa, 0xa, 0x66, 0x75, 0x6e, + 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x72, 0x65, 0x6c, 0x65, + 0x61, 0x73, 0x65, 0x4b, 0x65, 0x79, 0x28, 0x63, 0x6f, 0x64, + 0x65, 0x29, 0x20, 0x7b, 0xa, 0x9, 0x69, 0x66, 0x20, 0x28, + 0x6b, 0x65, 0x79, 0x73, 0x2e, 0x69, 0x6e, 0x63, 0x6c, 0x75, + 0x64, 0x65, 0x73, 0x28, 0x63, 0x6f, 0x64, 0x65, 0x29, 0x29, + 0x20, 0x7b, 0xa, 0x9, 0x9, 0x6b, 0x65, 0x79, 0x73, 0x2e, + 0x73, 0x70, 0x6c, 0x69, 0x63, 0x65, 0x28, 0x6b, 0x65, 0x79, + 0x73, 0x2e, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x4f, 0x66, 0x28, + 0x63, 0x6f, 0x64, 0x65, 0x29, 0x2c, 0x31, 0x29, 0x3b, 0xa, + 0x9, 0x7d, 0xa, 0xa, 0x9, 0x73, 0x65, 0x6e, 0x64, 0x4b, + 0x65, 0x79, 0x73, 0x28, 0x6b, 0x65, 0x79, 0x73, 0x29, 0x3b, + 0xa, 0x7d, 0xa, 0xa, 0xa, 0x66, 0x75, 0x6e, 0x63, 0x74, + 0x69, 0x6f, 0x6e, 0x20, 0x73, 0x65, 0x6e, 0x64, 0x4b, 0x65, + 0x79, 0x73, 0x28, 0x63, 0x75, 0x72, 0x4b, 0x65, 0x79, 0x73, + 0x29, 0x20, 0x7b, 0xa, 0x9, 0x63, 0x6f, 0x6e, 0x73, 0x74, + 0x20, 0x75, 0x72, 0x6c, 0x3d, 0x22, 0x73, 0x65, 0x6e, 0x64, + 0x6b, 0x65, 0x79, 0x73, 0x2e, 0x63, 0x67, 0x69, 0x3f, 0x6b, + 0x65, 0x79, 0x73, 0x3d, 0x22, 0x2e, 0x63, 0x6f, 0x6e, 0x63, + 0x61, 0x74, 0x28, 0x63, 0x75, 0x72, 0x4b, 0x65, 0x79, 0x73, + 0x29, 0x3b, 0xa, 0x9, 0x66, 0x65, 0x74, 0x63, 0x68, 0x71, + 0x75, 0x65, 0x75, 0x65, 0x2e, 0x70, 0x75, 0x73, 0x68, 0x28, + 0x75, 0x72, 0x6c, 0x29, 0x3b, 0xa, 0x9, 0x63, 0x6f, 0x6e, + 0x73, 0x6f, 0x6c, 0x65, 0x2e, 0x6c, 0x6f, 0x67, 0x28, 0x66, + 0x65, 0x74, 0x63, 0x68, 0x71, 0x75, 0x65, 0x75, 0x65, 0x29, + 0x3b, 0xa, 0x9, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, + 0x74, 0x2e, 0x67, 0x65, 0x74, 0x45, 0x6c, 0x65, 0x6d, 0x65, + 0x6e, 0x74, 0x42, 0x79, 0x49, 0x64, 0x28, 0x22, 0x64, 0x6f, + 0x77, 0x6e, 0x4b, 0x65, 0x79, 0x73, 0x22, 0x29, 0xa, 0x9, + 0x9, 0x2e, 0x69, 0x6e, 0x6e, 0x65, 0x72, 0x48, 0x54, 0x4d, + 0x4c, 0x20, 0x3d, 0x20, 0x63, 0x75, 0x72, 0x4b, 0x65, 0x79, + 0x73, 0x3b, 0xa, 0x9, 0x70, 0x72, 0x65, 0x76, 0x5f, 0x6b, + 0x65, 0x79, 0x73, 0x20, 0x3d, 0x20, 0x64, 0x6f, 0x63, 0x75, + 0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x67, 0x65, 0x74, 0x45, 0x6c, + 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x42, 0x79, 0x43, 0x6c, + 0x61, 0x73, 0x73, 0x4e, 0x61, 0x6d, 0x65, 0x28, 0x22, 0x70, + 0x72, 0x65, 0x73, 0x73, 0x65, 0x64, 0x22, 0x29, 0x3b, 0xa, + 0x9, 0x66, 0x6f, 0x72, 0x20, 0x28, 0x6c, 0x65, 0x74, 0x20, + 0x6b, 0x65, 0x79, 0x20, 0x6f, 0x66, 0x20, 0x63, 0x75, 0x72, + 0x4b, 0x65, 0x79, 0x73, 0x29, 0x20, 0x7b, 0xa, 0x9, 0x9, + 0x6b, 0x65, 0x79, 0x44, 0x69, 0x76, 0x20, 0x3d, 0x20, 0x64, + 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x67, 0x65, + 0x74, 0x45, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x42, 0x79, + 0x49, 0x64, 0x28, 0x6b, 0x65, 0x79, 0x29, 0x3b, 0xa, 0x9, + 0x9, 0x6b, 0x65, 0x79, 0x44, 0x69, 0x76, 0x2e, 0x63, 0x6c, + 0x61, 0x73, 0x73, 0x4c, 0x69, 0x73, 0x74, 0x2e, 0x61, 0x64, + 0x64, 0x28, 0x22, 0x70, 0x72, 0x65, 0x73, 0x73, 0x65, 0x64, + 0x22, 0x29, 0x3b, 0xa, 0x9, 0x7d, 0xa, 0x9, 0x66, 0x6f, + 0x72, 0x20, 0x28, 0x6c, 0x65, 0x74, 0x20, 0x6b, 0x65, 0x79, + 0x20, 0x6f, 0x66, 0x20, 0x70, 0x72, 0x65, 0x76, 0x5f, 0x6b, + 0x65, 0x79, 0x73, 0x29, 0x20, 0x7b, 0xa, 0x9, 0x9, 0x69, + 0x66, 0x20, 0x28, 0x21, 0x63, 0x75, 0x72, 0x4b, 0x65, 0x79, + 0x73, 0x2e, 0x69, 0x6e, 0x63, 0x6c, 0x75, 0x64, 0x65, 0x73, + 0x28, 0x6b, 0x65, 0x79, 0x2e, 0x69, 0x64, 0x29, 0x29, 0x20, + 0x7b, 0xa, 0x9, 0x9, 0x9, 0x6b, 0x65, 0x79, 0x2e, 0x63, + 0x6c, 0x61, 0x73, 0x73, 0x4c, 0x69, 0x73, 0x74, 0x2e, 0x72, + 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x28, 0x22, 0x70, 0x72, 0x65, + 0x73, 0x73, 0x65, 0x64, 0x22, 0x29, 0x3b, 0xa, 0x9, 0x9, + 0x7d, 0xa, 0x9, 0x7d, 0xa, 0x9, 0x69, 0x66, 0x20, 0x28, + 0x66, 0x65, 0x74, 0x63, 0x68, 0x71, 0x75, 0x65, 0x75, 0x65, + 0x2e, 0x6c, 0x65, 0x6e, 0x67, 0x74, 0x68, 0x20, 0x3d, 0x3d, + 0x20, 0x31, 0x29, 0x20, 0x7b, 0xa, 0x9, 0x9, 0x72, 0x75, + 0x6e, 0x51, 0x75, 0x65, 0x75, 0x65, 0x28, 0x29, 0x3b, 0xa, + 0x9, 0x7d, 0xa, 0x7d, 0xa, 0xa, 0x61, 0x73, 0x79, 0x6e, + 0x63, 0x20, 0x66, 0x75, 0x6e, 0x63, 0x74, 0x69, 0x6f, 0x6e, + 0x20, 0x72, 0x75, 0x6e, 0x51, 0x75, 0x65, 0x75, 0x65, 0x28, + 0x29, 0x20, 0x7b, 0xa, 0x9, 0x63, 0x6f, 0x6e, 0x73, 0x74, + 0x20, 0x75, 0x72, 0x6c, 0x20, 0x3d, 0x20, 0x66, 0x65, 0x74, + 0x63, 0x68, 0x71, 0x75, 0x65, 0x75, 0x65, 0x5b, 0x30, 0x5d, + 0x3b, 0xa, 0x9, 0x61, 0x77, 0x61, 0x69, 0x74, 0x20, 0x66, + 0x65, 0x74, 0x63, 0x68, 0x28, 0x75, 0x72, 0x6c, 0x29, 0x3b, + 0xa, 0x9, 0x66, 0x65, 0x74, 0x63, 0x68, 0x71, 0x75, 0x65, + 0x75, 0x65, 0x2e, 0x73, 0x68, 0x69, 0x66, 0x74, 0x28, 0x29, + 0x3b, 0xa, 0x9, 0x69, 0x66, 0x20, 0x28, 0x66, 0x65, 0x74, + 0x63, 0x68, 0x71, 0x75, 0x65, 0x75, 0x65, 0x2e, 0x6c, 0x65, + 0x6e, 0x67, 0x74, 0x68, 0x20, 0x3e, 0x20, 0x30, 0x29, 0x20, + 0x7b, 0xa, 0x9, 0x9, 0x72, 0x75, 0x6e, 0x51, 0x75, 0x65, + 0x75, 0x65, 0x28, 0x29, 0x3b, 0xa, 0x9, 0x7d, 0xa, 0x7d, + 0xa, 0xa, 0x66, 0x75, 0x6e, 0x63, 0x74, 0x69, 0x6f, 0x6e, + 0x20, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x49, 0x6e, 0x64, + 0x69, 0x63, 0x61, 0x74, 0x6f, 0x72, 0x73, 0x28, 0x29, 0x20, + 0x7b, 0xa, 0x9, 0x6c, 0x65, 0x74, 0x20, 0x69, 0x6e, 0x64, + 0x69, 0x63, 0x61, 0x74, 0x6f, 0x72, 0x46, 0x72, 0x61, 0x6d, + 0x65, 0x20, 0x3d, 0x20, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, + 0x6e, 0x74, 0x2e, 0x67, 0x65, 0x74, 0x45, 0x6c, 0x65, 0x6d, + 0x65, 0x6e, 0x74, 0x42, 0x79, 0x49, 0x64, 0x28, 0x22, 0x69, + 0x6e, 0x64, 0x69, 0x63, 0x61, 0x74, 0x6f, 0x72, 0x46, 0x72, + 0x61, 0x6d, 0x65, 0x22, 0x29, 0x3b, 0xa, 0x9, 0x6c, 0x65, + 0x74, 0x20, 0x69, 0x6e, 0x64, 0x69, 0x63, 0x61, 0x74, 0x6f, + 0x72, 0x44, 0x69, 0x76, 0x20, 0x3d, 0x20, 0x64, 0x6f, 0x63, + 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x67, 0x65, 0x74, 0x45, + 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x42, 0x79, 0x49, 0x64, + 0x28, 0x22, 0x69, 0x6e, 0x64, 0x69, 0x63, 0x61, 0x74, 0x6f, + 0x72, 0x73, 0x22, 0x29, 0x3b, 0xa, 0x9, 0x69, 0x6e, 0x64, + 0x69, 0x63, 0x61, 0x74, 0x6f, 0x72, 0x44, 0x69, 0x76, 0x2e, + 0x69, 0x6e, 0x6e, 0x65, 0x72, 0x48, 0x54, 0x4d, 0x4c, 0x20, + 0x3d, 0x20, 0x69, 0x6e, 0x64, 0x69, 0x63, 0x61, 0x74, 0x6f, + 0x72, 0x46, 0x72, 0x61, 0x6d, 0x65, 0x2e, 0x63, 0x6f, 0x6e, + 0x74, 0x65, 0x6e, 0x74, 0x44, 0x6f, 0x63, 0x75, 0x6d, 0x65, + 0x6e, 0x74, 0x2e, 0x62, 0x6f, 0x64, 0x79, 0x2e, 0x69, 0x6e, + 0x6e, 0x65, 0x72, 0x48, 0x54, 0x4d, 0x4c, 0x3b, 0xa, 0x7d, + 0xa, 0xa, 0x66, 0x75, 0x6e, 0x63, 0x74, 0x69, 0x6f, 0x6e, + 0x20, 0x72, 0x65, 0x66, 0x72, 0x65, 0x73, 0x68, 0x49, 0x6e, + 0x64, 0x69, 0x63, 0x61, 0x74, 0x6f, 0x72, 0x73, 0x28, 0x29, + 0x20, 0x7b, 0xa, 0x9, 0x6c, 0x65, 0x74, 0x20, 0x69, 0x6e, + 0x64, 0x69, 0x63, 0x61, 0x74, 0x6f, 0x72, 0x46, 0x72, 0x61, + 0x6d, 0x65, 0x20, 0x3d, 0x20, 0x64, 0x6f, 0x63, 0x75, 0x6d, + 0x65, 0x6e, 0x74, 0x2e, 0x67, 0x65, 0x74, 0x45, 0x6c, 0x65, + 0x6d, 0x65, 0x6e, 0x74, 0x42, 0x79, 0x49, 0x64, 0x28, 0x22, + 0x69, 0x6e, 0x64, 0x69, 0x63, 0x61, 0x74, 0x6f, 0x72, 0x46, + 0x72, 0x61, 0x6d, 0x65, 0x22, 0x29, 0x3b, 0xa, 0x9, 0x69, + 0x6e, 0x64, 0x69, 0x63, 0x61, 0x74, 0x6f, 0x72, 0x46, 0x72, + 0x61, 0x6d, 0x65, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, + 0x74, 0x57, 0x69, 0x6e, 0x64, 0x6f, 0x77, 0x2e, 0x6c, 0x6f, + 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x72, 0x65, 0x6c, + 0x6f, 0x61, 0x64, 0x28, 0x74, 0x72, 0x75, 0x65, 0x29, 0x3b, + 0xa, 0x7d, 0xa, 0xa, 0x66, 0x75, 0x6e, 0x63, 0x74, 0x69, + 0x6f, 0x6e, 0x20, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x4b, + 0x65, 0x79, 0x73, 0x28, 0x6b, 0x65, 0x79, 0x62, 0x6f, 0x61, + 0x72, 0x64, 0x5f, 0x69, 0x64, 0x29, 0x20, 0x7b, 0xa, 0x9, + 0x6c, 0x65, 0x74, 0x20, 0x6b, 0x65, 0x79, 0x62, 0x6f, 0x61, + 0x72, 0x64, 0x44, 0x69, 0x76, 0x20, 0x3d, 0x20, 0x64, 0x6f, + 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x67, 0x65, 0x74, + 0x45, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x42, 0x79, 0x49, + 0x64, 0x28, 0x6b, 0x65, 0x79, 0x62, 0x6f, 0x61, 0x72, 0x64, + 0x5f, 0x69, 0x64, 0x29, 0x3b, 0xa, 0x9, 0x66, 0x6f, 0x72, + 0x20, 0x28, 0x6c, 0x65, 0x74, 0x20, 0x72, 0x6f, 0x77, 0x20, + 0x6f, 0x66, 0x20, 0x6b, 0x65, 0x79, 0x5f, 0x6c, 0x69, 0x73, + 0x74, 0x29, 0x20, 0x7b, 0xa, 0x9, 0x9, 0x6c, 0x65, 0x74, + 0x20, 0x6e, 0x65, 0x77, 0x52, 0x6f, 0x77, 0x20, 0x3d, 0x20, + 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x63, + 0x72, 0x65, 0x61, 0x74, 0x65, 0x45, 0x6c, 0x65, 0x6d, 0x65, + 0x6e, 0x74, 0x28, 0x22, 0x64, 0x69, 0x76, 0x22, 0x29, 0x3b, + 0xa, 0x9, 0x9, 0x6b, 0x65, 0x79, 0x62, 0x6f, 0x61, 0x72, + 0x64, 0x44, 0x69, 0x76, 0x2e, 0x61, 0x70, 0x70, 0x65, 0x6e, + 0x64, 0x43, 0x68, 0x69, 0x6c, 0x64, 0x28, 0x6e, 0x65, 0x77, + 0x52, 0x6f, 0x77, 0x29, 0x3b, 0xa, 0x9, 0x9, 0x66, 0x6f, + 0x72, 0x20, 0x28, 0x6c, 0x65, 0x74, 0x20, 0x6b, 0x65, 0x79, + 0x20, 0x6f, 0x66, 0x20, 0x72, 0x6f, 0x77, 0x29, 0x20, 0x7b, + 0xa, 0x9, 0x9, 0x9, 0x6c, 0x65, 0x74, 0x20, 0x6e, 0x65, + 0x77, 0x44, 0x69, 0x76, 0x20, 0x3d, 0x20, 0x64, 0x6f, 0x63, + 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x63, 0x72, 0x65, 0x61, + 0x74, 0x65, 0x45, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x28, + 0x22, 0x64, 0x69, 0x76, 0x22, 0x29, 0x3b, 0xa, 0x9, 0x9, + 0x9, 0x69, 0x66, 0x20, 0x28, 0x6b, 0x65, 0x79, 0x2e, 0x69, + 0x64, 0x29, 0x20, 0x7b, 0xa, 0x9, 0x9, 0x9, 0x9, 0x6e, + 0x65, 0x77, 0x44, 0x69, 0x76, 0x2e, 0x69, 0x64, 0x20, 0x3d, + 0x20, 0x6b, 0x65, 0x79, 0x2e, 0x69, 0x64, 0x3b, 0xa, 0x9, + 0x9, 0x9, 0x9, 0x6e, 0x65, 0x77, 0x44, 0x69, 0x76, 0x2e, + 0x69, 0x6e, 0x6e, 0x65, 0x72, 0x48, 0x54, 0x4d, 0x4c, 0x20, + 0x3d, 0x20, 0x6b, 0x65, 0x79, 0x2e, 0x6c, 0x61, 0x62, 0x65, + 0x6c, 0x3b, 0xa, 0x9, 0x9, 0x9, 0x9, 0x6e, 0x65, 0x77, + 0x44, 0x69, 0x76, 0x2e, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x4e, + 0x61, 0x6d, 0x65, 0x20, 0x3d, 0x20, 0x22, 0x6b, 0x65, 0x79, + 0x22, 0x3b, 0xa, 0x9, 0x9, 0x9, 0x9, 0x6e, 0x65, 0x77, + 0x44, 0x69, 0x76, 0x2e, 0x61, 0x64, 0x64, 0x45, 0x76, 0x65, + 0x6e, 0x74, 0x4c, 0x69, 0x73, 0x74, 0x65, 0x6e, 0x65, 0x72, + 0x28, 0x22, 0x6d, 0x6f, 0x75, 0x73, 0x65, 0x64, 0x6f, 0x77, + 0x6e, 0x22, 0x2c, 0x20, 0x66, 0x75, 0x6e, 0x63, 0x74, 0x69, + 0x6f, 0x6e, 0x20, 0x28, 0x29, 0x20, 0x7b, 0xa, 0x9, 0x9, + 0x9, 0x9, 0x9, 0x70, 0x72, 0x65, 0x73, 0x73, 0x4b, 0x65, + 0x79, 0x28, 0x6b, 0x65, 0x79, 0x2e, 0x69, 0x64, 0x29, 0x3b, + 0x20, 0x7d, 0x29, 0x3b, 0xa, 0x9, 0x9, 0x9, 0x9, 0x6e, + 0x65, 0x77, 0x44, 0x69, 0x76, 0x2e, 0x61, 0x64, 0x64, 0x45, + 0x76, 0x65, 0x6e, 0x74, 0x4c, 0x69, 0x73, 0x74, 0x65, 0x6e, + 0x65, 0x72, 0x28, 0x22, 0x6d, 0x6f, 0x75, 0x73, 0x65, 0x75, + 0x70, 0x22, 0x2c, 0x20, 0x66, 0x75, 0x6e, 0x63, 0x74, 0x69, + 0x6f, 0x6e, 0x20, 0x28, 0x29, 0x20, 0x7b, 0xa, 0x9, 0x9, + 0x9, 0x9, 0x9, 0x72, 0x65, 0x6c, 0x65, 0x61, 0x73, 0x65, + 0x4b, 0x65, 0x79, 0x28, 0x6b, 0x65, 0x79, 0x2e, 0x69, 0x64, + 0x29, 0x3b, 0x20, 0x7d, 0x29, 0x3b, 0xa, 0x9, 0x9, 0x9, + 0x7d, 0x20, 0x65, 0x6c, 0x73, 0x65, 0x20, 0x7b, 0xa, 0x9, + 0x9, 0x9, 0x9, 0x6e, 0x65, 0x77, 0x44, 0x69, 0x76, 0x2e, + 0x63, 0x6c, 0x61, 0x73, 0x73, 0x4e, 0x61, 0x6d, 0x65, 0x20, + 0x3d, 0x20, 0x22, 0x6b, 0x65, 0x79, 0x20, 0x62, 0x6c, 0x61, + 0x6e, 0x6b, 0x22, 0x3b, 0xa, 0x9, 0x9, 0x9, 0x7d, 0xa, + 0x9, 0x9, 0x9, 0x6e, 0x65, 0x77, 0x52, 0x6f, 0x77, 0x2e, + 0x61, 0x70, 0x70, 0x65, 0x6e, 0x64, 0x43, 0x68, 0x69, 0x6c, + 0x64, 0x28, 0x6e, 0x65, 0x77, 0x44, 0x69, 0x76, 0x29, 0x3b, + 0xa, 0x9, 0x9, 0x9, 0x69, 0x66, 0x20, 0x28, 0x6b, 0x65, + 0x79, 0x2e, 0x77, 0x69, 0x64, 0x74, 0x68, 0x29, 0x20, 0x7b, + 0xa, 0x9, 0x9, 0x9, 0x9, 0x6e, 0x65, 0x77, 0x44, 0x69, + 0x76, 0x2e, 0x73, 0x74, 0x79, 0x6c, 0x65, 0x20, 0x3d, 0x20, + 0x22, 0x77, 0x69, 0x64, 0x74, 0x68, 0x3a, 0x22, 0x20, 0x2b, + 0x20, 0x28, 0x6b, 0x65, 0x79, 0x2e, 0x77, 0x69, 0x64, 0x74, + 0x68, 0x2a, 0x6e, 0x65, 0x77, 0x44, 0x69, 0x76, 0x2e, 0x63, + 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x57, 0x69, 0x64, 0x74, 0x68, + 0x20, 0x29, 0x20, 0x2b, 0x20, 0x22, 0x70, 0x78, 0x3b, 0x22, + 0x3b, 0xa, 0x9, 0x9, 0x9, 0x7d, 0xa, 0x9, 0x9, 0x9, + 0x69, 0x66, 0x20, 0x28, 0x6b, 0x65, 0x79, 0x2e, 0x68, 0x65, + 0x69, 0x67, 0x68, 0x74, 0x29, 0x20, 0x7b, 0xa, 0x9, 0x9, + 0x9, 0x9, 0x6e, 0x65, 0x77, 0x44, 0x69, 0x76, 0x2e, 0x73, + 0x74, 0x79, 0x6c, 0x65, 0x20, 0x3d, 0x20, 0x22, 0x68, 0x65, + 0x69, 0x67, 0x68, 0x74, 0x3a, 0x22, 0x20, 0x2b, 0x20, 0x28, + 0x6b, 0x65, 0x79, 0x2e, 0x68, 0x65, 0x69, 0x67, 0x68, 0x74, + 0x2a, 0x6e, 0x65, 0x77, 0x44, 0x69, 0x76, 0x2e, 0x63, 0x6c, + 0x69, 0x65, 0x6e, 0x74, 0x48, 0x65, 0x69, 0x67, 0x68, 0x74, + 0x20, 0x29, 0x20, 0x2b, 0x20, 0x22, 0x70, 0x78, 0x3b, 0x20, + 0x66, 0x6c, 0x6f, 0x61, 0x74, 0x3a, 0x20, 0x72, 0x69, 0x67, + 0x68, 0x74, 0x3b, 0x22, 0x3b, 0xa, 0x9, 0x9, 0x9, 0x7d, + 0xa, 0x9, 0x9, 0x7d, 0xa, 0x9, 0x7d, 0xa, 0x7d, 0xa, + 0xa, 0x66, 0x75, 0x6e, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x20, + 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x4d, 0x61, 0x63, 0x72, + 0x6f, 0x73, 0x28, 0x6d, 0x61, 0x63, 0x72, 0x6f, 0x5f, 0x69, + 0x64, 0x29, 0x20, 0x7b, 0xa, 0x9, 0x6c, 0x65, 0x74, 0x20, + 0x6d, 0x61, 0x63, 0x72, 0x6f, 0x44, 0x69, 0x76, 0x20, 0x3d, + 0x20, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x2e, + 0x67, 0x65, 0x74, 0x45, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, + 0x42, 0x79, 0x49, 0x64, 0x28, 0x6d, 0x61, 0x63, 0x72, 0x6f, + 0x5f, 0x69, 0x64, 0x29, 0x3b, 0xa, 0x9, 0x66, 0x6f, 0x72, + 0x20, 0x28, 0x6c, 0x65, 0x74, 0x20, 0x6d, 0x61, 0x63, 0x72, + 0x6f, 0x20, 0x6f, 0x66, 0x20, 0x6d, 0x61, 0x63, 0x72, 0x6f, + 0x5f, 0x6c, 0x69, 0x73, 0x74, 0x29, 0x20, 0x7b, 0xa, 0x9, + 0x9, 0x6c, 0x65, 0x74, 0x20, 0x6e, 0x65, 0x77, 0x44, 0x69, + 0x76, 0x20, 0x3d, 0x20, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, + 0x6e, 0x74, 0x2e, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x45, + 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x28, 0x22, 0x64, 0x69, + 0x76, 0x22, 0x29, 0x3b, 0xa, 0x9, 0x9, 0x6e, 0x65, 0x77, + 0x44, 0x69, 0x76, 0x2e, 0x69, 0x64, 0x20, 0x3d, 0x20, 0x6d, + 0x61, 0x63, 0x72, 0x6f, 0x2e, 0x69, 0x64, 0x3b, 0xa, 0x9, + 0x9, 0x6e, 0x65, 0x77, 0x44, 0x69, 0x76, 0x2e, 0x74, 0x65, + 0x78, 0x74, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x20, + 0x3d, 0x20, 0x6d, 0x61, 0x63, 0x72, 0x6f, 0x2e, 0x6c, 0x61, + 0x62, 0x65, 0x6c, 0x3b, 0xa, 0x9, 0x9, 0x6e, 0x65, 0x77, + 0x44, 0x69, 0x76, 0x2e, 0x61, 0x64, 0x64, 0x45, 0x76, 0x65, + 0x6e, 0x74, 0x4c, 0x69, 0x73, 0x74, 0x65, 0x6e, 0x65, 0x72, + 0x28, 0x22, 0x6d, 0x6f, 0x75, 0x73, 0x65, 0x64, 0x6f, 0x77, + 0x6e, 0x22, 0x2c, 0x20, 0x66, 0x75, 0x6e, 0x63, 0x74, 0x69, + 0x6f, 0x6e, 0x20, 0x28, 0x29, 0x20, 0x7b, 0xa, 0x9, 0x9, + 0x9, 0x73, 0x65, 0x6e, 0x64, 0x4b, 0x65, 0x79, 0x73, 0x28, + 0x6d, 0x61, 0x63, 0x72, 0x6f, 0x2e, 0x6b, 0x65, 0x79, 0x73, + 0x29, 0x3b, 0x20, 0x7d, 0x29, 0x3b, 0xa, 0x9, 0x9, 0x6e, + 0x65, 0x77, 0x44, 0x69, 0x76, 0x2e, 0x61, 0x64, 0x64, 0x45, + 0x76, 0x65, 0x6e, 0x74, 0x4c, 0x69, 0x73, 0x74, 0x65, 0x6e, + 0x65, 0x72, 0x28, 0x22, 0x6d, 0x6f, 0x75, 0x73, 0x65, 0x75, + 0x70, 0x22, 0x2c, 0x20, 0x66, 0x75, 0x6e, 0x63, 0x74, 0x69, + 0x6f, 0x6e, 0x20, 0x28, 0x29, 0x20, 0x7b, 0xa, 0x9, 0x9, + 0x9, 0x73, 0x65, 0x6e, 0x64, 0x4b, 0x65, 0x79, 0x73, 0x28, + 0x5b, 0x5d, 0x29, 0x3b, 0x20, 0x7d, 0x29, 0x3b, 0xa, 0x9, + 0x9, 0x6d, 0x61, 0x63, 0x72, 0x6f, 0x44, 0x69, 0x76, 0x2e, + 0x61, 0x70, 0x70, 0x65, 0x6e, 0x64, 0x43, 0x68, 0x69, 0x6c, + 0x64, 0x28, 0x6e, 0x65, 0x77, 0x44, 0x69, 0x76, 0x29, 0x3b, + 0xa, 0x9, 0x7d, 0xa, 0x7d, 0xa, 0xa, 0x3c, 0x2f, 0x73, + 0x63, 0x72, 0x69, 0x70, 0x74, 0x3e, 0xa, 0xa, 0x3c, 0x2f, + 0x68, 0x65, 0x61, 0x64, 0x3e, 0xa, 0xa, 0x3c, 0x62, 0x6f, + 0x64, 0x79, 0x3e, 0xa, 0x3c, 0x64, 0x69, 0x76, 0x20, 0x63, + 0x6c, 0x61, 0x73, 0x73, 0x3d, 0x22, 0x63, 0x6f, 0x6e, 0x74, + 0x61, 0x69, 0x6e, 0x65, 0x72, 0x22, 0x3e, 0xa, 0x9, 0x3c, + 0x64, 0x69, 0x76, 0x20, 0x69, 0x64, 0x3d, 0x22, 0x6b, 0x65, + 0x79, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x22, 0x3e, 0x3c, 0x2f, + 0x64, 0x69, 0x76, 0x3e, 0xa, 0x9, 0x3c, 0x64, 0x69, 0x76, + 0x20, 0x69, 0x64, 0x3d, 0x22, 0x69, 0x6e, 0x64, 0x69, 0x63, + 0x61, 0x74, 0x6f, 0x72, 0x73, 0x22, 0x3e, 0x3c, 0x2f, 0x64, + 0x69, 0x76, 0x3e, 0xa, 0x3c, 0x2f, 0x64, 0x69, 0x76, 0x3e, + 0xa, 0xa, 0x3c, 0x64, 0x69, 0x76, 0x20, 0x69, 0x64, 0x3d, + 0x22, 0x6d, 0x61, 0x63, 0x72, 0x6f, 0x73, 0x22, 0x3e, 0x3c, + 0x2f, 0x64, 0x69, 0x76, 0x3e, 0xa, 0xa, 0x3c, 0x64, 0x69, + 0x76, 0x20, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x3d, 0x22, 0x69, + 0x6e, 0x66, 0x6f, 0x22, 0x3e, 0xa, 0x9, 0x3c, 0x64, 0x69, + 0x76, 0x3e, 0x43, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x74, 0x6c, + 0x79, 0x20, 0x70, 0x72, 0x65, 0x73, 0x73, 0x65, 0x64, 0x20, + 0x6b, 0x65, 0x79, 0x73, 0x3a, 0x3c, 0x2f, 0x64, 0x69, 0x76, + 0x3e, 0xa, 0x9, 0x3c, 0x64, 0x69, 0x76, 0x20, 0x69, 0x64, + 0x3d, 0x22, 0x64, 0x6f, 0x77, 0x6e, 0x4b, 0x65, 0x79, 0x73, + 0x22, 0x3e, 0x3c, 0x2f, 0x64, 0x69, 0x76, 0x3e, 0xa, 0x3c, + 0x2f, 0x64, 0x69, 0x76, 0x3e, 0xa, 0xa, 0x3c, 0x64, 0x69, + 0x76, 0x3e, 0xa, 0x9, 0x3c, 0x64, 0x69, 0x76, 0x20, 0x63, + 0x6c, 0x61, 0x73, 0x73, 0x3d, 0x22, 0x6d, 0x65, 0x6e, 0x75, + 0x22, 0x3e, 0xa, 0x9, 0x9, 0x3c, 0x61, 0x20, 0x68, 0x72, + 0x65, 0x66, 0x3d, 0x22, 0x77, 0x69, 0x66, 0x69, 0x2e, 0x73, + 0x68, 0x74, 0x6d, 0x6c, 0x22, 0x3e, 0x43, 0x6f, 0x6e, 0x66, + 0x69, 0x67, 0x75, 0x72, 0x65, 0x20, 0x57, 0x69, 0x2d, 0x46, + 0x69, 0x3c, 0x2f, 0x61, 0x3e, 0xa, 0x9, 0x3c, 0x2f, 0x64, + 0x69, 0x76, 0x3e, 0xa, 0x9, 0x3c, 0x64, 0x69, 0x76, 0x20, + 0x63, 0x6c, 0x61, 0x73, 0x73, 0x3d, 0x22, 0x6d, 0x65, 0x6e, + 0x75, 0x22, 0x3e, 0xa, 0x9, 0x9, 0x3c, 0x61, 0x20, 0x68, + 0x72, 0x65, 0x66, 0x3d, 0x22, 0x72, 0x65, 0x62, 0x6f, 0x6f, + 0x74, 0x2e, 0x63, 0x67, 0x69, 0x22, 0x3e, 0x52, 0x65, 0x62, + 0x6f, 0x6f, 0x74, 0x3c, 0x2f, 0x61, 0x3e, 0xa, 0x9, 0x3c, + 0x2f, 0x64, 0x69, 0x76, 0x3e, 0xa, 0x3c, 0x2f, 0x64, 0x69, + 0x76, 0x3e, 0xa, 0xa, 0x3c, 0x64, 0x69, 0x76, 0x20, 0x69, + 0x64, 0x3d, 0x22, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x5f, + 0x66, 0x72, 0x61, 0x6d, 0x65, 0x73, 0x22, 0x3e, 0xa, 0x9, + 0x3c, 0x69, 0x66, 0x72, 0x61, 0x6d, 0x65, 0x20, 0x69, 0x64, + 0x3d, 0x22, 0x69, 0x6e, 0x64, 0x69, 0x63, 0x61, 0x74, 0x6f, + 0x72, 0x46, 0x72, 0x61, 0x6d, 0x65, 0x22, 0x20, 0x73, 0x72, + 0x63, 0x3d, 0x22, 0x69, 0x6e, 0x64, 0x69, 0x63, 0x61, 0x74, + 0x6f, 0x72, 0x73, 0x2e, 0x73, 0x68, 0x74, 0x6d, 0x6c, 0x22, + 0xa, 0x9, 0x9, 0x6f, 0x6e, 0x6c, 0x6f, 0x61, 0x64, 0x3d, + 0x22, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x49, 0x6e, 0x64, + 0x69, 0x63, 0x61, 0x74, 0x6f, 0x72, 0x73, 0x28, 0x29, 0x3b, + 0x22, 0x3e, 0x3c, 0x2f, 0x69, 0x66, 0x72, 0x61, 0x6d, 0x65, + 0x3e, 0xa, 0x3c, 0x2f, 0x64, 0x69, 0x76, 0x3e, 0xa, 0xa, + 0x3c, 0x2f, 0x62, 0x6f, 0x64, 0x79, 0x3e, 0xa, 0xa, 0x3c, + 0x2f, 0x68, 0x74, 0x6d, 0x6c, 0x3e, 0xa, }; + +static const unsigned char data_success_html[] = { + /* /success.html */ + 0x2f, 0x73, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x2e, 0x68, 0x74, 0x6d, 0x6c, 0, + 0x48, 0x54, 0x54, 0x50, 0x2f, 0x31, 0x2e, 0x30, 0x20, 0x32, + 0x30, 0x30, 0x20, 0x4f, 0x4b, 0xd, 0xa, 0x53, 0x65, 0x72, + 0x76, 0x65, 0x72, 0x3a, 0x20, 0x6c, 0x77, 0x49, 0x50, 0x2f, + 0x70, 0x72, 0x65, 0x2d, 0x30, 0x2e, 0x36, 0x20, 0x28, 0x68, + 0x74, 0x74, 0x70, 0x3a, 0x2f, 0x2f, 0x77, 0x77, 0x77, 0x2e, + 0x73, 0x69, 0x63, 0x73, 0x2e, 0x73, 0x65, 0x2f, 0x7e, 0x61, + 0x64, 0x61, 0x6d, 0x2f, 0x6c, 0x77, 0x69, 0x70, 0x2f, 0x29, + 0xd, 0xa, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x2d, + 0x74, 0x79, 0x70, 0x65, 0x3a, 0x20, 0x74, 0x65, 0x78, 0x74, + 0x2f, 0x68, 0x74, 0x6d, 0x6c, 0xd, 0xa, 0xd, 0xa, 0x3c, + 0x21, 0x44, 0x4f, 0x43, 0x54, 0x59, 0x50, 0x45, 0x20, 0x68, + 0x74, 0x6d, 0x6c, 0x3e, 0xa, 0xa, 0x3c, 0x68, 0x74, 0x6d, + 0x6c, 0x3e, 0xa, 0xa, 0x3c, 0x68, 0x65, 0x61, 0x64, 0x3e, + 0xa, 0x3c, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x3e, 0x53, 0x75, + 0x63, 0x63, 0x65, 0x73, 0x73, 0x3c, 0x2f, 0x74, 0x69, 0x74, + 0x6c, 0x65, 0x3e, 0xa, 0xa, 0x3c, 0x73, 0x74, 0x79, 0x6c, + 0x65, 0x3e, 0xa, 0x73, 0x70, 0x61, 0x6e, 0x2e, 0x63, 0x6f, + 0x75, 0x6e, 0x74, 0x20, 0x7b, 0xa, 0x9, 0x64, 0x69, 0x73, + 0x70, 0x6c, 0x61, 0x79, 0x3a, 0x20, 0x69, 0x6e, 0x6c, 0x69, + 0x6e, 0x65, 0x2d, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x3b, 0xa, + 0x7d, 0xa, 0x3c, 0x2f, 0x73, 0x74, 0x79, 0x6c, 0x65, 0x3e, + 0xa, 0xa, 0x3c, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x3e, + 0xa, 0x9, 0x76, 0x61, 0x72, 0x20, 0x63, 0x6f, 0x75, 0x6e, + 0x74, 0x20, 0x3d, 0x20, 0x31, 0x35, 0x3b, 0xa, 0x9, 0x73, + 0x65, 0x74, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x76, 0x61, 0x6c, + 0x28, 0x20, 0x66, 0x75, 0x6e, 0x63, 0x74, 0x69, 0x6f, 0x6e, + 0x20, 0x28, 0x29, 0x20, 0x7b, 0xa, 0x9, 0x9, 0x9, 0x76, + 0x61, 0x72, 0x20, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x65, 0x72, + 0x20, 0x3d, 0x20, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, + 0x74, 0x2e, 0x67, 0x65, 0x74, 0x45, 0x6c, 0x65, 0x6d, 0x65, + 0x6e, 0x74, 0x42, 0x79, 0x49, 0x64, 0x28, 0x22, 0x63, 0x6f, + 0x75, 0x6e, 0x74, 0x22, 0x29, 0x3b, 0xa, 0x9, 0x9, 0x9, + 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x2d, 0x2d, 0x3b, 0xa, 0x9, + 0x9, 0x9, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x65, 0x72, 0x2e, + 0x69, 0x6e, 0x6e, 0x65, 0x72, 0x54, 0x65, 0x78, 0x74, 0x3d, + 0x20, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x3b, 0xa, 0x9, 0x9, + 0x9, 0x69, 0x66, 0x20, 0x28, 0x63, 0x6f, 0x75, 0x6e, 0x74, + 0x20, 0x3c, 0x3d, 0x20, 0x30, 0x29, 0x20, 0x7b, 0xa, 0x9, + 0x9, 0x9, 0x9, 0x77, 0x69, 0x6e, 0x64, 0x6f, 0x77, 0x2e, + 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x3d, + 0x20, 0x22, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x2e, 0x68, 0x74, + 0x6d, 0x6c, 0x22, 0x3b, 0xa, 0x9, 0x9, 0x9, 0x7d, 0xa, + 0x9, 0x9, 0x7d, 0x2c, 0x20, 0x31, 0x30, 0x30, 0x30, 0x29, + 0x3b, 0xa, 0x3c, 0x2f, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, + 0x3e, 0xa, 0xa, 0x3c, 0x2f, 0x68, 0x65, 0x61, 0x64, 0x3e, + 0xa, 0x3c, 0x62, 0x6f, 0x64, 0x79, 0x3e, 0xa, 0xa, 0x3c, + 0x70, 0x3e, 0x53, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x3c, + 0x2f, 0x70, 0x3e, 0xa, 0xa, 0x3c, 0x70, 0x3e, 0x52, 0x65, + 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6e, 0x67, 0x20, + 0x69, 0x6e, 0x20, 0x3c, 0x73, 0x70, 0x61, 0x6e, 0x20, 0x69, + 0x64, 0x3d, 0x22, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x22, 0x3e, + 0x31, 0x35, 0x3c, 0x2f, 0x73, 0x70, 0x61, 0x6e, 0x3e, 0x2e, + 0x2e, 0x2e, 0x3c, 0x2f, 0x70, 0x3e, 0xa, 0xa, 0x3c, 0x2f, + 0x62, 0x6f, 0x64, 0x79, 0x3e, 0xa, 0xa, 0x3c, 0x2f, 0x68, + 0x74, 0x6d, 0x6c, 0x3e, 0xa, }; + +const struct fsdata_file file_fsdata_c[] = {{NULL, data_fsdata_c, data_fsdata_c + 10, sizeof(data_fsdata_c) - 10, FS_FILE_FLAGS_HEADER_INCLUDED | FS_FILE_FLAGS_HEADER_PERSISTENT}}; + +const struct fsdata_file file_indicators_shtml[] = {{file_fsdata_c, data_indicators_shtml, data_indicators_shtml + 18, sizeof(data_indicators_shtml) - 18, FS_FILE_FLAGS_HEADER_INCLUDED | FS_FILE_FLAGS_HEADER_PERSISTENT}}; + +const struct fsdata_file file_wifi_shtml[] = {{file_indicators_shtml, data_wifi_shtml, data_wifi_shtml + 12, sizeof(data_wifi_shtml) - 12, FS_FILE_FLAGS_HEADER_INCLUDED | FS_FILE_FLAGS_HEADER_PERSISTENT}}; + +const struct fsdata_file file_index_html[] = {{file_wifi_shtml, data_index_html, data_index_html + 12, sizeof(data_index_html) - 12, FS_FILE_FLAGS_HEADER_INCLUDED | FS_FILE_FLAGS_HEADER_PERSISTENT}}; + +const struct fsdata_file file_success_html[] = {{file_index_html, data_success_html, data_success_html + 14, sizeof(data_success_html) - 14, FS_FILE_FLAGS_HEADER_INCLUDED | FS_FILE_FLAGS_HEADER_PERSISTENT}}; + +#define FS_ROOT file_success_html + +#define FS_NUMFILES 5 diff --git a/parse_keys.c b/parse_keys.c new file mode 100644 index 0000000..ac6d186 --- /dev/null +++ b/parse_keys.c @@ -0,0 +1,64 @@ +#include +#include + +#include "pico/stdlib.h" +#include "tusb.h" + +#include "parse_keys.h" +#include "usb_descriptors.h" + +void parse_key_list(char * keys) { + uint8_t keypos = 2; + uint8_t code = 0x00; + static unsigned char boot_report[8]; + memset(boot_report, 0x00, 8); + + char * token = strtok(keys, ","); + while (token != NULL) { + code = parse_key_single(token); + if (code && keypos < 9) { + boot_report[keypos] = code; + keypos++; + } + if (code == 0x00) { + code = parse_mod(token); + if (code) { + boot_report[0] = boot_report[0] | code; + } + } + token = strtok(NULL, ","); + } + + printf("HID report: "); + for(int i=0; i<8; i++){ + printf("%02X ",boot_report[i]); + } + printf("\n"); + + tud_hid_report(REPORT_ID_KEYBOARD, boot_report, 8); +} + +uint8_t parse_key_single(char * key) { + //printf("single key: %s\n", key); + + for (int i=0; i < NKEYS; i++) { + keycode_dict * keycode = &keytable[i]; + if (strcmp(keycode->key, key) == 0){ + //printf("key found"); + return keycode->val; + } + } + return 0x00; +} + +uint8_t parse_mod(char * key) { + for (int i=0; i < NMODS; i++) { + keycode_dict * modcode = &modtable[i]; + if (strcmp(modcode->key, key) == 0){ + //printf("key found"); + return modcode->val; + } + } + return 0x00; +} + diff --git a/parse_keys.h b/parse_keys.h new file mode 100644 index 0000000..33708a9 --- /dev/null +++ b/parse_keys.h @@ -0,0 +1,393 @@ +#ifndef PARSE_KEYS_H_ +#define PRASE_KEYS_H_ + +static unsigned char boot_buf[8]; + +void parse_key_list(char * keys); +uint8_t parse_key_single(char * key); +uint8_t parse_mod(char * key); + +typedef struct { char * key; uint8_t val; } keycode_dict; + +#define KEY_MOD_LCTRL 0x01 +#define KEY_MOD_LSHIFT 0x02 +#define KEY_MOD_LALT 0x04 +#define KEY_MOD_LMETA 0x08 +#define KEY_MOD_RCTRL 0x10 +#define KEY_MOD_RSHIFT 0x20 +#define KEY_MOD_RALT 0x40 +#define KEY_MOD_RMETA 0x80 + +/** + * Scan codes - last N slots in the HID report (usually 6). + * 0x00 if no key pressed. + * + * If more than N keys are pressed, the HID reports + * KEY_ERR_OVF in all slots to indicate this condition. + */ + +#define KEY_NONE 0x00 // No key pressed +#define KEY_ERR_OVF 0x01 // Keyboard Error Roll Over - used for all slots if too many keys are pressed ("Phantom key") +// 0x02 // Keyboard POST Fail +// 0x03 // Keyboard Error Undefined +#define KEY_A 0x04 // Keyboard a and A +#define KEY_B 0x05 // Keyboard b and B +#define KEY_C 0x06 // Keyboard c and C +#define KEY_D 0x07 // Keyboard d and D +#define KEY_E 0x08 // Keyboard e and E +#define KEY_F 0x09 // Keyboard f and F +#define KEY_G 0x0a // Keyboard g and G +#define KEY_H 0x0b // Keyboard h and H +#define KEY_I 0x0c // Keyboard i and I +#define KEY_J 0x0d // Keyboard j and J +#define KEY_K 0x0e // Keyboard k and K +#define KEY_L 0x0f // Keyboard l and L +#define KEY_M 0x10 // Keyboard m and M +#define KEY_N 0x11 // Keyboard n and N +#define KEY_O 0x12 // Keyboard o and O +#define KEY_P 0x13 // Keyboard p and P +#define KEY_Q 0x14 // Keyboard q and Q +#define KEY_R 0x15 // Keyboard r and R +#define KEY_S 0x16 // Keyboard s and S +#define KEY_T 0x17 // Keyboard t and T +#define KEY_U 0x18 // Keyboard u and U +#define KEY_V 0x19 // Keyboard v and V +#define KEY_W 0x1a // Keyboard w and W +#define KEY_X 0x1b // Keyboard x and X +#define KEY_Y 0x1c // Keyboard y and Y +#define KEY_Z 0x1d // Keyboard z and Z + +#define KEY_1 0x1e // Keyboard 1 and ! +#define KEY_2 0x1f // Keyboard 2 and @ +#define KEY_3 0x20 // Keyboard 3 and # +#define KEY_4 0x21 // Keyboard 4 and $ +#define KEY_5 0x22 // Keyboard 5 and % +#define KEY_6 0x23 // Keyboard 6 and ^ +#define KEY_7 0x24 // Keyboard 7 and & +#define KEY_8 0x25 // Keyboard 8 and * +#define KEY_9 0x26 // Keyboard 9 and ( +#define KEY_0 0x27 // Keyboard 0 and ) + +#define KEY_ENTER 0x28 // Keyboard Return (ENTER) +#define KEY_ESC 0x29 // Keyboard ESCAPE +#define KEY_BACKSPACE 0x2a // Keyboard DELETE (Backspace) +#define KEY_TAB 0x2b // Keyboard Tab +#define KEY_SPACE 0x2c // Keyboard Spacebar +#define KEY_MINUS 0x2d // Keyboard - and _ +#define KEY_EQUAL 0x2e // Keyboard = and + +#define KEY_LEFTBRACE 0x2f // Keyboard [ and { +#define KEY_RIGHTBRACE 0x30 // Keyboard ] and } +#define KEY_BACKSLASH 0x31 // Keyboard \ and | +#define KEY_HASHTILDE 0x32 // Keyboard Non-US # and ~ +#define KEY_SEMICOLON 0x33 // Keyboard ; and : +#define KEY_APOSTROPHE 0x34 // Keyboard ' and " +#define KEY_GRAVE 0x35 // Keyboard ` and ~ +#define KEY_COMMA 0x36 // Keyboard , and < +#define KEY_DOT 0x37 // Keyboard . and > +#define KEY_SLASH 0x38 // Keyboard / and ? +#define KEY_CAPSLOCK 0x39 // Keyboard Caps Lock + +#define KEY_F1 0x3a // Keyboard F1 +#define KEY_F2 0x3b // Keyboard F2 +#define KEY_F3 0x3c // Keyboard F3 +#define KEY_F4 0x3d // Keyboard F4 +#define KEY_F5 0x3e // Keyboard F5 +#define KEY_F6 0x3f // Keyboard F6 +#define KEY_F7 0x40 // Keyboard F7 +#define KEY_F8 0x41 // Keyboard F8 +#define KEY_F9 0x42 // Keyboard F9 +#define KEY_F10 0x43 // Keyboard F10 +#define KEY_F11 0x44 // Keyboard F11 +#define KEY_F12 0x45 // Keyboard F12 + +#define KEY_SYSRQ 0x46 // Keyboard Print Screen +#define KEY_SCROLLLOCK 0x47 // Keyboard Scroll Lock +#define KEY_PAUSE 0x48 // Keyboard Pause +#define KEY_INSERT 0x49 // Keyboard Insert +#define KEY_HOME 0x4a // Keyboard Home +#define KEY_PAGEUP 0x4b // Keyboard Page Up +#define KEY_DELETE 0x4c // Keyboard Delete Forward +#define KEY_END 0x4d // Keyboard End +#define KEY_PAGEDOWN 0x4e // Keyboard Page Down +#define KEY_RIGHT 0x4f // Keyboard Right Arrow +#define KEY_LEFT 0x50 // Keyboard Left Arrow +#define KEY_DOWN 0x51 // Keyboard Down Arrow +#define KEY_UP 0x52 // Keyboard Up Arrow + +#define KEY_NUMLOCK 0x53 // Keyboard Num Lock and Clear +#define KEY_KPSLASH 0x54 // Keypad / +#define KEY_KPASTERISK 0x55 // Keypad * +#define KEY_KPMINUS 0x56 // Keypad - +#define KEY_KPPLUS 0x57 // Keypad + +#define KEY_KPENTER 0x58 // Keypad ENTER +#define KEY_KP1 0x59 // Keypad 1 and End +#define KEY_KP2 0x5a // Keypad 2 and Down Arrow +#define KEY_KP3 0x5b // Keypad 3 and PageDn +#define KEY_KP4 0x5c // Keypad 4 and Left Arrow +#define KEY_KP5 0x5d // Keypad 5 +#define KEY_KP6 0x5e // Keypad 6 and Right Arrow +#define KEY_KP7 0x5f // Keypad 7 and Home +#define KEY_KP8 0x60 // Keypad 8 and Up Arrow +#define KEY_KP9 0x61 // Keypad 9 and Page Up +#define KEY_KP0 0x62 // Keypad 0 and Insert +#define KEY_KPDOT 0x63 // Keypad . and Delete + +#define KEY_102ND 0x64 // Keyboard Non-US \ and | +#define KEY_COMPOSE 0x65 // Keyboard Application +#define KEY_POWER 0x66 // Keyboard Power +#define KEY_KPEQUAL 0x67 // Keypad = + +#define KEY_F13 0x68 // Keyboard F13 +#define KEY_F14 0x69 // Keyboard F14 +#define KEY_F15 0x6a // Keyboard F15 +#define KEY_F16 0x6b // Keyboard F16 +#define KEY_F17 0x6c // Keyboard F17 +#define KEY_F18 0x6d // Keyboard F18 +#define KEY_F19 0x6e // Keyboard F19 +#define KEY_F20 0x6f // Keyboard F20 +#define KEY_F21 0x70 // Keyboard F21 +#define KEY_F22 0x71 // Keyboard F22 +#define KEY_F23 0x72 // Keyboard F23 +#define KEY_F24 0x73 // Keyboard F24 + +#define KEY_OPEN 0x74 // Keyboard Execute +#define KEY_HELP 0x75 // Keyboard Help +#define KEY_PROPS 0x76 // Keyboard Menu +#define KEY_FRONT 0x77 // Keyboard Select +#define KEY_STOP 0x78 // Keyboard Stop +#define KEY_AGAIN 0x79 // Keyboard Again +#define KEY_UNDO 0x7a // Keyboard Undo +#define KEY_CUT 0x7b // Keyboard Cut +#define KEY_COPY 0x7c // Keyboard Copy +#define KEY_PASTE 0x7d // Keyboard Paste +#define KEY_FIND 0x7e // Keyboard Find +#define KEY_MUTE 0x7f // Keyboard Mute +#define KEY_VOLUMEUP 0x80 // Keyboard Volume Up +#define KEY_VOLUMEDOWN 0x81 // Keyboard Volume Down +// 0x82 Keyboard Locking Caps Lock +// 0x83 Keyboard Locking Num Lock +// 0x84 Keyboard Locking Scroll Lock +#define KEY_KPCOMMA 0x85 // Keypad Comma +// 0x86 Keypad Equal Sign +#define KEY_RO 0x87 // Keyboard International1 +#define KEY_KATAKANAHIRAGANA 0x88 // Keyboard International2 +#define KEY_YEN 0x89 // Keyboard International3 +#define KEY_HENKAN 0x8a // Keyboard International4 +#define KEY_MUHENKAN 0x8b // Keyboard International5 +#define KEY_KPJPCOMMA 0x8c // Keyboard International6 +// 0x8d Keyboard International7 +// 0x8e Keyboard International8 +// 0x8f Keyboard International9 +#define KEY_HANGEUL 0x90 // Keyboard LANG1 +#define KEY_HANJA 0x91 // Keyboard LANG2 +#define KEY_KATAKANA 0x92 // Keyboard LANG3 +#define KEY_HIRAGANA 0x93 // Keyboard LANG4 +#define KEY_ZENKAKUHANKAKU 0x94 // Keyboard LANG5 +// 0x95 Keyboard LANG6 +// 0x96 Keyboard LANG7 +// 0x97 Keyboard LANG8 +// 0x98 Keyboard LANG9 +// 0x99 Keyboard Alternate Erase +// 0x9a Keyboard SysReq/Attention +// 0x9b Keyboard Cancel +// 0x9c Keyboard Clear +// 0x9d Keyboard Prior +// 0x9e Keyboard Return +// 0x9f Keyboard Separator +// 0xa0 Keyboard Out +// 0xa1 Keyboard Oper +// 0xa2 Keyboard Clear/Again +// 0xa3 Keyboard CrSel/Props +// 0xa4 Keyboard ExSel + +// 0xb0 Keypad 00 +// 0xb1 Keypad 000 +// 0xb2 Thousands Separator +// 0xb3 Decimal Separator +// 0xb4 Currency Unit +// 0xb5 Currency Sub-unit +#define KEY_KPLEFTPAREN 0xb6 // Keypad ( +#define KEY_KPRIGHTPAREN 0xb7 // Keypad ) +// 0xb8 Keypad { +// 0xb9 Keypad } +// 0xba Keypad Tab +// 0xbb Keypad Backspace +// 0xbc Keypad A +// 0xbd Keypad B +// 0xbe Keypad C +// 0xbf Keypad D +// 0xc0 Keypad E +// 0xc1 Keypad F +// 0xc2 Keypad XOR +// 0xc3 Keypad ^ +// 0xc4 Keypad % +// 0xc5 Keypad < +// 0xc6 Keypad > +// 0xc7 Keypad & +// 0xc8 Keypad && +// 0xc9 Keypad | +// 0xca Keypad || +// 0xcb Keypad : +// 0xcc Keypad # +// 0xcd Keypad Space +// 0xce Keypad @ +// 0xcf Keypad ! +// 0xd0 Keypad Memory Store +// 0xd1 Keypad Memory Recall +// 0xd2 Keypad Memory Clear +// 0xd3 Keypad Memory Add +// 0xd4 Keypad Memory Subtract +// 0xd5 Keypad Memory Multiply +// 0xd6 Keypad Memory Divide +// 0xd7 Keypad +/- +// 0xd8 Keypad Clear +// 0xd9 Keypad Clear Entry +// 0xda Keypad Binary +// 0xdb Keypad Octal +// 0xdc Keypad Decimal +// 0xdd Keypad Hexadecimal + +#define KEY_LEFTCTRL 0xe0 // Keyboard Left Control +#define KEY_LEFTSHIFT 0xe1 // Keyboard Left Shift +#define KEY_LEFTALT 0xe2 // Keyboard Left Alt +#define KEY_LEFTMETA 0xe3 // Keyboard Left GUI +#define KEY_RIGHTCTRL 0xe4 // Keyboard Right Control +#define KEY_RIGHTSHIFT 0xe5 // Keyboard Right Shift +#define KEY_RIGHTALT 0xe6 // Keyboard Right Alt +#define KEY_RIGHTMETA 0xe7 // Keyboard Right GUI + +#define KEY_MEDIA_PLAYPAUSE 0xe8 +#define KEY_MEDIA_STOPCD 0xe9 +#define KEY_MEDIA_PREVIOUSSONG 0xea +#define KEY_MEDIA_NEXTSONG 0xeb +#define KEY_MEDIA_EJECTCD 0xec +#define KEY_MEDIA_VOLUMEUP 0xed +#define KEY_MEDIA_VOLUMEDOWN 0xee +#define KEY_MEDIA_MUTE 0xef +#define KEY_MEDIA_WWW 0xf0 +#define KEY_MEDIA_BACK 0xf1 +#define KEY_MEDIA_FORWARD 0xf2 +#define KEY_MEDIA_STOP 0xf3 +#define KEY_MEDIA_FIND 0xf4 +#define KEY_MEDIA_SCROLLUP 0xf5 +#define KEY_MEDIA_SCROLLDOWN 0xf6 +#define KEY_MEDIA_EDIT 0xf7 +#define KEY_MEDIA_SLEEP 0xf8 +#define KEY_MEDIA_COFFEE 0xf9 +#define KEY_MEDIA_REFRESH 0xfa +#define KEY_MEDIA_CALC 0xfb + +static keycode_dict keytable[] = { + {"KeyA", KEY_A}, + {"KeyB", KEY_B}, + {"KeyC", KEY_C}, + {"KeyD", KEY_D}, + {"KeyE", KEY_E}, + {"KeyF", KEY_F}, + {"KeyG", KEY_G}, + {"KeyH", KEY_H}, + {"KeyI", KEY_I}, + {"KeyJ", KEY_J}, + {"KeyK", KEY_K}, + {"KeyL", KEY_L}, + {"KeyM", KEY_M}, + {"KeyN", KEY_N}, + {"KeyO", KEY_O}, + {"KeyP", KEY_P}, + {"KeyQ", KEY_Q}, + {"KeyR", KEY_R}, + {"KeyS", KEY_S}, + {"KeyT", KEY_T}, + {"KeyU", KEY_U}, + {"KeyV", KEY_V}, + {"KeyW", KEY_W}, + {"KeyX", KEY_X}, + {"KeyY", KEY_Y}, + {"KeyZ", KEY_Z}, + {"Digit1", KEY_1}, + {"Digit2", KEY_2}, + {"Digit3", KEY_3}, + {"Digit4", KEY_4}, + {"Digit5", KEY_5}, + {"Digit6", KEY_6}, + {"Digit7", KEY_7}, + {"Digit8", KEY_8}, + {"Digit9", KEY_9}, + {"Digit0", KEY_0}, + {"Enter", KEY_ENTER}, + {"Escape", KEY_ESC}, + {"Backspace", KEY_BACKSPACE}, + {"Tab", KEY_TAB}, + {"Space", KEY_SPACE}, + {"Minus", KEY_MINUS}, + {"Equal", KEY_EQUAL}, + {"BracketLeft", KEY_LEFTBRACE}, + {"BracketRight", KEY_RIGHTBRACE}, + {"Backslash", KEY_BACKSLASH}, + {"Semicolon", KEY_SEMICOLON}, + {"Quote", KEY_APOSTROPHE}, + {"Backquote", KEY_GRAVE}, + {"Comma", KEY_COMMA}, + {"Period", KEY_DOT}, + {"Slash", KEY_SLASH}, + {"CapsLock", KEY_CAPSLOCK}, + {"F1", KEY_F1}, + {"F2", KEY_F2}, + {"F3", KEY_F3}, + {"F4", KEY_F4}, + {"F5", KEY_F5}, + {"F6", KEY_F6}, + {"F7", KEY_F7}, + {"F8", KEY_F8}, + {"F9", KEY_F9}, + {"F10", KEY_F10}, + {"F11", KEY_F11}, + {"F12", KEY_F12}, + {"PrintScreen", KEY_SYSRQ}, + {"ScrollLock", KEY_SCROLLLOCK}, + {"Pause", KEY_PAUSE}, + {"Insert", KEY_INSERT}, + {"Home", KEY_HOME}, + {"PageUp", KEY_PAGEUP}, + {"Delete", KEY_DELETE}, + {"End", KEY_END}, + {"PageDown", KEY_PAGEDOWN}, + {"ArrowRight", KEY_RIGHT}, + {"ArrowLeft", KEY_LEFT}, + {"ArrowDown", KEY_DOWN}, + {"ArrowUp", KEY_UP}, + {"NumLock", KEY_NUMLOCK}, + {"NumpadDivide", KEY_KPSLASH}, + {"NumpadMultiply", KEY_KPASTERISK}, + {"NumpadSubtract", KEY_KPMINUS}, + {"NumpadAdd", KEY_KPPLUS}, + {"NumpadEnter", KEY_KPENTER}, + {"Numpad1", KEY_KP1}, + {"Numpad2", KEY_KP2}, + {"Numpad3", KEY_KP3}, + {"Numpad4", KEY_KP4}, + {"Numpad5", KEY_KP5}, + {"Numpad6", KEY_KP6}, + {"Numpad7", KEY_KP7}, + {"Numpad8", KEY_KP8}, + {"Numpad9", KEY_KP9}, + {"Numpad0", KEY_KP0}, + {"NumpadDecimal", KEY_KPDOT}, + {"WakeUp", KEY_POWER} +}; + +static keycode_dict modtable[] = { + {"ControlLeft", KEY_MOD_LCTRL}, + {"ShiftLeft", KEY_MOD_LSHIFT}, + {"AltLeft", KEY_MOD_LALT}, + {"MetaLeft", KEY_MOD_LMETA}, + {"ControlRight", KEY_MOD_RCTRL}, + {"ShiftRight", KEY_MOD_RSHIFT}, + {"AltRight", KEY_MOD_RALT}, + {"MetaRight", KEY_MOD_RMETA} +}; + +#define NKEYS ( sizeof(keytable)/sizeof(keycode_dict) ) +#define NMODS ( sizeof(modtable)/sizeof(keycode_dict) ) + +#endif diff --git a/server.c b/server.c new file mode 100644 index 0000000..a264bb1 --- /dev/null +++ b/server.c @@ -0,0 +1,388 @@ +#include +#include + +#include "pico/stdlib.h" +#include "lwip/apps/httpd.h" +#include "lwip/ip4_addr.h" +#include "pico/cyw43_arch.h" +#include "hardware/watchdog.h" +#include "hardware/flash.h" +#include "hardware/sync.h" +#include "pico/multicore.h" + +#include "server.h" +#include "parse_keys.h" +#include "dhcpserver.h" + +uint8_t led_code = 0; +static uint8_t ip[4]; +static uint8_t mask[4]; +static uint8_t gw[4]; +static absolute_time_t lastCheck; +static absolute_time_t lastActive; +static net_config wifi; +static bool clientmode = false; +static bool config_loaded = false; +static bool bad_config = false; +static bool reboot = false; + +const char * __not_in_flash("httpd") ssi_tags[] = { + "num", + "caps", + "scroll", + "ssid", + "pass", + "host", + "ip0", + "ip1", + "ip2", + "ip3", + "mask0", + "mask1", + "mask2", + "mask3", + "gw0", + "gw1", + "gw2", + "gw3", + "dhcp" +}; + + +static const tCGI cgi_handlers[] = { + { "/sendkeys.cgi", sendkeys_cgi }, + { "/wifi.cgi", save_wifi }, + { "/reboot.cgi", reboot_cgi }, +}; + +void run_http_server() { + //sleep_ms(5000); + + if (cyw43_arch_init_with_country(CYW43_COUNTRY_USA)) { + printf("failed to initialize\n"); + return; + } + + clientmode = false; + + config_loaded = net_config_load(&wifi); + + if ( config_loaded ){ + printf("read config file\n"); + cyw43_arch_enable_sta_mode(); + + // set hostname + //cyw43_arch_lwip_begin(); + struct netif *n = &cyw43_state.netif[CYW43_ITF_STA]; + if (wifi.host) { + netif_set_hostname(n, wifi.host); + } else { + netif_set_hostname(n, DEFAULTHOST); + } + if (wifi.manual) { + dhcp_release_and_stop(n); + netif_set_addr(n, &(wifi.ip), &(wifi.mask), &(wifi.gw)); + dhcp_inform(n); + } + netif_set_up(n); + //cyw43_arch_lwip_end(); + + if(cyw43_arch_wifi_connect_timeout_ms(wifi.ssid, wifi.pass, CYW43_AUTH_WPA2_AES_PSK, 10000)){ + printf("failed to connect to %s\n", wifi.ssid); + } else{ + clientmode = true; + } + } + + if (!clientmode) { + //start AP mode + cyw43_arch_enable_ap_mode(DEFAULTHOST, DEFAULTPASS, CYW43_AUTH_WPA2_AES_PSK); + + ip4_addr_t ip, mask, gw; + IP4_ADDR(&ip, 192, 168, 0, 1); + IP4_ADDR(&mask, 255, 255, 255, 0); + IP4_ADDR(&gw, 192, 168, 0, 1); + netif_set_ipaddr(netif_default, &ip); + netif_set_up(netif_default); + + dhcp_server_t dhcp; + dhcp_server_init(&dhcp, &gw, &mask); + printf("launched in AP mode\n"); + } + + // start the server + httpd_init(); + http_set_cgi_handlers(cgi_handlers, 3); + for (size_t i = 0; i < LWIP_ARRAYSIZE(ssi_tags); i++) { + LWIP_ASSERT("tag too long for LWIP_HTTPD_MAX_TAG_NAME_LEN", + strlen(ssi_tags[i]) <= LWIP_HTTPD_MAX_TAG_NAME_LEN); + } + http_set_ssi_handler(ssi_handler, ssi_tags, LWIP_ARRAYSIZE(ssi_tags)); + printf("HTTP server initialized\n"); + + watchdog_enable(8000,1); + + if (clientmode) { + cyw43_arch_gpio_put(CYW43_WL_GPIO_LED_PIN,1); + while(true) { + if ( absolute_time_diff_us(lastCheck, get_absolute_time()) > 5000000) { + if ( cyw43_tcpip_link_status(&cyw43_state, CYW43_ITF_STA) == 3 ) { + lastCheck = get_absolute_time(); + if(!reboot){ + watchdog_update(); + } + } + } + } + } else { + lastActive = get_absolute_time(); //initialize activity timer + static int led = 1; + while(true) { + if (absolute_time_diff_us(lastCheck, get_absolute_time()) > 1000000) { + led = !led; + cyw43_arch_gpio_put(CYW43_WL_GPIO_LED_PIN, led); + lastCheck = get_absolute_time(); + if ( config_loaded && (absolute_time_diff_us(lastActive, lastCheck) > 600000000)) { + reboot = true; + } + if(!reboot) { + watchdog_update(); + } + } + } + } +} + +const char * sendkeys_cgi (int iIndex, int iNumParams, char *pcParam[], char *pcValue[]) { + for (int i=0; i < iNumParams; i++) { + if (strcmp(pcParam[i], "keys") == 0 ) { + //printf("Web input: %s\n", pcValue[i]); + parse_key_list(pcValue[i]); + } + } + + lastActive= get_absolute_time(); + + // send return page + return "/success.html"; +} + +const char * save_wifi (int iIndex, int iNumParams, char *pcParam[], char *pcValue[]) { + // clear all values in manual network settings + memset(ip, 0, sizeof(ip)); + memset(mask, 0, sizeof(mask)); + memset(gw, 0, sizeof(gw)); + + bad_config = false; + wifi.manual = true; + + for (int i=0; i < iNumParams; i++) { + if (strcmp(pcParam[i], "ssid") == 0){ + if (pcValue[i][0] == "\0") { + bad_config = true; + } else { + urldecode(pcValue[i], wifi.ssid); + } + } else if (strcmp(pcParam[i], "pass") == 0) { + urldecode(pcValue[i], wifi.pass); + } else if (strcmp(pcParam[i], "host") == 0) { + urldecode(pcValue[i], wifi.host); + } else if (strcmp(pcParam[i], "dhcp") == 0) { + wifi.manual = false; + } else if (strncmp(pcParam[i], "ip", 2) ==0 ) { + uint8_t part = atoi(&(pcParam[i][2])); + int val = atoi(pcValue[i]); + if (pcValue[i][0] == "\0" || val > 255 || val < 0 || part > 4) { + bad_config = true; + } else { + ip[part] = (uint8_t) val; + } + } else if (strncmp(pcParam[i], "gw", 2) ==0 ) { + uint8_t part = atoi(&(pcParam[i][2])); + int val = atoi(pcValue[i]); + if (pcValue[i][0] == "\0" || val > 255 || val < 0 || part > 4) { + bad_config = true; + } else { + gw[part] = (uint8_t) val; + } + } else if (strncmp(pcParam[i], "mask", 4) ==0 ) { + uint8_t part = atoi(&(pcParam[i][4])); + int val = atoi(pcValue[i]); + if (pcValue[i][0] == "\0" || val > 255 || val < 0 || part > 4) { + bad_config = true; + } else { + mask[part] = (uint8_t) val; + } + } + } + + if (bad_config) { + return "/wifi.shtml"; + } else { + IP4_ADDR(&(wifi.ip), ip[0], ip[1], ip[2], ip[3]); + if(!wifi.ip.addr) { + wifi.ip.addr = IPADDR_NONE; + } + IP4_ADDR(&(wifi.mask), mask[0], mask[1], mask[2], mask[3]); + if(!wifi.mask.addr) { + wifi.mask.addr = IPADDR_NONE; + } + IP4_ADDR(&(wifi.gw), gw[0], gw[1], gw[2], gw[3]); + if(!wifi.gw.addr) { + wifi.gw.addr = IPADDR_NONE; + } + wifi.header = STARTFILE; + wifi.footer = ENDFILE; + config_loaded = true; + + watchdog_update(); + + net_config_write(&wifi); + + printf("wifi settings saved\n"); + + return "/success.html"; + } +} + +const char * reboot_cgi(int iIndex, int iNumParams, char *pcParam[], char *pcValue[]) { + reboot = true; + + return "/success.html"; +} + + +void net_config_write(net_config *config) { + multicore_lockout_start_blocking(); + + uint8_t buf[FLASH_PAGE_SIZE]; + memset(buf, 0x00, FLASH_PAGE_SIZE); + memcpy(buf, config, sizeof(net_config)); + + uint32_t interrupts = save_and_disable_interrupts(); + flash_range_erase(FLASH_TARGET_OFFSET, FLASH_SECTOR_SIZE); + flash_range_program(FLASH_TARGET_OFFSET, buf, FLASH_PAGE_SIZE); + restore_interrupts(interrupts); + + multicore_lockout_end_blocking(); +} + +bool net_config_load(net_config *config) { + const uint8_t *data = (const uint8_t *) (XIP_BASE+FLASH_TARGET_OFFSET); + memcpy(config, data, sizeof(net_config)); + + return ( (config->header == STARTFILE) && (config->footer == ENDFILE) ); +} + +uint16_t __time_critical_func(ssi_handler)(int iIndex, char *pcInsert, int iInsertLen) { + size_t printed; + switch (iIndex) { + case 0: //num + if (led_code & 1) { + printed = snprintf(pcInsert, iInsertLen, "on"); + } else { + printed = snprintf(pcInsert, iInsertLen, "off"); + } + break; + case 1: //caps + if (led_code & 2) { + printed = snprintf(pcInsert, iInsertLen, "on"); + } else { + printed = snprintf(pcInsert, iInsertLen, "off"); + } + break; + case 2: //scroll + if (led_code & 4) { + printed = snprintf(pcInsert, iInsertLen, "on"); + } else { + printed = snprintf(pcInsert, iInsertLen, "off"); + } + break; + case 3: //ssid + if (config_loaded && wifi.ssid) { + printed = snprintf(pcInsert, iInsertLen, "value=\"%s\"", wifi.ssid); + } else { + printed = 0; + } + break; + case 4: //pass + if (config_loaded && wifi.pass) { + printed = snprintf(pcInsert, iInsertLen, "value=\"%s\"", wifi.pass); + } else { + printed = 0; + } + break; + case 5: //host + if (config_loaded && wifi.host) { + printed = snprintf(pcInsert, iInsertLen, "value=\"%s\"", wifi.host); + } else { + printed = 0; + } + break; + case 6: + case 7: + case 8: + case 9: //ip0-3 + if (config_loaded && wifi.ip.addr) { + printed = snprintf(pcInsert, iInsertLen, "value=\"%d\"", ip4_addr_get_byte(&(wifi.ip), iIndex-6)); + } else { + printed = 0; + } + break; + case 10: + case 11: + case 12: + case 13: //mask0-3 + if (config_loaded && wifi.mask.addr) { + printed = snprintf(pcInsert, iInsertLen, "value=\"%d\"", ip4_addr_get_byte(&(wifi.mask), iIndex-10)); + } else { + printed = 0; + } + break; + case 14: + case 15: + case 16: + case 17: //gw0-3 + if (config_loaded && wifi.gw.addr) { + printed = snprintf(pcInsert, iInsertLen, "value=\"%d\"", ip4_addr_get_byte(&(wifi.gw), iIndex-14)); + } else { + printed = 0; + } + break; + case 18: // dhcp + if ((!config_loaded) || !(wifi.manual) ){ + printed = snprintf(pcInsert, iInsertLen, "checked"); + } else { + printed = 0; + } + break; + default: //undefined tag + printed = 0; + break; + } + LWIP_ASSERT("illegal length returned", printed <= 0xFFFF); + return (uint16_t)printed; +} + +void set_indicator(uint8_t const* buffer) { + led_code = *buffer; +} + +void urldecode(char *urlstring, char *decoded) { + uint8_t conv; + while(*urlstring) { + if(*urlstring == '+') { + *decoded=' '; + } else if (*urlstring == '%') { + urlstring++; + sscanf(urlstring, "%02hhx", &conv); + *decoded = conv; + urlstring++; + } else { + *decoded = *urlstring; + } + urlstring++;; + decoded++; + } + *decoded = '\0'; +} diff --git a/server.h b/server.h new file mode 100644 index 0000000..ee051df --- /dev/null +++ b/server.h @@ -0,0 +1,35 @@ +#ifndef SERVER_H_ +#define SERVER_H_ + +#include "lwip/ip4_addr.h" + +#define STARTFILE 0x7fc6 +#define ENDFILE 0x0464 +#define DEFAULTHOST "picokb" +#define DEFAULTPASS "password" + +typedef struct { + uint16_t header; + char ssid[32+1]; + char pass[63+1]; + char host[63+1]; + bool manual; + ip4_addr_t ip; + ip4_addr_t mask; + ip4_addr_t gw; + uint16_t footer; +} net_config; + +void run_http_server(); +const char * sendkeys_cgi(int iIndex, int iNumParams, char *pcParam[], char *pcValue[]); +const char * save_wifi(int iIndex, int iNumParams, char *pcParam[], char *pcValue[]); +const char * reboot_cgi(int iIndex, int iNumParams, char *pcParam[], char *pcValue[]); +uint16_t __time_critical_func(ssi_handler)(int iIndex, char *pcInsert, int iInsertLen); +void set_indicator(uint8_t const* buffer); +void urldecode(char *urlstring, char *dest); +bool net_config_load(net_config *wifi); +void net_config_write(net_config *wifi); + +#define FLASH_TARGET_OFFSET ((PICO_FLASH_SIZE_BYTES) - FLASH_SECTOR_SIZE) + +#endif diff --git a/tusb_config.h b/tusb_config.h new file mode 100644 index 0000000..164f0cf --- /dev/null +++ b/tusb_config.h @@ -0,0 +1,85 @@ +/* + * The MIT License (MIT) + * + * Copyright (c) 2019 Ha Thach (tinyusb.org) + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in + * all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN + * THE SOFTWARE. + * + */ + +#ifndef _TUSB_CONFIG_H_ +#define _TUSB_CONFIG_H_ + +#ifdef __cplusplus + extern "C" { +#endif + +//-------------------------------------------------------------------- +// COMMON CONFIGURATION +//-------------------------------------------------------------------- + +#define CFG_TUSB_OS OPT_OS_PICO + +// Enable device stack +#define CFG_TUD_ENABLED 1 + +// Enable host stack with pio-usb if Pico-PIO-USB library is available +#define CFG_TUH_ENABLED 0 +#define CFG_TUH_RPI_PIO_USB 0 + +// CFG_TUSB_DEBUG is defined by compiler in DEBUG build +// #define CFG_TUSB_DEBUG 0 + +/* USB DMA on some MCUs can only access a specific SRAM region with restriction on alignment. + * Tinyusb use follows macros to declare transferring memory so that they can be put + * into those specific section. + * e.g + * - CFG_TUSB_MEM SECTION : __attribute__ (( section(".usb_ram") )) + * - CFG_TUSB_MEM_ALIGN : __attribute__ ((aligned(4))) + */ +#ifndef CFG_TUSB_MEM_SECTION +#define CFG_TUSB_MEM_SECTION +#endif + +#ifndef CFG_TUSB_MEM_ALIGN +#define CFG_TUSB_MEM_ALIGN __attribute__ ((aligned(4))) +#endif + +//-------------------------------------------------------------------- +// DEVICE CONFIGURATION +//-------------------------------------------------------------------- + +#ifndef CFG_TUD_ENDPOINT0_SIZE +#define CFG_TUD_ENDPOINT0_SIZE 64 +#endif + +//------------- CLASS -------------// +#define CFG_TUD_CDC 1 +#define CFG_TUD_HID 1 + +#define CFG_TUD_CDC_RX_BUFSIZE 64 +#define CFG_TUD_CDC_TX_BUFSIZE 64 + +#define CFG_TUD_HID_EP_BUFSIZE 16 + +#ifdef __cplusplus + } +#endif + +#endif /* _TUSB_CONFIG_H_ */ diff --git a/usb_descriptors.c b/usb_descriptors.c new file mode 100644 index 0000000..ae477c5 --- /dev/null +++ b/usb_descriptors.c @@ -0,0 +1,195 @@ +/* + * The MIT License (MIT) + * + * Copyright (c) 2019 Ha Thach (tinyusb.org) + * sekigon-gonnoc + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in + * all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN + * THE SOFTWARE. + * + */ + +#include "tusb.h" +#include "usb_descriptors.h" + +/* A combination of interfaces must have a unique product id, since PC will save device driver after the first plug. + * Same VID/PID with different interface e.g MSC (first), then CDC (later) will possibly cause system error on PC. + * + * Auto ProductID layout's Bitmap: + * [MSB] HID | MSC | CDC [LSB] + */ +#define _PID_MAP(itf, n) ( (CFG_TUD_##itf) << (n) ) +#define USB_PID (0x4000 | _PID_MAP(CDC, 0) | _PID_MAP(MSC, 1) | _PID_MAP(HID, 2) | \ + _PID_MAP(MIDI, 3) | _PID_MAP(VENDOR, 4) ) + +#define USB_VID 0xCafe +#define USB_BCD 0x0200 + +//--------------------------------------------------------------------+ +// Device Descriptors +//--------------------------------------------------------------------+ +tusb_desc_device_t const desc_device = +{ + .bLength = sizeof(tusb_desc_device_t), + .bDescriptorType = TUSB_DESC_DEVICE, + .bcdUSB = USB_BCD, + + // Use Interface Association Descriptor (IAD) for CDC + // As required by USB Specs IAD's subclass must be common class (2) and protocol must be IAD (1) + .bDeviceClass = TUSB_CLASS_MISC, + .bDeviceSubClass = MISC_SUBCLASS_COMMON, + .bDeviceProtocol = MISC_PROTOCOL_IAD, + + .bMaxPacketSize0 = CFG_TUD_ENDPOINT0_SIZE, + + .idVendor = USB_VID, + .idProduct = USB_PID, + .bcdDevice = 0x0100, + + .iManufacturer = 0x01, + .iProduct = 0x02, + .iSerialNumber = 0x03, + + .bNumConfigurations = 0x01 +}; + +// Invoked when received GET DEVICE DESCRIPTOR +// Application return pointer to descriptor +uint8_t const * tud_descriptor_device_cb(void) +{ + return (uint8_t const *) &desc_device; +} + + +//--------------------------------------------------------------------+ +// Configuration Descriptor +//--------------------------------------------------------------------+ + +#define EPNUM_CDC_NOTIF 0x81 +#define EPNUM_CDC_OUT 0x02 +#define EPNUM_CDC_IN 0x82 +#define EPNUM_HID 0x83 + +#define CONFIG_TOTAL_LEN (TUD_CONFIG_DESC_LEN + TUD_CDC_DESC_LEN + TUD_HID_DESC_LEN) + +uint8_t const desc_hid_report[] = +{ + TUD_HID_REPORT_DESC_KEYBOARD( HID_REPORT_ID(REPORT_ID_KEYBOARD)) +}; + + + +// full speed configuration +uint8_t const desc_fs_configuration[] = +{ + // Config number, interface count, string index, total length, attribute, power in mA + TUD_CONFIG_DESCRIPTOR(1, ITF_NUM_TOTAL, 0, CONFIG_TOTAL_LEN, 0x00, 100), + + // Interface number, string index, protocol, report descriptor len, EP In address, size & polling interval + TUD_CDC_DESCRIPTOR(ITF_NUM_CDC, 4, EPNUM_CDC_NOTIF, 8, EPNUM_CDC_OUT, EPNUM_CDC_IN, 64), + TUD_HID_DESCRIPTOR(ITF_NUM_HID, 5, HID_ITF_PROTOCOL_NONE, sizeof(desc_hid_report), EPNUM_HID, CFG_TUD_HID_EP_BUFSIZE, 5), +}; + +// Invoked when received GET CONFIGURATION DESCRIPTOR +// Application return pointer to descriptor +// Descriptor contents must exist long enough for transfer to complete +uint8_t const * tud_descriptor_configuration_cb(uint8_t index) +{ + (void) index; // for multiple configurations + return desc_fs_configuration; +} + + +//--------------------------------------------------------------------+ +// String Descriptors +//--------------------------------------------------------------------+ + +// array of pointer to string descriptors +char const* string_desc_arr [] = +{ + (const char[]) { 0x09, 0x04 }, // 0: is supported language is English (0x0409) + "Raspberry Pi", // 1: Manufacturer + "Pico Web Keyboard", // 2: Product + "1234567890123456789", // 3: Serials, should use chip ID + "Pico Web Keyboard CDC", // 4: CC Interface + "TinyUSB Keyboard", // 5: HID Keyboard Interface +}; + +static uint16_t _desc_str[32]; + +// Invoked when received GET STRING DESCRIPTOR request +// Application return pointer to descriptor, whose contents must exist long enough for transfer to complete +uint16_t const* tud_descriptor_string_cb(uint8_t index, uint16_t langid) +{ + (void) langid; + + uint8_t chr_count; + + if ( index == 0) + { + memcpy(&_desc_str[1], string_desc_arr[0], 2); + chr_count = 1; + }else + { + // Note: the 0xEE index string is a Microsoft OS 1.0 Descriptors. + // https://docs.microsoft.com/en-us/windows-hardware/drivers/usbcon/microsoft-defined-usb-descriptors + + if ( !(index < sizeof(string_desc_arr)/sizeof(string_desc_arr[0])) ) return NULL; + + const char* str = string_desc_arr[index]; + + // Cap at max char + chr_count = (uint8_t) strlen(str); + if ( chr_count > 31 ) chr_count = 31; + + // Convert ASCII string into UTF-16 + for(uint8_t i=0; i