Compare commits

...

3 Commits

Author SHA1 Message Date
Mark van Renswoude 3af8ec5925 Merge branch 'release/2.1'
# Conflicts:
#	src/assets/version.h
#	src/main.cpp
#	web/dist/bundle.js
2018-04-29 11:06:17 +02:00
Mark van Renswoude d0b62d38b0 Added automatic retry to frontend
Better support for iOS language detection?
2018-03-19 07:45:54 +01:00
Mark van Renswoude fb00c0baa2 Merge branch 'release/2.0' 2018-02-17 23:14:55 +01:00
9 changed files with 2359 additions and 2295 deletions

View File

@ -1,3 +1,16 @@
<?php
/*
* Stairs lighting
* Copyright 2017 (c) Mark van Renswoude
*
* https://git.x2software.net/pub/Stairs
*
* Host this file somewhere on PHP enabled non-secure HTTP webhost
* and modify the config.h to proxy Maps API requests. Saves a ton
* of memory on the ESP8266.
*
* If you care about your API key being sent across plain HTTP,
* host this or a similar proxy on your LAN, perhaps on a Raspberry Pi.
*/
echo file_get_contents('https://maps.googleapis.com/maps/api/timezone/json?' . $_SERVER['QUERY_STRING']);
?>

View File

@ -4,181 +4,181 @@
#include <pgmspace.h>
const uint8_t EmbeddedIndex[] PROGMEM = {
0x1f,0x8b,0x08,0x00,0x00,0x00,0x00,0x00,0x00,0x0a,0xed,0x5b,0x6b,0x57,0xe3,0x38,0x12,0xfd,0x2b,0xee,
0xcc,0xee,0x40,0x6f,0x0f,0x8f,0x00,0xcd,0x34,0x0c,0xb0,0x13,0xf2,0x80,0x00,0x09,0x21,0x09,0xcf,0x2f,
0x7b,0x14,0x5b,0x89,0x05,0x8e,0x6d,0x24,0x3b,0x21,0x3d,0xd3,0xff,0x7d,0xf5,0xf0,0x43,0xb6,0x65,0xc7,
0x61,0x7b,0x4f,0xcf,0x9e,0xb3,0xfd,0xa1,0x83,0x55,0xa5,0xab,0xab,0x52,0xa9,0x54,0x92,0xe5,0xa3,0x0f,
0x8d,0xeb,0xfa,0xf0,0xb1,0xd7,0xd4,0x4c,0x6f,0x6a,0x9d,0x1c,0x05,0xff,0x43,0x60,0x9c,0x1c,0x4d,0xa1,
0x07,0x34,0xdd,0x04,0x98,0x40,0xef,0xb8,0x72,0x3b,0x6c,0x6d,0x7c,0xa9,0x9c,0x1c,0x79,0xc8,0xb3,0xe0,
0xc9,0xd1,0x56,0xf0,0xcb,0x95,0x6c,0x30,0x85,0xc7,0x15,0xcf,0x84,0x53,0xb8,0xa1,0x3b,0x96,0x83,0x2b,
0x9a,0xee,0xd8,0x1e,0xb4,0x69,0xbd,0x9f,0xb6,0xf9,0xbf,0x4a,0x42,0x75,0x86,0xe0,0xdc,0x75,0xb0,0x27,
0xe9,0xcd,0x91,0xe1,0x99,0xc7,0x06,0x9c,0x21,0x1d,0x6e,0xf0,0x87,0x5f,0x90,0x8d,0x3c,0x04,0xac,0x0d,
0xa2,0x03,0x0b,0x1e,0x57,0x29,0x84,0x85,0xec,0x17,0x0d,0x43,0xeb,0xb8,0x42,0xbc,0x85,0x05,0x89,0x09,
0x21,0xc5,0x30,0x31,0x1c,0x1f,0x57,0x46,0xbe,0x6d,0x58,0x70,0x53,0x27,0x84,0x2a,0x12,0x1d,0x23,0xd7,
0xd3,0x08,0xd6,0x23,0xc1,0x33,0x2b,0xdf,0x12,0x02,0xfa,0x87,0xe8,0xe3,0xc8,0x31,0x16,0x27,0x47,0x06,
0x9a,0x69,0xc8,0x38,0xae,0x00,0xd7,0xad,0x88,0xa7,0xd9,0x86,0x6e,0x39,0xe0,0x45,0x3c,0xe8,0x16,0x20,
0xe4,0xb8,0x62,0x3b,0x1e,0x1a,0x23,0x1d,0x78,0xc8,0xb1,0xeb,0x94,0x36,0x40,0x36,0xc4,0x95,0x5c,0x95,
0x8a,0x76,0x18,0x94,0xfe,0xa1,0x41,0x8c,0x1d,0x7c,0xa8,0xc9,0x62,0xed,0xc3,0xb1,0x66,0xfb,0x96,0xa5,
0xfd,0xfc,0x73,0xa2,0x7c,0x93,0xeb,0x6a,0xdf,0x2a,0x94,0x03,0x1a,0x27,0x21,0xc3,0x3a,0x15,0xed,0x77,
0xdd,0x42,0xfa,0xcb,0xa6,0x8b,0xe1,0x8c,0x5b,0xcf,0x44,0x06,0xec,0xca,0x8d,0x53,0x13,0xb8,0xc0,0x0e,
0x79,0x4d,0x21,0x21,0x60,0x02,0x2b,0x27,0x7f,0xfc,0x91,0x6c,0x2c,0x10,0x68,0xdf,0xbe,0x51,0xd3,0xd0,
0x0a,0xd4,0x30,0xb4,0x3b,0xe1,0xff,0xa1,0x5d,0x74,0x75,0x6f,0x99,0x09,0x79,0x19,0x9a,0x4e,0x84,0xa9,
0x0d,0xe0,0x81,0x43,0x34,0xa5,0x88,0x5b,0xae,0x3d,0xf9,0x6d,0x04,0x08,0xdc,0xdf,0xfb,0x05,0xdd,0x9d,
0x5e,0xf7,0xe7,0xdb,0x97,0x67,0x13,0xa7,0x46,0xff,0x75,0x07,0xb7,0x66,0xf3,0x76,0x42,0xff,0x6a,0xb0,
0xc7,0xda,0xbc,0x5e,0x7b,0xa4,0x3f,0xa7,0x0f,0xb5,0xd9,0xf4,0x9c,0x15,0x9c,0x3d,0xf4,0x5b,0xf7,0xe7,
0xfd,0xe1,0x68,0xe7,0x69,0xdb,0xd8,0x69,0x2d,0x9e,0x6e,0x4e,0x4f,0x9f,0xce,0x0e,0xd0,0xd3,0xe0,0xf4,
0x62,0x74,0xdf,0xb2,0x9f,0xee,0x2e,0xac,0xc7,0xfb,0xfe,0x67,0x5d,0xb7,0xac,0x1e,0xab,0xf0,0x70,0x7a,
0xd1,0x6f,0xb6,0x6e,0x61,0x17,0x93,0x7b,0xa3,0xd9,0x9d,0x3c,0xd7,0x6e,0xae,0xf4,0xc7,0x53,0xbd,0xd6,
0xd3,0x6b,0x75,0xe3,0xa6,0xbb,0x57,0xeb,0xee,0x74,0xea,0x7b,0x93,0x3e,0x79,0xbc,0x38,0x68,0x76,0x8d,
0x5a,0xef,0xb1,0xd6,0x00,0xb5,0x06,0x74,0x8d,0x5b,0xb3,0x53,0x7d,0x6d,0x3d,0xfb,0x78,0xe2,0x1e,0x0c,
0xf4,0xce,0xf9,0xc4,0xf8,0xb5,0xba,0x7b,0xb7,0x3b,0xf6,0x6e,0xdd,0xcf,0xf0,0x7c,0xd2,0x69,0x55,0x31,
0x3e,0x6b,0x02,0x7f,0xff,0xee,0xbc,0xb1,0x73,0xde,0x19,0x9d,0x7f,0x7e,0xbd,0xb8,0xbe,0x3a,0xc7,0xe0,
0xd3,0xf8,0xe5,0xeb,0x88,0x3c,0xf6,0x89,0xd9,0xf9,0xe2,0x5e,0x0d,0x27,0xb7,0xed,0xc9,0x60,0x32,0xf3,
0x3b,0x1d,0xe7,0x71,0xfe,0x09,0x75,0x1e,0x87,0x78,0xff,0xc6,0xec,0x3e,0x76,0x70,0x17,0x75,0x17,0xf3,
0xf6,0x95,0xb5,0xb8,0xbb,0x34,0xf4,0xc5,0xa2,0x47,0xa6,0x7a,0x9f,0x2c,0x6e,0x3f,0x6f,0xbf,0x4c,0xce,
0xbd,0x9b,0x1b,0x7f,0xa7,0x66,0x74,0x2f,0x5a,0x6e,0xe3,0xa5,0x76,0xb9,0xd7,0xde,0xba,0x6a,0xdf,0x77,
0x46,0x3b,0x35,0xd2,0x3e,0xd5,0x5f,0xb7,0x51,0xff,0x0c,0xde,0x9c,0xf5,0x86,0x4f,0xe3,0xbb,0xfd,0x9b,
0xe6,0xf6,0xa7,0x49,0xe3,0xac,0xb5,0x83,0x1d,0x72,0xd6,0x9c,0x74,0x6e,0xde,0xda,0x35,0xd3,0x7e,0xaa,
0xa1,0x5e,0xf7,0xcb,0x9e,0xef,0xf6,0xc7,0xdb,0x5b,0xd7,0x96,0x4b,0xae,0xea,0xa7,0xee,0xee,0xe2,0x75,
0x5b,0x37,0x27,0x5e,0xfd,0xf6,0xf6,0x09,0xf7,0xe7,0xfb,0x37,0x8d,0xeb,0xdd,0xe6,0xfd,0xf9,0xe0,0xb5,
0x75,0xe0,0x01,0xfc,0x04,0x06,0x97,0x17,0x0f,0xf0,0xa2,0x61,0x8c,0x6e,0x2c,0xd2,0xdc,0xbe,0x6c,0xec,
0x5f,0x74,0xb7,0x2e,0x9d,0x3e,0x39,0x33,0xdf,0x1e,0x2e,0xeb,0x56,0xfd,0xf2,0xfc,0xa2,0x3d,0x7e,0x19,
0x9a,0xf3,0xce,0xbd,0x59,0xdb,0x37,0x4e,0x07,0x8e,0xd5,0x47,0xcf,0x2f,0x17,0xd7,0x46,0xf5,0xe9,0x76,
0x76,0xb0,0xb8,0x39,0xb8,0x76,0x5f,0x47,0xe7,0x2e,0x02,0xb7,0x77,0xa0,0x39,0x7a,0x6a,0xfe,0xea,0xb5,
0xdb,0xcf,0xce,0xe9,0xe5,0xc3,0x82,0x38,0xa4,0xaa,0xef,0xdd,0x7d,0x81,0xa3,0xab,0xa6,0x31,0x9a,0xed,
0x8c,0xf4,0x0e,0x69,0xfe,0x3a,0x79,0xf6,0x4f,0x8d,0xd9,0x43,0x7f,0x70,0xb1,0xd7,0xfa,0xb4,0x35,0x7f,
0x6d,0x3f,0x3c,0xe0,0xf6,0xd9,0x7c,0xfa,0xb0,0xfb,0x75,0x0e,0xf4,0xab,0x86,0x09,0xbb,0xd7,0x07,0xd5,
0xeb,0xe7,0xab,0x9b,0x4b,0xa3,0xba,0x77,0xd7,0x69,0xd4,0xed,0xc7,0x49,0xfd,0xed,0xee,0xb9,0xbd,0xdb,
0x1d,0xc2,0xea,0x74,0xe0,0xf4,0x1a,0x7b,0x07,0x6f,0x7b,0x03,0x4c,0x9d,0xe3,0xe0,0xb5,0x67,0xef,0x41,
0x67,0x56,0xef,0x70,0xef,0x69,0x5a,0xad,0xe1,0xcb,0xc0,0xbf,0x99,0xd6,0xeb,0xd4,0x13,0xcd,0x2a,0x73,
0xf1,0xbf,0x79,0xeb,0x6b,0x3c,0x3e,0xad,0x7d,0xe4,0x9e,0x4d,0x4b,0x8f,0xcc,0x1d,0x26,0x21,0x1e,0xf0,
0x7c,0xb2,0x49,0x16,0xc4,0x83,0xd3,0x76,0x83,0x4e,0xa8,0x60,0x16,0xfe,0x93,0x57,0x0a,0xcb,0x69,0xbd,
0x4f,0xda,0xda,0xa1,0xb6,0x46,0x7f,0xd2,0x55,0x68,0xe9,0x9a,0x40,0xdd,0x49,0xcc,0x86,0x39,0x9d,0x55,
0x42,0x37,0x39,0x4b,0xe8,0xe4,0xb1,0xa1,0x1e,0x4c,0x4a,0xa9,0x1c,0xd9,0x06,0x9b,0x85,0x2c,0x58,0x1e,
0xb2,0x79,0xb3,0x21,0x2a,0x0b,0xa0,0x81,0x68,0x14,0xb8,0x9b,0xd0,0x06,0x23,0x0b,0x1a,0x94,0xe0,0x5a,
0x80,0x04,0x8d,0x35,0x46,0xc2,0x40,0x24,0x2e,0xa8,0x04,0x53,0x36,0xe8,0xbc,0x0c,0xa1,0xeb,0x74,0x8e,
0xbb,0x0e,0xb2,0xbd,0xcd,0xd8,0x26,0x1a,0x55,0xcc,0x6b,0x27,0x59,0x8e,0x5c,0xda,0x58,0x01,0x26,0xa5,
0xc1,0x2b,0x06,0xa6,0x8e,0xe2,0xc6,0x7b,0x7b,0x3f,0x81,0xde,0x3d,0x6a,0xf1,0x96,0x68,0x25,0xd1,0xe0,
0xfa,0xc7,0xfc,0xfe,0x11,0xa1,0x38,0x75,0x0c,0x98,0xea,0x9f,0x0a,0x69,0x08,0xdf,0xbc,0xf5,0x77,0x33,
0x4d,0x10,0x95,0xed,0x9f,0xa2,0x27,0x56,0xb1,0x21,0x9a,0x0a,0x32,0x82,0x4b,0x23,0x2a,0x8c,0x9b,0x4f,
0x07,0x5b,0x11,0xf2,0xe9,0xca,0x63,0x20,0x7b,0x52,0x09,0x19,0x84,0xcf,0x21,0x7c,0xf0,0x1c,0x75,0x34,
0x78,0x6e,0x87,0x44,0x93,0xdd,0x13,0x98,0x1f,0x02,0x25,0xb6,0xdc,0xd0,0xe5,0x14,0x8d,0xb0,0x58,0x51,
0x8e,0x83,0x09,0x90,0xec,0xf3,0x1c,0x60,0x9b,0x33,0x10,0x95,0x4d,0x40,0xfa,0x90,0x66,0x01,0x4d,0xb6,
0x34,0x51,0x4d,0x37,0x64,0xc2,0xd7,0xaa,0x4d,0x1c,0xc9,0x02,0x27,0x70,0xa9,0x4a,0x08,0xc5,0x85,0x7d,
0x08,0x08,0xb3,0x6b,0xb6,0x9a,0x90,0x6c,0x4a,0x13,0x4d,0x2a,0x96,0xd0,0x04,0x11,0x12,0x8d,0xb9,0xfe,
0x32,0xc4,0x40,0x87,0x29,0xc8,0x58,0x10,0x33,0x89,0x6d,0xa0,0xa8,0x7d,0x04,0x42,0x9e,0x23,0xdf,0xf3,
0xa8,0x3d,0xc4,0xcf,0x86,0x8b,0xe9,0x2a,0x86,0x17,0x61,0x6e,0xb1,0x05,0x5c,0xb4,0xc5,0xeb,0x79,0xac,
0xde,0x16,0x1d,0xce,0xdc,0x96,0x1b,0xce,0xdc,0x66,0xc6,0x0e,0x18,0x80,0x13,0x2d,0xdd,0x48,0xb8,0x7c,
0x53,0x1f,0x82,0x16,0xf4,0xe0,0x60,0x79,0x77,0x1a,0x5c,0x31,0x82,0xcc,0x38,0x4e,0x98,0x7f,0x80,0x19,
0x9a,0x88,0x81,0xf5,0xc0,0x88,0x64,0xfb,0x27,0x27,0x25,0x6b,0x80,0x7a,0xfb,0x0c,0xd2,0x30,0x27,0xfe,
0x18,0x82,0x11,0x75,0x07,0x6d,0x4d,0x98,0x69,0x8d,0xa5,0x20,0x21,0x4f,0x49,0x21,0x92,0x47,0x5c,0x03,
0xb3,0xd2,0x06,0x87,0x52,0xcc,0x05,0xef,0x6a,0xdb,0xc3,0x68,0x32,0x81,0xb8,0xa0,0xf5,0x48,0x23,0x6a,
0x3f,0x2c,0xf9,0x3e,0x0c,0xe2,0x30,0x90,0xcf,0x41,0xd2,0x89,0x58,0xc4,0x65,0xdf,0x87,0x87,0x58,0x6f,
0x0a,0x46,0x41,0xc8,0xe3,0x51,0xe0,0xcf,0x8a,0xb6,0xd3,0x91,0x40,0x39,0xd8,0x6c,0xe9,0xdc,0x4d,0x0f,
0xa8,0xbc,0x82,0xee,0x72,0x88,0x93,0x23,0x4c,0xa3,0x88,0xa3,0x1d,0x72,0xd9,0x71,0x45,0xd2,0x06,0x96,
0x35,0xf0,0xa0,0x4b,0x86,0xd8,0xa7,0x95,0x58,0xe4,0x60,0x21,0x99,0x66,0xea,0xa1,0x80,0x76,0x9a,0xe5,
0x92,0x1e,0x95,0xb3,0x70,0xc9,0x81,0x24,0x76,0x25,0xa0,0x5b,0xc0,0x22,0x85,0xd8,0x63,0xa6,0xa0,0x02,
0x0f,0xcd,0x4f,0x2c,0x9a,0x27,0xe3,0xd4,0x02,0x4d,0xed,0xe6,0x86,0x91,0x2e,0x02,0x4c,0xe6,0xcf,0x33,
0x60,0xf9,0x62,0x72,0x76,0x80,0x67,0x6e,0x8e,0x2d,0xc7,0xc1,0xeb,0xa1,0xee,0x1d,0x13,0x6a,0x5b,0xda,
0xce,0xe7,0xcf,0xda,0x3f,0xb4,0xea,0xf6,0x36,0x33,0xd9,0xdf,0xc3,0x7c,0x3a,0xd3,0xba,0x9c,0x4c,0x23,
0xdb,0xf5,0x3d,0xcd,0x5b,0xb8,0xb4,0xc3,0x18,0xd8,0x34,0x43,0xd7,0xa6,0xc8,0x3e,0xae,0x6c,0xd3,0x5f,
0xf0,0x76,0x5c,0xa1,0x90,0x95,0x64,0xed,0xa8,0xf3,0x9b,0xb6,0x3f,0x1d,0x41,0x1c,0x53,0xbe,0x13,0x1c,
0xf3,0x42,0x83,0xdc,0xcb,0x0f,0xb1,0xdd,0x66,0x1b,0x63,0x87,0x82,0xac,0x33,0xf1,0x2f,0x1a,0x5d,0xeb,
0xe0,0xdb,0x47,0xfa,0xa3,0x91,0xb2,0x56,0x60,0x8a,0x9b,0xb3,0x1f,0x6b,0x82,0x98,0x43,0xaa,0xff,0xea,
0xf5,0x35,0x27,0xe4,0xd0,0xba,0xd4,0x16,0x53,0xed,0x77,0xe2,0x8f,0xa6,0xc8,0x8b,0x37,0x57,0x74,0x5b,
0x68,0x2d,0xd8,0xc2,0x3d,0x0c,0x54,0x13,0xb3,0x25,0x0e,0x3f,0x4c,0x23,0x35,0x67,0x74,0x13,0xea,0x2f,
0x11,0xdf,0x91,0xe3,0x58,0x10,0xd8,0x6c,0x12,0x48,0x75,0xc2,0xd4,0xab,0x92,0xf0,0xfd,0x84,0x4a,0xd3,
0x0e,0x72,0x2c,0xd6,0x3f,0x8e,0x29,0xf7,0x47,0x8d,0x56,0xb4,0xa0,0x7f,0xc8,0x26,0x50,0x51,0x02,0xf8,
0xe7,0x9f,0x9a,0x42,0x2a,0xa6,0x22,0xdb,0x80,0xee,0x2a,0x02,0x2f,0x6d,0xb7,0x4d,0xf7,0xf1,0xd8,0x86,
0x9e,0x9c,0x07,0x5a,0x60,0x04,0x2d,0x8d,0x3b,0x18,0x37,0x0e,0x1d,0x5f,0x82,0x18,0x1c,0x33,0xa6,0x1a,
0x26,0xa9,0x13,0x80,0x71,0x9c,0xa4,0xab,0x88,0xa1,0xaf,0xf0,0xed,0xa9,0x02,0x3b,0xe3,0x22,0x49,0x1b,
0x79,0x29,0x26,0x47,0xe6,0xde,0x49,0x1f,0x4e,0xa0,0x45,0xe8,0xb0,0xed,0xe5,0xdb,0x36,0x7a,0xb2,0xa0,
0x3d,0xf1,0xcc,0xe8,0xb0,0x40,0xcc,0xa1,0x40,0x2a,0x4f,0x23,0x75,0xf5,0xc8,0xa1,0xe9,0xf4,0x80,0x96,
0xbc,0x1a,0x08,0xd7,0x3c,0x0c,0xeb,0x45,0x83,0xf2,0x2d,0x39,0x9c,0xbc,0xde,0x46,0xb4,0xff,0x2e,0xf6,
0xb2,0x12,0xfe,0x15,0x38,0xb6,0xca,0xcd,0xe4,0x00,0x00,0xf8,0xfa,0x26,0xd2,0x0a,0x91,0x18,0xfd,0x94,
0x3d,0x8a,0x10,0x39,0x8d,0x34,0x5d,0xd6,0x85,0x39,0xd4,0xe3,0x9d,0x49,0x6c,0x32,0x21,0x43,0xa7,0x9d,
0xc1,0xf9,0x71,0x4d,0x98,0x82,0x9d,0xe3,0xb0,0x68,0x45,0xd1,0x74,0x2f,0x6f,0xf0,0x43,0xfb,0x0f,0xa9,
0x07,0x55,0xe2,0xf4,0xde,0xa2,0x91,0x88,0xd6,0x75,0x5c,0x9e,0x37,0xf1,0x30,0xc2,0xc2,0x8f,0x92,0x6e,
0x0b,0xbd,0x41,0x43,0xf2,0x4c,0x51,0x29,0x5d,0xb9,0xaa,0xae,0x3c,0xf0,0x6d,0x8c,0x48,0x71,0xd5,0x9d,
0xdc,0xaa,0x24,0x9a,0x5b,0x61,0xcd,0x2d,0xd1,0xdd,0xa5,0xdd,0x1e,0x87,0xa4,0xd3,0x9d,0x4e,0xfa,0xb8,
0x6c,0x1e,0x16,0x19,0xb7,0x25,0xa3,0x6c,0x44,0x93,0x98,0x79,0x75,0x04,0xc8,0x16,0xde,0x80,0xb8,0x17,
0x4e,0x69,0xb6,0xd5,0x41,0xc4,0xb5,0x00,0x0f,0x99,0xeb,0xac,0xfc,0x17,0x8d,0xaf,0xcc,0xef,0x63,0x8f,
0xa1,0x05,0x78,0xbc,0x56,0x77,0x80,0xce,0x59,0x98,0xc7,0x53,0xae,0x5a,0x9a,0x2a,0x4b,0x50,0x72,0x98,
0xca,0x01,0x15,0xc2,0x17,0x03,0x2c,0xc8,0xf2,0xd9,0x37,0x75,0x6c,0xaa,0x58,0x30,0xf9,0x3a,0x5c,0x21,
0x31,0xe9,0x96,0x40,0x7a,0x3e,0x24,0xc5,0x98,0x43,0xa1,0xb1,0x0a,0xe8,0x1c,0x1a,0xf6,0x32,0xd8,0xfb,
0x50,0x67,0x25,0xb6,0xa6,0x8f,0x97,0xd1,0x0d,0x54,0x56,0x81,0x1d,0x63,0x54,0x0c,0xda,0xe2,0x0a,0xab,
0x40,0x12,0xba,0xc6,0xe1,0x62,0xd0,0x41,0xa0,0xb2,0x12,0xac,0xbf,0xc4,0x03,0x06,0x7e,0xc6,0x03,0xd4,
0xf9,0x5b,0x89,0x7c,0x2c,0x6c,0x74,0x44,0x7f,0x4d,0x8f,0x8e,0x16,0xf9,0x71,0x79,0x59,0x96,0x4b,0x41,
0x7e,0x26,0x67,0x69,0x6c,0x52,0xc7,0x67,0xea,0xec,0xd8,0x45,0x1d,0x16,0xbb,0x4e,0x83,0xca,0x72,0x8e,
0x9e,0xc4,0x5e,0x8b,0x35,0x19,0xec,0xed,0x0f,0xc3,0xb3,0x2a,0xca,0x98,0x6e,0x94,0x59,0x3a,0x94,0x5e,
0xbc,0x80,0x61,0x48,0x2b,0x97,0xba,0xd1,0x9a,0x11,0xee,0xed,0x05,0x6e,0xee,0xd2,0x14,0x13,0x90,0x8d,
0x29,0xb2,0xcb,0x8a,0x8a,0x4d,0x18,0xa0,0xc4,0x73,0x70,0x26,0xc9,0xb3,0xcf,0x53,0x0e,0x35,0xe0,0xe5,
0xb4,0xf1,0xc3,0xb4,0x64,0xed,0x63,0x6c,0x59,0x96,0xc4,0x16,0xa6,0xb2,0x1d,0x87,0x67,0x3e,0x85,0xc9,
0xec,0x54,0xe8,0xac,0x98,0xce,0x8a,0x5a,0x4b,0x12,0x0e,0xa1,0x54,0x32,0xa5,0x4d,0x21,0x26,0x72,0xca,
0x04,0x50,0xc3,0xc7,0xd4,0x36,0x85,0x83,0x57,0xac,0x9f,0xcc,0x35,0x93,0x8b,0x52,0x2e,0xa1,0x6c,0xab,
0x3c,0x23,0x5d,0xc6,0x6c,0x79,0xb2,0x51,0x8c,0xd0,0xa5,0xc3,0x89,0x57,0x4d,0x41,0x8a,0x21,0x6b,0xd6,
0x9c,0x2e,0x67,0xab,0xe6,0x26,0xc5,0x98,0xd7,0xb6,0xb5,0xc8,0xcb,0x59,0xb8,0xaf,0xae,0xe6,0x4f,0x02,
0xbf,0xc1,0x43,0x69,0x3c,0x79,0xca,0x8e,0x0c,0x4b,0x69,0x76,0xca,0xb8,0x64,0xd4,0x8c,0x22,0x20,0x67,
0xbc,0x6f,0xd9,0x9e,0x46,0xa5,0x55,0x6e,0x57,0xa3,0xc4,0xcf,0xdf,0xd7,0x04,0xbd,0xcf,0xec,0x6c,0x32,
0x8c,0x69,0xc6,0x4d,0x2d,0x98,0x43,0x94,0x0b,0x57,0xe1,0x27,0xd0,0x96,0xd2,0x32,0x44,0xa3,0x25,0xf6,
0x59,0x51,0x3f,0xde,0xbb,0xd3,0x4a,0x01,0xfc,0xa5,0xf6,0x5a,0x53,0x39,0xf2,0x7e,0xc7,0xdd,0x56,0x22,
0xa2,0xe7,0xee,0xb7,0xa2,0x11,0xfb,0x8e,0x3b,0x2e,0xe1,0x5e,0x87,0x7c,0x58,0xd6,0x44,0x03,0xec,0x2c,
0x9f,0x53,0x60,0xef,0xd0,0xfe,0xe5,0x22,0x5b,0x71,0x54,0x2b,0x34,0x7b,0x54,0xb6,0xd4,0xd7,0xf8,0xc9,
0x5e,0x3e,0x74,0x6e,0xd2,0x41,0xa5,0x65,0xf8,0x19,0x08,0xa7,0x8f,0x72,0xd3,0x06,0x8b,0x34,0x54,0x2b,
0x44,0x3e,0x3d,0x09,0x39,0x97,0x64,0xa4,0x93,0x59,0x13,0x72,0x03,0x78,0x44,0xa7,0x2b,0xfd,0x0d,0xac,
0xf7,0x45,0xee,0x08,0x60,0xe8,0xb8,0xec,0xc5,0x45,0x21,0x8a,0xe2,0xe4,0x27,0x85,0x72,0xea,0xd0,0x64,
0x64,0x7a,0xeb,0x16,0x04,0xfd,0xff,0xe7,0xb3,0x39,0xf9,0xac,0x30,0xe5,0x7f,0x23,0xa3,0x4d,0x44,0x87,
0xbc,0x86,0xff,0x37,0xb2,0xda,0xe2,0xa3,0xdc,0xc4,0x7b,0x99,0xa2,0x0c,0xb8,0x2e,0xbf,0xeb,0x8d,0xb3,
0x5f,0xf9,0x1d,0x4e,0xb9,0xcc,0x57,0xaa,0x21,0xbd,0x14,0x4f,0x46,0x7f,0xb5,0x4e,0x6e,0xd8,0x37,0x19,
0x80,0x82,0x91,0x54,0xf7,0x9c,0xd7,0x97,0x2e,0xed,0x2c,0x67,0x17,0x9c,0xe3,0xe6,0x32,0x93,0x5e,0xa3,
0xaf,0xcc,0x4c,0xaa,0x9b,0x61,0x26,0xa5,0x1f,0x84,0x20,0x43,0x59,0x9d,0x96,0xe7,0x2f,0x03,0x1e,0x7c,
0xf3,0x44,0xc2,0xc1,0xeb,0xc7,0x19,0x79,0x0a,0x21,0xe1,0x7a,0x1f,0x14,0x3d,0x4f,0x70,0x71,0x69,0x87,
0xe6,0x0e,0x56,0xf2,0x09,0x65,0xf9,0x9c,0xa2,0xda,0x9c,0x57,0xfc,0xa4,0xe2,0x16,0x4b,0x97,0xf2,0x5b,
0x3e,0x8a,0x86,0xa9,0xbb,0x4b,0x81,0xf2,0x86,0x98,0x55,0x66,0x6f,0xcf,0x82,0xd1,0x64,0xd3,0x63,0x83,
0x45,0x48,0xec,0x58,0x2b,0x0e,0x38,0x43,0xca,0x8c,0xb4,0x1c,0x7d,0xfd,0x91,0x08,0xfd,0x24,0x69,0x75,
0xe4,0xaa,0xd0,0x90,0x4b,0x63,0x14,0xa6,0xbe,0x5d,0xc6,0x09,0x90,0xab,0x36,0x33,0x5a,0x6a,0x17,0xf6,
0x62,0x23,0x6d,0xca,0xa4,0x7f,0xfa,0x23,0x1b,0x7a,0x53,0x40,0x5e,0x94,0x5e,0x1a,0x49,0x4b,0xf9,0x6a,
0x8c,0xa5,0xf6,0x58,0x49,0xfe,0x1f,0xd2,0x9e,0x00,0x0f,0xce,0xa5,0x8c,0x5e,0x52,0x0e,0x44,0x65,0x08,
0x87,0x28,0x4a,0xb6,0x91,0xf0,0x3d,0x54,0x33,0x1b,0x27,0xd3,0x21,0x1e,0xbb,0x06,0xaa,0x62,0x1c,0xca,
0x96,0x51,0x3e,0x74,0x2d,0xa0,0x43,0xd3,0xb1,0x0c,0xb6,0x2e,0xe7,0x80,0xf4,0x62,0x1d,0xe6,0xf7,0xac,
0x9b,0x51,0xdb,0xca,0x7e,0xc6,0xd2,0xa5,0x73,0xf5,0x7f,0x63,0x41,0x8c,0x2e,0x09,0xe4,0x2c,0x86,0xbe,
0xcb,0x6e,0xaa,0xb4,0x10,0x9e,0xce,0x01,0x86,0xc9,0x4b,0x00,0xe2,0x3e,0xc1,0x38,0x90,0xa5,0x4f,0x82,
0xe4,0xae,0x8e,0x91,0x05,0x85,0x79,0x43,0xed,0x16,0x2b,0xf9,0x0b,0x18,0x29,0xb6,0x8b,0xe8,0x69,0x0f,
0x3b,0x13,0x16,0x69,0xf8,0xbd,0xbf,0xe0,0xb6,0x00,0xed,0x6f,0x4a,0xc8,0x53,0x4a,0xd9,0xc8,0x19,0xab,
0x84,0x37,0xa8,0x32,0x66,0xc9,0x8d,0x9e,0xe9,0x8a,0x45,0xe1,0x33,0xb6,0xd5,0xb2,0xdb,0x49,0xe9,0x64,
0x8f,0xfa,0x27,0xf6,0xea,0xf1,0xf5,0xae,0xdc,0xe6,0x43,0x4b,0x25,0x2f,0x89,0x14,0x64,0x4c,0x03,0x0e,
0xa0,0xf2,0x10,0xdb,0x73,0xd3,0x56,0xf8,0xe1,0x2f,0x9e,0xe5,0x4b,0xca,0x0e,0x46,0x5f,0xd9,0x3e,0xc0,
0x4a,0x86,0x4d,0x4a,0x7b,0x00,0xf1,0x4c,0x4a,0x88,0xe3,0xfe,0x08,0x41,0x99,0xb0,0x19,0xa3,0xc4,0x01,
0x25,0x8d,0x53,0x51,0x24,0xd1,0x05,0xac,0x78,0x7f,0x66,0x4c,0x90,0xe1,0x15,0x8a,0xca,0x1d,0xd0,0xc8,
0x58,0x2a,0x76,0x71,0x43,0xe5,0xf9,0x59,0x20,0xe3,0xd2,0x14,0xe9,0x0a,0x78,0x65,0x8c,0xc5,0x2a,0x67,
0x88,0x70,0xc4,0x15,0x08,0x48,0xf7,0x20,0x25,0x02,0xc1,0x6d,0xc8,0x65,0x04,0x84,0x23,0xa6,0x08,0x30,
0x44,0xc5,0xfb,0x96,0x9c,0x1c,0xc6,0x72,0xc2,0xeb,0xfd,0xe1,0xed,0x4c,0x26,0xdb,0x08,0x5f,0x23,0x67,
0xa9,0x05,0xfa,0xa5,0xf8,0x45,0xd8,0x11,0xc9,0xa8,0xe8,0x44,0x0b,0x37,0x7d,0x99,0x49,0x0f,0x01,0xd6,
0xcd,0xab,0xa8,0xae,0x1c,0x4c,0xb9,0x88,0xce,0xbf,0x48,0x9a,0x4f,0x70,0xc0,0x75,0x95,0x7b,0xc0,0xcc,
0x9c,0x77,0x91,0x4d,0x0a,0x26,0x7d,0xde,0xe0,0xd1,0x6a,0x57,0xcd,0x46,0xad,0x97,0x66,0x11,0x96,0x97,
0xf3,0xeb,0x08,0x25,0x7b,0x0f,0x28,0x66,0xb7,0x49,0xfb,0xcf,0x1a,0x2a,0xef,0x59,0x02,0x76,0x30,0xac,
0xa9,0xd9,0x51,0xc1,0x2a,0xf4,0x18,0xce,0x32,0x7e,0xbc,0xad,0x95,0x08,0xd6,0x7a,0x22,0x70,0x2b,0x28,
0x86,0xa2,0xd2,0x24,0x23,0xac,0x42,0x9a,0xc0,0x0d,0x5b,0x5c,0x89,0x68,0xef,0xbe,0xd3,0xc0,0x34,0x11,
0xc1,0x83,0x86,0xca,0x9e,0xb2,0xb8,0x34,0xe1,0x04,0x66,0x21,0x69,0x77,0x3e,0xe5,0xed,0xbe,0x93,0x72,
0xfd,0xaa,0x90,0x72,0xfd,0xea,0x1d,0x94,0x29,0xe6,0x52,0xca,0xac,0xdd,0x15,0x28,0xcf,0xa7,0x35,0xb1,
0x6f,0xca,0xb0,0x8d,0x24,0x25,0x89,0xc6,0x48,0xb9,0x1c,0xa5,0xc6,0x56,0xa2,0xd8,0xc2,0xf0,0xd5,0x87,
0xb6,0xbe,0x50,0x90,0x8c,0x64,0xa5,0x69,0xc6,0x68,0x05,0x44,0xa5,0x26,0xf3,0xe2,0xd7,0x14,0xb8,0x99,
0xf8,0x25,0xbf,0x28,0xa1,0xe2,0x5a,0xaf,0x7d,0x09,0x33,0xac,0x63,0x49,0x99,0x78,0x2e,0xe1,0xe4,0xf1,
0x95,0x9b,0xd2,0x96,0xa6,0x8f,0xb1,0xb6,0x59,0x2a,0x7f,0xfc,0x61,0x1b,0x92,0xb2,0x9f,0x1f,0x7c,0x50,
0x7e,0x7e,0x10,0x5f,0x63,0x57,0xdd,0x60,0xcf,0x26,0xbd,0x8e,0x9b,0xc8,0x79,0x7f,0xb6,0xc0,0xab,0xef,
0xfc,0xa6,0x85,0xdb,0xcb,0x58,0xb6,0x39,0x02,0xfa,0x8b,0x3a,0xf7,0x95,0x4e,0x01,0x25,0x7d,0xc5,0x1d,
0xe8,0x65,0x4e,0xcf,0x0e,0xb6,0xeb,0x8e,0x2f,0x9f,0x9c,0x48,0x80,0x3a,0x93,0x94,0xf3,0xf7,0x18,0x28,
0xe3,0x3c,0x19,0xc4,0xe0,0x30,0xbb,0x1a,0x1c,0x66,0x57,0xf7,0x13,0xe3,0x2c,0xab,0xcf,0xd1,0x57,0x80,
0x0d,0x76,0xfb,0x57,0x3b,0x39,0xd6,0xaa,0x8a,0xad,0x52,0xb1,0xb6,0xb9,0xa7,0xea,0x56,0xe2,0x12,0x72,
0x68,0xaf,0xbd,0x1f,0x76,0xfb,0x39,0xef,0x24,0x4d,0x62,0xec,0x13,0x58,0xf7,0x69,0x7a,0x9e,0x3a,0x2e,
0x53,0x68,0x2c,0x3f,0x33,0x53,0xdb,0x84,0x77,0x89,0xa8,0x8d,0x11,0x74,0x37,0xef,0xf6,0x75,0x16,0xa6,
0xc2,0xee,0xc7,0xd3,0x3f,0xa4,0xf4,0x55,0xbc,0x40,0xd9,0xe2,0xc5,0x25,0x4e,0xeb,0x57,0xdd,0x4b,0xda,
0x34,0x8c,0x49,0xd3,0x6a,0xc0,0x9b,0x13,0xdd,0x34,0x01,0xe9,0x66,0xa5,0xeb,0x1f,0xf9,0x47,0x6a,0x12,
0x75,0x06,0x11,0xcc,0x36,0xf6,0xc5,0x5a,0xc2,0x61,0xe4,0x18,0xb2,0xe4,0xab,0x16,0xfe,0x3e,0x72,0x8c,
0xde,0xf2,0x5f,0x49,0xd2,0x15,0x96,0xc8,0xd9,0xad,0xee,0xb8,0x0b,0xfe,0x8e,0x46,0x60,0x8f,0xb0,0xf4,
0xed,0x5f,0xa0,0x9b,0xfe,0xf4,0x2f,0x3c,0xba,0xb8,0x13,0x62,0xfe,0x05,0x60,0xaa,0x46,0xf4,0xe5,0x5f,
0xe6,0x2d,0x4f,0xf0,0xb9,0xb1,0x45,0x87,0xc2,0x07,0x13,0xea,0x4b,0xcf,0x60,0x06,0x44,0x61,0xe5,0x84,
0x6f,0xca,0x6b,0x2e,0xb5,0x8f,0xf4,0xf9,0xb1,0xf8,0xf0,0x78,0x8b,0x7f,0x6f,0xfd,0x6f,0x98,0x74,0xa6,
0x4d,0x85,0x3d,0x00,0x00};
0x1f,0x8b,0x08,0x00,0x00,0x00,0x00,0x00,0x00,0x0a,0xed,0x5b,0x69,0x57,0xe3,0x38,0x16,0xfd,0x2b,0x26,
0x3d,0xd3,0x50,0x53,0xc5,0x12,0x48,0xd1,0x05,0x0d,0x74,0x87,0x2c,0x10,0x20,0x21,0x24,0x61,0xfd,0x32,
0x47,0xb1,0x15,0x5b,0xe0,0xd8,0x46,0xb2,0x13,0x52,0xdd,0xf5,0xdf,0x47,0x8b,0x17,0x79,0x8d,0xc3,0xd4,
0x9c,0xea,0x3e,0x67,0xea,0x43,0x05,0xeb,0x3d,0x5d,0x5d,0x3d,0x3d,0x3d,0x3d,0xc9,0xf2,0xd1,0x5a,0xf3,
0xba,0x31,0x7a,0xec,0xb7,0x14,0xc3,0x9d,0x9a,0x27,0x47,0xfe,0xff,0x10,0x68,0x27,0x47,0x53,0xe8,0x02,
0x45,0x35,0x00,0x26,0xd0,0x3d,0xae,0xdc,0x8e,0xda,0x9b,0x5f,0x2a,0x27,0x47,0x2e,0x72,0x4d,0x78,0x72,
0xb4,0xed,0xff,0x72,0x25,0x0b,0x4c,0xe1,0x71,0xc5,0x35,0xe0,0x14,0x6e,0xaa,0xb6,0x69,0xe3,0x8a,0xa2,
0xda,0x96,0x0b,0x2d,0x5a,0xef,0xa7,0x1d,0xfe,0xaf,0x12,0x53,0x9d,0x21,0x38,0x77,0x6c,0xec,0x4a,0x7a,
0x73,0xa4,0xb9,0xc6,0xb1,0x06,0x67,0x48,0x85,0x9b,0xfc,0xe1,0x13,0xb2,0x90,0x8b,0x80,0xb9,0x49,0x54,
0x60,0xc2,0xe3,0x2a,0x85,0x30,0x91,0xf5,0xa2,0x60,0x68,0x1e,0x57,0x88,0xbb,0x30,0x21,0x31,0x20,0xa4,
0x18,0x06,0x86,0x93,0xe3,0xca,0xd8,0xb3,0x34,0x13,0x6e,0xa9,0x84,0x50,0x45,0xa2,0x62,0xe4,0xb8,0x0a,
0xc1,0x6a,0x28,0x78,0x66,0xe5,0xdb,0x42,0x40,0xff,0x10,0x7d,0x1c,0xdb,0xda,0xe2,0xe4,0x48,0x43,0x33,
0x05,0x69,0xc7,0x15,0xe0,0x38,0x15,0xf1,0x34,0xdb,0x54,0x4d,0x1b,0xbc,0x88,0x07,0xd5,0x04,0x84,0x1c,
0x57,0x2c,0xdb,0x45,0x13,0xa4,0x02,0x17,0xd9,0x56,0x83,0xd2,0x06,0xc8,0x82,0xb8,0x92,0xab,0x52,0x51,
0x0e,0xfd,0xd2,0x3f,0x14,0x88,0xb1,0x8d,0x0f,0x15,0x59,0xac,0xac,0x1d,0x2b,0x96,0x67,0x9a,0xca,0xcf,
0x3f,0xc7,0xca,0xb7,0xb8,0xae,0xf2,0xad,0x42,0x39,0xa0,0x49,0x1c,0x32,0xa8,0x53,0x51,0x7e,0x57,0x4d,
0xa4,0xbe,0x6c,0x39,0x18,0xce,0xb8,0xf5,0x0c,0xa4,0xc1,0x9e,0xdc,0x38,0x35,0x81,0x03,0xac,0x80,0xd7,
0x14,0x12,0x02,0x74,0x58,0x39,0xf9,0xe3,0x8f,0x78,0x63,0xbe,0x40,0xf9,0xf6,0x8d,0x9a,0x86,0x56,0xa0,
0x86,0xa1,0xdd,0x09,0xfe,0x0f,0xec,0xa2,0x66,0xf7,0x96,0x99,0x90,0x97,0xa1,0xa9,0x2e,0x4c,0xad,0x01,
0x17,0x1c,0xa2,0x29,0x45,0xdc,0x76,0x2c,0xfd,0xd7,0x31,0x20,0x70,0xbf,0xf6,0x09,0xdd,0x9d,0x5e,0x0f,
0xe6,0x3b,0x97,0x67,0xba,0x5d,0xa7,0xff,0x7a,0xc3,0x5b,0xa3,0x75,0xab,0xd3,0xbf,0x9a,0xec,0xb1,0x3e,
0x6f,0xd4,0x1f,0xe9,0xcf,0xe9,0x43,0x7d,0x36,0x3d,0x67,0x05,0x67,0x0f,0x83,0xf6,0xfd,0xf9,0x60,0x34,
0xde,0x7d,0xda,0xd1,0x76,0xdb,0x8b,0xa7,0x9b,0xd3,0xd3,0xa7,0xb3,0x03,0xf4,0x34,0x3c,0xbd,0x18,0xdf,
0xb7,0xad,0xa7,0xbb,0x0b,0xf3,0xf1,0x7e,0xf0,0x59,0x55,0x4d,0xb3,0xcf,0x2a,0x3c,0x9c,0x5e,0x0c,0x5a,
0xed,0x5b,0xd8,0xc3,0xe4,0x5e,0x6b,0xf5,0xf4,0xe7,0xfa,0xcd,0x95,0xfa,0x78,0xaa,0xd6,0xfb,0x6a,0xbd,
0xa1,0xdd,0xf4,0x6a,0xf5,0xde,0x6e,0xb7,0x51,0xd3,0x07,0xe4,0xf1,0xe2,0xa0,0xd5,0xd3,0xea,0xfd,0xc7,
0x7a,0x13,0xd4,0x9b,0xd0,0xd1,0x6e,0x8d,0x6e,0xf5,0xb5,0xfd,0xec,0x61,0xdd,0x39,0x18,0xaa,0xdd,0x73,
0x5d,0xfb,0xa5,0xba,0x77,0xb7,0x37,0x71,0x6f,0x9d,0xcf,0xf0,0x5c,0xef,0xb6,0xab,0x18,0x9f,0xb5,0x80,
0xb7,0x7f,0x77,0xde,0xdc,0x3d,0xef,0x8e,0xcf,0x3f,0xbf,0x5e,0x5c,0x5f,0x9d,0x63,0xf0,0x71,0xf2,0xf2,
0x75,0x4c,0x1e,0x07,0xc4,0xe8,0x7e,0x71,0xae,0x46,0xfa,0x6d,0x47,0x1f,0xea,0x33,0xaf,0xdb,0xb5,0x1f,
0xe7,0x1f,0x51,0xf7,0x71,0x84,0xf7,0x6f,0x8c,0xde,0x63,0x17,0xf7,0x50,0x6f,0x31,0xef,0x5c,0x99,0x8b,
0xbb,0x4b,0x4d,0x5d,0x2c,0xfa,0x64,0xaa,0x0e,0xc8,0xe2,0xf6,0xf3,0xce,0x8b,0x7e,0xee,0xde,0xdc,0x78,
0xbb,0x75,0xad,0x77,0xd1,0x76,0x9a,0x2f,0xf5,0xcb,0x5a,0x67,0xfb,0xaa,0x73,0xdf,0x1d,0xef,0xd6,0x49,
0xe7,0x54,0x7d,0xdd,0x41,0x83,0x33,0x78,0x73,0xd6,0x1f,0x3d,0x4d,0xee,0xf6,0x6f,0x5a,0x3b,0x1f,0xf5,
0xe6,0x59,0x7b,0x17,0xdb,0xe4,0xac,0xa5,0x77,0x6f,0xde,0x3a,0x75,0xc3,0x7a,0xaa,0xa3,0x7e,0xef,0x4b,
0xcd,0x73,0x06,0x93,0x9d,0xed,0x6b,0xd3,0x21,0x57,0x8d,0x53,0x67,0x6f,0xf1,0xba,0xa3,0x1a,0xba,0xdb,
0xb8,0xbd,0x7d,0xc2,0x83,0xf9,0xfe,0x4d,0xf3,0x7a,0xaf,0x75,0x7f,0x3e,0x7c,0x6d,0x1f,0xb8,0x00,0x3f,
0x81,0xe1,0xe5,0xc5,0x03,0xbc,0x68,0x6a,0xe3,0x1b,0x93,0xb4,0x76,0x2e,0x9b,0xfb,0x17,0xbd,0xed,0x4b,
0x7b,0x40,0xce,0x8c,0xb7,0x87,0xcb,0x86,0xd9,0xb8,0x3c,0xbf,0xe8,0x4c,0x5e,0x46,0xc6,0xbc,0x7b,0x6f,
0xd4,0xf7,0xb5,0xd3,0xa1,0x6d,0x0e,0xd0,0xf3,0xcb,0xc5,0xb5,0x56,0x7d,0xba,0x9d,0x1d,0x2c,0x6e,0x0e,
0xae,0x9d,0xd7,0xf1,0xb9,0x83,0xc0,0xed,0x1d,0x68,0x8d,0x9f,0x5a,0xbf,0xb8,0x9d,0xce,0xb3,0x7d,0x7a,
0xf9,0xb0,0x20,0x36,0xa9,0xaa,0xb5,0xbb,0x2f,0x70,0x7c,0xd5,0xd2,0xc6,0xb3,0xdd,0xb1,0xda,0x25,0xad,
0x5f,0xf4,0x67,0xef,0x54,0x9b,0x3d,0x0c,0x86,0x17,0xb5,0xf6,0xc7,0xed,0xf9,0x6b,0xe7,0xe1,0x01,0x77,
0xce,0xe6,0xd3,0x87,0xbd,0xaf,0x73,0xa0,0x5e,0x35,0x0d,0xd8,0xbb,0x3e,0xa8,0x5e,0x3f,0x5f,0xdd,0x5c,
0x6a,0xd5,0xda,0x5d,0xb7,0xd9,0xb0,0x1e,0xf5,0xc6,0xdb,0xdd,0x73,0x67,0xaf,0x37,0x82,0xd5,0xe9,0xd0,
0xee,0x37,0x6b,0x07,0x6f,0xb5,0x21,0xa6,0xce,0x71,0xf0,0xda,0xb7,0x6a,0xd0,0x9e,0x35,0xba,0xdc,0x7b,
0x5a,0x66,0x7b,0xf4,0x32,0xf4,0x6e,0xa6,0x8d,0x06,0xf5,0x44,0xa3,0xca,0x5c,0xfc,0x1f,0xee,0xc6,0x3a,
0x8f,0x4f,0xeb,0x1f,0xb8,0x67,0xd3,0xd2,0x23,0x63,0x97,0x49,0x88,0x0b,0x5c,0x8f,0x6c,0x91,0x05,0x71,
0xe1,0xb4,0xd3,0xa4,0x13,0xca,0x9f,0x85,0xbf,0xf1,0x4a,0x41,0x39,0xad,0xf7,0x51,0x59,0x3f,0x54,0xd6,
0xe9,0x4f,0xb2,0x0a,0x2d,0x5d,0x17,0xa8,0xbb,0xb1,0xd9,0x30,0xa7,0xb3,0x4a,0xe8,0xc6,0x67,0x09,0x9d,
0x3c,0x16,0x54,0xfd,0x49,0x29,0x95,0x23,0x4b,0x63,0xb3,0x90,0x05,0xcb,0x43,0x36,0x6f,0x36,0x45,0x65,
0x01,0x34,0x14,0x8d,0x02,0x67,0x0b,0x5a,0x60,0x6c,0x42,0x8d,0x12,0x5c,0xf7,0x91,0xa0,0xb6,0xce,0x48,
0x68,0x88,0x44,0x05,0x15,0x7f,0xca,0xfa,0x9d,0x97,0x21,0x54,0x95,0xce,0x71,0xc7,0x46,0x96,0xbb,0x15,
0xd9,0x44,0xa1,0x8a,0x79,0xed,0xc4,0xcb,0x91,0x43,0x1b,0x2b,0xc0,0xa4,0x34,0x78,0x45,0xdf,0xd4,0x61,
0xdc,0x78,0x6f,0xef,0x75,0xe8,0xde,0xa3,0x36,0x6f,0x89,0x56,0x12,0x0d,0x6e,0x7c,0xc8,0xef,0x1f,0x11,
0x8a,0x53,0x5b,0x83,0x89,0xfe,0x65,0x21,0x8d,0xe0,0x9b,0xbb,0xf1,0x6e,0xa6,0x31,0xa2,0xb2,0xfd,0x13,
0xf4,0xc4,0x2a,0x36,0x42,0x53,0x41,0x46,0x70,0x69,0x86,0x85,0x51,0xf3,0xc9,0x60,0x2b,0x42,0x3e,0x5d,
0x79,0x34,0x64,0xe9,0x95,0x80,0x41,0xf0,0x1c,0xc0,0xfb,0xcf,0x61,0x47,0xfd,0xe7,0x4e,0x40,0x34,0xde,
0x3d,0x81,0xb9,0xe6,0x2b,0xb1,0xe5,0x86,0x2e,0xa7,0x68,0x8c,0xc5,0x8a,0x72,0xec,0x4f,0x80,0x78,0x9f,
0xe7,0x00,0x5b,0x9c,0x81,0xa8,0x6c,0x00,0x32,0x80,0x34,0x0b,0x68,0xb1,0xa5,0x89,0x6a,0x3a,0x01,0x13,
0xbe,0x56,0x6d,0xe1,0x50,0xe6,0x3b,0x81,0x43,0x55,0x02,0x28,0x2e,0x1c,0x40,0x40,0x98,0x5d,0xd3,0xd5,
0x84,0x64,0x4b,0x9a,0x68,0x52,0xb1,0x84,0x26,0x88,0x90,0x70,0xcc,0xd5,0x97,0x11,0x06,0x2a,0x4c,0x40,
0x46,0x82,0x88,0x09,0x08,0x98,0x8c,0x3d,0xd7,0xa5,0x3d,0x16,0x3f,0x9b,0x0e,0xa6,0xeb,0x14,0x5e,0x04,
0xd9,0xc3,0x36,0x70,0xd0,0x36,0xaf,0xee,0xb2,0xea,0xdb,0x3a,0x4b,0x2c,0x56,0x6d,0xb4,0x69,0xcf,0x2d,
0x66,0x67,0xbf,0x71,0x70,0xa2,0x24,0x5b,0x0f,0x56,0x6e,0xea,0x3e,0xd0,0x84,0x2e,0x1c,0x96,0x00,0xe5,
0x8a,0x21,0x64,0xda,0x71,0x2d,0x30,0x43,0xba,0x18,0x4d,0x17,0x8c,0x59,0xf4,0x49,0x35,0x1a,0x65,0x22,
0xeb,0x80,0xba,0xf8,0x0c,0xd2,0xd8,0x26,0xfe,0x18,0x81,0x31,0xf5,0x01,0x65,0x5d,0x74,0x72,0x9d,0xe5,
0x1d,0x01,0x43,0x49,0x21,0x94,0x87,0x2c,0x7d,0xa3,0xd0,0x06,0x47,0x52,0xa0,0x05,0xef,0x6a,0xdb,0xc5,
0x48,0xd7,0x21,0x2e,0x68,0x3d,0xd4,0x08,0xdb,0x0f,0x4a,0xbe,0x0f,0x83,0x68,0xee,0xe7,0x73,0x90,0x74,
0x42,0x16,0x51,0xd9,0xf7,0xe1,0x21,0x16,0x99,0x82,0x51,0x10,0xf2,0x68,0x14,0xf8,0x73,0x46,0xdb,0xc9,
0xe9,0x9f,0x39,0xd8,0x6c,0xbd,0xdc,0x4b,0x0e,0xa8,0xbc,0x6c,0xee,0x71,0x88,0x93,0x23,0x4c,0x43,0x87,
0xad,0x1c,0x72,0xd9,0x71,0x45,0xd2,0x06,0xa6,0x39,0x74,0xa1,0x43,0x46,0xd8,0xa3,0x95,0xd8,0x84,0x61,
0x71,0x98,0xa6,0xe7,0x81,0x80,0x76,0x9a,0x25,0x90,0x2e,0x95,0xb3,0x18,0xc9,0x81,0x24,0x76,0x25,0xa0,
0xdb,0xc0,0x24,0x85,0xd8,0x13,0xa6,0x90,0x05,0x1e,0x98,0x9f,0x98,0x34,0x39,0xc6,0x89,0x55,0x99,0xda,
0xcd,0x09,0x26,0x78,0x08,0x18,0x4f,0x9a,0x67,0xc0,0xf4,0xc4,0xb4,0xec,0x02,0xd7,0xd8,0x9a,0x98,0xb6,
0x8d,0x37,0x02,0xdd,0x3b,0x26,0x54,0xb6,0x95,0xdd,0xcf,0x9f,0x95,0x7f,0x29,0xd5,0x9d,0x1d,0x66,0xb2,
0x7f,0x06,0x49,0x74,0xaa,0x75,0x39,0x83,0x46,0x96,0xe3,0xb9,0x8a,0xbb,0x70,0x68,0x87,0x31,0xb0,0x68,
0x5a,0xae,0x4c,0x91,0x75,0x5c,0xd9,0xa1,0xbf,0xe0,0xed,0xb8,0x42,0x21,0x2b,0xf1,0xda,0x61,0xe7,0xb7,
0x2c,0x6f,0x3a,0x86,0x38,0xa2,0x7c,0x27,0x38,0xa6,0x16,0x92,0x8c,0x5e,0xae,0x45,0x76,0x9b,0x6d,0x4e,
0x6c,0x0a,0xb2,0xc1,0xc4,0x9f,0x14,0xba,0xc0,0xc1,0xb7,0x0f,0xf4,0x47,0x21,0x65,0xad,0xc0,0x14,0xb7,
0x66,0x3f,0xd6,0x04,0x11,0x87,0x44,0xff,0xb3,0x17,0xd5,0x9c,0x90,0x43,0xeb,0x52,0x5b,0x4c,0x95,0xdf,
0x89,0x37,0x9e,0x22,0x37,0xda,0x51,0xd1,0xbd,0xa0,0xb9,0x60,0xab,0xf5,0xc8,0x57,0x8d,0xcd,0x96,0x28,
0xfc,0x30,0x8d,0xc4,0x9c,0x51,0x0d,0xa8,0xbe,0x84,0x7c,0xc7,0xb6,0x6d,0x42,0x60,0xb1,0x49,0x20,0xd5,
0x09,0xf2,0xad,0x4a,0xcc,0xf7,0x63,0x2a,0x2d,0xcb,0x4f,0xac,0x58,0xff,0x38,0xa6,0xdc,0x9f,0x6c,0xb4,
0xa2,0x55,0x7c,0x2d,0x9d,0x35,0x85,0x59,0xdf,0x9f,0x7f,0x2a,0x19,0x52,0x31,0x15,0xd9,0xae,0x73,0x2f,
0x23,0xf0,0xd2,0x76,0x3b,0x74,0xf3,0x8e,0x2d,0xe8,0xca,0xc9,0x9f,0x09,0xc6,0xd0,0x54,0xb8,0x83,0x71,
0xe3,0xd0,0xf1,0x25,0x88,0xc1,0x31,0x63,0x66,0xc3,0xc4,0x75,0x7c,0x30,0x8e,0x13,0x77,0x15,0x31,0xf4,
0x15,0xbe,0x27,0xcd,0xc0,0x4e,0xb9,0x48,0xdc,0x46,0x6e,0x82,0xc9,0x91,0x51,0x3b,0x19,0x40,0x1d,0x9a,
0x84,0x0e,0x5b,0x2d,0xdf,0xb6,0xe1,0x93,0x09,0x2d,0xdd,0x35,0xc2,0x13,0x02,0x31,0x87,0x7c,0xa9,0x3c,
0x8d,0xb2,0xab,0x87,0x0e,0x4d,0xa7,0x07,0x34,0xe5,0xd5,0x40,0xb8,0xe6,0x61,0x50,0x2f,0x1c,0x94,0x6f,
0xf1,0xe1,0xe4,0xf5,0x36,0xc3,0x4d,0x77,0xb1,0x97,0x95,0xf0,0x2f,0xdf,0xb1,0xb3,0xdc,0x4c,0x0e,0x00,
0x80,0xaf,0x6f,0x22,0xad,0x10,0xb9,0xd2,0x4f,0xe9,0xf3,0x07,0x91,0xcd,0x48,0xd3,0x65,0x43,0x98,0x23,
0x7b,0xbc,0x53,0x29,0x4d,0x2a,0x64,0xa8,0xb4,0x33,0x38,0x3f,0xae,0x09,0x53,0xb0,0xc3,0x1b,0x16,0xad,
0x28,0x9a,0xea,0xe6,0x0d,0x7e,0x60,0xff,0x11,0xf5,0xa0,0x4a,0x94,0xd3,0x9b,0x34,0x12,0xd1,0xba,0xb6,
0xc3,0xf3,0x26,0x1e,0x46,0x58,0xf8,0xc9,0xa4,0xdb,0x46,0x6f,0x50,0x93,0x3c,0x53,0x54,0x4a,0x56,0xae,
0x66,0x57,0x1e,0x7a,0x16,0x46,0xa4,0xb8,0xea,0x6e,0x6e,0x55,0x12,0xce,0xad,0xa0,0xe6,0xb6,0xe8,0xee,
0xd2,0x6e,0x4f,0x02,0xd2,0xc9,0x4e,0xc7,0x7d,0x5c,0x36,0x0f,0x8b,0x8c,0x3b,0x92,0x51,0x36,0xc3,0x49,
0xcc,0xbc,0x3a,0x04,0x64,0x0b,0xaf,0x4f,0xdc,0x0d,0xa6,0x34,0xdb,0xdf,0x20,0xe2,0x98,0x80,0x87,0xcc,
0x0d,0x56,0xfe,0x49,0xe1,0x2b,0xf3,0xfb,0xd8,0x63,0x68,0x02,0x1e,0xaf,0xb3,0x3b,0x40,0xe7,0x2c,0xcc,
0xe3,0x29,0x57,0x2d,0x4d,0x95,0x25,0x28,0x39,0x4c,0xe5,0x80,0x0a,0xe1,0x8b,0x06,0x16,0x64,0xf9,0xec,
0x9b,0xda,0x16,0x55,0x2c,0x98,0x7c,0x5d,0xae,0x10,0x9b,0x74,0x4b,0x20,0x5d,0x0f,0x92,0x62,0xcc,0x91,
0xd0,0x58,0x05,0x74,0x0e,0x35,0x6b,0x19,0xec,0x7d,0xa0,0xb3,0x12,0x5b,0xc3,0xc3,0xcb,0xe8,0xfa,0x2a,
0xab,0xc0,0x4e,0x30,0x2a,0x06,0x6d,0x73,0x85,0x55,0x20,0x09,0x5d,0xe3,0x70,0x31,0xe8,0xd0,0x57,0x59,
0x09,0xd6,0x5b,0xe2,0x01,0x43,0x2f,0xe5,0x01,0xd9,0xf9,0x5b,0x89,0x7c,0x2c,0x68,0x74,0x4c,0x7f,0x0d,
0x97,0x8e,0x16,0xf9,0x71,0x79,0x59,0x9a,0x4b,0x41,0x7e,0x26,0x67,0x69,0x6c,0x52,0x47,0x07,0xe9,0xec,
0xac,0x25,0x3b,0x2c,0xf6,0xec,0x26,0x95,0xe5,0x9c,0x37,0x89,0xbd,0x16,0x6b,0xd2,0xdf,0xee,0x1f,0x06,
0x07,0x54,0x94,0x31,0xdd,0x28,0xb3,0x74,0x28,0xb9,0x78,0x01,0x4d,0x93,0x56,0xae,0xec,0x46,0xeb,0x5a,
0xb0,0xab,0x17,0xb8,0xb9,0x4b,0x53,0x44,0x40,0x36,0xa6,0xc8,0x2e,0x2b,0x59,0x6c,0x82,0x00,0x25,0x9e,
0xfd,0x83,0x48,0x9e,0x7d,0x9e,0x72,0xa8,0x21,0x2f,0xa7,0x8d,0x1f,0x26,0x25,0xeb,0x1f,0x22,0xcb,0xb2,
0x24,0xb6,0x30,0x95,0xed,0xda,0x3c,0xf3,0x29,0x4c,0x66,0xa7,0x42,0x67,0xc5,0x74,0x56,0xd4,0x5a,0x92,
0x70,0x08,0xa5,0x92,0x29,0x6d,0x02,0x31,0x96,0x53,0xc6,0x80,0x9a,0x1e,0xa6,0xb6,0x29,0x1c,0xbc,0x62,
0xfd,0x78,0xae,0x19,0x5f,0x94,0x72,0x09,0xa5,0x5b,0xe5,0x19,0xe9,0x32,0x66,0xcb,0x93,0x8d,0x62,0x84,
0x1e,0x1d,0x4e,0xbc,0x6a,0x0a,0x52,0x0c,0x59,0x37,0xe7,0x74,0x39,0x5b,0x35,0x37,0x29,0xc6,0xbc,0xb6,
0xcc,0x45,0x5e,0xce,0xc2,0x7d,0x75,0x35,0x7f,0x12,0xf8,0x4d,0x1e,0x4a,0xa3,0xc9,0x53,0x76,0x64,0x58,
0x4a,0xb3,0x5b,0xc6,0x25,0xc3,0x66,0x32,0x02,0x72,0xca,0xfb,0x96,0xed,0x69,0xb2,0xb4,0xca,0xed,0x6a,
0x32,0xf1,0xf3,0xf7,0x35,0x7e,0xef,0x53,0x3b,0x9b,0x14,0x63,0x9a,0x71,0x53,0x0b,0xe6,0x10,0xe5,0xc2,
0x55,0xf8,0x09,0xb4,0xa5,0xb4,0x34,0xd1,0x68,0x89,0x7d,0x56,0xd8,0x8f,0xf7,0xee,0xb4,0x12,0x00,0x7f,
0xa9,0xbd,0xd6,0x54,0x8e,0xbc,0xdf,0x71,0xb7,0x15,0x8b,0xe8,0xb9,0xfb,0xad,0x70,0xc4,0xbe,0xe3,0x8e,
0x4b,0xb8,0xd7,0x21,0x1f,0x96,0x75,0xd1,0x00,0x3b,0xc0,0xe7,0x14,0xd8,0x8b,0xb3,0x7f,0x3b,0xc8,0xca,
0x38,0xaa,0x15,0x9a,0x7d,0x2a,0x5b,0xea,0x6b,0xfc,0x64,0x2f,0x1f,0x3a,0x37,0xe9,0xa0,0xd2,0x32,0xfc,
0x34,0x84,0x93,0x47,0xb9,0x49,0x83,0x85,0x1a,0x59,0x2b,0x44,0x3e,0x3d,0x09,0x39,0x97,0x64,0xa8,0x93,
0x5a,0x13,0x72,0x03,0x78,0x48,0xa7,0x27,0xfd,0x0d,0xcc,0xf7,0x45,0xee,0x10,0x60,0x64,0x3b,0xec,0x95,
0x45,0x21,0x4a,0xc6,0xc9,0x4f,0x02,0xe5,0xd4,0xa6,0xc9,0xc8,0xf4,0xd6,0x29,0x08,0xfa,0xff,0xcf,0x67,
0x73,0xf2,0x59,0x61,0xca,0xff,0x45,0x46,0x1b,0x8b,0x0e,0x79,0x0d,0xff,0x3d,0xb2,0xda,0xe2,0xa3,0xdc,
0xd8,0x7b,0x99,0xa2,0x0c,0xb8,0x21,0xbf,0xe0,0x8d,0xb2,0x5f,0xf9,0x1d,0x4e,0xb9,0xcc,0x57,0xaa,0x21,
0xbd,0x09,0x8f,0x47,0xff,0x6c,0x9d,0xdc,0xb0,0x6f,0x30,0x80,0x0c,0x46,0x52,0xdd,0x73,0x5e,0x5f,0xba,
0xa9,0xb3,0x9c,0x9d,0x7f,0x8e,0x9b,0xcb,0x4c,0x7a,0x77,0xbe,0x32,0x33,0xa9,0x6e,0x8a,0x99,0x94,0x7e,
0x10,0x82,0xb4,0xcc,0xea,0xb4,0x3c,0x7f,0x19,0x70,0xe1,0x9b,0x2b,0x12,0x0e,0x5e,0x3f,0xca,0xc8,0x13,
0x08,0x31,0xd7,0x5b,0xcb,0xe8,0x79,0x8c,0x8b,0x43,0x3b,0x34,0xb7,0x71,0x26,0x9f,0x40,0x96,0xcf,0x29,
0xac,0xcd,0x79,0x45,0x4f,0x59,0xdc,0x22,0xe9,0x52,0x7e,0xcb,0x47,0x51,0x33,0x54,0x67,0x29,0x50,0xde,
0x10,0xb3,0xca,0xec,0xed,0x99,0x3f,0x9a,0x6c,0x7a,0x6c,0xb2,0x08,0x89,0x6d,0x73,0xc5,0x01,0x67,0x48,
0xa9,0x91,0x96,0xa3,0xaf,0x37,0x16,0xa1,0x9f,0xc4,0xad,0x8e,0x9c,0x2c,0x34,0xe4,0xd0,0x18,0x85,0xa9,
0x6f,0x97,0x71,0x02,0xe4,0x64,0x9b,0x19,0x2d,0xb5,0x0b,0x7b,0xb1,0x91,0x34,0x65,0xdc,0x3f,0xbd,0xb1,
0x05,0xdd,0x29,0x20,0x2f,0x99,0x5e,0x1a,0x4a,0x4b,0xf9,0x6a,0x84,0x95,0xed,0xb1,0x92,0xfc,0xbf,0xa4,
0xad,0x03,0x17,0xce,0xa5,0x8c,0x5e,0x52,0xf6,0x45,0x65,0x08,0x07,0x28,0x99,0x6c,0x43,0xe1,0x7b,0xa8,
0xa6,0x36,0x4e,0x86,0x4d,0x5c,0x76,0xf7,0x33,0x8b,0x71,0x20,0x5b,0x46,0xf9,0xd0,0x31,0x81,0x0a,0x0d,
0xdb,0xd4,0xd8,0xba,0x9c,0x03,0xd2,0x8f,0x74,0x98,0xdf,0xb3,0x6e,0x86,0x6d,0x67,0xf6,0x33,0x92,0x2e,
0x9d,0xab,0x7f,0x8f,0x05,0x31,0xbc,0x24,0x90,0xb3,0x18,0x7a,0x0e,0xbb,0xa3,0xd2,0x46,0x78,0x3a,0x07,
0x18,0xc6,0x2f,0x01,0x88,0xfb,0x04,0x13,0x5f,0x96,0x3c,0x09,0x92,0xbb,0x3a,0x41,0x26,0x14,0xe6,0x0d,
0xb4,0xdb,0xac,0xe4,0x2f,0x60,0xa4,0xc8,0x2e,0xa2,0xa7,0x7d,0x6c,0xeb,0x2c,0xd2,0xf0,0xcb,0x7e,0xfe,
0x6d,0x01,0xda,0xdf,0x84,0x90,0xa7,0x94,0xb2,0x91,0x53,0x56,0x09,0xae,0x4d,0xa5,0xcc,0x92,0x1b,0x3d,
0x93,0x15,0x8b,0xc2,0x67,0x64,0xab,0x65,0x17,0x96,0x92,0xc9,0x1e,0xf5,0x4f,0xec,0x36,0xa2,0x3b,0x5d,
0xb9,0xcd,0x07,0x96,0x8a,0x5f,0x12,0x29,0xc8,0x98,0x86,0x1c,0x20,0xcb,0x43,0x2c,0xd7,0x49,0x5a,0xe1,
0x87,0xbf,0x78,0x96,0x6f,0x26,0xdb,0x18,0x7d,0x65,0xfb,0x00,0x33,0x1e,0x36,0x29,0xed,0x21,0xc4,0x33,
0x29,0x21,0x8e,0xfa,0x23,0x04,0x65,0xc2,0x66,0x84,0x12,0x05,0x94,0x24,0x4e,0x25,0x23,0x89,0x2e,0x60,
0xc5,0xfb,0x33,0x63,0x82,0x14,0xaf,0x40,0x54,0xee,0x80,0x46,0xc6,0xca,0x62,0x17,0x35,0x54,0x9e,0x9f,
0x09,0x52,0x2e,0x4d,0x91,0xae,0x80,0x5b,0xc6,0x58,0xac,0x72,0x8a,0x08,0x47,0x5c,0x81,0x80,0x74,0xf9,
0x51,0x22,0xe0,0x5f,0x81,0x5c,0x46,0x40,0x38,0x62,0x82,0x00,0x43,0xcc,0x78,0xdf,0x92,0x93,0xc3,0x98,
0x76,0x70,0xa7,0x3f,0xb8,0x92,0xc9,0x64,0x9b,0xc1,0x6b,0xe4,0x34,0x35,0x5f,0xbf,0x14,0xbf,0x10,0x3b,
0x24,0x19,0x16,0x9d,0x28,0xc1,0xa6,0x2f,0x35,0xe9,0x21,0xc0,0xaa,0x71,0x15,0xd6,0x95,0x83,0x29,0x17,
0xd1,0xf9,0x17,0x4a,0xf3,0x09,0x0e,0xb9,0x6e,0xe6,0x1e,0x30,0x35,0xe7,0x1d,0x64,0x91,0x82,0x49,0x9f,
0x37,0x78,0xb4,0xda,0x55,0xab,0x59,0xef,0x27,0x59,0x04,0xe5,0xe5,0xfc,0x3a,0x44,0x49,0xdf,0x03,0x8a,
0xd8,0x6d,0xd1,0xfe,0xb3,0x86,0xca,0x7b,0x96,0x80,0x1d,0x8e,0xea,0xd9,0xec,0xa8,0x60,0x15,0x7a,0x0c,
0x67,0x19,0x3f,0xde,0xd6,0x4a,0x04,0xeb,0x7d,0x11,0xb8,0x33,0x28,0x06,0xa2,0xd2,0x24,0x43,0xac,0x42,
0x9a,0xc0,0x09,0x5a,0x5c,0x89,0x68,0xff,0xbe,0xdb,0xc4,0x34,0x11,0xc1,0xc3,0x66,0x96,0x3d,0x65,0x71,
0x69,0xc2,0x31,0xcc,0x42,0xd2,0xce,0x7c,0xca,0xdb,0x7d,0x27,0xe5,0xc6,0x55,0x21,0xe5,0xc6,0xd5,0x3b,
0x28,0x53,0xcc,0xa5,0x94,0x59,0xbb,0x2b,0x50,0x9e,0x4f,0xeb,0x62,0xdf,0x94,0x62,0x1b,0x4a,0x4a,0x12,
0x8d,0x90,0x72,0x39,0x4a,0x8d,0xad,0x44,0xb1,0x8d,0xe1,0xab,0x07,0x2d,0x75,0x91,0x41,0x32,0x94,0x95,
0xa6,0x19,0xa1,0x15,0x10,0x95,0x9a,0xcc,0x8b,0x5f,0x53,0xe0,0xa4,0xe2,0x97,0xfc,0xa2,0x84,0x8a,0xeb,
0xfd,0xce,0x25,0x4c,0xb1,0x8e,0x24,0x65,0xe2,0xb9,0x84,0x93,0xc7,0x57,0x6e,0x4a,0x59,0x9a,0x3e,0x46,
0xda,0x46,0xa9,0xfc,0xf1,0x87,0x6d,0x48,0xca,0x7e,0x73,0xb0,0x96,0xf9,0xcd,0x41,0x74,0x8d,0x3d,0xeb,
0x06,0x7b,0x3a,0xe9,0xb5,0x9d,0x58,0xce,0xfb,0xb3,0x09,0x5e,0x3d,0xfb,0x57,0x25,0xd8,0x5e,0x46,0xb2,
0xad,0x31,0x50,0x5f,0xb2,0x73,0x5f,0xe9,0x14,0x50,0xd2,0xcf,0xb8,0x03,0xbd,0xcc,0xe9,0xd9,0xc1,0x76,
0xc3,0xf6,0xe4,0x93,0x13,0x09,0x50,0x65,0x92,0x72,0xfe,0x1e,0x01,0xa5,0x9c,0x27,0x85,0xe8,0x1f,0x66,
0x57,0xfd,0xc3,0xec,0xea,0x7e,0x6c,0x9c,0x65,0xf5,0x39,0xfa,0x0a,0xb0,0xc6,0x6e,0xff,0x2a,0x27,0xc7,
0x4a,0x35,0x63,0xab,0x54,0xac,0x6d,0xd4,0xb2,0xba,0x15,0xbb,0x84,0x1c,0xd8,0xab,0xf6,0xc3,0x6e,0x3f,
0xe7,0x9d,0xa4,0x49,0x8c,0x3d,0x02,0x1b,0x1e,0x4d,0xcf,0x13,0xc7,0x65,0x19,0x1a,0xcb,0xcf,0xcc,0xb2,
0x6d,0xc2,0xbb,0x44,0xb2,0x8d,0xe1,0x77,0x37,0xef,0xf6,0x75,0x1a,0xa6,0xc2,0xee,0xc7,0xd3,0x3f,0xa4,
0xf4,0x55,0xbc,0x40,0xd9,0xe6,0xc5,0x25,0x4e,0xeb,0x57,0xdd,0x4b,0x5a,0x34,0x8c,0x49,0xd3,0x6a,0xc8,
0x9b,0x13,0xdd,0x34,0x00,0xe9,0xa5,0xa5,0x1b,0x1f,0xf8,0x97,0x69,0x12,0x75,0x06,0xe1,0xcf,0x36,0xf6,
0x99,0x5a,0xcc,0x61,0xe4,0x18,0x12,0x9f,0x89,0xe9,0xcf,0xb1,0xd8,0xfb,0xc8,0x09,0x7a,0xcb,0x7f,0x25,
0x49,0x57,0x58,0x22,0x67,0xb7,0xaa,0xed,0x2c,0xf8,0x3b,0x1a,0x81,0x3d,0xc6,0xd2,0x07,0x7f,0xbe,0x6e,
0xf2,0x7b,0xbf,0xe0,0xe8,0xe2,0x4e,0x88,0xf9,0x67,0x7f,0x89,0x1a,0xe1,0xe7,0x7e,0xa9,0xb7,0x3c,0xfe,
0x37,0xc6,0x26,0x1d,0x0a,0x0f,0xe8,0xd4,0x97,0x9e,0xc1,0x0c,0x88,0xc2,0xca,0x09,0xdf,0x94,0xd7,0x1d,
0x6a,0x1f,0xe9,0x9b,0x63,0xf1,0xb5,0xf1,0x36,0xff,0xc8,0xfa,0x3f,0xf2,0xaa,0x5e,0xb3,0x7a,0x3d,0x00,
0x00};
#endif

File diff suppressed because it is too large Load Diff

View File

@ -4,10 +4,10 @@
const uint8_t VersionMajor = 2;
const uint8_t VersionMinor = 1;
const uint8_t VersionPatch = 0;
const uint8_t VersionMetadata = 2;
const char VersionBranch[] = "release/2.1";
const char VersionSemVer[] = "2.1.0-beta.1";
const char VersionFullSemVer[] = "2.1.0-beta.1+2";
const uint8_t VersionMetadata = 0;
const char VersionBranch[] = "master";
const char VersionSemVer[] = "2.1.0";
const char VersionFullSemVer[] = "2.1.0";
const char VersionCommitDate[] = "2018-04-29";
#endif

View File

@ -304,6 +304,13 @@ bool lastMotion = false;
void updateMotionTrigger()
{
if (motionTriggerSettingsChanged)
{
initMotionPins();
activeMotionStart = 0;
}
if (!motionTriggerSettings->enabled() || !motionTriggerSettings->triggerCount())
{
activeMotionStart = 0;
@ -378,6 +385,12 @@ void checkTriggers()
bool motionChanged = inMotionTrigger != lastMotion;
lastMotion = inMotionTrigger;
if (motionTriggerSettingsChanged)
{
motionChanged = true;
motionTriggerSettingsChanged = false;
}
if (!motionChanged && !timeTriggerChanged)
return;

View File

@ -1,5 +1,36 @@
function startApp()
{
// Source: https://github.com/axios/axios/issues/164
axios.interceptors.response.use(undefined, function axiosRetryInterceptor(err) {
var config = err.config;
// If config does not exist or the retry option is not set, reject
if(!config || !config.retry) return Promise.reject(err);
// Set the variable for keeping track of the retry count
config.__retryCount = config.__retryCount || 0;
// Check if we've maxed out the total number of retries
if(config.__retryCount >= config.retry) {
// Reject with the error
return Promise.reject(err);
}
// Increase the retry count
config.__retryCount += 1;
// Create new promise to handle exponential backoff
var backoff = new Promise(function(resolve) {
setTimeout(function() {
resolve();
}, config.retryDelay || 1);
});
// Return the promise in which recalls axios to retry the request
return backoff.then(function() {
return axios(config);
});
});
Vue.component('check', {
template: '<div class="check" :class="{ checked: value, disabled: disabled }" @keydown="handleKeyDown" @click="handleClick" tabindex="0"><div class="control"><div class="inner"></div></div><div class="label">{{ title }}</div></div>',
props: {
@ -119,7 +150,7 @@ function startApp()
});
var i18n = new VueI18n({
locale: navigator.language,
locale: navigator.language.split('-')[0],
fallbackLocale: 'en',
messages: messages
});
@ -338,7 +369,7 @@ function startApp()
loadStatus: function()
{
var self = this;
return axios.get('/api/status')
return axios.get('/api/status', { retry: 10, retryDelay: 1000 })
.then(function(response)
{
if (typeof response.data == 'object')
@ -350,7 +381,7 @@ function startApp()
loadConnection: function()
{
var self = this;
return axios.get('/api/connection')
return axios.get('/api/connection', { retry: 10, retryDelay: 1000 })
.then(function(response)
{
if (typeof response.data == 'object')
@ -362,7 +393,7 @@ function startApp()
loadSystem: function()
{
var self = this;
return axios.get('/api/system')
return axios.get('/api/system', { retry: 10, retryDelay: 1000 })
.then(function(response)
{
if (typeof response.data == 'object')
@ -374,7 +405,7 @@ function startApp()
loadTimeTriggers: function()
{
var self = this;
return axios.get('/api/triggers/time')
return axios.get('/api/triggers/time', { retry: 10, retryDelay: 1000 })
.then(function(response)
{
if (typeof response.data == 'object')
@ -419,7 +450,7 @@ function startApp()
loadMotionTriggers: function()
{
var self = this;
return axios.get('/api/triggers/motion')
return axios.get('/api/triggers/motion', { retry: 10, retryDelay: 1000 })
.then(function(response)
{
if (typeof response.data == 'object')
@ -431,7 +462,7 @@ function startApp()
loadSteps: function()
{
var self = this;
return axios.get('/api/steps/values')
return axios.get('/api/steps/values', { retry: 10, retryDelay: 1000 })
.then(function(response)
{
if (Array.isArray(response.data))
@ -481,7 +512,7 @@ function startApp()
ip: self.connection.ip,
subnetmask: self.connection.subnetmask,
gateway: self.connection.gateway,
})
}, { retry: 10, retryDelay: 1000 })
.then(function(response)
{
})
@ -499,7 +530,7 @@ function startApp()
self.saving = true;
axios.post('/api/system', self.system)
axios.post('/api/system', self.system, { retry: 10, retryDelay: 1000 })
.then(function(response)
{
self.showNotification(i18n.t('rebootPending'));
@ -595,7 +626,7 @@ function startApp()
var self = this;
if (!self.saving)
{
axios.get('/api/connection/status')
axios.get('/api/connection/status', { retry: 10, retryDelay: 1000 })
.then(function(response)
{
if (typeof response.data == 'object')
@ -693,7 +724,9 @@ function startApp()
axios.post('/api/steps/values', {
transitionTime: 1000,
values: steps
values: steps,
retry: 10,
retryDelay: 1000
})
.then(function(response)
{
@ -761,7 +794,7 @@ function startApp()
});
}
axios.post('/api/triggers/time', timeSettings)
axios.post('/api/triggers/time', timeSettings, { retry: 10, retryDelay: 1000 })
.then(function(response)
{
})
@ -806,7 +839,7 @@ function startApp()
self.saving = true;
axios.post('/api/triggers/motion', self.triggers.motion)
axios.post('/api/triggers/motion', self.triggers.motion, { retry: 10, retryDelay: 1000 })
.then(function(response)
{
})
@ -857,7 +890,7 @@ function startApp()
{
var self = this;
axios.get('/api/steps')
axios.get('/api/steps', { retry: 10, retryDelay: 1000 })
.then(function(response)
{
if (typeof response.data == 'object')
@ -945,7 +978,7 @@ function startApp()
count: self.calibration.count,
useCurve: self.calibration.useCurve,
ranges: self.calibration.ranges
})
}, { retry: 10, retryDelay: 1000 })
.then(function(response)
{
})
@ -960,7 +993,7 @@ function startApp()
{
var self = this;
return axios.get('/api/stacktrace/delete')
return axios.get('/api/stacktrace/delete', { retry: 10, retryDelay: 1000 })
.then(function(response)
{
self.status.resetReason = 0;

2
web/dist/bundle.js vendored

File diff suppressed because one or more lines are too long

View File

@ -54,10 +54,8 @@
{{ $t('error.stackTrace') }}
</p>
<div v-if="status.stackTrace">
<a class="button button-primary" href="/api/stacktrace/get">{{ $t('error.stackTraceDownload') }}</a>
<a class="button" @click="deleteStackTrace">{{ $t('error.stackTraceDelete') }}</a>
</div>
<a class="button button-primary" href="/api/stacktrace/get" v-if="status.stackTrace">{{ $t('error.stackTraceDownload') }}</a>
<a class="button" @click="deleteStackTrace">{{ $t('error.stackTraceDelete') }}</a>
</div>

View File

@ -168,7 +168,7 @@ var messages = {
},
stackTrace: 'A stack trace is available. Please send it to your nearest developer and/or delete it from this Stairs device to remove this message.',
stackTraceDownload: 'Download',
stackTraceDelete: 'Remove',
stackTraceDelete: 'Hide',
stackTraceDeleteError: 'Could not remove stack trace'
},
@ -354,7 +354,7 @@ var messages = {
},
stackTrace: 'Een stack trace is beschikbaar. Stuur het naar de dichtsbijzijnde ontwikkelaar en/of verwijder het van deze Trap module om dit bericht te verbergen.',
stackTraceDownload: 'Downloaden',
stackTraceDelete: 'Verwijderen',
stackTraceDelete: 'Verbergen',
stackTraceDeleteError: 'Kan stack trace niet verwijderen'
},