#include #include #include static const unsigned char v1[] = { 60, 33, 68, 79, 67, 84, 89, 80, 69, 32, 104, 116, // .. < 104, 101, 97, 100, 62, 10, 32, 32, 32, 32, 60, 116, // head>. Device 68, 97, 115, 104, 98, 111, 97, 114, 100, 60, 47, 116, // Dashboard. . 32, 32, 32, 60, 109, 101, 116, 97, 32, 104, 116, 116, // . 32, 32, 32, 60, 109, 101, 116, 97, 32, 110, 97, 109, // . . 10, 32, 32, 60, 98, 111, 100, 121, 62, 60, 47, 98, // . . . 10, 0 // . }; static const unsigned char v2[] = { 39, 117, 115, 101, 32, 115, 116, 114, 105, 99, 116, 39, // 'use strict' 59, 10, 105, 109, 112, 111, 114, 116, 32, 123, 67, 111, // ;.import {Co 109, 112, 111, 110, 101, 110, 116, 44, 32, 104, 44, 32, // mponent, h, 104, 116, 109, 108, 44, 32, 114, 101, 110, 100, 101, 114, // html, render 44, 32, 117, 115, 101, 69, 102, 102, 101, 99, 116, 44, // , useEffect, 32, 117, 115, 101, 83, 116, 97, 116, 101, 44, 32, 117, // useState, u 115, 101, 82, 101, 102, 125, 32, 102, 114, 111, 109, 32, // seRef} from 39, 46, 47, 112, 114, 101, 97, 99, 116, 46, 109, 105, // './preact.mi 110, 46, 106, 115, 39, 59, 10, 10, 99, 111, 110, 115, // n.js';..cons 116, 32, 77, 101, 115, 115, 97, 103, 101, 32, 61, 32, // t Message = 109, 32, 61, 62, 32, 104, 116, 109, 108, 96, 60, 115, // m => html`. 32, 36, 123, 109, 46, 109, 101, 115, 115, 97, 103, 101, // ${m.message 46, 100, 97, 116, 97, 125, 10, 60, 47, 115, 112, 97, // .data}.`;..const 65, 112, 112, 32, 61, 32, 102, 117, 110, 99, 116, 105, // App = functi 111, 110, 40, 112, 114, 111, 112, 115, 41, 32, 123, 10, // on(props) {. 32, 32, 99, 111, 110, 115, 116, 32, 91, 99, 102, 103, // const [cfg 44, 32, 115, 101, 116, 67, 102, 103, 93, 32, 61, 32, // , setCfg] = 117, 115, 101, 83, 116, 97, 116, 101, 40, 123, 116, 99, // useState({tc 112, 58, 32, 123, 125, 44, 32, 119, 115, 58, 32, 123, // p: {}, ws: { 125, 44, 32, 109, 113, 116, 116, 58, 32, 123, 125, 125, // }, mqtt: {}} 41, 59, 10, 32, 32, 99, 111, 110, 115, 116, 32, 91, // );. const [ 109, 101, 115, 115, 97, 103, 101, 115, 44, 32, 115, 101, // messages, se 116, 77, 101, 115, 115, 97, 103, 101, 115, 93, 32, 61, // tMessages] = 32, 117, 115, 101, 83, 116, 97, 116, 101, 40, 91, 93, // useState([] 41, 59, 10, 32, 32, 99, 111, 110, 115, 116, 32, 91, // );. const [ 99, 111, 110, 110, 101, 99, 116, 101, 100, 44, 32, 115, // connected, s 101, 116, 67, 111, 110, 110, 101, 99, 116, 101, 100, 93, // etConnected] 32, 61, 32, 117, 115, 101, 83, 116, 97, 116, 101, 40, // = useState( 102, 97, 108, 115, 101, 41, 59, 10, 32, 32, 99, 111, // false);. co 110, 115, 116, 32, 91, 116, 120, 116, 44, 32, 115, 101, // nst [txt, se 116, 84, 120, 116, 93, 32, 61, 32, 117, 115, 101, 83, // tTxt] = useS 116, 97, 116, 101, 40, 39, 39, 41, 59, 10, 32, 32, // tate('');. 99, 111, 110, 115, 116, 32, 91, 119, 115, 44, 32, 115, // const [ws, s 101, 116, 87, 115, 93, 32, 61, 32, 117, 115, 101, 83, // etWs] = useS 116, 97, 116, 101, 40, 110, 117, 108, 108, 41, 59, 10, // tate(null);. 10, 32, 32, 99, 111, 110, 115, 116, 32, 114, 101, 102, // . const ref 114, 101, 115, 104, 32, 61, 32, 40, 41, 32, 61, 62, // resh = () => 10, 32, 32, 32, 32, 32, 32, 102, 101, 116, 99, 104, // . fetch 40, 39, 47, 97, 112, 105, 47, 99, 111, 110, 102, 105, // ('/api/confi 103, 47, 103, 101, 116, 39, 41, 46, 116, 104, 101, 110, // g/get').then 40, 114, 32, 61, 62, 32, 114, 46, 106, 115, 111, 110, // (r => r.json 40, 41, 41, 46, 116, 104, 101, 110, 40, 114, 32, 61, // ()).then(r = 62, 32, 115, 101, 116, 67, 102, 103, 40, 114, 41, 41, // > setCfg(r)) 59, 10, 10, 32, 32, 99, 111, 110, 115, 116, 32, 103, // ;.. const g 101, 116, 112, 111, 114, 116, 32, 61, 32, 40, 117, 114, // etport = (ur 108, 44, 32, 118, 41, 32, 61, 62, 32, 40, 40, 117, // l, v) => ((u 114, 108, 32, 124, 124, 32, 39, 39, 41, 46, 109, 97, // rl || '').ma 116, 99, 104, 40, 47, 46, 42, 58, 40, 92, 100, 43, // tch(/.*:(.d+ 41, 47, 41, 32, 124, 124, 32, 91, 39, 39, 44, 32, // )/) || ['', 118, 93, 41, 91, 49, 93, 59, 10, 10, 32, 32, 99, // v])[1];.. c 111, 110, 115, 116, 32, 119, 97, 116, 99, 104, 87, 101, // onst watchWe 98, 115, 111, 99, 107, 101, 116, 32, 61, 32, 102, 117, // bsocket = fu 110, 99, 116, 105, 111, 110, 40, 41, 32, 123, 10, 32, // nction() {. 32, 32, 32, 47, 47, 32, 67, 111, 110, 110, 101, 99, // // Connec 116, 32, 116, 111, 32, 119, 101, 98, 115, 111, 99, 107, // t to websock 101, 114, 32, 112, 111, 114, 116, 44, 32, 116, 111, 32, // er port, to 105, 109, 112, 108, 101, 109, 101, 110, 116, 32, 87, 83, // implement WS 32, 99, 111, 110, 115, 111, 108, 101, 10, 32, 32, 32, // console. 32, 118, 97, 114, 32, 114, 101, 99, 111, 110, 110, 101, // var reconne 99, 116, 32, 61, 32, 102, 117, 110, 99, 116, 105, 111, // ct = functio 110, 40, 41, 32, 123, 10, 32, 32, 32, 32, 32, 32, // n() {. 118, 97, 114, 32, 112, 111, 114, 116, 32, 61, 32, 103, // var port = g 101, 116, 112, 111, 114, 116, 40, 99, 102, 103, 46, 119, // etport(cfg.w 115, 46, 117, 114, 108, 44, 32, 52, 48, 48, 50, 41, // s.url, 4002) 59, 10, 32, 32, 32, 32, 32, 32, 118, 97, 114, 32, // ;. var 108, 32, 61, 32, 119, 105, 110, 100, 111, 119, 46, 108, // l = window.l 111, 99, 97, 116, 105, 111, 110, 44, 32, 112, 114, 111, // ocation, pro 116, 111, 32, 61, 32, 108, 46, 112, 114, 111, 116, 111, // to = l.proto 99, 111, 108, 46, 114, 101, 112, 108, 97, 99, 101, 40, // col.replace( 39, 104, 116, 116, 112, 39, 44, 32, 39, 119, 115, 39, // 'http', 'ws' 41, 59, 10, 32, 32, 32, 32, 32, 32, 118, 97, 114, // );. var 32, 116, 105, 100, 44, 32, 117, 114, 108, 32, 61, 32, // tid, url = 96, 36, 123, 112, 114, 111, 116, 111, 125, 47, 47, 36, // `${proto}//$ 123, 108, 46, 104, 111, 115, 116, 110, 97, 109, 101, 125, // {l.hostname} 58, 36, 123, 112, 111, 114, 116, 125, 47, 119, 115, 96, // :${port}/ws` 59, 10, 32, 32, 32, 32, 32, 32, 47, 47, 32, 99, // ;. // c 111, 110, 115, 111, 108, 101, 46, 108, 111, 103, 40, 117, // onsole.log(u 114, 108, 41, 59, 10, 32, 32, 32, 32, 32, 32, 118, // rl);. v 97, 114, 32, 119, 115, 32, 61, 32, 110, 101, 119, 32, // ar ws = new 87, 101, 98, 83, 111, 99, 107, 101, 116, 40, 117, 114, // WebSocket(ur 108, 41, 59, 10, 32, 32, 32, 32, 32, 32, 119, 115, // l);. ws 46, 111, 110, 111, 112, 101, 110, 32, 61, 32, 40, 41, // .onopen = () 32, 61, 62, 32, 123, 10, 32, 32, 32, 32, 32, 32, // => {. 32, 32, 115, 101, 116, 67, 111, 110, 110, 101, 99, 116, // setConnect 101, 100, 40, 116, 114, 117, 101, 41, 59, 10, 32, 32, // ed(true);. 32, 32, 32, 32, 32, 32, 115, 101, 116, 87, 115, 40, // setWs( 119, 115, 41, 59, 10, 32, 32, 32, 32, 32, 32, 125, // ws);. } 59, 10, 32, 32, 32, 32, 32, 32, 119, 115, 46, 111, // ;. ws.o 110, 109, 101, 115, 115, 97, 103, 101, 32, 61, 32, 101, // nmessage = e 118, 32, 61, 62, 32, 123, 10, 32, 32, 32, 32, 32, // v => {. 32, 32, 32, 47, 47, 32, 99, 111, 110, 115, 111, 108, // // consol 101, 46, 108, 111, 103, 40, 101, 118, 44, 32, 101, 118, // e.log(ev, ev 46, 100, 97, 116, 97, 41, 59, 10, 32, 32, 32, 32, // .data);. 32, 32, 32, 32, 115, 101, 116, 77, 101, 115, 115, 97, // setMessa 103, 101, 115, 40, 120, 32, 61, 62, 32, 120, 46, 99, // ges(x => x.c 111, 110, 99, 97, 116, 40, 91, 123, 100, 97, 116, 97, // oncat([{data 58, 32, 101, 118, 46, 100, 97, 116, 97, 44, 32, 117, // : ev.data, u 97, 114, 116, 58, 32, 116, 114, 117, 101, 125, 93, 41, // art: true}]) 41, 59, 10, 32, 32, 32, 32, 32, 32, 125, 59, 10, // );. };. 32, 32, 32, 32, 32, 32, 119, 115, 46, 111, 110, 99, // ws.onc 108, 111, 115, 101, 32, 61, 32, 102, 117, 110, 99, 116, // lose = funct 105, 111, 110, 40, 41, 32, 123, 10, 32, 32, 32, 32, // ion() {. 32, 32, 32, 32, 99, 108, 101, 97, 114, 84, 105, 109, // clearTim 101, 111, 117, 116, 40, 116, 105, 100, 41, 59, 10, 32, // eout(tid);. 32, 32, 32, 32, 32, 32, 32, 116, 105, 100, 32, 61, // tid = 32, 115, 101, 116, 84, 105, 109, 101, 111, 117, 116, 40, // setTimeout( 114, 101, 99, 111, 110, 110, 101, 99, 116, 44, 32, 49, // reconnect, 1 48, 48, 48, 41, 59, 10, 32, 32, 32, 32, 32, 32, // 000);. 32, 32, 115, 101, 116, 67, 111, 110, 110, 101, 99, 116, // setConnect 101, 100, 40, 102, 97, 108, 115, 101, 41, 59, 10, 32, // ed(false);. 32, 32, 32, 32, 32, 32, 32, 115, 101, 116, 87, 115, // setWs 40, 110, 117, 108, 108, 41, 59, 10, 32, 32, 32, 32, // (null);. 32, 32, 125, 59, 10, 32, 32, 32, 32, 125, 59, 10, // };. };. 32, 32, 32, 32, 114, 101, 99, 111, 110, 110, 101, 99, // reconnec 116, 40, 41, 59, 10, 32, 32, 125, 59, 10, 10, 32, // t();. };.. 32, 117, 115, 101, 69, 102, 102, 101, 99, 116, 40, 40, // useEffect(( 41, 32, 61, 62, 32, 123, 10, 32, 32, 32, 32, 114, // ) => {. r 101, 102, 114, 101, 115, 104, 40, 41, 59, 10, 32, 32, // efresh();. 32, 32, 119, 97, 116, 99, 104, 87, 101, 98, 115, 111, // watchWebso 99, 107, 101, 116, 40, 41, 59, 10, 32, 32, 125, 44, // cket();. }, 32, 91, 93, 41, 59, 10, 10, 10, 32, 32, 99, 111, // []);... co 110, 115, 116, 32, 115, 101, 110, 100, 109, 101, 115, 115, // nst sendmess 97, 103, 101, 32, 61, 32, 101, 118, 32, 61, 62, 32, // age = ev => 123, 10, 32, 32, 32, 32, 115, 101, 116, 77, 101, 115, // {. setMes 115, 97, 103, 101, 115, 40, 120, 32, 61, 62, 32, 120, // sages(x => x 46, 99, 111, 110, 99, 97, 116, 40, 91, 123, 100, 97, // .concat([{da 116, 97, 58, 32, 116, 120, 116, 32, 43, 32, 39, 92, // ta: txt + '. 110, 39, 44, 32, 117, 97, 114, 116, 58, 32, 102, 97, // n', uart: fa 108, 115, 101, 125, 93, 41, 41, 59, 10, 32, 32, 32, // lse}]));. 32, 105, 102, 32, 40, 119, 115, 41, 32, 119, 115, 46, // if (ws) ws. 115, 101, 110, 100, 40, 116, 120, 116, 32, 43, 32, 39, // send(txt + ' 92, 110, 39, 41, 59, 10, 32, 32, 32, 32, 115, 101, // .n');. se 116, 84, 120, 116, 40, 39, 39, 41, 59, 10, 32, 32, // tTxt('');. 125, 59, 10, 10, 32, 32, 99, 111, 110, 115, 116, 32, // };.. const 111, 110, 99, 104, 97, 110, 103, 101, 32, 61, 32, 101, // onchange = e 118, 32, 61, 62, 32, 102, 101, 116, 99, 104, 40, 39, // v => fetch(' 47, 97, 112, 105, 47, 99, 111, 110, 102, 105, 103, 47, // /api/config/ 115, 101, 116, 39, 44, 32, 123, 10, 32, 32, 32, 32, // set', {. 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, // 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 109, // m 101, 116, 104, 111, 100, 58, 32, 39, 80, 79, 83, 84, // ethod: 'POST 39, 44, 10, 32, 32, 32, 32, 32, 32, 32, 32, 32, // ',. 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, // 32, 32, 32, 32, 32, 32, 104, 101, 97, 100, 101, 114, // header 115, 58, 32, 123, 39, 67, 111, 110, 116, 101, 110, 116, // s: {'Content 45, 84, 121, 112, 101, 39, 58, 32, 39, 97, 112, 112, // -Type': 'app 108, 105, 99, 97, 116, 105, 111, 110, 47, 106, 115, 111, // lication/jso 110, 39, 125, 44, 10, 32, 32, 32, 32, 32, 32, 32, // n'},. 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, // 32, 32, 32, 32, 32, 32, 32, 32, 98, 111, 100, 121, // body 58, 32, 74, 83, 79, 78, 46, 115, 116, 114, 105, 110, // : JSON.strin 103, 105, 102, 121, 40, 99, 102, 103, 41, 44, 10, 32, // gify(cfg),. 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, // 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, // 125, 41, 46, 116, 104, 101, 110, 40, 114, 32, 61, 62, // }).then(r => 32, 119, 115, 32, 38, 38, 32, 119, 115, 46, 99, 108, // ws && ws.cl 111, 115, 101, 40, 41, 41, 59, 10, 10, 32, 32, 99, // ose());.. c 111, 110, 115, 116, 32, 115, 101, 116, 32, 61, 32, 111, // onst set = o 98, 106, 32, 61, 62, 32, 115, 101, 116, 67, 102, 103, // bj => setCfg 40, 120, 32, 61, 62, 32, 79, 98, 106, 101, 99, 116, // (x => Object 46, 97, 115, 115, 105, 103, 110, 40, 120, 44, 32, 111, // .assign(x, o 98, 106, 41, 41, 59, 10, 32, 32, 99, 111, 110, 115, // bj));. cons 116, 32, 110, 115, 101, 116, 32, 61, 32, 40, 110, 44, // t nset = (n, 111, 98, 106, 41, 32, 61, 62, 32, 115, 101, 116, 67, // obj) => setC 102, 103, 40, 120, 32, 61, 62, 32, 79, 98, 106, 101, // fg(x => Obje 99, 116, 46, 97, 115, 115, 105, 103, 110, 40, 120, 44, // ct.assign(x, 32, 123, 91, 110, 93, 58, 32, 79, 98, 106, 101, 99, // {[n]: Objec 116, 46, 97, 115, 115, 105, 103, 110, 40, 120, 91, 110, // t.assign(x[n 93, 44, 111, 98, 106, 41, 125, 41, 41, 59, 10, 32, // ],obj)}));. 32, 99, 111, 110, 115, 116, 32, 115, 101, 116, 84, 120, // const setTx 32, 61, 32, 101, 118, 32, 61, 62, 32, 115, 101, 116, // = ev => set 40, 123, 116, 120, 58, 32, 112, 97, 114, 115, 101, 73, // ({tx: parseI 110, 116, 40, 101, 118, 46, 116, 97, 114, 103, 101, 116, // nt(ev.target 46, 118, 97, 108, 117, 101, 41, 125, 41, 59, 10, 32, // .value)});. 32, 99, 111, 110, 115, 116, 32, 115, 101, 116, 82, 120, // const setRx 32, 61, 32, 101, 118, 32, 61, 62, 32, 115, 101, 116, // = ev => set 40, 123, 114, 120, 58, 32, 112, 97, 114, 115, 101, 73, // ({rx: parseI 110, 116, 40, 101, 118, 46, 116, 97, 114, 103, 101, 116, // nt(ev.target 46, 118, 97, 108, 117, 101, 41, 125, 41, 59, 10, 32, // .value)});. 32, 99, 111, 110, 115, 116, 32, 115, 101, 116, 66, 97, // const setBa 117, 100, 32, 61, 32, 101, 118, 32, 61, 62, 32, 115, // ud = ev => s 101, 116, 40, 123, 98, 97, 117, 100, 58, 32, 112, 97, // et({baud: pa 114, 115, 101, 73, 110, 116, 40, 101, 118, 46, 116, 97, // rseInt(ev.ta 114, 103, 101, 116, 46, 118, 97, 108, 117, 101, 41, 125, // rget.value)} 41, 59, 10, 32, 32, 99, 111, 110, 115, 116, 32, 115, // );. const s 101, 116, 84, 99, 112, 85, 114, 108, 32, 61, 32, 101, // etTcpUrl = e 118, 32, 61, 62, 32, 110, 115, 101, 116, 40, 39, 116, // v => nset('t 99, 112, 39, 44, 32, 123, 117, 114, 108, 58, 32, 96, // cp', {url: ` 116, 99, 112, 58, 47, 47, 48, 46, 48, 46, 48, 46, // tcp://0.0.0. 48, 58, 36, 123, 101, 118, 46, 116, 97, 114, 103, 101, // 0:${ev.targe 116, 46, 118, 97, 108, 117, 101, 125, 96, 125, 41, 59, // t.value}`}); 10, 32, 32, 99, 111, 110, 115, 116, 32, 115, 101, 116, // . const set 87, 115, 85, 114, 108, 32, 61, 32, 101, 118, 32, 61, // WsUrl = ev = 62, 32, 110, 115, 101, 116, 40, 39, 119, 115, 39, 44, // > nset('ws', 123, 117, 114, 108, 58, 32, 96, 119, 115, 58, 47, 47, // {url: `ws:// 48, 46, 48, 46, 48, 46, 48, 58, 36, 123, 101, 118, // 0.0.0.0:${ev 46, 116, 97, 114, 103, 101, 116, 46, 118, 97, 108, 117, // .target.valu 101, 125, 96, 125, 41, 59, 10, 32, 32, 99, 111, 110, // e}`});. con 115, 116, 32, 115, 101, 116, 77, 113, 116, 116, 85, 114, // st setMqttUr 108, 32, 61, 32, 101, 118, 32, 61, 62, 32, 110, 115, // l = ev => ns 101, 116, 40, 39, 109, 113, 116, 116, 39, 44, 123, 117, // et('mqtt',{u 114, 108, 58, 32, 101, 118, 46, 116, 97, 114, 103, 101, // rl: ev.targe 116, 46, 118, 97, 108, 117, 101, 125, 41, 59, 10, 32, // t.value});. 32, 99, 111, 110, 115, 116, 32, 115, 101, 116, 84, 99, // const setTc 112, 69, 110, 97, 32, 61, 32, 101, 118, 32, 61, 62, // pEna = ev => 32, 40, 110, 115, 101, 116, 40, 39, 116, 99, 112, 39, // (nset('tcp' 44, 123, 101, 110, 97, 98, 108, 101, 58, 32, 101, 118, // ,{enable: ev 46, 116, 97, 114, 103, 101, 116, 46, 99, 104, 101, 99, // .target.chec 107, 101, 100, 125, 41, 44, 32, 111, 110, 99, 104, 97, // ked}), oncha 110, 103, 101, 40, 41, 41, 59, 10, 32, 32, 99, 111, // nge());. co 110, 115, 116, 32, 115, 101, 116, 87, 115, 69, 110, 97, // nst setWsEna 32, 61, 32, 101, 118, 32, 61, 62, 32, 40, 110, 115, // = ev => (ns 101, 116, 40, 39, 119, 115, 39, 44, 123, 101, 110, 97, // et('ws',{ena 98, 108, 101, 58, 32, 101, 118, 46, 116, 97, 114, 103, // ble: ev.targ 101, 116, 46, 99, 104, 101, 99, 107, 101, 100, 125, 41, // et.checked}) 44, 32, 111, 110, 99, 104, 97, 110, 103, 101, 40, 41, // , onchange() 41, 59, 10, 32, 32, 99, 111, 110, 115, 116, 32, 115, // );. const s 101, 116, 77, 113, 116, 116, 69, 110, 97, 32, 61, 32, // etMqttEna = 101, 118, 32, 61, 62, 40, 110, 115, 101, 116, 40, 39, // ev =>(nset(' 109, 113, 116, 116, 39, 44, 32, 123, 101, 110, 97, 98, // mqtt', {enab 108, 101, 58, 32, 101, 118, 46, 116, 97, 114, 103, 101, // le: ev.targe 116, 46, 99, 104, 101, 99, 107, 101, 100, 125, 41, 44, // t.checked}), 32, 111, 110, 99, 104, 97, 110, 103, 101, 40, 41, 41, // onchange()) 59, 10, 10, 32, 32, 114, 101, 116, 117, 114, 110, 32, // ;.. return 104, 116, 109, 108, 96, 10, 60, 100, 105, 118, 32, 99, // html`.
.

UART .u27F 55, 32, 110, 101, 116, 119, 111, 114, 107, 32, 98, 114, // 7 network br 105, 100, 103, 101, 32, 60, 47, 104, 49, 62, 10, 32, // idge

. 32, 60, 112, 114, 101, 32, 99, 108, 97, 115, 115, 61, //
${J
  83,  79,  78,  46, 115, 116, 114, 105, 110, 103, 105, 102, // SON.stringif
 121,  40,  99, 102, 103,  44,  32, 110, 117, 108, 108,  44, // y(cfg, null,
  32,  50,  41, 125,  60,  47, 112, 114, 101,  62,  10,  32, //  2)}
. 32, 60, 100, 105, 118, 32, 99, 108, 97, 115, 115, 61, //
. < 100, 105, 118, 32, 99, 108, 97, 115, 115, 61, 34, 99, // div class="c 111, 108, 32, 99, 111, 108, 45, 52, 34, 62, 10, 32, // ol col-4">. 32, 32, 32, 32, 32, 60, 104, 51, 62, 85, 65, 82, //

UAR 84, 32, 99, 111, 110, 102, 105, 103, 117, 114, 97, 116, // T configurat 105, 111, 110, 60, 47, 104, 51, 62, 10, 32, 32, 32, // ion

. 32, 32, 32, 60, 100, 105, 118, 32, 99, 108, 97, 115, //
. 32, 32, 32, 32, 32, 32, 60, 108, 97, 98, 101, 108, // . 32, 32, 32, 32, 32, 32, 32, 60, 105, 110, 112, 117, // . < 47, 100, 105, 118, 62, 60, 100, 105, 118, 32, 99, 108, // /div>
. 32, 32, 32, 32, 32, 32, 32, 32, 60, 108, 97, 98, // UART RX 32, 112, 105, 110, 60, 47, 108, 97, 98, 101, 108, 62, // pin 10, 32, 32, 32, 32, 32, 32, 32, 32, 60, 105, 110, // . . 32, 60, 47, 100, 105, 118, 62, 60, 100, 105, 118, 32, //
. UART 66, 97, 117, 100, 60, 47, 108, 97, 98, 101, 108, 62, // Baud 10, 32, 32, 32, 32, 32, 32, 32, 32, 60, 105, 110, // . . 32, 32, 32, 32, 32, 60, 47, 100, 105, 118, 62, 10, //
. 32, 32, 32, 32, 60, 47, 100, 105, 118, 62, 10, 32, //
. 32, 32, 32, 60, 100, 105, 118, 32, 99, 108, 97, 115, //
.

Network con 102, 105, 103, 117, 114, 97, 116, 105, 111, 110, 60, 47, // figuration. . 32, 32, 32, 32, 32, 32, 32, 32, 60, 108, 97, 98, // Local T 67, 80, 32, 112, 111, 114, 116, 60, 47, 108, 97, 98, // CP port. 60, 105, 110, 112, 117, 116, 32, 115, 116, 121, 108, 101, // . enabl 101, 60, 47, 108, 97, 98, 101, 108, 62, 10, 32, 32, // e. 32, 32, 32, 32, 60, 47, 100, 105, 118, 62, 60, 100, //

. 32, 32, 32, 32, 32, 32, 32, 32, 60, 108, 97, 98, // Local W 83, 32, 112, 111, 114, 116, 60, 47, 108, 97, 98, 101, // S port. < 105, 110, 112, 117, 116, 32, 115, 116, 121, 108, 101, 61, // input style= 34, 102, 108, 101, 120, 58, 32, 49, 32, 49, 48, 48, // "flex: 1 100 37, 59, 34, 10, 32, 32, 32, 32, 32, 32, 32, 32, // %;". 32, 32, 118, 97, 108, 117, 101, 61, 36, 123, 103, 101, // value=${ge 116, 112, 111, 114, 116, 40, 99, 102, 103, 46, 119, 115, // tport(cfg.ws 46, 117, 114, 108, 44, 32, 52, 48, 48, 50, 41, 125, // .url, 4002)} 32, 111, 110, 99, 104, 97, 110, 103, 101, 61, 36, 123, // onchange=${ 111, 110, 99, 104, 97, 110, 103, 101, 125, 10, 32, 32, // onchange}. 32, 32, 32, 32, 32, 32, 32, 32, 111, 110, 105, 110, // onin 112, 117, 116, 61, 36, 123, 115, 101, 116, 87, 115, 85, // put=${setWsU 114, 108, 125, 32, 47, 62, 10, 32, 32, 32, 32, 32, // rl} />. 32, 32, 32, 60, 108, 97, 98, 101, 108, 32, 99, 108, // 10, 32, 32, 32, 32, 32, 32, 60, 47, 100, 105, 118, // .
. < 108, 97, 98, 101, 108, 32, 99, 108, 97, 115, 115, 61, // label class= 34, 97, 100, 100, 111, 110, 34, 62, 82, 101, 109, 111, // "addon">Remo 116, 101, 32, 77, 81, 84, 84, 60, 47, 108, 97, 98, // te MQTT. 60, 105, 110, 112, 117, 116, 32, 115, 116, 121, 108, 101, // . 32, 32, 32, 32, 32, 60, 108, 97, 98, 101, 108, 32, //
. 60, 47, 100, 105, 118, 62, 10, 32, 32, 60, 47, 100, //
. ..
10, 32, 32, 32, 32, 78, 111, 116, 101, 58, 32, 116, // . Note: t 111, 32, 99, 111, 110, 110, 101, 99, 116, 32, 111, 118, // o connect ov 101, 114, 32, 77, 81, 84, 84, 44, 32, 10, 32, 32, // er MQTT, . 32, 32, 32, 32, 111, 112, 101, 110, 32, 60, 97, 32, // open . 32, 32, 99, 111, 110, 115, 111, 108, 101, 60, 47, 97, // console, subscribe 32, 116, 111, 32, 98, 47, 116, 120, 32, 97, 110, 100, // to b/tx and 32, 112, 117, 98, 108, 105, 115, 104, 32, 116, 111, 32, // publish to 98, 47, 114, 120, 60, 98, 114, 47, 62, 10, 32, 32, // b/rx
. 32, 32, 78, 111, 116, 101, 58, 32, 116, 111, 32, 99, // Note: to c 111, 110, 110, 101, 99, 116, 32, 111, 118, 101, 114, 32, // onnect over 84, 67, 80, 44, 32, 117, 115, 101, 32, 110, 101, 116, // TCP, use net 99, 97, 116, 32, 117, 116, 105, 108, 105, 116, 121, 58, // cat utility: 60, 98, 114, 47, 62, 10, 32, 32, 32, 32, 36, 32, //
. $ 110, 99, 32, 36, 123, 108, 111, 99, 97, 116, 105, 111, // nc ${locatio 110, 46, 104, 111, 115, 116, 110, 97, 109, 101, 125, 32, // n.hostname} 36, 123, 103, 101, 116, 112, 111, 114, 116, 40, 99, 102, // ${getport(cf 103, 46, 116, 99, 112, 46, 117, 114, 108, 44, 32, 52, // g.tcp.url, 4 48, 48, 49, 41, 125, 10, 32, 32, 60, 47, 100, 105, // 001)}. ..
10, 32, 32, 32, 32, 60, 98, 62, 85, 65, 82, 84, // . UART 32, 99, 111, 110, 115, 111, 108, 101, 60, 47, 98, 62, // console 60, 115, 112, 97, 110, 32, 115, 116, 121, 108, 101, 61, // wor 107, 115, 32, 10, 32, 32, 32, 32, 111, 118, 101, 114, // ks . over 32, 116, 104, 101, 32, 108, 111, 99, 97, 108, 32, 87, // the local W 83, 32, 112, 111, 114, 116, 46, 32, 87, 101, 98, 83, // S port. WebS 111, 99, 107, 101, 116, 32, 115, 116, 97, 116, 117, 115, // ocket status 58, 32, 60, 47, 115, 112, 97, 110, 62, 60, 115, 112, // : . 32, 32, 92, 117, 50, 53, 99, 102, 32, 36, 123, 99, // .u25cf ${c 111, 110, 110, 101, 99, 116, 101, 100, 32, 63, 32, 39, // onnected ? ' 99, 111, 110, 110, 101, 99, 116, 101, 100, 39, 32, 58, // connected' : 32, 39, 100, 105, 115, 99, 111, 110, 110, 101, 99, 116, // 'disconnect 101, 100, 39, 125, 32, 60, 47, 115, 112, 97, 110, 62, // ed'} 10, 32, 32, 60, 47, 100, 105, 118, 62, 10, 32, 32, // .
. 60, 100, 105, 118, 32, 115, 116, 121, 108, 101, 61, 34, //
. 32, 60, 105, 110, 112, 117, 116, 32, 112, 108, 97, 99, // setTxt(ev 46, 116, 97, 114, 103, 101, 116, 46, 118, 97, 108, 117, // .target.valu 101, 41, 125, 32, 47, 62, 10, 32, 32, 32, 32, 60, // e)} />. < 98, 117, 116, 116, 111, 110, 32, 115, 116, 121, 108, 101, // button style 61, 34, 109, 97, 114, 103, 105, 110, 45, 108, 101, 102, // ="margin-lef 116, 58, 32, 49, 101, 109, 59, 34, 10, 32, 32, 32, // t: 1em;". 32, 32, 32, 111, 110, 99, 108, 105, 99, 107, 61, 36, // onclick=$ 123, 101, 118, 32, 61, 62, 32, 115, 101, 116, 77, 101, // {ev => setMe 115, 115, 97, 103, 101, 115, 40, 91, 93, 41, 125, 62, // ssages([])}> 99, 108, 101, 97, 114, 60, 47, 98, 117, 116, 116, 111, // clear.
. 32, 32, 60, 112, 114, 101, 32, 115, 116, 121, 108, 101, //
.  
  32,  32,  36, 123, 109, 101, 115, 115,  97, 103, 101, 115, //   ${messages
  46, 109,  97, 112,  40, 109, 101, 115, 115,  97, 103, 101, // .map(message
  32,  61,  62,  32, 104,  40,  77, 101, 115, 115,  97, 103, //  => h(Messag
 101,  44,  32, 123, 109, 101, 115, 115,  97, 103, 101, 125, // e, {message}
  41,  41, 125,  10,  32,  32,  60,  47, 112, 114, 101,  62, // ))}.  
10, 10, 60, 47, 100, 105, 118, 62, 96, 59, 10, 125, // ..
`;.} 59, 10, 10, 119, 105, 110, 100, 111, 119, 46, 111, 110, // ;..window.on 108, 111, 97, 100, 32, 61, 32, 40, 41, 32, 61, 62, // load = () => 32, 114, 101, 110, 100, 101, 114, 40, 104, 40, 65, 112, // render(h(Ap 112, 41, 44, 32, 100, 111, 99, 117, 109, 101, 110, 116, // p), document 46, 98, 111, 100, 121, 41, 59, 10, 0 // .body);. }; static const unsigned char v3[] = { 118, 97, 114, 32, 101, 44, 110, 44, 95, 44, 116, 44, // var e,n,_,t, 111, 44, 114, 44, 117, 44, 108, 61, 123, 125, 44, 105, // o,r,u,l={},i 61, 91, 93, 44, 99, 61, 47, 97, 99, 105, 116, 124, // =[],c=/acit| 101, 120, 40, 63, 58, 115, 124, 103, 124, 110, 124, 112, // ex(?:s|g|n|p 124, 36, 41, 124, 114, 112, 104, 124, 103, 114, 105, 100, // |$)|rph|grid 124, 111, 119, 115, 124, 109, 110, 99, 124, 110, 116, 119, // |ows|mnc|ntw 124, 105, 110, 101, 91, 99, 104, 93, 124, 122, 111, 111, // |ine[ch]|zoo 124, 94, 111, 114, 100, 124, 105, 116, 101, 114, 97, 47, // |^ord|itera/ 105, 59, 102, 117, 110, 99, 116, 105, 111, 110, 32, 115, // i;function s 40, 101, 44, 110, 41, 123, 102, 111, 114, 40, 118, 97, // (e,n){for(va 114, 32, 95, 32, 105, 110, 32, 110, 41, 101, 91, 95, // r _ in n)e[_ 93, 61, 110, 91, 95, 93, 59, 114, 101, 116, 117, 114, // ]=n[_];retur 110, 32, 101, 125, 102, 117, 110, 99, 116, 105, 111, 110, // n e}function 32, 102, 40, 101, 41, 123, 118, 97, 114, 32, 110, 61, // f(e){var n= 101, 46, 112, 97, 114, 101, 110, 116, 78, 111, 100, 101, // e.parentNode 59, 110, 38, 38, 110, 46, 114, 101, 109, 111, 118, 101, // ;n&&n.remove 67, 104, 105, 108, 100, 40, 101, 41, 125, 102, 117, 110, // Child(e)}fun 99, 116, 105, 111, 110, 32, 97, 40, 110, 44, 95, 44, // ction a(n,_, 116, 41, 123, 118, 97, 114, 32, 111, 44, 114, 44, 117, // t){var o,r,u 44, 108, 61, 123, 125, 59, 102, 111, 114, 40, 117, 32, // ,l={};for(u 105, 110, 32, 95, 41, 34, 107, 101, 121, 34, 61, 61, // in _)"key"== 117, 63, 111, 61, 95, 91, 117, 93, 58, 34, 114, 101, // u?o=_[u]:"re 102, 34, 61, 61, 117, 63, 114, 61, 95, 91, 117, 93, // f"==u?r=_[u] 58, 108, 91, 117, 93, 61, 95, 91, 117, 93, 59, 105, // :l[u]=_[u];i 102, 40, 97, 114, 103, 117, 109, 101, 110, 116, 115, 46, // f(arguments. 108, 101, 110, 103, 116, 104, 62, 50, 38, 38, 40, 108, // length>2&&(l 46, 99, 104, 105, 108, 100, 114, 101, 110, 61, 97, 114, // .children=ar 103, 117, 109, 101, 110, 116, 115, 46, 108, 101, 110, 103, // guments.leng 116, 104, 62, 51, 63, 101, 46, 99, 97, 108, 108, 40, // th>3?e.call( 97, 114, 103, 117, 109, 101, 110, 116, 115, 44, 50, 41, // arguments,2) 58, 116, 41, 44, 34, 102, 117, 110, 99, 116, 105, 111, // :t),"functio 110, 34, 61, 61, 116, 121, 112, 101, 111, 102, 32, 110, // n"==typeof n 38, 38, 110, 117, 108, 108, 33, 61, 110, 46, 100, 101, // &&null!=n.de 102, 97, 117, 108, 116, 80, 114, 111, 112, 115, 41, 102, // faultProps)f 111, 114, 40, 117, 32, 105, 110, 32, 110, 46, 100, 101, // or(u in n.de 102, 97, 117, 108, 116, 80, 114, 111, 112, 115, 41, 118, // faultProps)v 111, 105, 100, 32, 48, 61, 61, 61, 108, 91, 117, 93, // oid 0===l[u] 38, 38, 40, 108, 91, 117, 93, 61, 110, 46, 100, 101, // &&(l[u]=n.de 102, 97, 117, 108, 116, 80, 114, 111, 112, 115, 91, 117, // faultProps[u 93, 41, 59, 114, 101, 116, 117, 114, 110, 32, 112, 40, // ]);return p( 110, 44, 108, 44, 111, 44, 114, 44, 110, 117, 108, 108, // n,l,o,r,null 41, 125, 102, 117, 110, 99, 116, 105, 111, 110, 32, 112, // )}function p 40, 101, 44, 116, 44, 111, 44, 114, 44, 117, 41, 123, // (e,t,o,r,u){ 118, 97, 114, 32, 108, 61, 123, 116, 121, 112, 101, 58, // var l={type: 101, 44, 112, 114, 111, 112, 115, 58, 116, 44, 107, 101, // e,props:t,ke 121, 58, 111, 44, 114, 101, 102, 58, 114, 44, 95, 95, // y:o,ref:r,__ 107, 58, 110, 117, 108, 108, 44, 95, 95, 58, 110, 117, // k:null,__:nu 108, 108, 44, 95, 95, 98, 58, 48, 44, 95, 95, 101, // ll,__b:0,__e 58, 110, 117, 108, 108, 44, 95, 95, 100, 58, 118, 111, // :null,__d:vo 105, 100, 32, 48, 44, 95, 95, 99, 58, 110, 117, 108, // id 0,__c:nul 108, 44, 95, 95, 104, 58, 110, 117, 108, 108, 44, 99, // l,__h:null,c 111, 110, 115, 116, 114, 117, 99, 116, 111, 114, 58, 118, // onstructor:v 111, 105, 100, 32, 48, 44, 95, 95, 118, 58, 110, 117, // oid 0,__v:nu 108, 108, 61, 61, 117, 63, 43, 43, 95, 58, 117, 125, // ll==u?++_:u} 59, 114, 101, 116, 117, 114, 110, 32, 110, 117, 108, 108, // ;return null 33, 61, 110, 46, 118, 110, 111, 100, 101, 38, 38, 110, // !=n.vnode&&n 46, 118, 110, 111, 100, 101, 40, 108, 41, 44, 108, 125, // .vnode(l),l} 102, 117, 110, 99, 116, 105, 111, 110, 32, 104, 40, 101, // function h(e 41, 123, 114, 101, 116, 117, 114, 110, 32, 101, 46, 99, // ){return e.c 104, 105, 108, 100, 114, 101, 110, 125, 102, 117, 110, 99, // hildren}func 116, 105, 111, 110, 32, 100, 40, 101, 44, 110, 41, 123, // tion d(e,n){ 116, 104, 105, 115, 46, 112, 114, 111, 112, 115, 61, 101, // this.props=e 44, 116, 104, 105, 115, 46, 99, 111, 110, 116, 101, 120, // ,this.contex 116, 61, 110, 125, 102, 117, 110, 99, 116, 105, 111, 110, // t=n}function 32, 118, 40, 101, 44, 110, 41, 123, 105, 102, 40, 110, // v(e,n){if(n 117, 108, 108, 61, 61, 110, 41, 114, 101, 116, 117, 114, // ull==n)retur 110, 32, 101, 46, 95, 95, 63, 118, 40, 101, 46, 95, // n e.__?v(e._ 95, 44, 101, 46, 95, 95, 46, 95, 95, 107, 46, 105, // _,e.__.__k.i 110, 100, 101, 120, 79, 102, 40, 101, 41, 43, 49, 41, // ndexOf(e)+1) 58, 110, 117, 108, 108, 59, 102, 111, 114, 40, 118, 97, // :null;for(va 114, 32, 95, 59, 110, 60, 101, 46, 95, 95, 107, 46, // r _;n0?p(m. 116, 121, 112, 101, 44, 109, 46, 112, 114, 111, 112, 115, // type,m.props 44, 109, 46, 107, 101, 121, 44, 110, 117, 108, 108, 44, // ,m.key,null, 109, 46, 95, 95, 118, 41, 58, 109, 41, 41, 123, 105, // m.__v):m)){i 102, 40, 109, 46, 95, 95, 61, 95, 44, 109, 46, 95, // f(m.__=_,m._ 95, 98, 61, 95, 46, 95, 95, 98, 43, 49, 44, 110, // _b=_.__b+1,n 117, 108, 108, 61, 61, 61, 40, 121, 61, 72, 91, 97, // ull===(y=H[a 93, 41, 124, 124, 121, 38, 38, 109, 46, 107, 101, 121, // ])||y&&m.key 61, 61, 121, 46, 107, 101, 121, 38, 38, 109, 46, 116, // ==y.key&&m.t 121, 112, 101, 61, 61, 61, 121, 46, 116, 121, 112, 101, // ype===y.type 41, 72, 91, 97, 93, 61, 118, 111, 105, 100, 32, 48, // )H[a]=void 0 59, 101, 108, 115, 101, 32, 102, 111, 114, 40, 100, 61, // ;else for(d= 48, 59, 100, 60, 69, 59, 100, 43, 43, 41, 123, 105, // 0;d=t.__.len 103, 116, 104, 38, 38, 116, 46, 95, 95, 46, 112, 117, // gth&&t.__.pu 115, 104, 40, 123, 125, 41, 44, 116, 46, 95, 95, 91, // sh({}),t.__[ 101, 93, 125, 102, 117, 110, 99, 116, 105, 111, 110, 32, // e]}function 71, 40, 101, 41, 123, 114, 101, 116, 117, 114, 110, 32, // G(e){return 82, 61, 49, 44, 122, 40, 105, 101, 44, 101, 41, 125, // R=1,z(ie,e)} 102, 117, 110, 99, 116, 105, 111, 110, 32, 122, 40, 101, // function z(e 44, 110, 44, 95, 41, 123, 118, 97, 114, 32, 116, 61, // ,n,_){var t= 106, 40, 76, 43, 43, 44, 50, 41, 59, 114, 101, 116, // j(L++,2);ret 117, 114, 110, 32, 116, 46, 116, 61, 101, 44, 116, 46, // urn t.t=e,t. 95, 95, 99, 124, 124, 40, 116, 46, 95, 95, 61, 91, // __c||(t.__=[ 95, 63, 95, 40, 110, 41, 58, 105, 101, 40, 118, 111, // _?_(n):ie(vo 105, 100, 32, 48, 44, 110, 41, 44, 102, 117, 110, 99, // id 0,n),func 116, 105, 111, 110, 40, 101, 41, 123, 118, 97, 114, 32, // tion(e){var 110, 61, 116, 46, 116, 40, 116, 46, 95, 95, 91, 48, // n=t.t(t.__[0 93, 44, 101, 41, 59, 116, 46, 95, 95, 91, 48, 93, // ],e);t.__[0] 33, 61, 61, 110, 38, 38, 40, 116, 46, 95, 95, 61, // !==n&&(t.__= 91, 110, 44, 116, 46, 95, 95, 91, 49, 93, 93, 44, // [n,t.__[1]], 116, 46, 95, 95, 99, 46, 115, 101, 116, 83, 116, 97, // t.__c.setSta 116, 101, 40, 123, 125, 41, 41, 125, 93, 44, 116, 46, // te({}))}],t. 95, 95, 99, 61, 78, 41, 44, 116, 46, 95, 95, 125, // __c=N),t.__} 102, 117, 110, 99, 116, 105, 111, 110, 32, 74, 40, 101, // function J(e 44, 95, 41, 123, 118, 97, 114, 32, 116, 61, 106, 40, // ,_){var t=j( 76, 43, 43, 44, 51, 41, 59, 33, 110, 46, 95, 95, // L++,3);!n.__ 115, 38, 38, 108, 101, 40, 116, 46, 95, 95, 72, 44, // s&&le(t.__H, 95, 41, 38, 38, 40, 116, 46, 95, 95, 61, 101, 44, // _)&&(t.__=e, 116, 46, 95, 95, 72, 61, 95, 44, 78, 46, 95, 95, // t.__H=_,N.__ 72, 46, 95, 95, 104, 46, 112, 117, 115, 104, 40, 116, // H.__h.push(t 41, 41, 125, 102, 117, 110, 99, 116, 105, 111, 110, 32, // ))}function 75, 40, 101, 44, 95, 41, 123, 118, 97, 114, 32, 116, // K(e,_){var t 61, 106, 40, 76, 43, 43, 44, 52, 41, 59, 33, 110, // =j(L++,4);!n 46, 95, 95, 115, 38, 38, 108, 101, 40, 116, 46, 95, // .__s&&le(t._ 95, 72, 44, 95, 41, 38, 38, 40, 116, 46, 95, 95, // _H,_)&&(t.__ 61, 101, 44, 116, 46, 95, 95, 72, 61, 95, 44, 78, // =e,t.__H=_,N 46, 95, 95, 104, 46, 112, 117, 115, 104, 40, 116, 41, // .__h.push(t) 41, 125, 102, 117, 110, 99, 116, 105, 111, 110, 32, 81, // )}function Q 40, 101, 41, 123, 114, 101, 116, 117, 114, 110, 32, 82, // (e){return R 61, 53, 44, 89, 40, 102, 117, 110, 99, 116, 105, 111, // =5,Y(functio 110, 40, 41, 123, 114, 101, 116, 117, 114, 110, 123, 99, // n(){return{c 117, 114, 114, 101, 110, 116, 58, 101, 125, 125, 44, 91, // urrent:e}},[ 93, 41, 125, 102, 117, 110, 99, 116, 105, 111, 110, 32, // ])}function 88, 40, 101, 44, 110, 44, 95, 41, 123, 82, 61, 54, // X(e,n,_){R=6 44, 75, 40, 102, 117, 110, 99, 116, 105, 111, 110, 40, // ,K(function( 41, 123, 34, 102, 117, 110, 99, 116, 105, 111, 110, 34, // ){"function" 61, 61, 116, 121, 112, 101, 111, 102, 32, 101, 63, 101, // ==typeof e?e 40, 110, 40, 41, 41, 58, 101, 38, 38, 40, 101, 46, // (n()):e&&(e. 99, 117, 114, 114, 101, 110, 116, 61, 110, 40, 41, 41, // current=n()) 125, 44, 110, 117, 108, 108, 61, 61, 95, 63, 95, 58, // },null==_?_: 95, 46, 99, 111, 110, 99, 97, 116, 40, 101, 41, 41, // _.concat(e)) 125, 102, 117, 110, 99, 116, 105, 111, 110, 32, 89, 40, // }function Y( 101, 44, 110, 41, 123, 118, 97, 114, 32, 95, 61, 106, // e,n){var _=j 40, 76, 43, 43, 44, 55, 41, 59, 114, 101, 116, 117, // (L++,7);retu 114, 110, 32, 108, 101, 40, 95, 46, 95, 95, 72, 44, // rn le(_.__H, 110, 41, 38, 38, 40, 95, 46, 95, 95, 61, 101, 40, // n)&&(_.__=e( 41, 44, 95, 46, 95, 95, 72, 61, 110, 44, 95, 46, // ),_.__H=n,_. 95, 95, 104, 61, 101, 41, 44, 95, 46, 95, 95, 125, // __h=e),_.__} 102, 117, 110, 99, 116, 105, 111, 110, 32, 90, 40, 101, // function Z(e 44, 110, 41, 123, 114, 101, 116, 117, 114, 110, 32, 82, // ,n){return R 61, 56, 44, 89, 40, 102, 117, 110, 99, 116, 105, 111, // =8,Y(functio 110, 40, 41, 123, 114, 101, 116, 117, 114, 110, 32, 101, // n(){return e 125, 44, 110, 41, 125, 102, 117, 110, 99, 116, 105, 111, // },n)}functio 110, 32, 101, 101, 40, 101, 41, 123, 118, 97, 114, 32, // n ee(e){var 110, 61, 78, 46, 99, 111, 110, 116, 101, 120, 116, 91, // n=N.context[ 101, 46, 95, 95, 99, 93, 44, 95, 61, 106, 40, 76, // e.__c],_=j(L 43, 43, 44, 57, 41, 59, 114, 101, 116, 117, 114, 110, // ++,9);return 32, 95, 46, 99, 61, 101, 44, 110, 63, 40, 110, 117, // _.c=e,n?(nu 108, 108, 61, 61, 95, 46, 95, 95, 38, 38, 40, 95, // ll==_.__&&(_ 46, 95, 95, 61, 33, 48, 44, 110, 46, 115, 117, 98, // .__=!0,n.sub 40, 78, 41, 41, 44, 110, 46, 112, 114, 111, 112, 115, // (N)),n.props 46, 118, 97, 108, 117, 101, 41, 58, 101, 46, 95, 95, // .value):e.__ 125, 102, 117, 110, 99, 116, 105, 111, 110, 32, 110, 101, // }function ne 40, 101, 44, 95, 41, 123, 110, 46, 117, 115, 101, 68, // (e,_){n.useD 101, 98, 117, 103, 86, 97, 108, 117, 101, 38, 38, 110, // ebugValue&&n 46, 117, 115, 101, 68, 101, 98, 117, 103, 86, 97, 108, // .useDebugVal 117, 101, 40, 95, 63, 95, 40, 101, 41, 58, 101, 41, // ue(_?_(e):e) 125, 102, 117, 110, 99, 116, 105, 111, 110, 32, 95, 101, // }function _e 40, 101, 41, 123, 118, 97, 114, 32, 110, 61, 106, 40, // (e){var n=j( 76, 43, 43, 44, 49, 48, 41, 44, 95, 61, 71, 40, // L++,10),_=G( 41, 59, 114, 101, 116, 117, 114, 110, 32, 110, 46, 95, // );return n._ 95, 61, 101, 44, 78, 46, 99, 111, 109, 112, 111, 110, // _=e,N.compon 101, 110, 116, 68, 105, 100, 67, 97, 116, 99, 104, 124, // entDidCatch| 124, 40, 78, 46, 99, 111, 109, 112, 111, 110, 101, 110, // |(N.componen 116, 68, 105, 100, 67, 97, 116, 99, 104, 61, 102, 117, // tDidCatch=fu 110, 99, 116, 105, 111, 110, 40, 101, 41, 123, 110, 46, // nction(e){n. 95, 95, 38, 38, 110, 46, 95, 95, 40, 101, 41, 44, // __&&n.__(e), 95, 91, 49, 93, 40, 101, 41, 125, 41, 44, 91, 95, // _[1](e)}),[_ 91, 48, 93, 44, 102, 117, 110, 99, 116, 105, 111, 110, // [0],function 40, 41, 123, 95, 91, 49, 93, 40, 118, 111, 105, 100, // (){_[1](void 32, 48, 41, 125, 93, 125, 102, 117, 110, 99, 116, 105, // 0)}]}functi 111, 110, 32, 116, 101, 40, 41, 123, 73, 46, 102, 111, // on te(){I.fo 114, 69, 97, 99, 104, 40, 102, 117, 110, 99, 116, 105, // rEach(functi 111, 110, 40, 101, 41, 123, 105, 102, 40, 101, 46, 95, // on(e){if(e._ 95, 80, 41, 116, 114, 121, 123, 101, 46, 95, 95, 72, // _P)try{e.__H 46, 95, 95, 104, 46, 102, 111, 114, 69, 97, 99, 104, // .__h.forEach 40, 114, 101, 41, 44, 101, 46, 95, 95, 72, 46, 95, // (re),e.__H._ 95, 104, 46, 102, 111, 114, 69, 97, 99, 104, 40, 117, // _h.forEach(u 101, 41, 44, 101, 46, 95, 95, 72, 46, 95, 95, 104, // e),e.__H.__h 61, 91, 93, 125, 99, 97, 116, 99, 104, 40, 95, 41, // =[]}catch(_) 123, 101, 46, 95, 95, 72, 46, 95, 95, 104, 61, 91, // {e.__H.__h=[ 93, 44, 110, 46, 95, 95, 101, 40, 95, 44, 101, 46, // ],n.__e(_,e. 95, 95, 118, 41, 125, 125, 41, 44, 73, 61, 91, 93, // __v)}}),I=[] 125, 110, 46, 95, 95, 98, 61, 102, 117, 110, 99, 116, // }n.__b=funct 105, 111, 110, 40, 101, 41, 123, 78, 61, 110, 117, 108, // ion(e){N=nul 108, 44, 79, 38, 38, 79, 40, 101, 41, 125, 44, 110, // l,O&&O(e)},n 46, 95, 95, 114, 61, 102, 117, 110, 99, 116, 105, 111, // .__r=functio 110, 40, 101, 41, 123, 86, 38, 38, 86, 40, 101, 41, // n(e){V&&V(e) 44, 76, 61, 48, 59, 118, 97, 114, 32, 110, 61, 40, // ,L=0;var n=( 78, 61, 101, 46, 95, 95, 99, 41, 46, 95, 95, 72, // N=e.__c).__H 59, 110, 38, 38, 40, 110, 46, 95, 95, 104, 46, 102, // ;n&&(n.__h.f 111, 114, 69, 97, 99, 104, 40, 114, 101, 41, 44, 110, // orEach(re),n 46, 95, 95, 104, 46, 102, 111, 114, 69, 97, 99, 104, // .__h.forEach 40, 117, 101, 41, 44, 110, 46, 95, 95, 104, 61, 91, // (ue),n.__h=[ 93, 41, 125, 44, 110, 46, 100, 105, 102, 102, 101, 100, // ])},n.diffed 61, 102, 117, 110, 99, 116, 105, 111, 110, 40, 101, 41, // =function(e) 123, 113, 38, 38, 113, 40, 101, 41, 59, 118, 97, 114, // {q&&q(e);var 32, 95, 61, 101, 46, 95, 95, 99, 59, 95, 38, 38, // _=e.__c;_&& 95, 46, 95, 95, 72, 38, 38, 95, 46, 95, 95, 72, // _.__H&&_.__H 46, 95, 95, 104, 46, 108, 101, 110, 103, 116, 104, 38, // .__h.length& 38, 40, 49, 33, 61, 61, 73, 46, 112, 117, 115, 104, // &(1!==I.push 40, 95, 41, 38, 38, 87, 61, 61, 61, 110, 46, 114, // (_)&&W===n.r 101, 113, 117, 101, 115, 116, 65, 110, 105, 109, 97, 116, // equestAnimat 105, 111, 110, 70, 114, 97, 109, 101, 124, 124, 40, 40, // ionFrame||(( 87, 61, 110, 46, 114, 101, 113, 117, 101, 115, 116, 65, // W=n.requestA 110, 105, 109, 97, 116, 105, 111, 110, 70, 114, 97, 109, // nimationFram 101, 41, 124, 124, 102, 117, 110, 99, 116, 105, 111, 110, // e)||function 40, 101, 41, 123, 118, 97, 114, 32, 110, 44, 95, 61, // (e){var n,_= 102, 117, 110, 99, 116, 105, 111, 110, 40, 41, 123, 99, // function(){c 108, 101, 97, 114, 84, 105, 109, 101, 111, 117, 116, 40, // learTimeout( 116, 41, 44, 111, 101, 38, 38, 99, 97, 110, 99, 101, // t),oe&&cance 108, 65, 110, 105, 109, 97, 116, 105, 111, 110, 70, 114, // lAnimationFr 97, 109, 101, 40, 110, 41, 44, 115, 101, 116, 84, 105, // ame(n),setTi 109, 101, 111, 117, 116, 40, 101, 41, 125, 44, 116, 61, // meout(e)},t= 115, 101, 116, 84, 105, 109, 101, 111, 117, 116, 40, 95, // setTimeout(_ 44, 49, 48, 48, 41, 59, 111, 101, 38, 38, 40, 110, // ,100);oe&&(n 61, 114, 101, 113, 117, 101, 115, 116, 65, 110, 105, 109, // =requestAnim 97, 116, 105, 111, 110, 70, 114, 97, 109, 101, 40, 95, // ationFrame(_ 41, 41, 125, 41, 40, 116, 101, 41, 41, 44, 78, 61, // ))})(te)),N= 118, 111, 105, 100, 32, 48, 125, 44, 110, 46, 95, 95, // void 0},n.__ 99, 61, 102, 117, 110, 99, 116, 105, 111, 110, 40, 101, // c=function(e 44, 95, 41, 123, 95, 46, 115, 111, 109, 101, 40, 102, // ,_){_.some(f 117, 110, 99, 116, 105, 111, 110, 40, 101, 41, 123, 116, // unction(e){t 114, 121, 123, 101, 46, 95, 95, 104, 46, 102, 111, 114, // ry{e.__h.for 69, 97, 99, 104, 40, 114, 101, 41, 44, 101, 46, 95, // Each(re),e._ 95, 104, 61, 101, 46, 95, 95, 104, 46, 102, 105, 108, // _h=e.__h.fil 116, 101, 114, 40, 102, 117, 110, 99, 116, 105, 111, 110, // ter(function 40, 101, 41, 123, 114, 101, 116, 117, 114, 110, 33, 101, // (e){return!e 46, 95, 95, 124, 124, 117, 101, 40, 101, 41, 125, 41, // .__||ue(e)}) 125, 99, 97, 116, 99, 104, 40, 116, 41, 123, 95, 46, // }catch(t){_. 115, 111, 109, 101, 40, 102, 117, 110, 99, 116, 105, 111, // some(functio 110, 40, 101, 41, 123, 101, 46, 95, 95, 104, 38, 38, // n(e){e.__h&& 40, 101, 46, 95, 95, 104, 61, 91, 93, 41, 125, 41, // (e.__h=[])}) 44, 95, 61, 91, 93, 44, 110, 46, 95, 95, 101, 40, // ,_=[],n.__e( 116, 44, 101, 46, 95, 95, 118, 41, 125, 125, 41, 44, // t,e.__v)}}), 66, 38, 38, 66, 40, 101, 44, 95, 41, 125, 44, 110, // B&&B(e,_)},n 46, 117, 110, 109, 111, 117, 110, 116, 61, 102, 117, 110, // .unmount=fun 99, 116, 105, 111, 110, 40, 101, 41, 123, 36, 38, 38, // ction(e){$&& 36, 40, 101, 41, 59, 118, 97, 114, 32, 95, 61, 101, // $(e);var _=e 46, 95, 95, 99, 59, 105, 102, 40, 95, 38, 38, 95, // .__c;if(_&&_ 46, 95, 95, 72, 41, 116, 114, 121, 123, 95, 46, 95, // .__H)try{_._ 95, 72, 46, 95, 95, 46, 102, 111, 114, 69, 97, 99, // _H.__.forEac 104, 40, 114, 101, 41, 125, 99, 97, 116, 99, 104, 40, // h(re)}catch( 101, 41, 123, 110, 46, 95, 95, 101, 40, 101, 44, 95, // e){n.__e(e,_ 46, 95, 95, 118, 41, 125, 125, 59, 118, 97, 114, 32, // .__v)}};var 111, 101, 61, 34, 102, 117, 110, 99, 116, 105, 111, 110, // oe="function 34, 61, 61, 116, 121, 112, 101, 111, 102, 32, 114, 101, // "==typeof re 113, 117, 101, 115, 116, 65, 110, 105, 109, 97, 116, 105, // questAnimati 111, 110, 70, 114, 97, 109, 101, 59, 102, 117, 110, 99, // onFrame;func 116, 105, 111, 110, 32, 114, 101, 40, 101, 41, 123, 118, // tion re(e){v 97, 114, 32, 110, 61, 78, 59, 34, 102, 117, 110, 99, // ar n=N;"func 116, 105, 111, 110, 34, 61, 61, 116, 121, 112, 101, 111, // tion"==typeo 102, 32, 101, 46, 95, 95, 99, 38, 38, 101, 46, 95, // f e.__c&&e._ 95, 99, 40, 41, 44, 78, 61, 110, 125, 102, 117, 110, // _c(),N=n}fun 99, 116, 105, 111, 110, 32, 117, 101, 40, 101, 41, 123, // ction ue(e){ 118, 97, 114, 32, 110, 61, 78, 59, 101, 46, 95, 95, // var n=N;e.__ 99, 61, 101, 46, 95, 95, 40, 41, 44, 78, 61, 110, // c=e.__(),N=n 125, 102, 117, 110, 99, 116, 105, 111, 110, 32, 108, 101, // }function le 40, 101, 44, 110, 41, 123, 114, 101, 116, 117, 114, 110, // (e,n){return 33, 101, 124, 124, 101, 46, 108, 101, 110, 103, 116, 104, // !e||e.length 33, 61, 61, 110, 46, 108, 101, 110, 103, 116, 104, 124, // !==n.length| 124, 110, 46, 115, 111, 109, 101, 40, 102, 117, 110, 99, // |n.some(func 116, 105, 111, 110, 40, 110, 44, 95, 41, 123, 114, 101, // tion(n,_){re 116, 117, 114, 110, 32, 110, 33, 61, 61, 101, 91, 95, // turn n!==e[_ 93, 125, 41, 125, 102, 117, 110, 99, 116, 105, 111, 110, // ]})}function 32, 105, 101, 40, 101, 44, 110, 41, 123, 114, 101, 116, // ie(e,n){ret 117, 114, 110, 34, 102, 117, 110, 99, 116, 105, 111, 110, // urn"function 34, 61, 61, 116, 121, 112, 101, 111, 102, 32, 110, 63, // "==typeof n? 110, 40, 101, 41, 58, 110, 125, 118, 97, 114, 32, 99, // n(e):n}var c 101, 61, 102, 117, 110, 99, 116, 105, 111, 110, 40, 101, // e=function(e 44, 110, 44, 95, 44, 116, 41, 123, 118, 97, 114, 32, // ,n,_,t){var 111, 59, 110, 91, 48, 93, 61, 48, 59, 102, 111, 114, // o;n[0]=0;for 40, 118, 97, 114, 32, 114, 61, 49, 59, 114, 60, 110, // (var r=1;r=5&& 40, 40, 111, 124, 124, 33, 101, 38, 38, 53, 61, 61, // ((o||!e&&5== 61, 116, 41, 38, 38, 40, 117, 46, 112, 117, 115, 104, // =t)&&(u.push 40, 116, 44, 48, 44, 111, 44, 95, 41, 44, 116, 61, // (t,0,o,_),t= 54, 41, 44, 101, 38, 38, 40, 117, 46, 112, 117, 115, // 6),e&&(u.pus 104, 40, 116, 44, 101, 44, 48, 44, 95, 41, 44, 116, // h(t,e,0,_),t 61, 54, 41, 41, 44, 111, 61, 34, 34, 125, 44, 105, // =6)),o=""},i 61, 48, 59, 105, 60, 101, 46, 108, 101, 110, 103, 116, // =0;i"===n?(t=1, 111, 61, 34, 34, 41, 58, 111, 61, 110, 43, 111, 91, // o=""):o=n+o[ 48, 93, 58, 114, 63, 110, 61, 61, 61, 114, 63, 114, // 0]:r?n===r?r 61, 34, 34, 58, 111, 43, 61, 110, 58, 39, 34, 39, // ="":o+=n:'"' 61, 61, 61, 110, 124, 124, 34, 39, 34, 61, 61, 61, // ===n||"'"=== 110, 63, 114, 61, 110, 58, 34, 62, 34, 61, 61, 61, // n?r=n:">"=== 110, 63, 40, 108, 40, 41, 44, 116, 61, 49, 41, 58, // n?(l(),t=1): 116, 38, 38, 40, 34, 61, 34, 61, 61, 61, 110, 63, // t&&("="===n? 40, 116, 61, 53, 44, 95, 61, 111, 44, 111, 61, 34, // (t=5,_=o,o=" 34, 41, 58, 34, 47, 34, 61, 61, 61, 110, 38, 38, // "):"/"===n&& 40, 116, 60, 53, 124, 124, 34, 62, 34, 61, 61, 61, // (t<5||">"=== 101, 91, 105, 93, 91, 99, 43, 49, 93, 41, 63, 40, // e[i][c+1])?( 108, 40, 41, 44, 51, 61, 61, 61, 116, 38, 38, 40, // l(),3===t&&( 117, 61, 117, 91, 48, 93, 41, 44, 116, 61, 117, 44, // u=u[0]),t=u, 40, 117, 61, 117, 91, 48, 93, 41, 46, 112, 117, 115, // (u=u[0]).pus 104, 40, 50, 44, 48, 44, 116, 41, 44, 116, 61, 48, // h(2,0,t),t=0 41, 58, 34, 32, 34, 61, 61, 61, 110, 124, 124, 34, // ):" "===n||" 92, 116, 34, 61, 61, 61, 110, 124, 124, 34, 92, 110, // .t"===n||".n 34, 61, 61, 61, 110, 124, 124, 34, 92, 114, 34, 61, // "===n||".r"= 61, 61, 110, 63, 40, 108, 40, 41, 44, 116, 61, 50, // ==n?(l(),t=2 41, 58, 111, 43, 61, 110, 41, 44, 51, 61, 61, 61, // ):o+=n),3=== 116, 38, 38, 34, 33, 45, 45, 34, 61, 61, 61, 111, // t&&"!--"===o 38, 38, 40, 116, 61, 52, 44, 117, 61, 117, 91, 48, // &&(t=4,u=u[0 93, 41, 125, 114, 101, 116, 117, 114, 110, 32, 108, 40, // ])}return l( 41, 44, 117, 125, 40, 101, 41, 41, 44, 110, 41, 44, // ),u}(e)),n), 97, 114, 103, 117, 109, 101, 110, 116, 115, 44, 91, 93, // arguments,[] 41, 41, 46, 108, 101, 110, 103, 116, 104, 62, 49, 63, // )).length>1? 110, 58, 110, 91, 48, 93, 125, 46, 98, 105, 110, 100, // n:n[0]}.bind 40, 97, 41, 59, 101, 120, 112, 111, 114, 116, 123, 97, // (a);export{a 32, 97, 115, 32, 104, 44, 102, 101, 32, 97, 115, 32, // as h,fe as 104, 116, 109, 108, 44, 77, 32, 97, 115, 32, 114, 101, // html,M as re 110, 100, 101, 114, 44, 100, 32, 97, 115, 32, 67, 111, // nder,d as Co 109, 112, 111, 110, 101, 110, 116, 44, 70, 32, 97, 115, // mponent,F as 32, 99, 114, 101, 97, 116, 101, 67, 111, 110, 116, 101, // createConte 120, 116, 44, 71, 32, 97, 115, 32, 117, 115, 101, 83, // xt,G as useS 116, 97, 116, 101, 44, 122, 32, 97, 115, 32, 117, 115, // tate,z as us 101, 82, 101, 100, 117, 99, 101, 114, 44, 74, 32, 97, // eReducer,J a 115, 32, 117, 115, 101, 69, 102, 102, 101, 99, 116, 44, // s useEffect, 75, 32, 97, 115, 32, 117, 115, 101, 76, 97, 121, 111, // K as useLayo 117, 116, 69, 102, 102, 101, 99, 116, 44, 81, 32, 97, // utEffect,Q a 115, 32, 117, 115, 101, 82, 101, 102, 44, 88, 32, 97, // s useRef,X a 115, 32, 117, 115, 101, 73, 109, 112, 101, 114, 97, 116, // s useImperat 105, 118, 101, 72, 97, 110, 100, 108, 101, 44, 89, 32, // iveHandle,Y 97, 115, 32, 117, 115, 101, 77, 101, 109, 111, 44, 90, // as useMemo,Z 32, 97, 115, 32, 117, 115, 101, 67, 97, 108, 108, 98, // as useCallb 97, 99, 107, 44, 101, 101, 32, 97, 115, 32, 117, 115, // ack,ee as us 101, 67, 111, 110, 116, 101, 120, 116, 44, 110, 101, 32, // eContext,ne 97, 115, 32, 117, 115, 101, 68, 101, 98, 117, 103, 86, // as useDebugV 97, 108, 117, 101, 44, 95, 101, 32, 97, 115, 32, 117, // alue,_e as u 115, 101, 69, 114, 114, 111, 114, 66, 111, 117, 110, 100, // seErrorBound 97, 114, 121, 125, 59, 10, 0 // ary};. }; static const unsigned char v4[] = { 42, 32, 123, 32, 98, 111, 120, 45, 115, 105, 122, 105, // * { box-sizi 110, 103, 58, 32, 98, 111, 114, 100, 101, 114, 45, 98, // ng: border-b 111, 120, 59, 32, 125, 10, 104, 116, 109, 108, 44, 32, // ox; }.html, 98, 111, 100, 121, 32, 123, 32, 109, 97, 114, 103, 105, // body { margi 110, 58, 32, 48, 59, 32, 112, 97, 100, 100, 105, 110, // n: 0; paddin 103, 58, 32, 48, 59, 32, 104, 101, 105, 103, 104, 116, // g: 0; height 58, 32, 49, 48, 48, 37, 59, 32, 102, 111, 110, 116, // : 100%; font 58, 32, 49, 54, 112, 120, 32, 115, 97, 110, 115, 45, // : 16px sans- 115, 101, 114, 105, 102, 59, 32, 125, 10, 115, 101, 108, // serif; }.sel 101, 99, 116, 44, 32, 105, 110, 112, 117, 116, 44, 32, // ect, input, 108, 97, 98, 101, 108, 58, 58, 98, 101, 102, 111, 114, // label::befor 101, 44, 32, 116, 101, 120, 116, 97, 114, 101, 97, 32, // e, textarea 123, 32, 111, 117, 116, 108, 105, 110, 101, 58, 32, 110, // { outline: n 111, 110, 101, 59, 32, 98, 111, 120, 45, 115, 104, 97, // one; box-sha 100, 111, 119, 58, 110, 111, 110, 101, 32, 33, 105, 109, // dow:none !im 112, 111, 114, 116, 97, 110, 116, 59, 32, 98, 111, 114, // portant; bor 100, 101, 114, 58, 32, 49, 112, 120, 32, 115, 111, 108, // der: 1px sol 105, 100, 32, 35, 99, 99, 99, 32, 33, 105, 109, 112, // id #ccc !imp 111, 114, 116, 97, 110, 116, 59, 32, 125, 10, 112, 114, // ortant; }.pr 101, 32, 123, 32, 99, 111, 108, 111, 114, 58, 32, 35, // e { color: # 51, 55, 51, 59, 32, 102, 111, 110, 116, 45, 102, 97, // 373; font-fa 109, 105, 108, 121, 58, 32, 109, 111, 110, 111, 115, 112, // mily: monosp 97, 99, 101, 59, 32, 102, 111, 110, 116, 45, 119, 101, // ace; font-we 105, 103, 104, 116, 58, 32, 98, 111, 108, 100, 101, 114, // ight: bolder 59, 32, 102, 111, 110, 116, 45, 115, 105, 122, 101, 58, // ; font-size: 32, 115, 109, 97, 108, 108, 101, 114, 59, 32, 98, 97, // smaller; ba 99, 107, 103, 114, 111, 117, 110, 100, 58, 32, 35, 100, // ckground: #d 100, 100, 59, 32, 112, 97, 100, 100, 105, 110, 103, 58, // dd; padding: 32, 49, 101, 109, 59, 32, 98, 111, 114, 100, 101, 114, // 1em; border 45, 114, 97, 100, 105, 117, 115, 58, 32, 48, 46, 50, // -radius: 0.2 101, 109, 59, 32, 125, 10, 116, 101, 120, 116, 97, 114, // em; }.textar 101, 97, 44, 32, 105, 110, 112, 117, 116, 32, 123, 32, // ea, input { 98, 111, 114, 100, 101, 114, 58, 32, 49, 112, 120, 32, // border: 1px 115, 111, 108, 105, 100, 32, 35, 99, 99, 99, 59, 32, // solid #ccc; 112, 97, 100, 100, 105, 110, 103, 58, 32, 48, 46, 51, // padding: 0.3 101, 109, 32, 48, 46, 53, 101, 109, 59, 125, 10, 116, // em 0.5em;}.t 101, 120, 116, 97, 114, 101, 97, 44, 32, 105, 110, 112, // extarea, inp 117, 116, 44, 32, 46, 97, 100, 100, 111, 110, 44, 32, // ut, .addon, 46, 108, 97, 98, 101, 108, 32, 123, 32, 102, 111, 110, // .label { fon 116, 45, 115, 105, 122, 101, 58, 32, 49, 52, 112, 120, // t-size: 14px 59, 32, 125, 10, 97, 44, 32, 97, 58, 118, 105, 115, // ; }.a, a:vis 105, 116, 101, 100, 44, 32, 97, 58, 97, 99, 116, 105, // ited, a:acti 118, 101, 32, 123, 32, 99, 111, 108, 111, 114, 58, 32, // ve { color: 35, 53, 53, 102, 59, 32, 125, 10, 98, 111, 100, 121, // #55f; }.body 32, 123, 98, 97, 99, 107, 103, 114, 111, 117, 110, 100, // {background 58, 32, 35, 53, 53, 53, 59, 32, 125, 10, 46, 97, // : #555; }..a 100, 100, 111, 110, 32, 123, 32, 99, 111, 108, 111, 114, // ddon { color 58, 32, 35, 57, 57, 57, 59, 32, 109, 105, 110, 45, // : #999; min- 119, 105, 100, 116, 104, 58, 32, 55, 46, 53, 101, 109, // width: 7.5em 59, 32, 32, 125, 10, 46, 108, 97, 98, 101, 108, 32, // ; }..label 123, 32, 99, 111, 108, 111, 114, 58, 32, 35, 57, 57, // { color: #99 57, 59, 32, 125, 10, 46, 98, 116, 110, 32, 123, 10, // 9; }..btn {. 32, 32, 98, 97, 99, 107, 103, 114, 111, 117, 110, 100, // background 58, 32, 35, 99, 99, 99, 59, 32, 98, 111, 114, 100, // : #ccc; bord 101, 114, 45, 114, 97, 100, 105, 117, 115, 58, 32, 48, // er-radius: 0 46, 51, 101, 109, 59, 32, 98, 111, 114, 100, 101, 114, // .3em; border 58, 32, 48, 59, 32, 99, 111, 108, 111, 114, 58, 32, // : 0; color: 35, 102, 102, 102, 59, 32, 99, 117, 114, 115, 111, 114, // #fff; cursor 58, 32, 112, 111, 105, 110, 116, 101, 114, 59, 10, 32, // : pointer;. 32, 100, 105, 115, 112, 108, 97, 121, 58, 32, 105, 110, // display: in 108, 105, 110, 101, 45, 98, 108, 111, 99, 107, 59, 32, // line-block; 112, 97, 100, 100, 105, 110, 103, 58, 32, 48, 46, 54, // padding: 0.6 101, 109, 32, 50, 101, 109, 59, 32, 102, 111, 110, 116, // em 2em; font 45, 119, 101, 105, 103, 104, 116, 58, 32, 98, 111, 108, // -weight: bol 100, 101, 114, 59, 10, 125, 10, 46, 98, 116, 110, 91, // der;.}..btn[ 100, 105, 115, 97, 98, 108, 101, 100, 93, 32, 123, 32, // disabled] { 111, 112, 97, 99, 105, 116, 121, 58, 32, 48, 46, 53, // opacity: 0.5 59, 32, 99, 117, 114, 115, 111, 114, 58, 32, 97, 117, // ; cursor: au 116, 111, 59, 125, 10, 46, 115, 109, 111, 111, 116, 104, // to;}..smooth 32, 123, 32, 116, 114, 97, 110, 115, 105, 116, 105, 111, // { transitio 110, 58, 32, 97, 108, 108, 32, 46, 50, 115, 59, 32, // n: all .2s; 125, 10, 46, 99, 111, 110, 116, 97, 105, 110, 101, 114, // }..container 32, 123, 32, 109, 97, 114, 103, 105, 110, 58, 32, 50, // { margin: 2 101, 109, 32, 97, 117, 116, 111, 59, 32, 109, 97, 120, // em auto; max 45, 119, 105, 100, 116, 104, 58, 32, 54, 50, 48, 112, // -width: 620p 120, 59, 32, 98, 97, 99, 107, 103, 114, 111, 117, 110, // x; backgroun 100, 58, 32, 119, 104, 105, 116, 101, 59, 32, 112, 97, // d: white; pa 100, 100, 105, 110, 103, 58, 32, 49, 101, 109, 59, 32, // dding: 1em; 98, 111, 114, 100, 101, 114, 45, 114, 97, 100, 105, 117, // border-radiu 115, 58, 32, 48, 46, 53, 101, 109, 59, 32, 125, 10, // s: 0.5em; }. 46, 100, 45, 102, 108, 101, 120, 32, 123, 32, 100, 105, // .d-flex { di 115, 112, 108, 97, 121, 58, 32, 102, 108, 101, 120, 59, // splay: flex; 32, 97, 108, 105, 103, 110, 45, 105, 116, 101, 109, 115, // align-items 58, 32, 99, 101, 110, 116, 101, 114, 59, 32, 125, 10, // : center; }. 46, 100, 45, 110, 111, 110, 101, 32, 123, 32, 100, 105, // .d-none { di 115, 112, 108, 97, 121, 58, 32, 110, 111, 110, 101, 59, // splay: none; 32, 125, 10, 46, 98, 111, 114, 100, 101, 114, 32, 123, // }..border { 32, 98, 111, 114, 100, 101, 114, 58, 32, 49, 112, 120, // border: 1px 32, 115, 111, 108, 105, 100, 32, 35, 100, 100, 100, 59, // solid #ddd; 32, 125, 10, 46, 114, 111, 117, 110, 100, 101, 100, 32, // }..rounded 123, 32, 98, 111, 114, 100, 101, 114, 45, 114, 97, 100, // { border-rad 105, 117, 115, 58, 32, 48, 46, 53, 101, 109, 59, 32, // ius: 0.5em; 125, 10, 46, 110, 111, 119, 114, 97, 112, 32, 123, 32, // }..nowrap { 119, 104, 105, 116, 101, 45, 115, 112, 97, 99, 101, 58, // white-space: 32, 110, 111, 119, 114, 97, 112, 59, 32, 125, 10, 46, // nowrap; }.. 109, 115, 103, 32, 123, 32, 98, 97, 99, 107, 103, 114, // msg { backgr 111, 117, 110, 100, 58, 32, 35, 100, 101, 102, 59, 32, // ound: #def; 98, 111, 114, 100, 101, 114, 45, 108, 101, 102, 116, 58, // border-left: 32, 53, 112, 120, 32, 115, 111, 108, 105, 100, 32, 35, // 5px solid # 53, 57, 100, 59, 32, 112, 97, 100, 100, 105, 110, 103, // 59d; padding 58, 32, 48, 46, 53, 101, 109, 59, 32, 102, 111, 110, // : 0.5em; fon 116, 45, 115, 105, 122, 101, 58, 32, 57, 48, 37, 59, // t-size: 90%; 32, 109, 97, 114, 103, 105, 110, 58, 32, 49, 101, 109, // margin: 1em 32, 48, 59, 32, 99, 111, 108, 111, 114, 58, 32, 35, // 0; color: # 55, 55, 55, 59, 32, 125, 10, 46, 105, 110, 112, 117, // 777; }..inpu 116, 32, 123, 32, 98, 97, 99, 107, 103, 114, 111, 117, // t { backgrou 110, 100, 58, 32, 35, 102, 101, 97, 59, 32, 112, 97, // nd: #fea; pa 100, 100, 105, 110, 103, 58, 32, 48, 46, 50, 101, 109, // dding: 0.2em 32, 49, 101, 109, 59, 32, 98, 111, 114, 100, 101, 114, // 1em; border 45, 114, 97, 100, 105, 117, 115, 58, 32, 48, 46, 52, // -radius: 0.4 101, 109, 59, 32, 125, 10, 46, 111, 117, 116, 112, 117, // em; }..outpu 116, 32, 123, 32, 98, 97, 99, 107, 103, 114, 111, 117, // t { backgrou 110, 100, 58, 32, 35, 97, 101, 102, 59, 32, 112, 97, // nd: #aef; pa 100, 100, 105, 110, 103, 58, 32, 48, 46, 50, 101, 109, // dding: 0.2em 32, 49, 101, 109, 59, 32, 98, 111, 114, 100, 101, 114, // 1em; border 45, 114, 97, 100, 105, 117, 115, 58, 32, 48, 46, 52, // -radius: 0.4 101, 109, 59, 32, 125, 10, 46, 112, 114, 45, 49, 32, // em; }..pr-1 123, 32, 112, 97, 100, 100, 105, 110, 103, 45, 114, 105, // { padding-ri 103, 104, 116, 58, 32, 48, 46, 53, 101, 109, 59, 32, // ght: 0.5em; 125, 10, 46, 109, 121, 45, 49, 32, 123, 32, 109, 97, // }..my-1 { ma 114, 103, 105, 110, 45, 116, 111, 112, 58, 32, 48, 46, // rgin-top: 0. 51, 101, 109, 59, 32, 109, 97, 114, 103, 105, 110, 45, // 3em; margin- 98, 111, 116, 116, 111, 109, 58, 32, 48, 46, 51, 101, // bottom: 0.3e 109, 59, 125, 10, 46, 109, 108, 45, 49, 32, 123, 32, // m;}..ml-1 { 109, 97, 114, 103, 105, 110, 45, 108, 101, 102, 116, 58, // margin-left: 32, 48, 46, 53, 101, 109, 59, 32, 125, 10, 10, 47, // 0.5em; }../ 42, 32, 71, 114, 105, 100, 32, 42, 47, 10, 46, 114, // * Grid */..r 111, 119, 32, 123, 32, 100, 105, 115, 112, 108, 97, 121, // ow { display 58, 32, 102, 108, 101, 120, 59, 32, 102, 108, 101, 120, // : flex; flex 45, 119, 114, 97, 112, 58, 32, 119, 114, 97, 112, 59, // -wrap: wrap; 32, 125, 10, 46, 99, 111, 108, 32, 123, 32, 109, 97, // }..col { ma 114, 103, 105, 110, 58, 32, 48, 59, 32, 112, 97, 100, // rgin: 0; pad 100, 105, 110, 103, 58, 32, 48, 59, 32, 111, 118, 101, // ding: 0; ove 114, 102, 108, 111, 119, 58, 32, 97, 117, 116, 111, 59, // rflow: auto; 32, 125, 10, 46, 99, 111, 108, 45, 49, 50, 32, 123, // }..col-12 { 32, 119, 105, 100, 116, 104, 58, 32, 49, 48, 48, 37, // width: 100% 59, 32, 125, 10, 46, 99, 111, 108, 45, 49, 49, 32, // ; }..col-11 123, 32, 119, 105, 100, 116, 104, 58, 32, 57, 49, 46, // { width: 91. 54, 54, 37, 59, 32, 125, 10, 46, 99, 111, 108, 45, // 66%; }..col- 49, 48, 32, 123, 32, 119, 105, 100, 116, 104, 58, 32, // 10 { width: 56, 51, 46, 51, 51, 37, 59, 32, 125, 10, 46, 99, // 83.33%; }..c 111, 108, 45, 57, 32, 123, 32, 119, 105, 100, 116, 104, // ol-9 { width 58, 32, 55, 53, 37, 59, 32, 125, 10, 46, 99, 111, // : 75%; }..co 108, 45, 56, 32, 123, 32, 119, 105, 100, 116, 104, 58, // l-8 { width: 32, 54, 54, 46, 54, 54, 37, 59, 32, 125, 10, 46, // 66.66%; }.. 99, 111, 108, 45, 55, 32, 123, 32, 119, 105, 100, 116, // col-7 { widt 104, 58, 32, 53, 56, 46, 51, 51, 37, 59, 32, 125, // h: 58.33%; } 10, 46, 99, 111, 108, 45, 54, 32, 123, 32, 119, 105, // ..col-6 { wi 100, 116, 104, 58, 32, 53, 48, 37, 59, 32, 125, 10, // dth: 50%; }. 46, 99, 111, 108, 45, 53, 32, 123, 32, 119, 105, 100, // .col-5 { wid 116, 104, 58, 32, 52, 49, 46, 54, 54, 37, 59, 32, // th: 41.66%; 125, 10, 46, 99, 111, 108, 45, 52, 32, 123, 32, 119, // }..col-4 { w 105, 100, 116, 104, 58, 32, 51, 51, 46, 51, 51, 37, // idth: 33.33% 59, 32, 125, 10, 46, 99, 111, 108, 45, 51, 32, 123, // ; }..col-3 { 32, 119, 105, 100, 116, 104, 58, 32, 50, 53, 37, 59, // width: 25%; 32, 125, 10, 46, 99, 111, 108, 45, 50, 32, 123, 32, // }..col-2 { 119, 105, 100, 116, 104, 58, 32, 49, 54, 46, 54, 54, // width: 16.66 37, 59, 32, 125, 10, 46, 99, 111, 108, 45, 49, 32, // %; }..col-1 123, 32, 119, 105, 100, 116, 104, 58, 32, 56, 46, 51, // { width: 8.3 51, 37, 59, 32, 125, 10, 64, 109, 101, 100, 105, 97, // 3%; }.@media 32, 40, 109, 105, 110, 45, 119, 105, 100, 116, 104, 58, // (min-width: 32, 49, 51, 49, 48, 112, 120, 41, 32, 123, 32, 46, // 1310px) { . 99, 111, 110, 116, 97, 105, 110, 101, 114, 32, 123, 32, // container { 109, 97, 114, 103, 105, 110, 58, 32, 97, 117, 116, 111, // margin: auto 59, 32, 119, 105, 100, 116, 104, 58, 32, 49, 50, 55, // ; width: 127 48, 112, 120, 59, 32, 125, 32, 125, 10, 64, 109, 101, // 0px; } }.@me 100, 105, 97, 32, 40, 109, 97, 120, 45, 119, 105, 100, // dia (max-wid 116, 104, 58, 32, 57, 50, 48, 112, 120, 41, 32, 123, // th: 920px) { 32, 46, 114, 111, 119, 32, 46, 99, 111, 108, 32, 123, // .row .col { 32, 119, 105, 100, 116, 104, 58, 32, 49, 48, 48, 37, // width: 100% 59, 32, 125, 32, 125, 10, 0 // ; } }. }; static const struct packed_file { const char *name; const unsigned char *data; size_t size; time_t mtime; } packed_files[] = { {"/web_root/index.html", v1, sizeof(v1), 1659483223}, {"/web_root/main.js", v2, sizeof(v2), 1659483223}, {"/web_root/preact.min.js", v3, sizeof(v3), 1659483223}, {"/web_root/style.css", v4, sizeof(v4), 1659483223}, {NULL, NULL, 0, 0} }; static int scmp(const char *a, const char *b) { while (*a && (*a == *b)) a++, b++; return *(const unsigned char *) a - *(const unsigned char *) b; } const char *mg_unlist(size_t no); const char *mg_unlist(size_t no) { return packed_files[no].name; } const char *mg_unpack(const char *path, size_t *size, time_t *mtime); const char *mg_unpack(const char *name, size_t *size, time_t *mtime) { const struct packed_file *p; for (p = packed_files; p->name != NULL; p++) { if (scmp(p->name, name) != 0) continue; if (size != NULL) *size = p->size - 1; if (mtime != NULL) *mtime = p->mtime; return (const char *) p->data; } return NULL; }