diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index ae57a56e363bbf81da57f40a84b9f50fa4256a27..2f2d95d4b7f748bfa2fe022162d5b867471b04a6 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -34,6 +34,4 @@ job1: - cat $OPENAIR_DIR/cmake_targets/autotests/log/results_autotests.xml - exce_log=`egrep -i 'warning|error|critical|exception' $OPENAIR_DIR/cmake_targets/autotests/log/python_autotest.log |cat ` - if [ -n "$exce_log" ]; then echo -e "\e[31mThere are errors in $NFS_TEST_RESULTS_DIR/log/python_autotest.log. Please check the logs\e[0m" ; fi - - exce_log=`egrep -i 'warning|error|critical|exception' $OPENAIR_DIR/cmake_targets/autotests/log/python_autotest_cleanup.log |cat ` - - if [ -n "$exce_log" ]; then echo -e "\e[31mThere are errors in $NFS_TEST_RESULTS_DIR/log/python_autotest_cleanup.log. Please check the logs\e[0m" ; fi diff --git a/cmake_targets/autotests/README.txt b/cmake_targets/autotests/README.txt index 31bf293a7bf76810e1d7a5237f422522a34a29ae..cf1e28dd050498d7107abbc8461d9b07e4486477 100644 --- a/cmake_targets/autotests/README.txt +++ b/cmake_targets/autotests/README.txt @@ -239,7 +239,7 @@ Obj.# Case# Test# Description 02 Functional test case -03 Non-Functional test case +03 Autotests specific to OAI UE 04 Failure test case @@ -249,6 +249,4 @@ Obj.# Case# Test# Description #TODO: Add test cases for 10,20 MHz #TODO: Add test cases for TDD/FDD #TODO: Test and compile seperately for Rel8/Rel10 -#TODO: Case03.py eMBMS test case - - +#TODO: Case03.py eMBMS test case \ No newline at end of file diff --git a/common/utils/T/tracer/enb.c b/common/utils/T/tracer/enb.c index b0ae285f6d0948e5d4fdcccfa93a86d3843d7090..3b8e2bf14e3c0eb147dc4b87381ab1826a9df10f 100644 --- a/common/utils/T/tracer/enb.c +++ b/common/utils/T/tracer/enb.c @@ -139,7 +139,7 @@ static void enb_main_gui(enb_gui *e, gui *g, event_handler *h, void *database) logger_add_view(input_signal_log, input_signal_view); /* UE 0 PUSCH IQ data */ - w = new_xy_plot(g, 55, 55, "PUSCH IQ", 50); + w = new_xy_plot(g, 55, 55, "PUSCH IQ [UE 0]", 50); widget_add_child(g, line, w, -1); xy_plot_set_range(g, w, -1000, 1000, -1000, 1000); l = new_iqlog(h, database, "ENB_PHY_PUSCH_IQ", "nb_rb", @@ -149,11 +149,10 @@ static void enb_main_gui(enb_gui *e, gui *g, event_handler *h, void *database) logger_set_filter(l, filter_eq( filter_evarg(database, "ENB_PHY_PUSCH_IQ", "UE_ID"), - filter_int(0) - )); + filter_int(0))); /* UE 0 estimated UL channel */ - w = new_xy_plot(g, 256*2, 55, "UL estimated channel", 50); + w = new_xy_plot(g, 280, 55, "UL estimated channel [UE 0]", 50); widget_add_child(g, line, w, -1); xy_plot_set_range(g, w, 0, 512*10, -10, 80); l = new_framelog(h, database, @@ -165,12 +164,44 @@ static void enb_main_gui(enb_gui *e, gui *g, event_handler *h, void *database) logger_set_filter(l, filter_eq( filter_evarg(database, "ENB_PHY_UL_CHANNEL_ESTIMATE", "UE_ID"), - filter_int(0) - )); + filter_int(0))); + + /* UE 0 PUCCH energy */ + w = new_xy_plot(g, 128, 55, "PUCCH1 energy (SR) [UE 0]", 50); + widget_add_child(g, line, w, -1); + xy_plot_set_range(g, w, 0, 1024*10, -10, 80); + l = new_ttilog(h, database, + "ENB_PHY_PUCCH_1_ENERGY", "frame", "subframe", "threshold", 0); + v = new_view_tti(10, g, w, new_color(g, "#ff0000")); + logger_add_view(l, v); + logger_set_filter(l, + filter_eq( + filter_evarg(database, "ENB_PHY_PUCCH_1_ENERGY", "UE_ID"), + filter_int(0))); + l = new_ttilog(h, database, + "ENB_PHY_PUCCH_1_ENERGY", "frame", "subframe", "energy", 1); + v = new_view_tti(10, g, w, new_color(g, "#0c0c72")); + logger_add_view(l, v); + logger_set_filter(l, + filter_eq( + filter_evarg(database, "ENB_PHY_PUCCH_1_ENERGY", "UE_ID"), + filter_int(0))); + + /* UE 0 PUCCH IQ data */ + w = new_xy_plot(g, 55, 55, "PUCCH IQ [UE 0]", 50); + widget_add_child(g, line, w, -1); + xy_plot_set_range(g, w, -100, 100, -100, 100); + l = new_iqdotlog(h, database, "ENB_PHY_PUCCH_1AB_IQ", "I", "Q"); + v = new_view_xy(500, 10, g, w, new_color(g,"#000"), XY_LOOP_MODE); + logger_add_view(l, v); + logger_set_filter(l, + filter_eq( + filter_evarg(database, "ENB_PHY_PUCCH_1AB_IQ", "UE_ID"), + filter_int(0))); /* downlink/uplink UE DCIs */ widget_add_child(g, top_container, - new_label(g,"DL/UL TICK/DCI/ACK/NACK "), -1); + new_label(g,"DL/UL TICK/DCI/ACK/NACK [all UEs]"), -1); line = new_container(g, HORIZONTAL); widget_add_child(g, top_container, line, -1); timeline_plot = new_timeline(g, 512, 8, 5); @@ -220,7 +251,7 @@ static void enb_main_gui(enb_gui *e, gui *g, event_handler *h, void *database) /* harq processes' ticktime view */ widget_add_child(g, top_container, - new_label(g,"DL/UL HARQ (x8) "), -1); + new_label(g,"DL/UL HARQ (x8) [UE 0]"), -1); line = new_container(g, HORIZONTAL); widget_add_child(g, top_container, line, -1); timeline_plot = new_timeline(g, 512, 2*8+2, 3); @@ -491,6 +522,8 @@ int main(int n, char **v) on_off(database, "ENB_PHY_ULSCH_UE_NACK", is_on, 1); on_off(database, "ENB_MASTER_TICK", is_on, 1); on_off(database, "ENB_PHY_PUSCH_IQ", is_on, 1); + on_off(database, "ENB_PHY_PUCCH_1_ENERGY", is_on, 1); + on_off(database, "ENB_PHY_PUCCH_1AB_IQ", is_on, 1); on_off(database, "LEGACY_RRC_INFO", is_on, 1); on_off(database, "LEGACY_RRC_ERROR", is_on, 1); diff --git a/common/utils/T/tracer/logger/Makefile b/common/utils/T/tracer/logger/Makefile index 8d23717a1329ba42cd5a156e47df673246ef13c3..92431739dba89d44104bc8c509daec7ea479af2b 100644 --- a/common/utils/T/tracer/logger/Makefile +++ b/common/utils/T/tracer/logger/Makefile @@ -1,7 +1,8 @@ CC=gcc CFLAGS=-Wall -g -pthread -I.. -OBJS=logger.o textlog.o framelog.o ttilog.o timelog.o ticklog.o iqlog.o +OBJS=logger.o textlog.o framelog.o ttilog.o timelog.o ticklog.o iqlog.o \ + iqdotlog.o logger.a: $(OBJS) ar cr logger.a $(OBJS) diff --git a/common/utils/T/tracer/logger/iqdotlog.c b/common/utils/T/tracer/logger/iqdotlog.c new file mode 100644 index 0000000000000000000000000000000000000000..f635f9718ddd9fac158dd43ac51b11ada8d79d4b --- /dev/null +++ b/common/utils/T/tracer/logger/iqdotlog.c @@ -0,0 +1,82 @@ +#include "logger.h" +#include "logger_defs.h" +#include "handler.h" +#include "database.h" +#include "filter/filter.h" +#include <stdlib.h> +#include <string.h> +#include <stdio.h> + +struct iqdotlog { + struct logger common; + void *database; + int i_arg; + int q_arg; +}; + +static void _event(void *p, event e) +{ + struct iqdotlog *l = p; + int i; + float I, Q; + + if (l->common.filter != NULL && filter_eval(l->common.filter, e) == 0) + return; + + I = e.e[l->i_arg].i; + Q = e.e[l->q_arg].i; + + for (i = 0; i < l->common.vsize; i++) + l->common.v[i]->append(l->common.v[i], &I, &Q, 1); +} + +logger *new_iqdotlog(event_handler *h, void *database, + char *event_name, char *I, char *Q) +{ + struct iqdotlog *ret; + int event_id; + database_event_format f; + int i; + + ret = calloc(1, sizeof(struct iqdotlog)); if (ret == NULL) abort(); + + ret->common.event_name = strdup(event_name); + if (ret->common.event_name == NULL) abort(); + ret->database = database; + + event_id = event_id_from_name(database, event_name); + + ret->common.handler_id = register_handler_function(h,event_id,_event,ret); + + f = get_format(database, event_id); + + /* look for args */ + ret->i_arg = -1; + ret->q_arg = -1; + for (i = 0; i < f.count; i++) { + if (!strcmp(f.name[i], I)) ret->i_arg = i; + if (!strcmp(f.name[i], Q)) ret->q_arg = i; + } + if (ret->i_arg == -1) { + printf("%s:%d: argument '%s' not found in event '%s'\n", + __FILE__, __LINE__, I, event_name); + abort(); + } + if (ret->q_arg == -1) { + printf("%s:%d: argument '%s' not found in event '%s'\n", + __FILE__, __LINE__, Q, event_name); + abort(); + } + if (strcmp(f.type[ret->i_arg], "int") != 0) { + printf("%s:%d: argument '%s' has wrong type (should be 'int')\n", + __FILE__, __LINE__, I); + abort(); + } + if (strcmp(f.type[ret->q_arg], "int") != 0) { + printf("%s:%d: argument '%s' has wrong type (should be 'int')\n", + __FILE__, __LINE__, Q); + abort(); + } + + return ret; +} diff --git a/common/utils/T/tracer/logger/iqlog.c b/common/utils/T/tracer/logger/iqlog.c index 3d303607ac9f2faf9c0ddf91971495b1300c4e5c..bea8adccc50b4815da137056f57c7517b0db9799 100644 --- a/common/utils/T/tracer/logger/iqlog.c +++ b/common/utils/T/tracer/logger/iqlog.c @@ -169,7 +169,7 @@ logger *new_iqlog(event_handler *h, void *database, } if (strcmp(f.type[ret->N_RB_UL_arg], "int") != 0) { printf("%s:%d: argument '%s' has wrong type (should be 'int')\n", - __FILE__, __LINE__, nb_rb); + __FILE__, __LINE__, N_RB_UL); abort(); } if (strcmp(f.type[ret->symbols_per_tti_arg], "int") != 0) { diff --git a/common/utils/T/tracer/logger/logger.h b/common/utils/T/tracer/logger/logger.h index a777581db91e513509a5abb0ebed9cfa359cc4e5..b2ab4f8cbcd09367d30ffa74a0d16891f83b4264 100644 --- a/common/utils/T/tracer/logger/logger.h +++ b/common/utils/T/tracer/logger/logger.h @@ -16,6 +16,8 @@ logger *new_ticklog(void *event_handler, void *database, logger *new_iqlog(void *event_handler, void *database, char *event_name, char *nb_rb, char *N_RB_UL, char *symbols_per_tti, char *buffer_varname); +logger *new_iqdotlog(void *event_handler, void *database, + char *event_name, char *I, char *Q); void framelog_set_skip(logger *_this, int skip_delay); void framelog_set_update_only_at_sf9(logger *_this, int update_only_at_sf9); diff --git a/common/utils/T/tracer/openair_logo.h b/common/utils/T/tracer/openair_logo.h index 4a98c3d871623984c99236d276fd68a8183da879..4fc49cce3a3eb0068b31dc60fb5b4c830701890a 100644 --- a/common/utils/T/tracer/openair_logo.h +++ b/common/utils/T/tracer/openair_logo.h @@ -3,393 +3,590 @@ */ unsigned char openair_logo_png[] = { 0x89, 0x50, 0x4e, 0x47, 0x0d, 0x0a, 0x1a, 0x0a, 0x00, 0x00, 0x00, 0x0d, - 0x49, 0x48, 0x44, 0x52, 0x00, 0x00, 0x00, 0x64, 0x00, 0x00, 0x00, 0x28, - 0x08, 0x06, 0x00, 0x00, 0x00, 0x08, 0x78, 0x5f, 0x43, 0x00, 0x00, 0x00, - 0x06, 0x62, 0x4b, 0x47, 0x44, 0x00, 0xff, 0x00, 0xff, 0x00, 0xff, 0xa0, - 0xbd, 0xa7, 0x93, 0x00, 0x00, 0x00, 0x09, 0x70, 0x48, 0x59, 0x73, 0x00, - 0x00, 0x0b, 0x13, 0x00, 0x00, 0x0b, 0x13, 0x01, 0x00, 0x9a, 0x9c, 0x18, - 0x00, 0x00, 0x00, 0x07, 0x74, 0x49, 0x4d, 0x45, 0x07, 0xe0, 0x05, 0x17, - 0x0e, 0x30, 0x2a, 0xd1, 0xdd, 0x83, 0x5b, 0x00, 0x00, 0x11, 0xc5, 0x49, - 0x44, 0x41, 0x54, 0x68, 0xde, 0xed, 0x9b, 0x79, 0x70, 0x94, 0xe7, 0x7d, - 0xc7, 0x3f, 0xcf, 0xf3, 0xbe, 0xbb, 0x2b, 0xed, 0xea, 0xbe, 0xef, 0x03, - 0x24, 0x10, 0x08, 0x8c, 0xb9, 0x31, 0x06, 0x73, 0xd4, 0xd8, 0x4e, 0x38, - 0x62, 0x63, 0x77, 0x92, 0x90, 0xcb, 0x9d, 0x34, 0x19, 0x27, 0xce, 0xa4, - 0xed, 0x8c, 0xd3, 0x78, 0xd2, 0x64, 0xd2, 0x36, 0x9d, 0x34, 0xa9, 0xdb, - 0xa6, 0x99, 0xb6, 0x49, 0x67, 0x82, 0xe3, 0x24, 0x76, 0x9a, 0x34, 0x76, - 0x5c, 0x1f, 0x18, 0x8f, 0x31, 0xc4, 0xc6, 0x06, 0xcc, 0x69, 0x21, 0xb0, - 0x05, 0x08, 0x1d, 0x80, 0x2e, 0x74, 0xae, 0xa4, 0xbd, 0xb4, 0xbb, 0xef, - 0xfb, 0x3c, 0xfd, 0x63, 0x57, 0x2b, 0xd6, 0x12, 0x58, 0x60, 0x32, 0x74, - 0xb0, 0x9f, 0x99, 0x1d, 0x69, 0x9f, 0xe7, 0xf9, 0x3d, 0xd7, 0xf7, 0x77, - 0x3f, 0xcf, 0x0a, 0xad, 0xb5, 0xe6, 0x43, 0x5a, 0x94, 0xd6, 0xf4, 0x07, - 0xc3, 0xf8, 0xa3, 0x51, 0x3a, 0x47, 0xfc, 0xf4, 0x05, 0x82, 0x0c, 0xf8, - 0x43, 0x98, 0x52, 0x50, 0xec, 0x49, 0xa5, 0x38, 0xdd, 0x4d, 0x71, 0xba, - 0x87, 0x34, 0x97, 0x93, 0x74, 0x97, 0x13, 0x21, 0xc4, 0x1f, 0x7d, 0x4d, - 0xe2, 0xc3, 0x0a, 0xc8, 0xde, 0xce, 0x3e, 0xde, 0xea, 0x1e, 0x60, 0x45, - 0x51, 0x2e, 0x45, 0x9e, 0x14, 0x72, 0x52, 0x9c, 0xa4, 0x3b, 0x1d, 0x38, - 0x0d, 0x03, 0x04, 0x44, 0x6d, 0x9b, 0x50, 0xc4, 0xc2, 0x1f, 0x8e, 0x30, - 0x1c, 0x0a, 0xd1, 0xed, 0x1d, 0xa1, 0x36, 0x3f, 0x97, 0x19, 0x05, 0xb9, - 0x1f, 0x01, 0x72, 0x3d, 0xcb, 0x68, 0x24, 0xca, 0x7f, 0x34, 0xb6, 0x30, - 0x37, 0x27, 0x83, 0x7b, 0x67, 0x96, 0x5e, 0x15, 0x6d, 0x63, 0x47, 0x0f, - 0x03, 0x23, 0x3e, 0x6e, 0x9f, 0x5d, 0x4d, 0x8a, 0xc3, 0xf1, 0x11, 0x20, - 0x1f, 0xb4, 0xbc, 0x7c, 0xbe, 0x97, 0x0e, 0x9f, 0x9f, 0x7b, 0x67, 0x94, - 0x51, 0xe0, 0x76, 0x5d, 0xd3, 0x18, 0xc1, 0x48, 0x84, 0x53, 0x1d, 0xdd, - 0xe4, 0x78, 0xdc, 0x54, 0x17, 0x15, 0x7c, 0x04, 0xc8, 0xb5, 0x96, 0x86, - 0xfe, 0x61, 0x0e, 0x5c, 0x1c, 0xe4, 0xe1, 0xf9, 0x33, 0xaf, 0xcb, 0x78, - 0xa7, 0x2e, 0x74, 0x91, 0x9b, 0x91, 0x46, 0x41, 0x56, 0xe6, 0x75, 0x5d, - 0xa7, 0xfc, 0x30, 0x80, 0xb1, 0xaf, 0x67, 0x90, 0x97, 0xcf, 0xf7, 0x4d, - 0x0b, 0x8c, 0xd1, 0x70, 0x04, 0x7f, 0x38, 0xfa, 0xbe, 0xfd, 0xe6, 0x54, - 0x94, 0xd2, 0x33, 0xe8, 0x65, 0x60, 0x78, 0xe4, 0xba, 0xae, 0xd5, 0xbc, - 0xd9, 0xc1, 0x08, 0x5a, 0x36, 0xfb, 0x7b, 0x86, 0xf8, 0xd6, 0x92, 0x59, - 0x97, 0xed, 0xd3, 0xe1, 0x0b, 0xf2, 0xf8, 0x89, 0xb3, 0x48, 0x65, 0x33, - 0x33, 0xc3, 0x83, 0x43, 0x08, 0x46, 0x82, 0x21, 0xd2, 0x1d, 0x06, 0x1b, - 0xea, 0x66, 0x90, 0xeb, 0x71, 0x4f, 0x49, 0xb7, 0x60, 0x66, 0x15, 0x0d, - 0x67, 0x5a, 0xc8, 0xf0, 0xb8, 0x71, 0x5e, 0x27, 0x9b, 0x72, 0xd3, 0xab, - 0xac, 0x7f, 0x6a, 0x38, 0xcb, 0xa6, 0xaa, 0x22, 0xe6, 0x66, 0xa7, 0x4f, - 0x6a, 0x3b, 0x37, 0x1a, 0x64, 0xe7, 0xb9, 0x6e, 0xb2, 0x9d, 0x0e, 0xb6, - 0xd6, 0x96, 0xe3, 0x32, 0x92, 0x15, 0x86, 0x65, 0x2b, 0x1a, 0x3b, 0xba, - 0x51, 0xb6, 0xa2, 0xb6, 0x28, 0x8f, 0xac, 0x29, 0x80, 0x09, 0x85, 0xc3, - 0xf4, 0x0d, 0x0e, 0x53, 0x59, 0x52, 0xf8, 0x91, 0x84, 0xbc, 0x5f, 0x79, - 0x77, 0xc8, 0x87, 0x37, 0x6c, 0x4d, 0x09, 0x46, 0x87, 0x2f, 0xc4, 0x4f, - 0xdf, 0x69, 0xe3, 0x6f, 0x97, 0xcd, 0x21, 0xd5, 0x34, 0xa6, 0x3e, 0x1c, - 0x43, 0xb2, 0xb8, 0xaa, 0x8c, 0xa8, 0x6d, 0xd3, 0xd8, 0x7a, 0x9e, 0xb9, - 0x95, 0xa5, 0xb8, 0x5d, 0xc9, 0xce, 0x40, 0xaa, 0xcb, 0xc5, 0xa8, 0xdf, - 0x8f, 0x52, 0xf9, 0x48, 0x79, 0x1d, 0x2c, 0x80, 0xbe, 0x89, 0xcb, 0x5f, - 0xee, 0x3b, 0xa9, 0xb5, 0x9a, 0x5c, 0xdf, 0x1f, 0x0a, 0xeb, 0x07, 0x77, - 0x1f, 0x9b, 0x54, 0xef, 0x1d, 0x0b, 0xeb, 0xd6, 0xa1, 0x11, 0x7d, 0xde, - 0x3b, 0xaa, 0xfd, 0xe1, 0x48, 0x52, 0x9b, 0xd2, 0x4a, 0xbf, 0x71, 0xfc, - 0x1d, 0x1d, 0x89, 0x46, 0x27, 0xd1, 0x05, 0x82, 0x21, 0x7d, 0xa6, 0xa5, - 0xed, 0xba, 0xac, 0xf9, 0xa6, 0x95, 0x90, 0xd1, 0x88, 0x45, 0x65, 0x7a, - 0x2a, 0x4c, 0x11, 0x5c, 0x3f, 0xdd, 0xd2, 0xc5, 0xbf, 0xae, 0x9a, 0x9f, - 0x54, 0xf7, 0xc3, 0xa3, 0xa7, 0x29, 0x48, 0x71, 0xb0, 0xa2, 0x30, 0x07, - 0x5b, 0xc0, 0xa1, 0xf6, 0x0e, 0xa4, 0xb2, 0x59, 0x3b, 0xa7, 0x36, 0xa6, - 0xdb, 0x11, 0xac, 0x9c, 0x3f, 0x87, 0xd3, 0xed, 0xe7, 0xa9, 0x9f, 0x59, - 0x9d, 0x44, 0xeb, 0x4e, 0x4d, 0x21, 0x1c, 0x8d, 0x60, 0xdb, 0x0a, 0xc3, - 0x90, 0xfc, 0x67, 0x63, 0x1b, 0xbf, 0x69, 0xef, 0x27, 0x64, 0xab, 0xd8, - 0xf4, 0xd2, 0x60, 0xd7, 0xc7, 0x17, 0x91, 0xe3, 0x8a, 0x1d, 0xf7, 0xe3, - 0xef, 0x9c, 0xe3, 0x17, 0x67, 0x7b, 0xc9, 0x4e, 0x75, 0xf1, 0xcd, 0x85, - 0xd5, 0xdc, 0x5e, 0x98, 0x79, 0xf3, 0xab, 0xac, 0xe1, 0x48, 0x74, 0x4a, - 0x55, 0x15, 0xb2, 0x6d, 0xbc, 0x91, 0x28, 0xd9, 0xae, 0x09, 0x23, 0xfc, - 0x58, 0x43, 0x33, 0x9b, 0x67, 0x94, 0x32, 0x37, 0x67, 0xa2, 0x7f, 0x6d, - 0x5e, 0x36, 0x43, 0xfe, 0x20, 0x0d, 0x2d, 0xed, 0x2c, 0xac, 0x89, 0x01, - 0x60, 0x48, 0x49, 0xa6, 0xc7, 0x43, 0x24, 0x1a, 0x9d, 0x64, 0xc4, 0x0b, - 0x72, 0x73, 0x09, 0x04, 0x83, 0x64, 0xa4, 0xa7, 0xd1, 0x36, 0x1a, 0xa4, - 0x69, 0x38, 0xcc, 0x33, 0x1b, 0xea, 0x09, 0x5a, 0x0a, 0x1b, 0xf0, 0x98, - 0x12, 0xb4, 0x66, 0xcb, 0x8b, 0x87, 0x79, 0x7b, 0x34, 0xc2, 0xf7, 0x97, - 0xd5, 0xd0, 0x33, 0xea, 0xe7, 0xae, 0x17, 0x8e, 0xf0, 0xe4, 0x5d, 0x8b, - 0xd8, 0x5a, 0x99, 0x73, 0x73, 0x03, 0x32, 0x12, 0x89, 0x92, 0xee, 0x9c, - 0xbc, 0xbd, 0x5f, 0x9e, 0xee, 0x60, 0x55, 0xf1, 0x44, 0xfa, 0xe3, 0xdf, - 0x1a, 0x5b, 0x59, 0x92, 0x9f, 0x93, 0x04, 0xc6, 0x78, 0xc9, 0x49, 0x73, - 0x13, 0xcc, 0x48, 0xa7, 0x7f, 0xc8, 0x4b, 0x7e, 0x4e, 0x36, 0x00, 0x69, - 0xee, 0x54, 0x02, 0x81, 0x20, 0xce, 0xf7, 0xc4, 0x1f, 0x99, 0xe9, 0xe9, - 0xf8, 0xfc, 0x7e, 0x74, 0x9a, 0x07, 0x7f, 0xd4, 0x26, 0xc3, 0x65, 0x72, - 0xbc, 0x6f, 0x04, 0xbf, 0xd2, 0x3c, 0x30, 0xa3, 0x18, 0x97, 0x21, 0x19, - 0x0c, 0x8e, 0x71, 0xc6, 0x1f, 0x66, 0x43, 0x65, 0x11, 0x9f, 0x9f, 0x55, - 0x0c, 0xc0, 0x17, 0xeb, 0x2b, 0x89, 0xe8, 0x0f, 0x41, 0x1c, 0xd2, 0x13, - 0x1c, 0x23, 0x63, 0x0a, 0x57, 0xf4, 0xe5, 0x0b, 0xbd, 0xdc, 0x56, 0x18, - 0xe3, 0x46, 0x0d, 0x1c, 0xe9, 0x1f, 0x66, 0x5d, 0x59, 0x5e, 0xcc, 0xab, - 0xd2, 0x9a, 0xed, 0xa7, 0x3a, 0xd9, 0x7e, 0xaa, 0x13, 0x3b, 0xee, 0x7c, - 0x96, 0x15, 0xe4, 0xd1, 0x76, 0xa1, 0x73, 0xc2, 0x88, 0xa7, 0xb8, 0x18, - 0x1e, 0xf5, 0x4d, 0x0e, 0xe8, 0x0c, 0x09, 0x08, 0x34, 0x10, 0x88, 0x5a, - 0x78, 0x43, 0x21, 0x5e, 0xec, 0x18, 0x62, 0x5f, 0xe7, 0x20, 0x8b, 0x9f, - 0x39, 0xc0, 0x6f, 0xdb, 0x07, 0x70, 0x4a, 0x81, 0x00, 0x0c, 0x21, 0xe8, - 0x1d, 0xf1, 0xb1, 0xf8, 0x99, 0xb7, 0xd8, 0xb8, 0xf3, 0x18, 0x47, 0x07, - 0xfc, 0x37, 0x3f, 0x20, 0x1e, 0xc3, 0x24, 0xcb, 0x35, 0x19, 0x90, 0xd9, - 0x59, 0x69, 0x38, 0xa4, 0x48, 0xe4, 0xb5, 0xee, 0xad, 0x2e, 0x4e, 0xb4, - 0xf5, 0x06, 0x23, 0xbc, 0x70, 0xae, 0x8f, 0x1d, 0xe7, 0xfb, 0x39, 0xed, - 0x0d, 0x24, 0xea, 0x73, 0x33, 0x33, 0x12, 0xff, 0x3b, 0x4c, 0x13, 0xa7, - 0x39, 0x59, 0xf2, 0xa4, 0x90, 0x38, 0x1c, 0x26, 0x42, 0x08, 0xfe, 0xe2, - 0xd6, 0x99, 0xfc, 0x6e, 0xc3, 0xad, 0xbc, 0xb6, 0x65, 0x09, 0xbb, 0x3e, - 0xb1, 0x8c, 0xfb, 0xcb, 0xb3, 0xf8, 0x61, 0xc3, 0xb9, 0x84, 0x37, 0x27, - 0x80, 0x5c, 0x4f, 0x2a, 0xdf, 0x5e, 0x3c, 0x83, 0x40, 0x34, 0xca, 0xf6, - 0xa6, 0xee, 0x9b, 0xdf, 0x86, 0xdc, 0x5e, 0x9c, 0x33, 0x75, 0x5c, 0x72, - 0x5b, 0xfd, 0x84, 0x9a, 0x71, 0x3a, 0xf8, 0xd3, 0x99, 0x25, 0x89, 0xef, - 0xa5, 0x1e, 0x17, 0x2f, 0x7c, 0x6c, 0xd1, 0x24, 0x9a, 0x9a, 0xea, 0xca, - 0x89, 0x83, 0x97, 0x92, 0xd2, 0x92, 0xa2, 0xc9, 0x2e, 0xb2, 0x69, 0x90, - 0x95, 0x99, 0x81, 0xd2, 0x9a, 0x1d, 0x6d, 0x17, 0x39, 0xe8, 0x0d, 0xb1, - 0xa1, 0x2c, 0x17, 0x8d, 0x26, 0x60, 0xd9, 0xb8, 0x1d, 0x4e, 0x24, 0x60, - 0x4a, 0xc1, 0xc5, 0xe0, 0x18, 0xd2, 0x30, 0x59, 0x5d, 0x94, 0x85, 0x29, - 0x48, 0x30, 0xc8, 0xa4, 0xc0, 0x30, 0x14, 0x0a, 0xd2, 0xd1, 0xd1, 0x85, - 0xdf, 0xef, 0xc7, 0x30, 0x0c, 0x72, 0x73, 0x73, 0x28, 0x2b, 0x2b, 0x9b, - 0x34, 0x79, 0x67, 0x67, 0x27, 0x7d, 0x7d, 0x7d, 0xc9, 0x11, 0xa6, 0x10, - 0xa4, 0xa5, 0xa5, 0x51, 0x56, 0x56, 0x4e, 0x6a, 0x6a, 0xca, 0x24, 0x9a, - 0xf6, 0xf6, 0x76, 0xbc, 0x5e, 0xef, 0x94, 0x87, 0xa4, 0x94, 0xa2, 0xb8, - 0xb8, 0x98, 0xd2, 0xd2, 0x58, 0xf6, 0xb5, 0xbf, 0xbf, 0x9f, 0x8e, 0x8e, - 0x0e, 0x4a, 0x4b, 0x4b, 0x29, 0x2c, 0x2c, 0xbc, 0xd4, 0x45, 0xa7, 0xb9, - 0xb9, 0x99, 0x40, 0x20, 0x80, 0xd3, 0xe9, 0xa4, 0xbe, 0xbe, 0xfe, 0xaa, - 0xee, 0x28, 0x0e, 0x5c, 0x1c, 0xe6, 0xf8, 0xa0, 0x8f, 0x95, 0x85, 0x59, - 0xdc, 0x9a, 0x37, 0xd9, 0x66, 0x74, 0x07, 0xc2, 0x3c, 0xdd, 0x7a, 0x11, - 0x29, 0x04, 0x1b, 0xca, 0x73, 0xa9, 0xcb, 0xf2, 0x4c, 0xd0, 0x0d, 0x8c, - 0xa2, 0x92, 0x24, 0x42, 0x50, 0x90, 0xe2, 0x64, 0x79, 0x61, 0x26, 0xe5, - 0x69, 0xc9, 0xfb, 0x7d, 0x77, 0x60, 0x84, 0x47, 0xde, 0x3a, 0xc3, 0xbb, - 0xc3, 0x21, 0x9c, 0x02, 0x8a, 0xd3, 0xdd, 0xfc, 0xe4, 0x8e, 0x7a, 0xe6, - 0x67, 0xbb, 0xd9, 0xd1, 0xda, 0xc3, 0x3f, 0x34, 0xb4, 0x33, 0x10, 0xb6, - 0x89, 0xda, 0x36, 0x17, 0x02, 0x63, 0x6c, 0xa8, 0x28, 0x61, 0xd7, 0xc6, - 0x5b, 0x92, 0x25, 0xe4, 0xb5, 0xd7, 0x5e, 0xa7, 0xb1, 0xb1, 0x71, 0xd2, - 0x22, 0x0d, 0xc3, 0x60, 0xf3, 0xe6, 0x4d, 0x54, 0x55, 0x55, 0x01, 0xd0, - 0xd2, 0xd2, 0xca, 0x73, 0xcf, 0x3d, 0x87, 0x69, 0x5e, 0x5e, 0xb8, 0xe6, - 0xcd, 0x9b, 0xc7, 0x9d, 0x77, 0xfe, 0x49, 0xe2, 0xfb, 0xd1, 0xa3, 0x47, - 0xd9, 0xbb, 0xf7, 0x0d, 0x0c, 0x63, 0xea, 0x00, 0xcc, 0xb6, 0x6d, 0x56, - 0xac, 0x58, 0x4e, 0x69, 0x69, 0x29, 0xd1, 0x68, 0x94, 0x27, 0x9e, 0xf8, - 0x05, 0x4e, 0xa7, 0x13, 0x87, 0xc3, 0xc1, 0xb6, 0x6d, 0x9f, 0x26, 0x3b, - 0x3b, 0x3b, 0x01, 0xdc, 0xf1, 0xe3, 0x8d, 0xf4, 0xf4, 0xf4, 0x90, 0x99, - 0x99, 0x49, 0x7d, 0x7d, 0xfd, 0xb4, 0xc1, 0xd8, 0xdb, 0x33, 0xc4, 0xdd, - 0x3b, 0x8e, 0xe1, 0x36, 0x0d, 0xa2, 0x4a, 0x73, 0xf4, 0xfe, 0x15, 0xcc, - 0x8e, 0x1f, 0xf8, 0x78, 0x39, 0xef, 0x0f, 0xf1, 0xe8, 0xa1, 0xb3, 0xb8, - 0x0c, 0x41, 0x5e, 0x8a, 0x83, 0xba, 0x2c, 0x0f, 0xbb, 0x3b, 0x07, 0xf9, - 0xe4, 0xee, 0x46, 0xa6, 0xca, 0x67, 0x8c, 0xb3, 0xc2, 0x7d, 0xd5, 0x85, - 0x6c, 0x5f, 0x3b, 0xb1, 0x96, 0xfa, 0xbc, 0x4c, 0x76, 0x6e, 0x5e, 0xc6, - 0x38, 0xaf, 0x0b, 0x21, 0x12, 0x7d, 0x37, 0xcd, 0x2c, 0x66, 0xe3, 0x8c, - 0x62, 0x34, 0xfa, 0x92, 0x71, 0x26, 0x98, 0xca, 0xb4, 0x6d, 0x9b, 0x17, - 0x5e, 0x78, 0x91, 0xd6, 0xd6, 0x56, 0x84, 0x10, 0x54, 0x54, 0x94, 0x53, - 0x54, 0x54, 0x44, 0x24, 0x12, 0xa5, 0xad, 0xad, 0x8d, 0x40, 0x20, 0xc0, - 0xef, 0x7f, 0xff, 0x2c, 0x5b, 0xb7, 0xde, 0x47, 0x75, 0x75, 0x35, 0x3e, - 0x9f, 0x0f, 0x21, 0x04, 0x4a, 0x29, 0x66, 0xcc, 0x98, 0x41, 0x41, 0x41, - 0x01, 0x5a, 0x2b, 0x6c, 0x5b, 0xd1, 0xd3, 0xd3, 0x43, 0x57, 0x57, 0x17, - 0x8d, 0x8d, 0x8d, 0x8c, 0x8e, 0xfa, 0xb8, 0xf7, 0xde, 0x2d, 0x48, 0x29, - 0xf1, 0x7a, 0x87, 0x13, 0x34, 0x75, 0x75, 0x75, 0x64, 0x65, 0x65, 0x72, - 0x69, 0xc6, 0x46, 0x29, 0x4d, 0x69, 0x69, 0x4c, 0x12, 0xfd, 0x7e, 0x7f, - 0xa2, 0x2d, 0x1c, 0x0e, 0xb3, 0x67, 0xcf, 0x6b, 0x3c, 0xf0, 0xc0, 0xd6, - 0x0f, 0xac, 0xc2, 0xbe, 0xf6, 0xe6, 0x69, 0x52, 0xe2, 0xa9, 0x11, 0x01, - 0xfc, 0xd5, 0xfe, 0x33, 0xec, 0xdc, 0x98, 0xac, 0x9e, 0xf4, 0x7b, 0xfe, - 0x02, 0x0c, 0x86, 0xa3, 0x68, 0x1d, 0x33, 0xf8, 0x6b, 0x8b, 0x73, 0x58, - 0x51, 0x98, 0x89, 0xa5, 0x35, 0x96, 0xd2, 0x9c, 0x1c, 0xf2, 0xb1, 0xab, - 0x63, 0x90, 0xff, 0x6e, 0xe9, 0xe1, 0x1d, 0xaf, 0x8f, 0x5d, 0x1b, 0x97, - 0x90, 0x11, 0xf7, 0xec, 0x44, 0x1c, 0x88, 0x29, 0xf3, 0x55, 0x22, 0x19, - 0x84, 0x24, 0xd5, 0x37, 0x3a, 0x3a, 0x4a, 0x47, 0x47, 0x07, 0x86, 0x61, - 0x24, 0x38, 0x7b, 0x7c, 0xa0, 0x45, 0x8b, 0x16, 0xf2, 0xd4, 0x53, 0xbf, - 0x46, 0x6b, 0xcd, 0xab, 0xaf, 0xee, 0xe6, 0xcb, 0x5f, 0xfe, 0x52, 0xa2, - 0x4d, 0x29, 0x45, 0x4d, 0xcd, 0x4c, 0xe6, 0xcd, 0x9b, 0x97, 0xc4, 0xe9, - 0x3b, 0x77, 0xbe, 0x4c, 0x6b, 0x6b, 0x2b, 0xed, 0xed, 0xed, 0x84, 0xc3, - 0x61, 0x52, 0x53, 0x53, 0x13, 0x34, 0xb6, 0x6d, 0x53, 0x5f, 0x3f, 0x97, - 0xca, 0xca, 0xca, 0xcb, 0x27, 0xd7, 0x2e, 0xd9, 0x84, 0x94, 0x92, 0xf3, - 0xe7, 0xcf, 0x71, 0xe2, 0xc4, 0x49, 0x6e, 0xb9, 0x65, 0xfe, 0x35, 0x83, - 0xb1, 0xb7, 0xdb, 0xcb, 0x05, 0x7f, 0x08, 0x43, 0x08, 0x6c, 0xad, 0x31, - 0xa5, 0xe0, 0x8d, 0x8b, 0x5e, 0xce, 0x8e, 0x04, 0xa9, 0xcd, 0x74, 0x5f, - 0x39, 0xd9, 0x17, 0x3f, 0x38, 0x4b, 0x69, 0xee, 0x2c, 0xcb, 0xe1, 0xeb, - 0xf3, 0x93, 0xd7, 0xfe, 0x9d, 0xc3, 0x67, 0xf9, 0xf1, 0xc9, 0x0b, 0x9c, - 0x1d, 0x0e, 0x72, 0xa0, 0x77, 0x98, 0x7b, 0xca, 0xf3, 0x3e, 0x58, 0xfa, - 0x5d, 0x29, 0x85, 0x6d, 0xdb, 0x00, 0x14, 0x16, 0x16, 0x24, 0x1d, 0x48, - 0x76, 0x76, 0x36, 0x5a, 0x6b, 0x84, 0x10, 0x04, 0x83, 0xc1, 0xe9, 0xa4, - 0x61, 0x88, 0x46, 0x63, 0xa9, 0xeb, 0x71, 0x8f, 0x63, 0x2a, 0xee, 0xb8, - 0x9a, 0x62, 0x18, 0x06, 0xfb, 0xf7, 0xef, 0x23, 0x18, 0x0c, 0x5d, 0x5b, - 0x6a, 0x08, 0x78, 0xaa, 0xb9, 0x1b, 0x43, 0x08, 0x94, 0xd6, 0x3c, 0xb2, - 0xa0, 0x8a, 0x90, 0x65, 0xe3, 0x90, 0x82, 0xff, 0x6a, 0xba, 0xf0, 0x81, - 0x25, 0x2f, 0x60, 0xd9, 0x89, 0x7d, 0xa5, 0x1a, 0x1f, 0xdc, 0x69, 0x35, - 0x93, 0x8d, 0xab, 0x9e, 0x16, 0xe7, 0x4e, 0x78, 0x16, 0x31, 0xf2, 0xa1, - 0xa1, 0x21, 0x4e, 0x9d, 0x3a, 0x4d, 0x53, 0x53, 0x13, 0x81, 0x40, 0x80, - 0x68, 0x34, 0xca, 0xaa, 0x55, 0xb7, 0x93, 0x92, 0x92, 0x32, 0x69, 0x0c, - 0x9f, 0x2f, 0xc0, 0xe8, 0xe8, 0x08, 0x4a, 0x69, 0xb4, 0x56, 0x64, 0x66, - 0x66, 0x5d, 0x36, 0x29, 0xe7, 0x74, 0x3a, 0xb1, 0x2c, 0x8b, 0xb1, 0xb1, - 0x30, 0x47, 0x8e, 0x1c, 0x61, 0xcd, 0x9a, 0x3b, 0xae, 0xfe, 0xc0, 0xa2, - 0x36, 0x7b, 0xba, 0x06, 0x01, 0x58, 0x55, 0x9c, 0xcd, 0xb7, 0x17, 0xcd, - 0xe4, 0x7f, 0xdb, 0xfb, 0x38, 0xe7, 0x0b, 0xf1, 0x87, 0xae, 0x21, 0x7c, - 0x51, 0x8b, 0x74, 0xc7, 0xd5, 0x3b, 0x9b, 0xaf, 0x74, 0x0c, 0xf0, 0xfd, - 0xb7, 0xdb, 0x38, 0x39, 0xe4, 0xc7, 0xd2, 0x9a, 0xf5, 0x45, 0x39, 0xac, - 0x29, 0xc9, 0xb9, 0x71, 0xd9, 0x5e, 0xd3, 0x34, 0xd9, 0xbd, 0x7b, 0x0f, - 0xcf, 0x3f, 0xff, 0x02, 0x5a, 0x6b, 0xa4, 0x94, 0x78, 0x3c, 0x1e, 0x0a, - 0x0b, 0x0b, 0x58, 0xb1, 0xe2, 0x36, 0xaa, 0xab, 0xab, 0xa6, 0xa4, 0x79, - 0xe9, 0xa5, 0x9d, 0xd8, 0xb6, 0x8d, 0x10, 0x82, 0x50, 0x28, 0xc4, 0x37, - 0xbe, 0xf1, 0x08, 0x69, 0x69, 0x9e, 0x29, 0xe7, 0x28, 0x2c, 0x2c, 0xc4, - 0xb2, 0xa2, 0xf4, 0xf4, 0x5c, 0xe4, 0xd0, 0xa1, 0x43, 0xd4, 0xd6, 0xd6, - 0x5c, 0x75, 0x46, 0xf5, 0x77, 0x2d, 0x17, 0xe9, 0x0e, 0x86, 0xf1, 0x98, - 0x06, 0x5b, 0xab, 0x0b, 0x11, 0x02, 0x3e, 0x5b, 0x5b, 0xc2, 0x3f, 0xbc, - 0xdd, 0xca, 0x69, 0x6f, 0x90, 0xe3, 0x03, 0x3e, 0x56, 0x17, 0x67, 0x4f, - 0xef, 0xae, 0x02, 0xc1, 0x33, 0x6d, 0xbd, 0x3c, 0xfc, 0x66, 0x13, 0xde, - 0xb0, 0x85, 0x43, 0x0a, 0x72, 0x53, 0x1c, 0x7c, 0x69, 0x4e, 0x19, 0x3f, - 0x5c, 0x31, 0xeb, 0xc6, 0xa7, 0xdf, 0x23, 0x91, 0x08, 0x85, 0x85, 0x05, - 0x14, 0x17, 0x17, 0x53, 0x55, 0x55, 0x4d, 0x7e, 0x7e, 0x1e, 0x59, 0x59, - 0x97, 0xe7, 0x78, 0xa5, 0x14, 0x95, 0x95, 0xe5, 0xa4, 0xa6, 0xba, 0x01, - 0x4d, 0x24, 0x12, 0xc1, 0x71, 0x05, 0xee, 0x34, 0x4d, 0x93, 0x75, 0xeb, - 0xd6, 0xf2, 0xb3, 0x9f, 0x6d, 0xc7, 0xe5, 0x72, 0xb1, 0x63, 0xc7, 0x0e, - 0xdc, 0x6e, 0xcf, 0x55, 0xad, 0xf1, 0x9b, 0x87, 0x9a, 0x71, 0x9b, 0x06, - 0x52, 0x08, 0xb6, 0xd5, 0xc6, 0x82, 0xc0, 0xad, 0x33, 0x0a, 0x78, 0xac, - 0xb1, 0x1d, 0x5b, 0x6b, 0xfe, 0xe6, 0xf0, 0x59, 0xde, 0xf8, 0xc4, 0xb2, - 0x69, 0x8d, 0xe5, 0x34, 0x04, 0x0f, 0xbd, 0xd1, 0x84, 0xad, 0x35, 0x45, - 0x6e, 0x27, 0xdf, 0x5b, 0x5a, 0xcb, 0x1d, 0x25, 0xd9, 0x54, 0xa7, 0xa7, - 0x5e, 0xb7, 0xf8, 0xc9, 0xbc, 0x56, 0xfd, 0x6e, 0x59, 0x16, 0x9b, 0x36, - 0x6d, 0xa4, 0xae, 0xae, 0x6e, 0xda, 0x34, 0xb6, 0x6d, 0xb3, 0x72, 0xe5, - 0x4a, 0xca, 0xcb, 0xcb, 0xa7, 0x7b, 0x35, 0x40, 0x4e, 0x4e, 0x0e, 0xb7, - 0xdf, 0xbe, 0x92, 0xc3, 0x87, 0x8f, 0x10, 0x0c, 0x86, 0x08, 0x04, 0x82, - 0xd3, 0x8e, 0x3d, 0x9e, 0x38, 0xdd, 0xc5, 0x98, 0xad, 0x30, 0xa5, 0xc0, - 0xed, 0x30, 0x78, 0x68, 0x6f, 0x13, 0x11, 0x15, 0xfb, 0x6e, 0x6b, 0x8d, - 0x21, 0x04, 0x07, 0xfb, 0x46, 0x38, 0xd2, 0x37, 0xc2, 0xd2, 0x82, 0xf7, - 0xbf, 0x1b, 0xb7, 0x94, 0xe6, 0xcf, 0xea, 0x4a, 0xf8, 0x59, 0x53, 0x17, - 0xde, 0x70, 0x94, 0x53, 0x5e, 0x3f, 0x5f, 0x98, 0x5d, 0x72, 0x5d, 0x03, - 0xda, 0xf7, 0x95, 0xff, 0xf1, 0xcd, 0x4f, 0x75, 0xb1, 0x68, 0x59, 0xd6, - 0x55, 0x4f, 0xa8, 0x94, 0xba, 0x6a, 0x9a, 0x65, 0xcb, 0x96, 0x91, 0x99, - 0x99, 0x79, 0x59, 0x5b, 0x36, 0xa5, 0xf4, 0x2a, 0xc5, 0x6f, 0x5b, 0x2f, - 0xe2, 0x90, 0x02, 0x4b, 0x69, 0x2e, 0x8c, 0x86, 0xf8, 0xe5, 0xe9, 0x4e, - 0x7e, 0xd3, 0xdc, 0xcd, 0x93, 0xa7, 0xbb, 0xe8, 0x0f, 0x45, 0xb0, 0xb5, - 0xc6, 0x63, 0x1a, 0x7c, 0xbf, 0xa1, 0x6d, 0x7a, 0x0c, 0xa5, 0x35, 0x8f, - 0xad, 0x98, 0xcd, 0x9a, 0x92, 0x6c, 0x94, 0x86, 0x1f, 0x9f, 0xbc, 0xc0, - 0xd7, 0xf6, 0x9d, 0xba, 0xae, 0x80, 0x98, 0x2e, 0x97, 0x0b, 0xb7, 0xdb, - 0x4d, 0x28, 0x14, 0x62, 0xff, 0xfe, 0xfd, 0x54, 0x54, 0x54, 0x90, 0x91, - 0x91, 0x81, 0x52, 0x8a, 0x86, 0x86, 0x06, 0x94, 0x52, 0x28, 0xa5, 0xa8, - 0xad, 0xad, 0xbd, 0x2e, 0x13, 0xda, 0xb6, 0x9d, 0x18, 0x33, 0x89, 0x33, - 0xa4, 0xbc, 0xa2, 0x71, 0x5f, 0xbe, 0x7c, 0x39, 0xbb, 0x76, 0xed, 0x9a, - 0xb6, 0x0d, 0xe9, 0x0a, 0x84, 0x69, 0x18, 0x18, 0x45, 0x03, 0x1f, 0xab, - 0xc8, 0xe3, 0x89, 0x75, 0xf3, 0xb0, 0x2f, 0xe1, 0x29, 0xa7, 0x14, 0xdc, - 0xf3, 0xd2, 0x31, 0x1a, 0x07, 0x7d, 0x34, 0x0e, 0xf8, 0xe8, 0x0c, 0x8c, - 0x31, 0x5d, 0x05, 0xf1, 0xfc, 0x3d, 0x0b, 0xb9, 0xfb, 0xa5, 0x63, 0x1c, - 0xee, 0x1d, 0xe1, 0xc9, 0xe6, 0x6e, 0x66, 0x65, 0x7a, 0xf8, 0xfa, 0xfc, - 0x8a, 0xeb, 0x03, 0x48, 0x5a, 0x5a, 0x1a, 0x6b, 0xd6, 0xac, 0x61, 0xd7, - 0xae, 0x5d, 0x04, 0x83, 0x21, 0xb6, 0x6f, 0x7f, 0x9c, 0x9c, 0x9c, 0x1c, - 0xa2, 0xd1, 0x28, 0x3e, 0x5f, 0x2c, 0xab, 0x59, 0x5a, 0x5a, 0xc2, 0x86, - 0x0d, 0x77, 0x5e, 0xf3, 0x24, 0x4a, 0x29, 0xb4, 0xd6, 0x98, 0xa6, 0xc9, - 0x9e, 0x3d, 0x7f, 0x98, 0x14, 0xe5, 0xdb, 0xb6, 0xcd, 0xad, 0xb7, 0x2e, - 0x60, 0xc9, 0x92, 0x25, 0x57, 0x88, 0xfe, 0xeb, 0x69, 0x69, 0x69, 0xa5, - 0xa5, 0xe5, 0x2c, 0xa6, 0x69, 0xbe, 0xaf, 0xa4, 0xfd, 0xe2, 0x74, 0x17, - 0xc1, 0xa8, 0x4d, 0x8a, 0x69, 0xf0, 0x99, 0xda, 0x62, 0x3c, 0x53, 0x5c, - 0xd3, 0x7e, 0xb1, 0xae, 0x94, 0xaf, 0xef, 0x3b, 0x4d, 0xdf, 0x58, 0x84, - 0xd7, 0xbb, 0xbc, 0xcc, 0xca, 0x72, 0x27, 0x45, 0xe0, 0x57, 0x04, 0xe5, - 0xee, 0x85, 0xdc, 0xb3, 0xf3, 0x18, 0x6f, 0xf7, 0x8f, 0xf2, 0xd7, 0x07, - 0xcf, 0x20, 0x05, 0x7c, 0x6d, 0x5e, 0xc5, 0xf5, 0x51, 0x59, 0x75, 0x75, - 0xb3, 0xf9, 0xea, 0x57, 0x1f, 0x62, 0xe9, 0xd2, 0x25, 0xa4, 0xa4, 0xa4, - 0x30, 0x32, 0x32, 0x42, 0x30, 0x18, 0xa4, 0x20, 0xbf, 0x80, 0xcd, 0x9b, - 0x37, 0xb3, 0x6d, 0xdb, 0xb6, 0x84, 0x0b, 0xab, 0xb5, 0x4e, 0xfa, 0x4c, - 0xa7, 0xac, 0x5e, 0xbd, 0x8a, 0xf4, 0xf4, 0x74, 0xb4, 0xd6, 0xf8, 0xfd, - 0x7e, 0x86, 0x87, 0x87, 0x27, 0x7d, 0xc6, 0x42, 0xa1, 0xf8, 0xf8, 0x5c, - 0x76, 0xfc, 0x4d, 0x9b, 0x3e, 0x4e, 0x41, 0x41, 0x21, 0x4a, 0x69, 0xe6, - 0xce, 0x9d, 0x73, 0x45, 0xf5, 0xf5, 0x83, 0x86, 0x76, 0x4c, 0x29, 0x71, - 0x9b, 0x92, 0x75, 0xa5, 0x53, 0xbb, 0xa3, 0xab, 0x8b, 0xb3, 0xc9, 0x70, - 0x9a, 0x18, 0x42, 0xf2, 0xdd, 0xa3, 0x2d, 0xa4, 0x1a, 0x12, 0xa5, 0x35, - 0x4a, 0x5f, 0x1a, 0xb5, 0x6b, 0xb4, 0x26, 0xa9, 0x0e, 0x20, 0xc5, 0x94, - 0xbc, 0xbe, 0x65, 0x29, 0x15, 0x69, 0x29, 0xb8, 0xa4, 0xc1, 0x77, 0x8e, - 0xb4, 0xf0, 0x54, 0x73, 0xf7, 0x07, 0x06, 0x44, 0x04, 0x7c, 0x83, 0xda, - 0xb6, 0x2d, 0x94, 0xb6, 0x30, 0xe2, 0x1b, 0x0c, 0xf8, 0x7d, 0x18, 0x12, - 0x4c, 0xd3, 0x41, 0x24, 0x12, 0xc6, 0xb2, 0x22, 0x68, 0xad, 0xd0, 0x4a, - 0x13, 0xb5, 0xa2, 0xd8, 0xd1, 0x28, 0x5a, 0xdb, 0x48, 0x19, 0x7b, 0x07, - 0x8b, 0x56, 0x09, 0x29, 0x40, 0xab, 0x58, 0xdf, 0xd8, 0xc9, 0xc6, 0x0f, - 0x55, 0xe3, 0x30, 0x4d, 0x82, 0xa1, 0x20, 0xca, 0xb6, 0xe3, 0xdb, 0x14, - 0xb1, 0xbf, 0xf1, 0x76, 0x29, 0x24, 0x86, 0x61, 0xa0, 0xb4, 0xc6, 0x8a, - 0x07, 0x97, 0x42, 0x08, 0x4c, 0xc3, 0x84, 0xf1, 0xb4, 0x9e, 0x10, 0x18, - 0x86, 0x41, 0x34, 0x12, 0xa1, 0x7c, 0xc6, 0x2d, 0xe4, 0x16, 0x4f, 0xed, - 0x6a, 0xaa, 0x78, 0xaa, 0xc3, 0x52, 0x0a, 0x43, 0x88, 0x49, 0xaf, 0x49, - 0xde, 0x6b, 0x17, 0xb4, 0x86, 0x90, 0xad, 0x48, 0x77, 0x18, 0x58, 0xf1, - 0x58, 0xcc, 0x8c, 0x67, 0x60, 0xc7, 0x01, 0xba, 0xb4, 0x6e, 0x2a, 0x63, - 0xaf, 0xb4, 0x66, 0xcc, 0x56, 0x89, 0xd4, 0xc9, 0x35, 0xab, 0x2c, 0xad, - 0x35, 0x1a, 0x85, 0x56, 0x8a, 0xa8, 0x6d, 0x61, 0x2b, 0x1b, 0x69, 0x08, - 0x94, 0x6d, 0x13, 0x0a, 0x85, 0xd0, 0xda, 0x46, 0x29, 0x3b, 0x01, 0x88, - 0x40, 0x23, 0x24, 0x08, 0x25, 0x50, 0xda, 0x42, 0xdb, 0x3a, 0x0e, 0x88, - 0x1d, 0xe7, 0x6a, 0x95, 0x00, 0x05, 0x0d, 0x4a, 0x2b, 0x34, 0x60, 0x45, - 0x42, 0x71, 0x90, 0x6c, 0x40, 0xa1, 0x11, 0x08, 0x4d, 0xec, 0xb0, 0x75, - 0x6c, 0xe3, 0xb6, 0x15, 0x0b, 0xad, 0xa5, 0x14, 0x38, 0xa4, 0x40, 0x6b, - 0x8d, 0x1d, 0x89, 0xa0, 0xb1, 0x27, 0x0e, 0x30, 0xae, 0x54, 0x0c, 0xe3, - 0xf2, 0xef, 0xa0, 0x9a, 0x87, 0x03, 0xbc, 0xd5, 0x3b, 0xcc, 0x67, 0x67, - 0x95, 0xd0, 0x19, 0x18, 0x23, 0x64, 0xd9, 0xcc, 0xcd, 0x4e, 0xa3, 0x71, - 0xd0, 0xc7, 0x81, 0x8b, 0xc3, 0x6c, 0xae, 0xcc, 0xe7, 0xc5, 0xf3, 0xfd, - 0x49, 0xa0, 0x6c, 0xab, 0x2d, 0xe6, 0xed, 0x81, 0x00, 0x07, 0x2e, 0x0e, - 0x23, 0x85, 0x60, 0xcc, 0xb2, 0x79, 0x78, 0x5e, 0x05, 0xbe, 0xa8, 0xcd, - 0x33, 0xad, 0x17, 0xb1, 0xb5, 0xa6, 0x30, 0xd5, 0xc5, 0x03, 0x33, 0x63, - 0xd9, 0x67, 0x5f, 0xd4, 0xe2, 0xe9, 0xd6, 0x5e, 0xc6, 0xec, 0x18, 0xf3, - 0x95, 0xa7, 0xa7, 0xb0, 0xa5, 0xb2, 0x00, 0x0d, 0x3c, 0x7f, 0xae, 0x97, - 0x8d, 0x15, 0x05, 0x49, 0x69, 0xf5, 0x86, 0x81, 0x51, 0x8e, 0xf4, 0x8d, - 0xf0, 0xa9, 0xda, 0x62, 0x32, 0xe2, 0xae, 0xfe, 0xab, 0x9d, 0x83, 0x34, - 0x0f, 0x07, 0x10, 0x42, 0xa0, 0xd1, 0x3c, 0x5c, 0x5f, 0x81, 0xe9, 0x49, - 0xff, 0xe3, 0xbe, 0xe6, 0xbe, 0x96, 0xf2, 0x64, 0xdb, 0x20, 0x0f, 0xbe, - 0xf6, 0x2e, 0xa6, 0x10, 0x68, 0x31, 0x2e, 0x4d, 0xc9, 0xf9, 0x10, 0xeb, - 0x74, 0x2b, 0xa8, 0xe6, 0x09, 0xce, 0x32, 0x24, 0xed, 0x9f, 0x59, 0x4d, - 0x99, 0x27, 0x85, 0xc3, 0x7d, 0x23, 0x7c, 0xfb, 0x48, 0x0b, 0x0f, 0xd6, - 0x95, 0x72, 0xf7, 0x8e, 0xa3, 0x8c, 0x46, 0x2d, 0x5a, 0x3e, 0x7d, 0x07, - 0x7b, 0xbb, 0x87, 0x78, 0xe4, 0x60, 0x33, 0x1b, 0x2b, 0xf2, 0x69, 0x19, - 0x09, 0xf2, 0x6a, 0xd7, 0x20, 0x29, 0x52, 0xb2, 0xb2, 0x28, 0x0b, 0xa7, - 0x94, 0x2c, 0x7f, 0xf6, 0x20, 0xf7, 0x56, 0x15, 0x52, 0xea, 0x71, 0x11, - 0xb0, 0x6c, 0x94, 0xd6, 0xfc, 0xf3, 0xf1, 0x73, 0xfc, 0xaa, 0xb9, 0x8b, - 0xcf, 0xcf, 0x2a, 0xe1, 0xad, 0xde, 0x61, 0xbe, 0x79, 0xf0, 0x0c, 0x87, - 0xef, 0xbf, 0x8d, 0x57, 0x3a, 0x06, 0x78, 0xf4, 0x50, 0x33, 0x5f, 0x98, - 0x55, 0x42, 0x44, 0xa9, 0xc4, 0x0a, 0xf7, 0xf5, 0x78, 0xb9, 0x6f, 0xc7, - 0x31, 0xd6, 0x57, 0x14, 0xb0, 0x67, 0x4b, 0xcc, 0x26, 0x3e, 0xb4, 0xb7, - 0x89, 0xc6, 0x21, 0x1f, 0x8b, 0xf3, 0x33, 0xf8, 0xd6, 0xaf, 0xdf, 0xe4, - 0xdf, 0x57, 0xd5, 0xf1, 0xc9, 0x9a, 0x62, 0xee, 0x7a, 0xee, 0x30, 0x0f, - 0xcc, 0x2a, 0xa1, 0xd4, 0xe3, 0xfa, 0xff, 0x73, 0x41, 0x35, 0xd4, 0x77, - 0x1e, 0xad, 0xed, 0x84, 0x29, 0x95, 0x02, 0x22, 0xfd, 0x7d, 0x3c, 0x98, - 0x37, 0xc6, 0x54, 0x1a, 0x42, 0x03, 0xa6, 0xe1, 0x20, 0x33, 0xaf, 0x2a, - 0x26, 0x85, 0xf1, 0x92, 0xe3, 0x72, 0x90, 0xeb, 0x72, 0xc6, 0xf2, 0x5f, - 0x42, 0xc4, 0x32, 0xbb, 0x1a, 0xdc, 0xa6, 0x41, 0x87, 0x7f, 0x8c, 0xfb, - 0x77, 0x35, 0xf0, 0xe9, 0x9a, 0x12, 0x52, 0x0d, 0x49, 0x45, 0x7a, 0x0a, - 0xff, 0xb2, 0x72, 0x36, 0x5f, 0x79, 0xa3, 0x89, 0x2c, 0x97, 0x83, 0x7f, - 0x5c, 0x1e, 0xf3, 0x20, 0x53, 0x0d, 0x83, 0x47, 0x17, 0x56, 0xb3, 0x38, - 0x7f, 0xe2, 0x86, 0xd0, 0x90, 0x82, 0xca, 0xf4, 0x54, 0x7e, 0xb0, 0x62, - 0x16, 0x27, 0x87, 0x7c, 0x2c, 0x79, 0xe6, 0x20, 0x61, 0x5b, 0x21, 0x04, - 0xcc, 0xca, 0xf4, 0xf0, 0xd8, 0x6d, 0xb3, 0xdf, 0x93, 0x55, 0x3e, 0xc5, - 0xdd, 0xd5, 0x85, 0x1c, 0xea, 0x1b, 0xe1, 0xc4, 0xa0, 0x8f, 0x5b, 0x72, - 0xd3, 0x79, 0xb6, 0xbd, 0x97, 0x03, 0x5b, 0x97, 0x53, 0x93, 0xe1, 0xe6, - 0xbb, 0x8b, 0x67, 0x22, 0x85, 0xc0, 0x56, 0x1a, 0xa7, 0xcb, 0x9c, 0x34, - 0xdf, 0x0d, 0x05, 0x44, 0x6b, 0xcd, 0xbb, 0x47, 0x77, 0x20, 0x44, 0xb2, - 0x8e, 0x5f, 0xec, 0x30, 0x58, 0x96, 0x26, 0x2e, 0xe3, 0xb1, 0xd9, 0x94, - 0x54, 0x2d, 0x20, 0xbf, 0xb6, 0x66, 0x7a, 0x1e, 0x1e, 0xf0, 0xb9, 0x59, - 0x25, 0xfc, 0xbe, 0xbd, 0x37, 0x61, 0x23, 0x2f, 0x05, 0x57, 0x5d, 0xe2, - 0x38, 0x08, 0x01, 0x9f, 0xd9, 0x73, 0x82, 0x2c, 0xa7, 0xc9, 0xcf, 0xd7, - 0xcd, 0x63, 0x6e, 0x76, 0x5a, 0xa2, 0x6d, 0xdb, 0xee, 0x13, 0x1c, 0xe8, - 0x1d, 0xe6, 0xb7, 0x1b, 0x16, 0x50, 0xe2, 0x71, 0x21, 0x85, 0xa0, 0xc9, - 0xeb, 0x67, 0xc1, 0xd3, 0x07, 0xf8, 0xca, 0xdc, 0x72, 0x1e, 0xaa, 0x2f, - 0xe7, 0xad, 0xde, 0x61, 0xce, 0xf9, 0x43, 0x3c, 0xbe, 0xb6, 0x9e, 0x4f, - 0xed, 0x3e, 0xc1, 0x13, 0x67, 0xba, 0xf8, 0xd1, 0xca, 0x3a, 0x10, 0x24, - 0xe6, 0xce, 0x4f, 0x8d, 0x31, 0x4d, 0xc4, 0x56, 0x58, 0x4a, 0xf3, 0xd9, - 0x3d, 0x27, 0xc8, 0x74, 0x99, 0x3c, 0x7b, 0xd7, 0x42, 0x4a, 0x3c, 0xae, - 0x1b, 0x0d, 0x88, 0xcd, 0x82, 0xdb, 0x92, 0xef, 0x3a, 0x1c, 0x52, 0xf2, - 0xc0, 0x2b, 0xc7, 0x71, 0x3b, 0x8c, 0xcb, 0x82, 0x98, 0xda, 0x66, 0xe2, - 0xe8, 0x7a, 0xe7, 0x12, 0x23, 0xae, 0xb9, 0xaf, 0xba, 0x90, 0x4f, 0x54, - 0x4d, 0xfd, 0xf3, 0x80, 0x5b, 0xf3, 0x32, 0x58, 0x5a, 0x90, 0xc9, 0xc3, - 0x6f, 0x9e, 0x22, 0xd5, 0x94, 0x57, 0x58, 0x0f, 0xfc, 0x74, 0xf5, 0x5c, - 0xee, 0x28, 0xc9, 0x9e, 0x04, 0xde, 0x2d, 0x39, 0x69, 0x1c, 0xeb, 0x1f, - 0x65, 0x6d, 0x49, 0x76, 0x62, 0xce, 0x9a, 0x4c, 0x37, 0x87, 0xb7, 0xae, - 0x20, 0x1a, 0x77, 0xc1, 0x7f, 0x7e, 0xaa, 0x0b, 0x0d, 0xfc, 0xf9, 0xde, - 0x26, 0xc6, 0x6c, 0xc5, 0x73, 0xe7, 0xfa, 0xf8, 0xd1, 0xca, 0x3a, 0x2c, - 0xa5, 0x13, 0xf6, 0x64, 0x77, 0xe7, 0x20, 0x11, 0x5b, 0x71, 0x77, 0x79, - 0x1e, 0x86, 0x10, 0xfc, 0xe4, 0x3d, 0xf3, 0xdd, 0x50, 0x40, 0x84, 0x30, - 0x48, 0xcf, 0x2a, 0x4c, 0xca, 0x0a, 0x9c, 0x1c, 0xf0, 0xf1, 0x87, 0x61, - 0x41, 0x86, 0xf3, 0xf2, 0x07, 0x27, 0x7c, 0x01, 0x60, 0xe2, 0x11, 0x42, - 0x54, 0x29, 0x3e, 0x57, 0x5b, 0x9a, 0xc4, 0xe9, 0x46, 0xec, 0x16, 0x28, - 0xa6, 0x02, 0x6d, 0xc5, 0x57, 0xeb, 0x2b, 0xf9, 0xd5, 0x99, 0x6e, 0xda, - 0x46, 0x43, 0x97, 0x5c, 0xc3, 0xc6, 0xae, 0x62, 0xc7, 0x4b, 0x9a, 0xc3, - 0xe0, 0xa9, 0xb3, 0x3d, 0xbc, 0xde, 0x3d, 0x44, 0xd0, 0xb2, 0xf9, 0xde, - 0xb2, 0xda, 0x78, 0x1f, 0x78, 0x74, 0xd1, 0x0c, 0x0e, 0xf4, 0x8d, 0x70, - 0xff, 0x2b, 0xc7, 0x79, 0xe9, 0xe3, 0x8b, 0x11, 0x62, 0xc2, 0xeb, 0x72, - 0x48, 0x89, 0x37, 0x1c, 0x65, 0x77, 0xd7, 0x20, 0x2f, 0xde, 0xb3, 0x88, - 0x35, 0x71, 0xd0, 0x2a, 0x9e, 0xdc, 0xcb, 0xce, 0xf3, 0xfd, 0x7c, 0x69, - 0x4e, 0x19, 0x5b, 0x5e, 0x6e, 0x60, 0x7d, 0x49, 0x0e, 0xff, 0xd3, 0x76, - 0x91, 0xbf, 0x5b, 0x52, 0x83, 0x21, 0x63, 0xde, 0xdf, 0x53, 0x67, 0xbb, - 0x79, 0xbd, 0x7b, 0x08, 0x0d, 0xfc, 0xfd, 0xd2, 0x9a, 0x1b, 0xfb, 0xd8, - 0xba, 0xfb, 0x5c, 0x23, 0xde, 0x81, 0x8e, 0xa4, 0x2b, 0xd1, 0xa1, 0x31, - 0x8b, 0x36, 0x5f, 0x68, 0x12, 0x87, 0x26, 0x24, 0xc8, 0x99, 0xca, 0xac, - 0x05, 0xeb, 0x93, 0x62, 0x14, 0xad, 0xa1, 0x3e, 0x27, 0x2d, 0xe1, 0xde, - 0xf6, 0x06, 0xc3, 0xb4, 0xfb, 0xc6, 0x58, 0x51, 0x98, 0xc9, 0x91, 0xbe, - 0x11, 0x8a, 0xdd, 0x2e, 0xca, 0xd2, 0x52, 0xe8, 0xf0, 0x8f, 0xe1, 0x8b, - 0x5a, 0x09, 0x55, 0xd4, 0x3c, 0x1c, 0xc0, 0x90, 0x82, 0x99, 0x19, 0xb1, - 0x80, 0xf0, 0xdd, 0x21, 0x3f, 0xfd, 0xa1, 0x08, 0x3a, 0x0e, 0xf2, 0xfa, - 0xd2, 0x5c, 0x3a, 0xfc, 0x63, 0x78, 0xc3, 0x51, 0x16, 0xe5, 0x67, 0x60, - 0x6b, 0xcd, 0xde, 0x6e, 0x2f, 0x4b, 0xf2, 0x33, 0x18, 0xb3, 0x15, 0x9d, - 0xfe, 0x31, 0x16, 0xc5, 0xf5, 0x7f, 0xd0, 0xb2, 0x39, 0xd8, 0x3b, 0xc2, - 0xfa, 0x4b, 0x62, 0x9e, 0x53, 0xde, 0x00, 0xa0, 0x99, 0x93, 0x9d, 0xc6, - 0x89, 0x41, 0x1f, 0xde, 0x70, 0x94, 0xaa, 0x74, 0x37, 0x95, 0xe9, 0xb1, - 0x98, 0xee, 0x68, 0xff, 0x28, 0xfe, 0xa8, 0x15, 0x8b, 0xbd, 0x80, 0xf5, - 0xa5, 0x39, 0x37, 0x0e, 0x10, 0xad, 0x15, 0x67, 0x4f, 0xbc, 0xc6, 0x88, - 0x37, 0x39, 0x98, 0x0a, 0x59, 0x2a, 0xe9, 0xbe, 0x39, 0x39, 0x6e, 0xd6, - 0xe4, 0xe4, 0x55, 0x50, 0x33, 0x7f, 0xed, 0x15, 0x52, 0xe4, 0xd3, 0xa8, - 0x13, 0x53, 0xd5, 0x8b, 0x2b, 0x46, 0xe9, 0xd3, 0x1b, 0xe3, 0x72, 0xf7, - 0x8d, 0x5c, 0x79, 0xbd, 0x22, 0x6e, 0xd0, 0xc4, 0x0d, 0xfe, 0x39, 0x82, - 0x6d, 0x45, 0x92, 0x0e, 0x5f, 0x69, 0x58, 0xb7, 0xe3, 0x18, 0x41, 0xdb, - 0xc6, 0x10, 0x32, 0xa1, 0x52, 0x0c, 0x29, 0xd1, 0x42, 0x60, 0x0a, 0x81, - 0x34, 0x0d, 0x4c, 0xd3, 0x81, 0x94, 0x02, 0xa7, 0x90, 0x08, 0xa1, 0x71, - 0x08, 0x89, 0x29, 0x63, 0xed, 0xa6, 0x10, 0x98, 0x52, 0x20, 0xa5, 0xc0, - 0x10, 0x02, 0x87, 0x20, 0x51, 0x6f, 0x88, 0x98, 0xd7, 0x64, 0x08, 0x19, - 0x7b, 0x7e, 0x13, 0x57, 0x6d, 0x26, 0x02, 0x43, 0x82, 0x21, 0x0d, 0x0c, - 0x21, 0x30, 0x0c, 0x30, 0x90, 0x31, 0x3a, 0x34, 0x86, 0x90, 0x13, 0xb4, - 0xd2, 0x48, 0x3c, 0xe7, 0x31, 0x20, 0x56, 0x2f, 0x04, 0x32, 0x3e, 0xe6, - 0xf8, 0xbc, 0x32, 0x51, 0x1f, 0x03, 0x25, 0x36, 0xbf, 0x8e, 0xed, 0x47, - 0xc4, 0xd6, 0x27, 0x11, 0xf1, 0xf5, 0x80, 0x88, 0xc7, 0x5f, 0x37, 0xd4, - 0x86, 0x18, 0xa6, 0x33, 0xe9, 0x7b, 0xfb, 0x68, 0x88, 0x8e, 0x90, 0xcd, - 0x98, 0x52, 0x18, 0x09, 0x30, 0xc0, 0x90, 0x1a, 0x25, 0xc1, 0x29, 0x80, - 0xa8, 0x85, 0x29, 0x15, 0xd2, 0x90, 0x38, 0xa5, 0xc0, 0x14, 0xe0, 0x94, - 0x32, 0x01, 0x84, 0x63, 0x1c, 0x10, 0xc3, 0xc0, 0x21, 0x62, 0x34, 0x86, - 0x90, 0x38, 0x25, 0x48, 0x62, 0x6d, 0x46, 0xbc, 0xdf, 0xa5, 0x60, 0x99, - 0x02, 0x4c, 0x43, 0xc7, 0x0e, 0x4e, 0x09, 0x0c, 0x14, 0x26, 0xe3, 0x6d, - 0xb1, 0x88, 0xdf, 0x21, 0x05, 0x52, 0xc6, 0x40, 0x70, 0x48, 0x89, 0x8c, - 0x03, 0x62, 0x0a, 0x81, 0x21, 0x63, 0xb4, 0x52, 0x49, 0x0c, 0x19, 0x4b, - 0xed, 0x1b, 0x82, 0x58, 0x7f, 0x40, 0x09, 0x1d, 0x03, 0x4c, 0x80, 0x8a, - 0x83, 0x65, 0xa0, 0xd1, 0x0a, 0xb4, 0x88, 0x8d, 0xa3, 0x15, 0xfc, 0x1f, - 0xd7, 0xc0, 0x3b, 0xab, 0xdb, 0x65, 0xb1, 0x8a, 0x00, 0x00, 0x00, 0x00, - 0x49, 0x45, 0x4e, 0x44, 0xae, 0x42, 0x60, 0x82 + 0x49, 0x48, 0x44, 0x52, 0x00, 0x00, 0x00, 0xb4, 0x00, 0x00, 0x00, 0x3c, + 0x08, 0x06, 0x00, 0x00, 0x00, 0xcf, 0x2e, 0x90, 0x87, 0x00, 0x00, 0x1b, + 0x39, 0x49, 0x44, 0x41, 0x54, 0x78, 0xda, 0xed, 0x9d, 0x79, 0x70, 0x1c, + 0xd7, 0x7d, 0xe7, 0x3f, 0xaf, 0xbb, 0xa7, 0xe7, 0x02, 0x06, 0xf7, 0x8d, + 0xc1, 0xc5, 0x03, 0xa0, 0x48, 0x91, 0x94, 0x64, 0x52, 0x24, 0xbd, 0x96, + 0xe4, 0x48, 0xb2, 0x9d, 0xc4, 0x76, 0x7c, 0xc5, 0x89, 0x53, 0x59, 0xef, + 0x3a, 0xeb, 0x72, 0xe2, 0xdd, 0x8a, 0x1d, 0xa7, 0xca, 0xf6, 0x3a, 0x5b, + 0x59, 0x67, 0xbd, 0xde, 0x4d, 0x7c, 0x24, 0xf6, 0x7a, 0x53, 0x71, 0xec, + 0x8a, 0x6d, 0xc5, 0x67, 0x39, 0x4e, 0x36, 0x76, 0x2c, 0x7b, 0x23, 0x5b, + 0xca, 0xea, 0xb0, 0x49, 0x49, 0x94, 0x28, 0x92, 0x00, 0x49, 0x00, 0x84, + 0x00, 0x10, 0x04, 0x06, 0xc7, 0x00, 0x83, 0x01, 0xe6, 0x9e, 0x3e, 0xde, + 0xfe, 0xd1, 0x3d, 0x03, 0x0c, 0x0e, 0x12, 0xa4, 0x48, 0x29, 0x06, 0xe7, + 0x57, 0x35, 0x85, 0x41, 0x1f, 0xaf, 0x5f, 0xf7, 0x7c, 0xdf, 0xef, 0x7d, + 0x7f, 0xdf, 0xf7, 0x7b, 0xaf, 0x85, 0x94, 0x52, 0x52, 0xb6, 0x57, 0xd4, + 0x6c, 0x29, 0xb1, 0xa5, 0x64, 0x21, 0x93, 0x67, 0x60, 0x3e, 0xc6, 0xd8, + 0x62, 0x82, 0x68, 0x32, 0x4d, 0xce, 0x30, 0x51, 0x05, 0x28, 0x42, 0xa0, + 0x09, 0x08, 0xa8, 0x2a, 0x0d, 0x41, 0x3f, 0xed, 0x55, 0x15, 0x74, 0xd5, + 0x84, 0x68, 0xae, 0x0c, 0xa2, 0x28, 0x0a, 0x8a, 0x10, 0xe5, 0x87, 0xe8, + 0x9a, 0x28, 0x03, 0xfa, 0x95, 0xb3, 0xbc, 0x65, 0xb3, 0x98, 0xcd, 0xf3, + 0xdc, 0x6c, 0x8c, 0xa7, 0x23, 0x73, 0xa8, 0xc0, 0xa1, 0x96, 0x3a, 0xf6, + 0xd4, 0x55, 0x13, 0xae, 0x0c, 0xe2, 0x51, 0x95, 0x75, 0xe7, 0x2c, 0xa4, + 0xb3, 0x4c, 0xc5, 0x97, 0x19, 0x5b, 0x88, 0xb3, 0x9c, 0xc9, 0xd0, 0x53, + 0x57, 0xcd, 0xee, 0xc6, 0x7a, 0xaa, 0xfc, 0x3e, 0x74, 0x4d, 0x2d, 0x03, + 0xba, 0x0c, 0xe8, 0x97, 0xdf, 0xa4, 0x84, 0xf1, 0x44, 0x8a, 0x67, 0x67, + 0x16, 0x38, 0x13, 0x8d, 0x73, 0x47, 0x43, 0x35, 0x6f, 0xe8, 0x6a, 0xa1, + 0x52, 0xf7, 0x5c, 0x5b, 0x39, 0xc0, 0xf0, 0x4c, 0x94, 0x91, 0xb9, 0x05, + 0xaa, 0xfd, 0x3e, 0xba, 0xeb, 0x6b, 0x68, 0xaa, 0xaa, 0x44, 0x55, 0x94, + 0x32, 0xa0, 0xcb, 0xf6, 0xf2, 0x58, 0xda, 0xb4, 0x78, 0xec, 0xf2, 0x2c, + 0xfd, 0xd1, 0x25, 0x76, 0xd7, 0x54, 0xf0, 0xe6, 0x9e, 0x36, 0x74, 0xf5, + 0xa5, 0x03, 0x70, 0x2c, 0xba, 0xc0, 0x78, 0x74, 0x91, 0xda, 0x80, 0x8f, + 0xee, 0xc6, 0x3a, 0x42, 0x01, 0x7f, 0x19, 0xd0, 0x65, 0xbb, 0xb9, 0x36, + 0x9f, 0xcd, 0xf1, 0xd0, 0xf9, 0x4b, 0x04, 0x34, 0x85, 0x37, 0x76, 0xb5, + 0xd2, 0x11, 0x0a, 0xdc, 0xd0, 0xf2, 0x4d, 0xcb, 0x66, 0x28, 0x32, 0xc3, + 0x72, 0x3a, 0x43, 0x47, 0x7d, 0x2d, 0x6d, 0x75, 0x35, 0x65, 0x40, 0x97, + 0xed, 0xe6, 0xd8, 0x5c, 0x26, 0xc7, 0x9f, 0x3d, 0x3f, 0xc4, 0x6b, 0x5a, + 0xea, 0xf8, 0xe5, 0xae, 0x66, 0x7c, 0xea, 0xcd, 0xe3, 0xbb, 0xb3, 0xf1, + 0x65, 0xc6, 0x67, 0xe6, 0x68, 0xa8, 0x0e, 0xd1, 0xd3, 0xdc, 0x78, 0x4b, + 0x3d, 0x67, 0xad, 0x0c, 0xb5, 0x9b, 0x6f, 0xcb, 0x79, 0x93, 0x0f, 0xff, + 0x7c, 0x80, 0xff, 0x70, 0x5b, 0x27, 0xf7, 0xb4, 0xd6, 0xdf, 0xf4, 0xeb, + 0x35, 0x55, 0x87, 0xf0, 0xeb, 0x1e, 0x86, 0x27, 0x23, 0x28, 0x40, 0xd7, + 0x2d, 0x04, 0x6a, 0xa5, 0x0c, 0xb7, 0x9b, 0x6f, 0xbf, 0xf7, 0xf8, 0x69, + 0xde, 0xfb, 0x32, 0x81, 0xb9, 0x60, 0xa1, 0x80, 0x9f, 0xdd, 0xed, 0xad, + 0x2c, 0x2c, 0x25, 0x88, 0x2e, 0x2e, 0x95, 0x3d, 0x74, 0xd9, 0x6e, 0x8c, + 0x7d, 0xe4, 0xc4, 0x79, 0xde, 0xdc, 0xdd, 0xcc, 0x6b, 0xb6, 0x08, 0x66, + 0x09, 0x0c, 0x44, 0x17, 0x39, 0x35, 0xb3, 0x40, 0x64, 0x29, 0x41, 0xce, + 0x30, 0xd0, 0x84, 0x20, 0xe4, 0x51, 0x69, 0xab, 0x0c, 0xb2, 0xb3, 0xbe, + 0x86, 0x3d, 0x8d, 0x75, 0x5b, 0x92, 0xe8, 0x42, 0x01, 0x3f, 0x1d, 0x8d, + 0xf5, 0x44, 0xe6, 0x17, 0xa8, 0xf0, 0xfb, 0xf0, 0xfb, 0xbc, 0x65, 0x0e, + 0x5d, 0xb6, 0xeb, 0xb7, 0x47, 0x2e, 0xcf, 0xf1, 0xe8, 0xe5, 0x39, 0x3e, + 0x75, 0x74, 0xef, 0x55, 0x07, 0x3f, 0xf2, 0x96, 0xcd, 0x4f, 0x26, 0x66, + 0xf8, 0xd1, 0xe8, 0x14, 0xbd, 0x55, 0x15, 0xdc, 0x1b, 0x6e, 0x62, 0x57, + 0x75, 0x25, 0x15, 0x5e, 0x4f, 0x31, 0xe0, 0x9b, 0x49, 0xa4, 0x18, 0x5b, + 0x58, 0x64, 0x2c, 0xba, 0x40, 0x67, 0x4d, 0x15, 0x77, 0x75, 0xb6, 0x51, + 0xb1, 0x05, 0x90, 0x8e, 0x5c, 0x9e, 0x42, 0x55, 0x14, 0xba, 0x5a, 0x9b, + 0x11, 0xdb, 0x7c, 0x10, 0xa6, 0x0c, 0xe8, 0x9b, 0x64, 0x69, 0xd3, 0xe2, + 0xfd, 0x4f, 0x9c, 0xe6, 0x13, 0x87, 0x6f, 0xa3, 0xb3, 0xd2, 0x7f, 0x45, + 0x8f, 0x3c, 0x18, 0x5b, 0xe6, 0xaf, 0xcf, 0x8e, 0xd2, 0x57, 0x53, 0xc1, + 0xef, 0xec, 0xeb, 0xc1, 0xbb, 0x05, 0x19, 0x6f, 0x78, 0x26, 0xca, 0xc5, + 0x99, 0x39, 0x7a, 0x9b, 0x1b, 0xe8, 0x6e, 0xac, 0xbf, 0xa2, 0xf6, 0x9c, + 0x37, 0x0c, 0x86, 0xc7, 0x2f, 0x13, 0x6e, 0x69, 0xa2, 0xaa, 0x22, 0x58, + 0x06, 0x74, 0xd9, 0xae, 0xdd, 0xbe, 0x74, 0x7e, 0x1c, 0x9f, 0xaa, 0xf0, + 0xae, 0x5d, 0xed, 0xe8, 0x9b, 0x80, 0x4d, 0x02, 0x8f, 0x4c, 0xcc, 0xf2, + 0xf0, 0x58, 0x84, 0x0f, 0x1c, 0xd8, 0xc9, 0xee, 0xea, 0xca, 0x6b, 0xba, + 0x46, 0xd6, 0x30, 0x38, 0x3d, 0x36, 0x41, 0x85, 0xd7, 0x4b, 0x6f, 0x5b, + 0x0b, 0x9e, 0x2b, 0xd0, 0x90, 0xcb, 0x33, 0x73, 0x98, 0xa6, 0x49, 0x47, + 0x6b, 0xf3, 0xb6, 0x1e, 0x78, 0x29, 0x07, 0x85, 0x37, 0xc1, 0xe2, 0x39, + 0x83, 0x17, 0x97, 0x52, 0x1c, 0x6e, 0xac, 0xdd, 0x14, 0xcc, 0x00, 0x3f, + 0x1a, 0x9f, 0xe1, 0xf1, 0xc9, 0x28, 0x1f, 0x3f, 0xbc, 0xf7, 0x9a, 0xc1, + 0x0c, 0xe0, 0xf3, 0x78, 0x38, 0xb4, 0xb3, 0x1b, 0xcb, 0xb2, 0x18, 0x9d, + 0x9e, 0xc1, 0xbe, 0x82, 0x6f, 0x6a, 0x6b, 0x6a, 0x20, 0x91, 0x48, 0x92, + 0xcf, 0xe7, 0xcb, 0x41, 0x61, 0xd9, 0xae, 0xcd, 0x1e, 0x8f, 0xcc, 0xd3, + 0x1d, 0x0a, 0xd2, 0x51, 0xe1, 0xdb, 0xf4, 0x98, 0x53, 0xd1, 0x38, 0x3f, + 0x9f, 0x89, 0xf1, 0xbb, 0xfb, 0x7a, 0x68, 0xf0, 0xeb, 0xeb, 0xf6, 0x4f, + 0x25, 0xd3, 0x9c, 0x9f, 0x8f, 0x93, 0xc9, 0xe5, 0xf1, 0x08, 0x08, 0x79, + 0x34, 0xc2, 0x55, 0x95, 0x74, 0xd4, 0x56, 0x95, 0x1c, 0xa7, 0x2a, 0x0a, + 0x7b, 0xbb, 0xc2, 0x9c, 0xb9, 0x38, 0x46, 0x34, 0x16, 0xa7, 0x69, 0x93, + 0xc1, 0x14, 0x45, 0x08, 0x42, 0x15, 0x41, 0x96, 0x96, 0x13, 0xf8, 0xbc, + 0xde, 0x6d, 0xcb, 0xa5, 0xcb, 0x1e, 0xfa, 0x26, 0xd8, 0xd8, 0x72, 0x9a, + 0xd6, 0xa0, 0x8f, 0xa0, 0x67, 0x63, 0x7f, 0x91, 0x34, 0x4c, 0x1e, 0x9b, + 0x9c, 0xe7, 0x35, 0x2d, 0x75, 0x74, 0xaf, 0x19, 0x2d, 0x34, 0xa5, 0xcd, + 0x57, 0xcf, 0x8d, 0xf1, 0xbd, 0xe1, 0x09, 0xa4, 0x94, 0xb4, 0x54, 0x06, + 0x68, 0xad, 0x0c, 0x12, 0xd4, 0x3d, 0x4c, 0x2c, 0x2e, 0xf1, 0xd8, 0xb9, + 0x61, 0xe2, 0xa9, 0x74, 0xa9, 0x57, 0x52, 0x14, 0xf6, 0x74, 0xb6, 0x73, + 0x69, 0x7a, 0x1a, 0xd3, 0xb2, 0x36, 0xad, 0x57, 0x4b, 0x63, 0x03, 0xd1, + 0x58, 0xac, 0xec, 0xa1, 0xcb, 0xb6, 0x75, 0x9b, 0x4e, 0x67, 0xb1, 0x91, + 0x74, 0x54, 0x6c, 0x1e, 0x08, 0x3e, 0x1f, 0x8d, 0x93, 0xb7, 0x6d, 0x5e, + 0xd3, 0x5a, 0x57, 0xb2, 0xdd, 0x92, 0x92, 0x3f, 0x3a, 0x71, 0x9e, 0xfd, + 0x35, 0x95, 0xfc, 0x56, 0x5f, 0x17, 0x35, 0x3e, 0x1d, 0x8f, 0x4b, 0x59, + 0x24, 0x90, 0xce, 0xe7, 0x59, 0x4c, 0xa4, 0x39, 0x3d, 0x76, 0x89, 0xbd, + 0xe1, 0x36, 0x1a, 0xaa, 0x42, 0xc5, 0x73, 0x03, 0x3e, 0x2f, 0x75, 0x55, + 0x55, 0x4c, 0x47, 0xe7, 0x09, 0x37, 0x37, 0x6d, 0x78, 0x5d, 0xaf, 0x57, + 0xc7, 0x34, 0x4d, 0x4c, 0xd3, 0xc4, 0xe3, 0xf1, 0x6c, 0xcb, 0xe7, 0x5f, + 0xf6, 0xd0, 0x37, 0xd8, 0x22, 0xa9, 0x2c, 0x42, 0x08, 0xda, 0x82, 0x1b, + 0xd3, 0x8d, 0xbc, 0x6d, 0x33, 0xba, 0x9c, 0xa6, 0xb3, 0x32, 0x40, 0xe5, + 0x1a, 0x0f, 0xfe, 0x99, 0x17, 0x2e, 0xb2, 0xb3, 0x2a, 0xc8, 0x6f, 0xef, + 0xe9, 0xa4, 0x31, 0xe0, 0x2b, 0x82, 0x19, 0x40, 0x00, 0x41, 0x5d, 0xa7, + 0xbd, 0xae, 0x9a, 0x03, 0x5d, 0x1d, 0x8c, 0x4c, 0x46, 0xc8, 0xe6, 0x72, + 0x25, 0xe7, 0x77, 0xb5, 0xb6, 0x10, 0x99, 0x9e, 0xbd, 0x62, 0xfd, 0x2a, + 0x83, 0x15, 0x24, 0xd7, 0x78, 0xf8, 0x32, 0xa0, 0xcb, 0xb6, 0xa9, 0x45, + 0xb3, 0x79, 0x04, 0xd0, 0xe0, 0xdf, 0x58, 0x1f, 0x8e, 0x66, 0xf2, 0xcc, + 0x67, 0xf3, 0x1c, 0xac, 0x0f, 0x95, 0x6c, 0x7f, 0x71, 0x39, 0xc5, 0xf3, + 0xf3, 0x71, 0xde, 0xb7, 0xb7, 0xfb, 0xaa, 0xd7, 0xa8, 0x0e, 0x06, 0xe8, + 0x6a, 0x6c, 0x60, 0x6c, 0x72, 0xba, 0x94, 0x4f, 0xab, 0x0a, 0x7e, 0x9f, + 0x97, 0x74, 0x3a, 0xb3, 0x39, 0xa0, 0x2b, 0x2a, 0x48, 0x95, 0x01, 0x5d, + 0xb6, 0xad, 0x5a, 0xc6, 0xb4, 0x10, 0x08, 0x36, 0x0b, 0xb9, 0x96, 0xf2, + 0x06, 0xcb, 0x79, 0x83, 0x1d, 0xa1, 0x52, 0x3d, 0xf8, 0x6b, 0x83, 0x13, + 0xfc, 0xde, 0x6d, 0xa5, 0x60, 0xb6, 0x25, 0x0c, 0xc4, 0x92, 0x3c, 0x17, + 0x5d, 0x26, 0x63, 0xae, 0x70, 0x63, 0xe1, 0x06, 0x78, 0x8a, 0x22, 0xc8, + 0xe5, 0x4a, 0x55, 0x8b, 0x9a, 0xaa, 0x10, 0x4b, 0x89, 0xe4, 0xa6, 0xf5, + 0xf3, 0xfb, 0x74, 0xb2, 0xd9, 0x6c, 0x19, 0xd0, 0x65, 0xdb, 0x9a, 0x49, + 0x40, 0x53, 0x36, 0x57, 0x10, 0x72, 0x96, 0x4d, 0xde, 0x96, 0xf8, 0xd7, + 0x68, 0xc6, 0xcf, 0xcd, 0x2d, 0xad, 0xe3, 0xd4, 0xdf, 0xba, 0x18, 0xe1, + 0xfe, 0x1f, 0x9e, 0xe4, 0xd0, 0xdf, 0x9f, 0xe0, 0xe3, 0x27, 0x5f, 0xc4, + 0x5c, 0x25, 0xcb, 0xe9, 0x9a, 0x86, 0x5f, 0xd7, 0x49, 0x67, 0x33, 0x6b, + 0x00, 0xeb, 0x23, 0x97, 0xdb, 0x1c, 0xb0, 0xba, 0x47, 0xbf, 0x62, 0xe0, + 0x58, 0x0e, 0x0a, 0xcb, 0x56, 0x62, 0xdd, 0x95, 0x01, 0x6a, 0xbd, 0xfa, + 0xa6, 0xfb, 0xeb, 0x7c, 0x3a, 0x87, 0x1b, 0xab, 0xd7, 0x6d, 0x7f, 0xa0, + 0xbd, 0xbe, 0x44, 0xb3, 0x36, 0x6d, 0x89, 0x47, 0x11, 0xbc, 0xb3, 0xa7, + 0xd9, 0x99, 0x00, 0x20, 0xdc, 0xd6, 0x22, 0x56, 0xe8, 0x45, 0xa8, 0x22, + 0x88, 0xb6, 0xa6, 0x61, 0x04, 0x02, 0x3e, 0xa4, 0xb4, 0x37, 0xff, 0xc1, + 0x35, 0x8d, 0xaa, 0x50, 0x68, 0xdb, 0x3e, 0xff, 0xf2, 0x48, 0xe1, 0x4d, + 0xf4, 0xd4, 0xe2, 0x26, 0x1c, 0x5b, 0xb6, 0x9b, 0xe4, 0xa1, 0x33, 0x99, + 0x0c, 0x86, 0x61, 0xa0, 0xaa, 0x1a, 0xc1, 0xe0, 0xd6, 0x66, 0x5e, 0x24, + 0x93, 0x49, 0x6c, 0x7b, 0xbd, 0xf7, 0x10, 0x42, 0xe0, 0xf5, 0x7a, 0xd1, + 0x75, 0x7d, 0x4b, 0xe5, 0x64, 0xb3, 0x39, 0xf2, 0xf9, 0xdc, 0xd5, 0x5b, + 0xeb, 0x26, 0xe5, 0x3a, 0x41, 0x93, 0x24, 0x10, 0x08, 0x6c, 0xa9, 0xae, + 0x42, 0x08, 0x82, 0x41, 0x67, 0x86, 0xf5, 0x96, 0x3d, 0xc5, 0x26, 0xdb, + 0x17, 0xb2, 0x06, 0x12, 0x49, 0xbd, 0x4f, 0xbf, 0xe2, 0xb1, 0xb6, 0x94, + 0x2c, 0xe6, 0x4c, 0x52, 0xa6, 0x85, 0x00, 0x6c, 0xa0, 0x3d, 0xe0, 0x45, + 0x5d, 0x43, 0x67, 0x16, 0x73, 0x06, 0x09, 0xc3, 0x5a, 0x57, 0x86, 0x10, + 0x10, 0xd4, 0x54, 0x6a, 0xbc, 0x9e, 0x32, 0xa0, 0xaf, 0xf4, 0x23, 0x5f, + 0xb8, 0x30, 0xc8, 0xcc, 0xcc, 0x0c, 0x99, 0x4c, 0x06, 0xcb, 0xb2, 0x50, + 0x14, 0x05, 0x9f, 0xcf, 0x4b, 0x7d, 0x7d, 0x3d, 0x3b, 0x77, 0xee, 0xa4, + 0xa9, 0x69, 0xbd, 0x06, 0x1a, 0x8b, 0xc5, 0x78, 0xf6, 0xd9, 0x93, 0x2c, + 0x2d, 0xc5, 0xb1, 0x6d, 0xb9, 0x21, 0xf0, 0x34, 0x4d, 0x25, 0x18, 0x0c, + 0xd2, 0xd6, 0xd6, 0xc6, 0xee, 0xdd, 0xbb, 0xf1, 0xf9, 0xd6, 0xcb, 0x5e, + 0xb6, 0x6d, 0x73, 0xe2, 0xc4, 0xd3, 0x44, 0x22, 0x11, 0x4c, 0xd3, 0xbc, + 0xfa, 0xcd, 0x69, 0x2a, 0xfb, 0xf7, 0xdf, 0x4e, 0x6f, 0x6f, 0x1f, 0x00, + 0xf9, 0x7c, 0x9e, 0xe7, 0x9f, 0x7f, 0x9e, 0xcb, 0x97, 0x27, 0x91, 0x52, + 0xd2, 0xd1, 0x11, 0xe6, 0xe8, 0xd1, 0xa3, 0xeb, 0xce, 0xb3, 0x2c, 0x8b, + 0xc7, 0x1e, 0x7b, 0xac, 0xa8, 0x16, 0xf8, 0x7c, 0x3e, 0x1e, 0x78, 0xe0, + 0x01, 0x2a, 0x2b, 0x2b, 0xae, 0x3f, 0x58, 0xb4, 0x2c, 0x3e, 0xf1, 0xdc, + 0x28, 0xa7, 0xa2, 0xcb, 0x48, 0xe0, 0x50, 0x63, 0x88, 0xdf, 0xdf, 0xd7, + 0x41, 0x73, 0x60, 0x63, 0x35, 0x24, 0x69, 0x58, 0xfc, 0xd5, 0xb9, 0xcb, + 0xfc, 0x74, 0x72, 0x1e, 0x5d, 0x51, 0x48, 0x9b, 0x16, 0xdf, 0x7f, 0xc3, + 0x1d, 0x34, 0xba, 0xa3, 0x8a, 0x0b, 0x59, 0x83, 0xff, 0xd5, 0x7f, 0x89, + 0x67, 0xe7, 0x96, 0x30, 0x37, 0x78, 0xa6, 0x08, 0xf0, 0x2a, 0x0a, 0xf5, + 0x3e, 0x0f, 0x77, 0x36, 0x84, 0x78, 0x7b, 0x77, 0x13, 0xed, 0x57, 0x18, + 0xb9, 0xbc, 0xe5, 0x00, 0x7d, 0xf2, 0xe4, 0x49, 0xfa, 0xfb, 0x07, 0x48, + 0xa7, 0xd3, 0xe4, 0xf3, 0x79, 0x6c, 0xdb, 0x46, 0x4a, 0x89, 0x10, 0x02, + 0x45, 0x51, 0xb8, 0x74, 0x69, 0x82, 0xc1, 0xc1, 0x21, 0xba, 0xba, 0x3a, + 0x39, 0x7a, 0xf4, 0x68, 0x89, 0xf7, 0x7b, 0xea, 0xa9, 0xa7, 0x18, 0x1b, + 0x1b, 0x2f, 0x7a, 0xbc, 0xc2, 0xb9, 0x25, 0xd1, 0xa9, 0xa2, 0xa0, 0x28, + 0x0a, 0x63, 0x63, 0xe3, 0x9c, 0x3d, 0xdb, 0xcf, 0x81, 0x03, 0x07, 0xb8, + 0xfd, 0xf6, 0x7d, 0x25, 0xc7, 0x0c, 0x0e, 0x0e, 0xf1, 0xc2, 0x0b, 0x2f, + 0x14, 0xf3, 0x11, 0xa4, 0x94, 0x1b, 0x7a, 0xfc, 0x82, 0x79, 0x3c, 0x1e, + 0xba, 0xbb, 0x57, 0x94, 0x83, 0x8b, 0x17, 0x47, 0x38, 0x7d, 0xfa, 0x0c, + 0x99, 0x8c, 0x03, 0xd4, 0x68, 0x34, 0x8a, 0x10, 0x0a, 0x47, 0x8e, 0xdc, + 0x5d, 0x4a, 0x01, 0xa4, 0x64, 0x76, 0x76, 0x8e, 0x64, 0x32, 0xe9, 0xf2, + 0xd2, 0x00, 0x96, 0x65, 0xbe, 0xa4, 0x07, 0xfd, 0x27, 0x27, 0x5f, 0xe4, + 0xcb, 0x17, 0x26, 0x8b, 0xe0, 0x7b, 0x66, 0x2e, 0x8e, 0x2a, 0x04, 0x1f, + 0x39, 0xd8, 0x4d, 0x85, 0x67, 0x7d, 0x52, 0x91, 0x29, 0x25, 0x23, 0xcb, + 0x69, 0x9e, 0x9e, 0x5d, 0xc2, 0xa7, 0x2a, 0x24, 0x0d, 0x93, 0x9c, 0x7b, + 0xaf, 0xa6, 0x2d, 0x79, 0x78, 0x22, 0xca, 0x5f, 0x9c, 0x1d, 0x47, 0x20, + 0x50, 0x04, 0x18, 0xb6, 0x5c, 0x97, 0xcb, 0xa1, 0x08, 0x81, 0x47, 0x11, + 0x3c, 0x3a, 0xb9, 0xc0, 0xd7, 0x06, 0xa7, 0x78, 0xf7, 0xee, 0x56, 0x3e, + 0xb4, 0xbf, 0x73, 0x5b, 0xa7, 0x90, 0x6e, 0x09, 0xd0, 0x8f, 0x3c, 0xf2, + 0x08, 0x83, 0x83, 0x43, 0x25, 0xe0, 0x69, 0x6c, 0x6c, 0xa4, 0xae, 0xae, + 0x96, 0x44, 0x22, 0x49, 0x24, 0x12, 0xc1, 0xb2, 0x2c, 0x12, 0x89, 0x04, + 0xfd, 0xfd, 0x03, 0x2c, 0x2f, 0x2f, 0x73, 0xff, 0xfd, 0xf7, 0x13, 0x72, + 0x83, 0x8f, 0xe5, 0xe5, 0x44, 0x09, 0x68, 0x9b, 0x9b, 0x9b, 0xa9, 0xac, + 0xac, 0x2c, 0x82, 0xda, 0x34, 0x4d, 0x22, 0x91, 0x08, 0xa9, 0x54, 0x8a, + 0x7c, 0x3e, 0x4f, 0x34, 0x1a, 0xe5, 0xc9, 0x27, 0x9f, 0x24, 0x99, 0x4c, + 0x94, 0x78, 0xd0, 0x64, 0x32, 0x51, 0xec, 0x15, 0x84, 0x10, 0x84, 0x42, + 0x21, 0x5a, 0x5a, 0x5a, 0x36, 0x05, 0xb5, 0xa2, 0xa8, 0xd4, 0xd6, 0xd6, + 0xad, 0xa2, 0x49, 0xe9, 0xe2, 0xf9, 0x85, 0xeb, 0xf6, 0xf7, 0xf7, 0xd3, + 0xd3, 0xd3, 0x4d, 0x63, 0x63, 0xe3, 0x86, 0x0d, 0xac, 0xf0, 0xfd, 0xa5, + 0xb0, 0xdc, 0xc5, 0x9c, 0xc1, 0x57, 0x07, 0xa7, 0x9c, 0x46, 0xe6, 0x52, + 0x06, 0x53, 0x4a, 0xbe, 0x75, 0x71, 0x9a, 0x77, 0xed, 0x6a, 0x61, 0x4f, + 0xf5, 0xc6, 0x29, 0x9d, 0xaa, 0x70, 0x14, 0x13, 0x4d, 0x11, 0x25, 0x19, + 0x72, 0xb6, 0x94, 0x2c, 0x64, 0x0d, 0x72, 0x96, 0x4d, 0xa5, 0x47, 0xc3, + 0xb0, 0x25, 0xf7, 0xb6, 0xd6, 0xd0, 0x12, 0x58, 0xf1, 0xc0, 0xa6, 0x65, + 0x73, 0x21, 0x9e, 0xe2, 0xdc, 0x62, 0x92, 0x94, 0x69, 0x91, 0x4e, 0x64, + 0xf9, 0xe4, 0xa9, 0x51, 0x2e, 0x25, 0x33, 0x7c, 0xfe, 0xd8, 0x1e, 0xb6, + 0x2b, 0xa6, 0xaf, 0x0a, 0xe8, 0xd1, 0xd1, 0x31, 0xce, 0x9d, 0x3b, 0x5f, + 0xfc, 0x71, 0x43, 0xa1, 0x10, 0xf7, 0xdd, 0x77, 0x1f, 0x3b, 0x76, 0xf4, + 0x14, 0x8f, 0x89, 0xc7, 0xe3, 0x3c, 0xfc, 0xf0, 0x8f, 0x5c, 0x8f, 0x27, + 0x18, 0x1d, 0x1d, 0xa3, 0xa9, 0x69, 0x80, 0x63, 0xc7, 0x8e, 0x6d, 0xe8, + 0x35, 0x5f, 0xf5, 0xaa, 0xbb, 0xe8, 0xe9, 0xe9, 0x29, 0x02, 0x5a, 0x08, + 0x81, 0x94, 0x92, 0x53, 0xa7, 0x4e, 0xf1, 0xe4, 0x93, 0x4f, 0x21, 0x84, + 0x20, 0x9f, 0xcf, 0x33, 0x38, 0x38, 0x44, 0x38, 0x1c, 0xa6, 0xbd, 0xbd, + 0x7d, 0x43, 0x9a, 0x12, 0x0e, 0x87, 0x79, 0xe0, 0x81, 0xfb, 0xb9, 0x52, + 0x5c, 0x7b, 0x35, 0x6f, 0x94, 0x4a, 0xa5, 0x38, 0x7e, 0xfc, 0x04, 0x6f, + 0x79, 0xcb, 0xaf, 0xdd, 0xb4, 0x87, 0xfc, 0xe5, 0x0b, 0x97, 0xc9, 0xdb, + 0x36, 0xea, 0xaa, 0xba, 0x68, 0x42, 0x30, 0x91, 0xcc, 0xf0, 0xff, 0x26, + 0x63, 0xec, 0x0c, 0x05, 0x8a, 0x40, 0xbf, 0xa6, 0x88, 0xde, 0x6d, 0x64, + 0x29, 0xd3, 0xe2, 0x03, 0xfb, 0x3a, 0x79, 0x43, 0xb8, 0xbe, 0x84, 0x72, + 0x58, 0xb6, 0xe4, 0x87, 0x97, 0xa2, 0x7c, 0xec, 0x99, 0x61, 0xa6, 0xd3, + 0x39, 0x54, 0x04, 0x5f, 0x3a, 0x3f, 0xc9, 0x6f, 0xec, 0x68, 0xe1, 0x58, + 0x73, 0xf5, 0xb6, 0x04, 0xf4, 0x55, 0xa3, 0x9c, 0xb1, 0xb1, 0xb1, 0x22, + 0x28, 0x54, 0x55, 0x65, 0xef, 0xde, 0xbd, 0x25, 0x60, 0x06, 0xa8, 0xae, + 0xae, 0xe6, 0x4d, 0x6f, 0x7a, 0x23, 0x86, 0x61, 0x14, 0xbb, 0xec, 0x85, + 0x85, 0x18, 0xe9, 0x74, 0xfa, 0x8a, 0x21, 0x93, 0x10, 0xa2, 0x58, 0xb6, + 0x10, 0x82, 0xbb, 0xee, 0xba, 0x8b, 0xee, 0xee, 0xee, 0xa2, 0xc7, 0x4d, + 0xa5, 0x52, 0x2c, 0x2d, 0x2d, 0x5d, 0x01, 0xac, 0x94, 0x94, 0xb3, 0xd1, + 0x67, 0x2b, 0x36, 0x3d, 0x1d, 0xa1, 0xbf, 0xbf, 0xff, 0xa6, 0x3d, 0xe4, + 0xaf, 0x5c, 0x88, 0x14, 0xc1, 0x2c, 0xa0, 0xf8, 0xdd, 0xa7, 0xaa, 0x7c, + 0x63, 0x38, 0x42, 0x3c, 0x67, 0xbc, 0x74, 0xb9, 0x4a, 0xac, 0xf9, 0xe0, + 0x78, 0xf7, 0xb7, 0x76, 0x37, 0xf2, 0xef, 0x7a, 0xdb, 0x30, 0x5c, 0xaa, + 0xa3, 0x08, 0xc1, 0x89, 0xd9, 0xf8, 0xb6, 0xa5, 0x1c, 0x57, 0x05, 0xf4, + 0xea, 0xe0, 0x4b, 0x55, 0x55, 0xbc, 0xde, 0x8d, 0x83, 0x98, 0xd5, 0x9c, + 0x59, 0x08, 0xb1, 0x21, 0x4f, 0xbe, 0x9a, 0xe5, 0xf3, 0x79, 0x72, 0xab, + 0xf2, 0x13, 0x3c, 0x1e, 0xcf, 0x86, 0xc1, 0xe1, 0x8d, 0xb6, 0x74, 0x3a, + 0xcb, 0xc0, 0xc0, 0xb9, 0x2b, 0x36, 0x9e, 0xeb, 0xb5, 0x6f, 0x0d, 0x47, + 0x58, 0x5c, 0x05, 0xd8, 0x9e, 0x90, 0x9f, 0xd7, 0x87, 0xeb, 0xc9, 0x59, + 0x36, 0x1e, 0x45, 0xf0, 0x6c, 0x74, 0x89, 0x53, 0xf3, 0x4e, 0xa0, 0x78, + 0x33, 0x2c, 0x6f, 0xdb, 0xc4, 0xdc, 0xe1, 0xf8, 0x02, 0x5d, 0x69, 0x0d, + 0x7a, 0x6f, 0x5d, 0x40, 0x6f, 0xac, 0x9a, 0x6e, 0xb0, 0xf5, 0x1a, 0xc0, + 0xbb, 0x5a, 0xfe, 0x2a, 0x70, 0xef, 0xa9, 0xa9, 0x08, 0x8f, 0x3e, 0xfa, + 0x18, 0x93, 0x93, 0x93, 0x2e, 0x05, 0x81, 0x8e, 0x8e, 0x30, 0x6d, 0x6d, + 0x6d, 0xd7, 0x21, 0x8e, 0x6d, 0xcd, 0x54, 0x55, 0x45, 0x4a, 0x89, 0xaa, + 0x2a, 0xcc, 0xcc, 0xcc, 0x14, 0xbd, 0xf4, 0x8d, 0x0c, 0x9a, 0x1e, 0x1a, + 0x8e, 0x14, 0x83, 0x35, 0x9f, 0xaa, 0xf0, 0x3b, 0x7b, 0xda, 0x79, 0x77, + 0x6f, 0x2b, 0xba, 0xaa, 0x20, 0x01, 0xbf, 0xa6, 0xf0, 0x57, 0xe7, 0x2e, + 0x63, 0xd9, 0xf2, 0x86, 0x03, 0x79, 0x30, 0x9e, 0xe2, 0xd3, 0x2f, 0x8c, + 0xf3, 0xed, 0x91, 0x19, 0x3c, 0x8a, 0x42, 0xce, 0xb2, 0xd9, 0x5d, 0x15, + 0x2c, 0xa5, 0x26, 0x65, 0x1d, 0xfa, 0xa5, 0x99, 0x6d, 0xdb, 0xcc, 0xcd, + 0xcd, 0x22, 0xa5, 0x4d, 0x22, 0x91, 0x64, 0x69, 0x69, 0x89, 0x68, 0x34, + 0xca, 0xd4, 0xd4, 0x14, 0xd9, 0x6c, 0xd6, 0x95, 0xf0, 0x34, 0x76, 0xef, + 0xde, 0xcd, 0xe1, 0xc3, 0x87, 0x37, 0xf5, 0xd0, 0x52, 0x4a, 0xe6, 0xe6, + 0xe6, 0x38, 0x75, 0xea, 0x14, 0xe6, 0xaa, 0x3c, 0x07, 0xcb, 0xb2, 0xb8, + 0xfb, 0xee, 0xc3, 0x57, 0xd5, 0x8c, 0xa5, 0x94, 0xb4, 0xb4, 0x34, 0x13, + 0x8b, 0x2d, 0x92, 0x4a, 0xa5, 0x90, 0x52, 0x72, 0xe1, 0xc2, 0x05, 0x3a, + 0x3b, 0xbb, 0x68, 0x6b, 0x6b, 0xbd, 0x21, 0xf7, 0xfa, 0x78, 0x64, 0x91, + 0xe1, 0x78, 0xba, 0xe8, 0x02, 0xea, 0x7d, 0x3a, 0xbf, 0xb5, 0xb3, 0x85, + 0xe5, 0xbc, 0xc9, 0xd1, 0xa6, 0x2a, 0x9e, 0x88, 0x2c, 0xe2, 0x55, 0x15, + 0x1e, 0x9d, 0x5c, 0x60, 0x28, 0x9e, 0x62, 0x6f, 0xed, 0xf5, 0xcb, 0x82, + 0x85, 0x6b, 0x8c, 0x2d, 0x67, 0xe8, 0x8f, 0x25, 0x79, 0x2e, 0xba, 0xc4, + 0x4f, 0x27, 0xe7, 0x39, 0x3d, 0x9f, 0x40, 0x53, 0x14, 0x0c, 0xdb, 0x66, + 0x5f, 0x4d, 0x05, 0x9f, 0x3d, 0xd6, 0xbb, 0xad, 0xb5, 0xe9, 0x97, 0x1d, + 0xd0, 0xa6, 0x69, 0x72, 0xea, 0xd4, 0x0b, 0x58, 0x96, 0x45, 0x3a, 0x9d, + 0x29, 0x91, 0xc3, 0x6a, 0x6a, 0x6a, 0x08, 0x87, 0xc3, 0xf4, 0xf4, 0xf4, + 0xd0, 0xd3, 0xd3, 0x85, 0xae, 0x7b, 0xaf, 0x08, 0xc8, 0x48, 0x24, 0xc2, + 0xc4, 0xc4, 0x44, 0xc9, 0xf6, 0x5c, 0x2e, 0xc7, 0xa1, 0x43, 0xaf, 0xda, + 0xd2, 0x20, 0x48, 0x5d, 0x5d, 0x1d, 0x7d, 0x7d, 0x7d, 0xfc, 0xf8, 0xc7, + 0xff, 0x8c, 0xae, 0x7b, 0x88, 0xc7, 0x97, 0x39, 0x73, 0xe6, 0x34, 0x35, + 0x35, 0xd5, 0x37, 0x44, 0x05, 0xf8, 0xe6, 0x70, 0x84, 0x94, 0xdb, 0xd8, + 0x14, 0x01, 0xaf, 0x0b, 0xd7, 0x51, 0xa5, 0x6b, 0x54, 0xe9, 0x1a, 0xf7, + 0xb5, 0xd6, 0x72, 0x7c, 0x26, 0x5e, 0xec, 0x67, 0xbe, 0x30, 0x70, 0x89, + 0x2f, 0xdd, 0xb3, 0xf7, 0xba, 0xd1, 0xec, 0x57, 0x55, 0xbe, 0x37, 0x3a, + 0xcb, 0xdf, 0x0e, 0x4d, 0xf1, 0xc2, 0x7c, 0x82, 0x68, 0x26, 0x8f, 0x22, + 0xc0, 0x92, 0x50, 0xeb, 0xd1, 0x78, 0x73, 0x57, 0x03, 0xef, 0xdd, 0xd3, + 0xce, 0x5d, 0x0d, 0xdb, 0x77, 0xd8, 0xfb, 0x15, 0x01, 0xb4, 0x94, 0x92, + 0x44, 0xc2, 0x91, 0xdf, 0xfc, 0x7e, 0x3f, 0x75, 0x75, 0xcd, 0x34, 0x36, + 0x36, 0xd2, 0xda, 0xda, 0x4a, 0x5d, 0x5d, 0x2d, 0xd5, 0xd5, 0xd5, 0xf8, + 0xfd, 0x5b, 0x5b, 0x68, 0x50, 0xd7, 0x75, 0x02, 0x81, 0x40, 0x09, 0xdd, + 0xf1, 0x5e, 0xc3, 0xf4, 0x22, 0x29, 0xa1, 0xaf, 0xaf, 0x97, 0xa1, 0xa1, + 0x61, 0x46, 0x47, 0x47, 0xf1, 0x78, 0x3c, 0x5c, 0xbc, 0x38, 0x42, 0x38, + 0x1c, 0xc6, 0xb2, 0xec, 0x97, 0x74, 0x9f, 0xe7, 0x16, 0x93, 0xbc, 0x30, + 0xbf, 0x8c, 0x69, 0xdb, 0xae, 0x1e, 0xac, 0xf0, 0xc1, 0xdb, 0x3b, 0x8a, + 0xfb, 0x1f, 0x6c, 0xaf, 0xe3, 0xef, 0x47, 0x67, 0x19, 0x8a, 0xa7, 0xf0, + 0xa8, 0x0a, 0x3f, 0x18, 0x9b, 0xe3, 0x13, 0x87, 0x76, 0xd2, 0xe4, 0xbf, + 0x76, 0x7e, 0xab, 0x08, 0x88, 0x65, 0xf3, 0xfc, 0xd9, 0xa9, 0x51, 0x86, + 0x97, 0xd2, 0xa8, 0x02, 0xaa, 0x75, 0x8d, 0xdb, 0xeb, 0x2a, 0xb9, 0xbf, + 0xad, 0x96, 0x63, 0xcd, 0xd5, 0xdc, 0x59, 0x1f, 0x22, 0xa4, 0x6f, 0xff, + 0xd4, 0x9d, 0x97, 0xfd, 0x0e, 0x35, 0x4d, 0xe3, 0xc0, 0x81, 0x03, 0xec, + 0xda, 0xb5, 0x93, 0x40, 0x20, 0x80, 0xc7, 0xe3, 0x41, 0xd7, 0xf5, 0x4d, + 0x83, 0xcd, 0x2b, 0xc9, 0x71, 0x3b, 0x76, 0xec, 0xe0, 0xde, 0x7b, 0xef, + 0x21, 0x9f, 0x37, 0x4a, 0x1a, 0xcc, 0xb5, 0x0c, 0x51, 0x6b, 0x9a, 0x87, + 0xc3, 0x87, 0x0f, 0x31, 0x3d, 0x3d, 0x5d, 0x54, 0x69, 0x9e, 0x7d, 0xf6, + 0xe4, 0x4b, 0x4e, 0xb1, 0xfc, 0xfe, 0xd8, 0x1c, 0x97, 0x93, 0x59, 0x14, + 0x21, 0x90, 0xc0, 0x1d, 0xf5, 0x95, 0xa8, 0x42, 0x61, 0x7c, 0x39, 0x83, + 0x10, 0x82, 0x1a, 0xaf, 0x87, 0x9e, 0x90, 0x9f, 0xa1, 0x78, 0x0a, 0x01, + 0xa4, 0x4d, 0x9b, 0xaf, 0x5c, 0x98, 0xe2, 0x8f, 0xee, 0xec, 0xb9, 0x2e, + 0xba, 0x51, 0xa1, 0x6b, 0xa8, 0xae, 0x66, 0x2d, 0x70, 0x66, 0xbf, 0xd4, + 0x78, 0x3d, 0x7c, 0xf0, 0xf6, 0x4e, 0x82, 0x9e, 0x5b, 0x67, 0xdd, 0xe8, + 0x97, 0x1d, 0xd0, 0xaa, 0xaa, 0xd2, 0xd1, 0xd1, 0xb1, 0xa1, 0xb6, 0x7c, + 0xad, 0x80, 0xf6, 0x7a, 0xbd, 0x04, 0x83, 0x41, 0x82, 0x2f, 0x71, 0xa9, + 0x89, 0x96, 0x96, 0x16, 0x0e, 0x1e, 0x3c, 0xc8, 0xf1, 0xe3, 0xc7, 0xd1, + 0x75, 0x9d, 0x54, 0x2a, 0xf5, 0x92, 0xca, 0x8b, 0xa4, 0x72, 0x1c, 0x9f, + 0x89, 0x93, 0xb5, 0xec, 0x22, 0xc0, 0x9e, 0x8f, 0x2e, 0xf3, 0xea, 0xef, + 0x3f, 0x53, 0xe4, 0xba, 0x02, 0xc8, 0x98, 0x2b, 0xda, 0xb4, 0xa6, 0x08, + 0x1e, 0x1a, 0x8a, 0xf0, 0xb1, 0x3b, 0x7a, 0xae, 0x99, 0xee, 0x48, 0x40, + 0x41, 0xf0, 0xe5, 0x7b, 0xf6, 0xf2, 0x2b, 0xff, 0xf7, 0x79, 0xb2, 0xa6, + 0x8d, 0x04, 0x9e, 0x9a, 0x8e, 0xf1, 0xdf, 0x4f, 0xbd, 0xc8, 0x9f, 0x1e, + 0xde, 0xcd, 0xad, 0xb2, 0xc8, 0xff, 0x0d, 0xcb, 0x87, 0xbe, 0x16, 0x85, + 0xee, 0xc6, 0xa9, 0x08, 0x37, 0x46, 0x19, 0xd0, 0x34, 0x8d, 0xbe, 0xbe, + 0x5e, 0xda, 0xda, 0xda, 0xaf, 0x38, 0x94, 0xbe, 0x55, 0x7b, 0x72, 0x7a, + 0x91, 0xb3, 0xb1, 0x44, 0xc9, 0x6a, 0x49, 0x86, 0x2d, 0x59, 0xca, 0x9b, + 0x2c, 0xbb, 0x9f, 0xa5, 0xbc, 0x49, 0x7e, 0xcd, 0xb5, 0xe2, 0x79, 0x83, + 0x6f, 0x5e, 0x8c, 0x5c, 0x5f, 0x6c, 0x22, 0x6d, 0x0e, 0xd6, 0x57, 0xf2, + 0x0f, 0xaf, 0xbb, 0xa3, 0xd8, 0x48, 0xf2, 0xb6, 0xe4, 0x6f, 0x2e, 0x4c, + 0xf1, 0x99, 0x33, 0x63, 0xd8, 0xdc, 0x1a, 0x49, 0x95, 0x57, 0xf5, 0xd0, + 0x85, 0x21, 0x6a, 0x21, 0x04, 0x86, 0x61, 0x10, 0x8d, 0xce, 0x17, 0xff, + 0x5f, 0xad, 0x5c, 0x8c, 0x8f, 0x5f, 0x2a, 0x76, 0xf5, 0x52, 0x4a, 0xbc, + 0x5e, 0x2f, 0x9a, 0x76, 0xb3, 0xa3, 0xe9, 0x1b, 0xe7, 0x76, 0xea, 0xeb, + 0xeb, 0xd9, 0xb7, 0x6f, 0x2f, 0xb1, 0xd8, 0x02, 0xa6, 0x69, 0x5e, 0x77, + 0xa3, 0x4b, 0x1a, 0x16, 0x8f, 0x47, 0x62, 0xcc, 0x67, 0xf2, 0xf8, 0x35, + 0x15, 0x4b, 0x4a, 0x1e, 0x6c, 0xaf, 0x2b, 0xc9, 0xae, 0x5b, 0xe1, 0xbe, + 0x82, 0xc9, 0x54, 0x96, 0x67, 0x66, 0xe3, 0x18, 0xb6, 0xc4, 0xb4, 0x25, + 0x5f, 0x1d, 0x9c, 0xe2, 0xdf, 0xee, 0x6e, 0xbd, 0xee, 0x3b, 0x3b, 0xda, + 0x54, 0xc5, 0xdf, 0xbd, 0x6e, 0x3f, 0xbf, 0xf9, 0xd3, 0x7e, 0x72, 0x96, + 0x8d, 0x29, 0x25, 0x9f, 0x3a, 0x3d, 0x46, 0xad, 0xd7, 0xc3, 0x7b, 0xfa, + 0xda, 0x4a, 0x46, 0x2b, 0x6f, 0x49, 0x40, 0xef, 0xdb, 0xb7, 0x97, 0xb3, + 0x67, 0xcf, 0x92, 0x4e, 0xa7, 0x11, 0x42, 0x30, 0x38, 0x38, 0x88, 0x65, + 0x99, 0xec, 0xdf, 0xbf, 0x9f, 0x60, 0x30, 0x88, 0x61, 0x18, 0x0c, 0x0f, + 0x5f, 0xe4, 0xe4, 0xc9, 0x93, 0x68, 0x9a, 0x86, 0x94, 0x4e, 0x5a, 0x66, + 0x57, 0x57, 0x07, 0x5e, 0xaf, 0x7e, 0x43, 0x2b, 0xbb, 0xba, 0x17, 0x90, + 0x52, 0x92, 0xcb, 0xe5, 0xdc, 0xfc, 0x0f, 0x63, 0x93, 0x9e, 0x00, 0x7c, + 0x3e, 0x3f, 0xbe, 0x2d, 0x2e, 0x52, 0xb8, 0x67, 0x4f, 0x1f, 0x13, 0x13, + 0x97, 0x18, 0x19, 0x79, 0xf1, 0xba, 0x7b, 0x83, 0x33, 0x0b, 0x09, 0x9e, + 0x9c, 0x5e, 0x44, 0x57, 0x15, 0x2c, 0x29, 0x69, 0xf0, 0xeb, 0x7c, 0xf7, + 0xc1, 0x83, 0xa8, 0x9b, 0xe0, 0x28, 0x65, 0x98, 0x1c, 0xfb, 0xfe, 0xb3, + 0x5c, 0x4e, 0x3a, 0x9c, 0x7d, 0x2c, 0x91, 0xe1, 0x89, 0x48, 0x8c, 0x43, + 0x8d, 0x55, 0xd7, 0xfd, 0x9c, 0x5e, 0xdb, 0x5a, 0xc7, 0x57, 0xee, 0xdb, + 0xcb, 0xef, 0x3e, 0x71, 0x9e, 0xa4, 0x69, 0x62, 0xda, 0xf0, 0xb1, 0x67, + 0x2e, 0x12, 0xf2, 0x68, 0xbc, 0x7d, 0x47, 0xd3, 0xb6, 0x06, 0xf5, 0x55, + 0x01, 0x1d, 0x0a, 0x85, 0x78, 0xfd, 0xeb, 0x5f, 0xcf, 0x53, 0x4f, 0x3d, + 0xc5, 0xc2, 0xc2, 0x02, 0x86, 0x61, 0x30, 0x30, 0x70, 0x8e, 0xfe, 0xfe, + 0x01, 0x74, 0x5d, 0x77, 0xc1, 0x24, 0xd1, 0x34, 0xa7, 0xa8, 0xaa, 0xaa, + 0x2a, 0x0e, 0x1e, 0x3c, 0x58, 0x4c, 0xd9, 0xbc, 0xa1, 0xfc, 0x48, 0x51, + 0x8a, 0x8a, 0x86, 0x94, 0x92, 0x8b, 0x17, 0x2f, 0x32, 0x32, 0x32, 0x72, + 0x45, 0x2a, 0x71, 0xe4, 0xc8, 0x11, 0xee, 0xbc, 0xf3, 0x8e, 0x2d, 0xab, + 0x26, 0x07, 0x0f, 0x1e, 0x64, 0x76, 0x76, 0x96, 0x44, 0x22, 0x59, 0xcc, + 0x31, 0xb1, 0x6d, 0x7b, 0x4b, 0x81, 0xa6, 0x61, 0x4b, 0x7e, 0x3e, 0xb3, + 0xc8, 0xc8, 0x52, 0x8a, 0x0a, 0x8f, 0x46, 0xd2, 0xb0, 0x78, 0xff, 0x6d, + 0x61, 0xc4, 0x15, 0x52, 0xf8, 0x83, 0x1e, 0x8d, 0xfb, 0xdb, 0xeb, 0xf8, + 0xfa, 0xd0, 0x14, 0xb6, 0x74, 0x3c, 0xfc, 0xb7, 0x2f, 0xce, 0x70, 0xb8, + 0xa9, 0x7a, 0xeb, 0x0d, 0x6a, 0x83, 0x5d, 0x6f, 0xec, 0x6c, 0xe0, 0xcf, + 0x8f, 0xf5, 0xf2, 0xd1, 0xa7, 0x87, 0x89, 0xe5, 0x9c, 0x44, 0xa6, 0x0f, + 0x1e, 0x1f, 0x44, 0x57, 0x15, 0xde, 0xd2, 0xdd, 0x78, 0xeb, 0x02, 0x1a, + 0xa0, 0xbb, 0xbb, 0x8b, 0xea, 0xea, 0x2a, 0xfa, 0xfb, 0x07, 0x88, 0x44, + 0xa6, 0x88, 0xc5, 0x16, 0x8b, 0x69, 0xa4, 0x42, 0x08, 0x7c, 0x3e, 0x3f, + 0x35, 0x35, 0xd5, 0x34, 0x37, 0xb7, 0xd0, 0xdb, 0xbb, 0x8b, 0x70, 0xb8, + 0xa3, 0xf4, 0x87, 0x36, 0x8c, 0xa2, 0x82, 0xa0, 0x28, 0xca, 0x75, 0xf3, + 0xd4, 0xf6, 0xf6, 0x36, 0xea, 0xeb, 0xeb, 0x99, 0x9d, 0x9d, 0x75, 0x65, + 0x35, 0x79, 0x55, 0x6e, 0xbc, 0x5a, 0xe7, 0xb6, 0x2c, 0xab, 0xa4, 0x2e, + 0xd6, 0x06, 0x73, 0xeb, 0xc2, 0xe1, 0x30, 0x77, 0xde, 0x79, 0x27, 0x27, + 0x4f, 0x3e, 0xc7, 0xf2, 0xf2, 0x32, 0xba, 0xae, 0x13, 0x0e, 0xb7, 0x13, + 0xdc, 0x42, 0xe4, 0x39, 0xba, 0x9c, 0xe6, 0xeb, 0xc3, 0x11, 0x0c, 0xdb, + 0x59, 0xe4, 0xbc, 0xd6, 0xe7, 0xe1, 0x6d, 0xdd, 0x4d, 0x57, 0x5d, 0x79, + 0xf4, 0xfd, 0xb7, 0x85, 0x79, 0x68, 0x70, 0x8a, 0xa4, 0x61, 0x61, 0x23, + 0x79, 0x7c, 0x3a, 0xc6, 0xf1, 0x99, 0x45, 0x6c, 0x09, 0x19, 0xc3, 0xc2, + 0xb2, 0x25, 0xa6, 0x61, 0xad, 0x34, 0x66, 0x9c, 0x91, 0x40, 0xc3, 0x30, + 0x49, 0x01, 0xd2, 0x34, 0x37, 0xcc, 0x89, 0x7e, 0xe7, 0x8e, 0x26, 0xd2, + 0xa6, 0xc5, 0xc7, 0x9f, 0x1b, 0x61, 0x3a, 0x95, 0x23, 0x69, 0x58, 0xbc, + 0xf7, 0x89, 0x01, 0x32, 0xd6, 0x1e, 0xde, 0xb5, 0xb3, 0x65, 0x5b, 0x02, + 0xfa, 0x9a, 0xa7, 0x60, 0x2d, 0x2e, 0x2e, 0xb2, 0xb0, 0x10, 0x23, 0x95, + 0x4a, 0x61, 0x9a, 0x26, 0xaa, 0xaa, 0x12, 0x08, 0xf8, 0xa9, 0xae, 0xae, + 0xa6, 0xa1, 0xa1, 0x61, 0x43, 0xee, 0x79, 0xee, 0xdc, 0xb9, 0xa2, 0x0c, + 0xa6, 0xaa, 0x2a, 0x5d, 0x5d, 0xdd, 0x54, 0x57, 0x5f, 0x5f, 0x97, 0x3a, + 0x3b, 0x3b, 0xc7, 0xdc, 0xdc, 0x2c, 0xb9, 0x5c, 0xfe, 0xaa, 0x91, 0xbb, + 0xa2, 0x28, 0xb4, 0xb6, 0xb6, 0x16, 0x27, 0x1d, 0xcc, 0xcc, 0xcc, 0x12, + 0x89, 0x44, 0x90, 0xd2, 0x46, 0x4a, 0x68, 0x6c, 0x6c, 0xa0, 0xa3, 0xa3, + 0x63, 0x03, 0x6a, 0x23, 0x19, 0x1f, 0x1f, 0x67, 0x71, 0x31, 0x8e, 0xdf, + 0xef, 0x27, 0x1c, 0x6e, 0xa7, 0xa2, 0xe2, 0xea, 0xa3, 0x78, 0xd3, 0xe9, + 0x1c, 0xdf, 0x1d, 0x99, 0x41, 0x15, 0x02, 0x4b, 0x4a, 0xc2, 0x15, 0x3e, + 0xde, 0xd4, 0xd9, 0xb0, 0xa5, 0x97, 0x02, 0x7d, 0x75, 0x70, 0xca, 0x19, + 0x84, 0x91, 0xe0, 0xd5, 0x14, 0xee, 0xaa, 0x0f, 0xb1, 0x98, 0x33, 0xe8, + 0x8f, 0x25, 0xd1, 0x14, 0x41, 0xde, 0x92, 0xbc, 0xef, 0xb6, 0x36, 0x2a, + 0x3d, 0x1a, 0x96, 0x94, 0x9c, 0x9a, 0x4f, 0xf0, 0x64, 0x64, 0x11, 0x5d, + 0x15, 0xe4, 0x2c, 0x9b, 0xb7, 0xf7, 0x34, 0xd1, 0xbd, 0xc1, 0x2a, 0xa7, + 0x39, 0xcb, 0xe6, 0x27, 0x93, 0x0b, 0xbc, 0xb8, 0x94, 0x46, 0x55, 0x04, + 0x86, 0x2d, 0x69, 0x09, 0x78, 0xf9, 0xcd, 0x1d, 0xcd, 0xdb, 0x52, 0xf9, + 0x28, 0xcf, 0x29, 0xbc, 0x45, 0x6d, 0xbb, 0xce, 0x63, 0xd4, 0xa4, 0x94, + 0x48, 0xdb, 0xe9, 0xce, 0x9c, 0x8f, 0xe5, 0x7c, 0x6c, 0x1b, 0xdb, 0xb6, + 0xb1, 0x6d, 0x0b, 0x5b, 0x5a, 0xce, 0x31, 0xb6, 0x8d, 0x94, 0x56, 0x31, + 0x93, 0x6e, 0xe5, 0xff, 0x95, 0x73, 0xb1, 0x6d, 0xd7, 0x03, 0x4a, 0x90, + 0x12, 0xcb, 0x2d, 0x1b, 0xf7, 0x63, 0xe3, 0x78, 0x47, 0x6c, 0x1b, 0x89, + 0x5b, 0x8e, 0x74, 0x45, 0x25, 0xf7, 0xbb, 0xfb, 0x4f, 0xf1, 0x3c, 0x49, + 0xe9, 0xdf, 0xd5, 0x11, 0x62, 0xc1, 0xdb, 0xba, 0xcd, 0x13, 0xe7, 0x10, + 0x59, 0x42, 0x2e, 0xe5, 0x3a, 0x9e, 0x59, 0xd8, 0x2e, 0x41, 0x8a, 0xab, + 0x52, 0x97, 0x86, 0x96, 0x9d, 0xb4, 0x76, 0xed, 0xdf, 0x5e, 0x9e, 0x6c, + 0x7b, 0x73, 0x68, 0xe9, 0xac, 0x6a, 0x82, 0x0b, 0xc6, 0x02, 0x90, 0xdd, + 0x8f, 0x65, 0x99, 0xd8, 0xb6, 0x05, 0xb6, 0x03, 0x76, 0xcb, 0xb2, 0x8a, + 0xc7, 0x49, 0xdb, 0xc2, 0xb2, 0x6d, 0x27, 0xa3, 0x4c, 0x9a, 0xee, 0x36, + 0xdb, 0x05, 0xa6, 0xc4, 0xb2, 0x2c, 0x6c, 0xf7, 0x3b, 0xd2, 0xc6, 0x76, + 0x01, 0x28, 0x0b, 0x80, 0xb6, 0x25, 0x12, 0xcb, 0x01, 0x65, 0x11, 0xd0, + 0x2e, 0xf8, 0x65, 0xa1, 0x4e, 0xab, 0x00, 0x6d, 0xaf, 0x06, 0xb4, 0x74, + 0xcb, 0x76, 0x21, 0xb9, 0x16, 0xd0, 0x72, 0x15, 0x70, 0xc1, 0x01, 0xaf, + 0x90, 0x28, 0xc2, 0x49, 0x8e, 0x97, 0xd8, 0x20, 0x15, 0x9c, 0x29, 0xa8, + 0x9b, 0xfc, 0xf0, 0x42, 0xe0, 0xf7, 0x55, 0x94, 0x5d, 0xfa, 0x2f, 0x0a, + 0xa0, 0x05, 0x80, 0xa2, 0x82, 0x90, 0x08, 0xa9, 0x22, 0x50, 0x91, 0xd2, + 0x46, 0x2d, 0x78, 0x4e, 0x59, 0xf0, 0xc6, 0x2e, 0xd8, 0x5c, 0xcf, 0x69, + 0xbb, 0x00, 0xa5, 0xe0, 0xd9, 0x0b, 0x5e, 0xd4, 0x05, 0x5a, 0x31, 0x80, + 0xb1, 0x6d, 0x24, 0x8e, 0x37, 0x2f, 0x82, 0xb2, 0xe0, 0x8d, 0x5d, 0xb8, + 0x39, 0x13, 0x67, 0x65, 0x11, 0xa4, 0x05, 0x1e, 0x5b, 0x68, 0x6c, 0x05, + 0xb0, 0xaf, 0xfc, 0x5f, 0x00, 0xb1, 0x5c, 0x9f, 0xb6, 0x5a, 0x2c, 0x77, + 0x7d, 0x07, 0xab, 0x20, 0x98, 0xcb, 0xe4, 0x38, 0xb3, 0xb0, 0x8c, 0x61, + 0x3b, 0xc7, 0x49, 0xdb, 0x76, 0x07, 0x38, 0xe4, 0x26, 0x9e, 0x4c, 0x30, + 0xb1, 0xac, 0xe2, 0xcd, 0xcd, 0xb3, 0xba, 0x64, 0xe9, 0xd6, 0xf1, 0x4d, + 0x9d, 0x0d, 0x28, 0xc2, 0xe1, 0xb1, 0xdf, 0x18, 0x9e, 0xe6, 0x27, 0x93, + 0x0b, 0x7c, 0xe4, 0x60, 0x17, 0xaf, 0x6a, 0x08, 0xf1, 0x27, 0x27, 0x47, + 0x98, 0xcd, 0xe4, 0xf9, 0xf3, 0x63, 0x7d, 0x04, 0x34, 0x85, 0x68, 0x26, + 0xcf, 0xdb, 0x1e, 0x39, 0xcd, 0x3b, 0x76, 0x34, 0x73, 0xb4, 0xa9, 0x8a, + 0xcf, 0x9d, 0xbd, 0xc4, 0x72, 0xde, 0x2a, 0xe1, 0xb2, 0x3e, 0x55, 0xe1, + 0xdf, 0xf7, 0xb6, 0xd2, 0x12, 0xd0, 0xf9, 0xd3, 0x17, 0xc6, 0xc8, 0x98, + 0x76, 0x31, 0xa8, 0x34, 0xa5, 0xe4, 0x53, 0x77, 0xef, 0x62, 0x6f, 0x6d, + 0x05, 0xdf, 0x1e, 0x99, 0xe6, 0xdb, 0xc3, 0xd3, 0xee, 0xd4, 0x2c, 0x49, + 0xbd, 0x57, 0xe7, 0x1d, 0x3b, 0x9a, 0xf8, 0x95, 0x8e, 0x7a, 0x14, 0x21, + 0x58, 0xc8, 0x19, 0x7c, 0xf4, 0xe9, 0x61, 0xa6, 0x92, 0xb9, 0xe2, 0xc2, + 0x37, 0x59, 0xcb, 0xe6, 0xbd, 0x7d, 0x6d, 0xfc, 0xfa, 0x0e, 0x27, 0x50, + 0x9d, 0x4e, 0xe7, 0xf8, 0xf0, 0x89, 0x21, 0x76, 0x54, 0x05, 0xf8, 0xc3, + 0xfd, 0x5d, 0x54, 0xad, 0xca, 0xf5, 0x58, 0xca, 0x9b, 0x7c, 0xf9, 0xc2, + 0x24, 0x27, 0x66, 0xe2, 0x78, 0x55, 0x85, 0x5f, 0xed, 0xac, 0xe7, 0x6d, + 0xdd, 0x4d, 0x04, 0xdc, 0x75, 0x40, 0x3e, 0xf9, 0xfc, 0x28, 0xcf, 0xcc, + 0xad, 0xe4, 0x8f, 0x9b, 0xb6, 0xe4, 0xf6, 0xba, 0x0a, 0x3e, 0x7c, 0xa0, + 0x6b, 0xc3, 0xe5, 0x81, 0x5f, 0x3e, 0x0f, 0x2d, 0x9c, 0x85, 0xab, 0x56, + 0x1e, 0xea, 0xf6, 0x1e, 0xf7, 0x7f, 0x64, 0x68, 0x9a, 0xff, 0x7c, 0x69, + 0x98, 0x94, 0x61, 0xad, 0xe9, 0x7f, 0xc5, 0xa6, 0xe2, 0xb7, 0x1c, 0xbf, + 0xb8, 0x81, 0x44, 0x67, 0x73, 0x77, 0x63, 0x35, 0xbf, 0xdc, 0x51, 0x8f, + 0x2e, 0x04, 0xb6, 0x84, 0xb1, 0x44, 0x9a, 0x13, 0x33, 0x8b, 0x2c, 0xe5, + 0xdb, 0x99, 0x4c, 0x65, 0xf9, 0xe1, 0x44, 0x94, 0xb3, 0x0b, 0x09, 0x42, + 0xba, 0xc6, 0xa7, 0x8e, 0xec, 0x26, 0x67, 0xdb, 0xfc, 0x2c, 0xb2, 0xc0, + 0xde, 0xda, 0x0a, 0xde, 0xd4, 0xd9, 0xc0, 0xbe, 0xda, 0x0a, 0x32, 0xa6, + 0xcd, 0xd7, 0x86, 0x26, 0xc9, 0x9a, 0x92, 0xff, 0xb4, 0x2f, 0x8c, 0xa6, + 0x08, 0x2a, 0x75, 0x8d, 0xc7, 0xa6, 0x62, 0x3c, 0x7c, 0x29, 0xca, 0xaf, + 0xef, 0x68, 0xa6, 0xbb, 0xd2, 0x8f, 0x2d, 0x9d, 0xe4, 0xfc, 0x0a, 0x8f, + 0x4a, 0x22, 0x6f, 0xf1, 0x37, 0x17, 0xa6, 0x98, 0x48, 0x64, 0x78, 0x63, + 0x67, 0x23, 0x75, 0x3e, 0x0f, 0x27, 0x66, 0xe3, 0xbc, 0xe3, 0x27, 0xa7, + 0x79, 0x4f, 0x6f, 0x1b, 0x5f, 0xbc, 0xe7, 0x36, 0x86, 0x16, 0x53, 0x7c, + 0xe5, 0xfc, 0x24, 0xf7, 0xb6, 0xd6, 0xf2, 0x4b, 0xed, 0xb5, 0xe4, 0x2d, + 0x49, 0xde, 0xb6, 0x69, 0x0a, 0x78, 0x01, 0x27, 0x68, 0xfd, 0xdf, 0xfd, + 0x13, 0x7c, 0x67, 0x64, 0x86, 0x06, 0x9f, 0xce, 0x8e, 0xca, 0x00, 0xef, + 0xee, 0x75, 0xd2, 0x66, 0xa7, 0x52, 0x39, 0xee, 0xfb, 0xa7, 0x67, 0x49, + 0x1a, 0x16, 0x6f, 0xef, 0x69, 0x22, 0x65, 0x58, 0xfc, 0xfe, 0xcf, 0x06, + 0xf9, 0x97, 0xa9, 0x45, 0x3e, 0x77, 0xac, 0x17, 0x01, 0x3c, 0x34, 0x34, + 0x45, 0xce, 0xb6, 0x79, 0x4f, 0x6f, 0x5b, 0xb1, 0x6e, 0x5d, 0x21, 0xff, + 0x86, 0xef, 0x27, 0xff, 0x57, 0x27, 0xdb, 0xfd, 0xa2, 0x99, 0x69, 0x64, + 0x37, 0x1c, 0x8a, 0xf7, 0x78, 0x54, 0x2e, 0xc5, 0x62, 0x34, 0xa8, 0x16, + 0x35, 0x8a, 0xdc, 0x92, 0xce, 0xab, 0x6a, 0xba, 0xa3, 0x41, 0xaf, 0xd9, + 0x9d, 0xb1, 0x6c, 0xde, 0xd8, 0x59, 0x5f, 0x32, 0x48, 0xe1, 0xcc, 0xc0, + 0x76, 0x72, 0x37, 0x04, 0x02, 0x4d, 0x08, 0x82, 0x9a, 0xca, 0x5f, 0x0e, + 0x4c, 0xf0, 0xf6, 0x9e, 0x26, 0xe7, 0x5d, 0x2b, 0xae, 0x02, 0xd2, 0x13, + 0xf2, 0xf3, 0x5f, 0xdc, 0x44, 0xa4, 0x1f, 0x8c, 0xcf, 0xb2, 0x80, 0xc1, + 0x27, 0x0e, 0xed, 0x04, 0x1c, 0x56, 0xf5, 0xb3, 0xe9, 0x45, 0x02, 0x9a, + 0xca, 0x7f, 0xdc, 0x1b, 0xe6, 0xe8, 0x1a, 0x4d, 0x3a, 0x96, 0x33, 0x50, + 0x04, 0x74, 0x87, 0xfc, 0xfc, 0xf1, 0x5d, 0x3d, 0x34, 0xfa, 0x75, 0xb2, + 0x96, 0xc5, 0xc1, 0xef, 0x9d, 0xe0, 0xef, 0x46, 0x67, 0xf8, 0xe2, 0x3d, + 0xb7, 0xa1, 0x08, 0x50, 0x14, 0xc1, 0x2f, 0xb5, 0xd7, 0xf2, 0x5f, 0xef, + 0xda, 0xb1, 0x5e, 0xad, 0xca, 0x59, 0x7c, 0x63, 0x38, 0x42, 0x53, 0x40, + 0x07, 0x09, 0x8f, 0x47, 0x62, 0xbc, 0xa5, 0xbb, 0x91, 0x90, 0xae, 0xf1, + 0x0f, 0xa3, 0x33, 0xcc, 0x67, 0x0c, 0x3e, 0x7e, 0x68, 0x07, 0x7f, 0x70, + 0x7b, 0x27, 0x00, 0xbf, 0x36, 0x36, 0xc7, 0x40, 0x2c, 0x49, 0x3c, 0x67, + 0x50, 0xeb, 0xf3, 0xa0, 0x2a, 0x82, 0x06, 0x5d, 0x2f, 0xd6, 0xf9, 0x17, + 0x4a, 0x87, 0xfe, 0x85, 0x8a, 0xde, 0x6d, 0x8b, 0xd1, 0x0b, 0xc7, 0x37, + 0x5c, 0x0e, 0x4b, 0x13, 0x82, 0xc3, 0x46, 0x8a, 0xbe, 0x26, 0x73, 0x4b, + 0x51, 0x91, 0xb4, 0x6d, 0xba, 0xfa, 0x8e, 0xe1, 0xf3, 0x57, 0xb2, 0x96, + 0xc8, 0xd8, 0x52, 0xd2, 0x53, 0x19, 0xb8, 0xe2, 0xa8, 0x9b, 0x2d, 0x9d, + 0xa4, 0xfe, 0xa4, 0x61, 0xf1, 0xa1, 0xe3, 0x43, 0x3c, 0xf4, 0xda, 0x7d, + 0x20, 0xd6, 0x2f, 0xe4, 0xb8, 0x8a, 0x69, 0xb9, 0xd4, 0xc2, 0x46, 0x08, + 0xa7, 0x1b, 0xff, 0x97, 0xa9, 0x18, 0x0b, 0x59, 0x83, 0x06, 0x9f, 0xce, + 0xa1, 0xc6, 0x2a, 0x56, 0xcf, 0xa5, 0x95, 0x12, 0x46, 0x97, 0x33, 0x9c, + 0x5d, 0x48, 0xf0, 0xb7, 0xc3, 0x11, 0x2c, 0x29, 0xf9, 0x90, 0x0b, 0xc0, + 0xc2, 0x0d, 0x5e, 0x58, 0x4c, 0xf2, 0x93, 0xcb, 0x0b, 0xa8, 0x02, 0xee, + 0x6e, 0xaa, 0x2e, 0x2e, 0x99, 0xf0, 0xbd, 0x17, 0x67, 0x58, 0x32, 0x4c, + 0xde, 0xb7, 0xa7, 0x1d, 0x4d, 0x11, 0x7c, 0x73, 0x78, 0x9a, 0xd3, 0x0b, + 0x09, 0xee, 0x69, 0xa9, 0x71, 0xe7, 0x63, 0x3a, 0x0b, 0xd5, 0x14, 0xec, + 0x2d, 0xdd, 0x8d, 0xc5, 0x01, 0x99, 0x78, 0xde, 0x40, 0xe0, 0x8c, 0x72, + 0xfe, 0x78, 0xc2, 0x49, 0x85, 0xe8, 0xad, 0x0e, 0xb2, 0xb3, 0x2a, 0x50, + 0x06, 0xf4, 0x8d, 0xb6, 0xe4, 0x52, 0x94, 0x68, 0x64, 0x78, 0xc3, 0xc1, + 0x1b, 0x55, 0x11, 0xb4, 0x69, 0x2a, 0x1d, 0x5b, 0x0c, 0xf1, 0x15, 0x8f, + 0xce, 0xde, 0xf0, 0xf5, 0xcf, 0x5e, 0xb1, 0xa4, 0xa4, 0xaf, 0x26, 0xc8, + 0x81, 0xda, 0x4a, 0xfe, 0xa2, 0x7f, 0x9c, 0xcf, 0x9e, 0x19, 0xdb, 0xd2, + 0x1b, 0xae, 0x0a, 0xde, 0xde, 0xb0, 0x6d, 0xfe, 0x69, 0x7c, 0x8e, 0x47, + 0x27, 0x63, 0x1c, 0x6d, 0xaa, 0xe2, 0xae, 0x86, 0x50, 0x91, 0x4f, 0x0b, + 0x04, 0x59, 0xcb, 0xe2, 0x4b, 0xe7, 0x2f, 0xf3, 0xdd, 0x91, 0x19, 0x1e, + 0x6c, 0xaf, 0xe5, 0x93, 0x87, 0x77, 0xf1, 0x1b, 0x3b, 0x9a, 0x4b, 0x9a, + 0xde, 0xe9, 0xf9, 0x04, 0x9f, 0xc9, 0x8e, 0xd3, 0xec, 0xd7, 0xd9, 0x55, + 0x1d, 0xa4, 0xc2, 0xa3, 0x62, 0x4b, 0xc9, 0x17, 0xcf, 0x5d, 0xa6, 0xc9, + 0xaf, 0xf3, 0x9e, 0xde, 0x36, 0xce, 0x2f, 0xa6, 0xf8, 0xc2, 0xd9, 0x09, + 0x9e, 0x9c, 0x5e, 0x74, 0x00, 0x7d, 0xc5, 0x3e, 0xab, 0x70, 0x75, 0x88, + 0x1b, 0x16, 0x9f, 0x3f, 0x7b, 0x09, 0x5d, 0x11, 0xfc, 0xf6, 0xee, 0x96, + 0x32, 0xa0, 0x6f, 0x86, 0x29, 0x9a, 0x87, 0x8e, 0x5d, 0x87, 0xd7, 0xfd, + 0x1c, 0xaa, 0x10, 0x8c, 0x2f, 0x67, 0x78, 0x6c, 0x2e, 0x4e, 0xc6, 0xdc, + 0xca, 0x48, 0xa5, 0xc4, 0xa3, 0xfb, 0x39, 0x75, 0x71, 0x7a, 0x5d, 0xe0, + 0xe9, 0x70, 0x59, 0x8d, 0x5f, 0xed, 0x68, 0xc0, 0xaf, 0x5d, 0x19, 0xa0, + 0x59, 0xd3, 0xe6, 0xc3, 0x07, 0xbb, 0x78, 0x7c, 0x3a, 0xc6, 0x77, 0x47, + 0x66, 0xdc, 0x00, 0x4d, 0x6c, 0xe1, 0xea, 0x12, 0xaf, 0xaa, 0xf0, 0xe1, + 0x83, 0xdd, 0xbc, 0xb6, 0xad, 0x16, 0x4d, 0x88, 0x75, 0xab, 0x9a, 0x6a, + 0x8a, 0xa0, 0x39, 0xe0, 0x25, 0xa4, 0xab, 0x54, 0x79, 0x3d, 0xbc, 0xb5, + 0xbb, 0x69, 0x1d, 0x85, 0x7a, 0x5d, 0xb8, 0x9e, 0xff, 0x76, 0x68, 0x27, + 0x59, 0xd3, 0x2a, 0x26, 0x48, 0xfd, 0xf3, 0xe5, 0x79, 0x2e, 0x2e, 0xa7, + 0x50, 0x85, 0xe0, 0x8f, 0x4f, 0x8e, 0x30, 0x97, 0xc9, 0xa3, 0x2a, 0xf0, + 0x7f, 0x46, 0x67, 0x79, 0x6f, 0x5f, 0x5b, 0x51, 0x48, 0xd2, 0x57, 0x5d, + 0x6f, 0x31, 0x67, 0x30, 0x9b, 0xc9, 0xd3, 0x59, 0xe1, 0x2b, 0xae, 0x1b, + 0xd9, 0xe8, 0xd3, 0xf9, 0xce, 0x83, 0xfb, 0xb1, 0x6c, 0x49, 0xe5, 0xbf, + 0x92, 0xc9, 0x03, 0xdb, 0x0e, 0xd0, 0x81, 0x8a, 0x5a, 0x02, 0x15, 0x35, + 0x1b, 0xc8, 0x6f, 0x0a, 0x8f, 0x0e, 0x4d, 0xf2, 0x95, 0x98, 0xbd, 0xe1, + 0x5a, 0x70, 0x9b, 0x68, 0x76, 0x88, 0x99, 0xe1, 0x75, 0x9b, 0x73, 0xb6, + 0xe4, 0xbe, 0x96, 0x1a, 0x1e, 0x6c, 0xaf, 0xc3, 0x7f, 0x95, 0x0c, 0x5c, + 0x89, 0x24, 0xa4, 0x6b, 0x7c, 0xe6, 0x48, 0x2f, 0x0f, 0x3e, 0xfc, 0x1c, + 0xae, 0x10, 0x79, 0xd5, 0x4b, 0xdb, 0xae, 0x14, 0x69, 0xd9, 0x12, 0xd3, + 0x92, 0xa4, 0x6d, 0x8b, 0x78, 0xce, 0xa0, 0x39, 0xe0, 0x75, 0x01, 0x25, + 0xd1, 0x14, 0xc1, 0x7b, 0xfa, 0xda, 0x68, 0xf2, 0x7b, 0xf8, 0x1f, 0xa7, + 0xc6, 0x78, 0xdf, 0x13, 0x03, 0x7c, 0xed, 0xb5, 0xfb, 0x4a, 0x56, 0xa7, + 0x0e, 0x79, 0x34, 0xaa, 0x75, 0x0d, 0x56, 0x01, 0xee, 0xf3, 0x67, 0x2f, + 0xe1, 0x11, 0x0a, 0xff, 0xf3, 0xee, 0x5d, 0x04, 0x35, 0x15, 0x8f, 0x2a, + 0x78, 0x32, 0xb2, 0xc8, 0xd7, 0x87, 0x23, 0xfc, 0x7c, 0x26, 0x4e, 0x77, + 0xa5, 0x9f, 0xac, 0x69, 0xf3, 0x8f, 0x63, 0x73, 0x1c, 0x6e, 0xac, 0x22, + 0x9a, 0xc9, 0xf3, 0xd9, 0x33, 0xe3, 0x78, 0x55, 0x85, 0x4f, 0x1f, 0xd9, + 0x4d, 0x83, 0x4f, 0xc7, 0x96, 0x12, 0x1b, 0x30, 0x2c, 0x1b, 0xd3, 0x96, + 0x44, 0x33, 0x79, 0x74, 0x45, 0x50, 0xef, 0xd7, 0xd1, 0x5e, 0xc1, 0x21, + 0xc8, 0x6d, 0x07, 0x68, 0x67, 0xe8, 0x7d, 0xe3, 0x07, 0x3a, 0xb0, 0x64, + 0x30, 0x91, 0x95, 0x88, 0x2d, 0xa5, 0x81, 0x0b, 0x2c, 0x33, 0xbf, 0x61, + 0xc7, 0x9b, 0x31, 0x2c, 0xfa, 0x6a, 0x2a, 0xd6, 0xd0, 0x07, 0x49, 0xce, + 0xb2, 0x49, 0x18, 0x4e, 0x5e, 0x85, 0x44, 0x92, 0x34, 0x4c, 0x74, 0x45, + 0x60, 0x4a, 0xc9, 0xe1, 0xa6, 0x2a, 0x3e, 0x7a, 0xb0, 0x9b, 0x8f, 0x9f, + 0x1c, 0xa1, 0x4a, 0x2f, 0x55, 0x92, 0x12, 0x86, 0xc5, 0xf2, 0x2a, 0xd5, + 0x45, 0x13, 0x0a, 0x35, 0xba, 0xc6, 0x72, 0xde, 0xe4, 0x03, 0x3f, 0xbf, + 0x80, 0x5f, 0x53, 0x91, 0xd2, 0x91, 0xed, 0xbe, 0xf7, 0xe0, 0x01, 0xf6, + 0xd6, 0x56, 0x90, 0x32, 0x2c, 0x6c, 0xe9, 0x78, 0xd1, 0x3f, 0xd8, 0xdf, + 0x45, 0xc2, 0xb0, 0xf8, 0xf4, 0xe9, 0x31, 0x52, 0xa6, 0xcd, 0x77, 0xee, + 0xbf, 0x1d, 0x4b, 0x82, 0x9d, 0x37, 0xc9, 0xac, 0xc9, 0x57, 0xf9, 0xd9, + 0x74, 0x9c, 0x9f, 0xcd, 0xc4, 0x39, 0xd2, 0x54, 0xc5, 0xfb, 0xf7, 0x86, + 0x8b, 0x23, 0x86, 0xbd, 0xd5, 0x41, 0x1e, 0x8f, 0xc4, 0xf8, 0xec, 0x99, + 0x71, 0x7e, 0xf0, 0x86, 0x3b, 0xf8, 0xc2, 0xbf, 0xe9, 0xe3, 0x73, 0x67, + 0x2f, 0xf1, 0xe0, 0xc3, 0xcf, 0x23, 0x90, 0x74, 0x55, 0x06, 0xf8, 0xd8, + 0x1d, 0xdd, 0x74, 0x87, 0x02, 0x58, 0x52, 0x12, 0xd0, 0x54, 0x06, 0xe3, + 0x29, 0x8e, 0xfc, 0xe3, 0x33, 0x6e, 0xdd, 0x6c, 0x8e, 0x34, 0x55, 0xf3, + 0x85, 0x57, 0xef, 0xa1, 0xed, 0x15, 0x5c, 0x26, 0x61, 0x5b, 0x0d, 0x7d, + 0x1b, 0xb9, 0x34, 0x83, 0xa7, 0x7f, 0x8a, 0x61, 0xe4, 0x36, 0x80, 0xa7, + 0xb3, 0x60, 0xa2, 0x61, 0x6d, 0xed, 0x76, 0x2d, 0xcb, 0xe0, 0xc0, 0xd1, + 0xb7, 0xa2, 0x7b, 0x03, 0xeb, 0x21, 0x2d, 0x1d, 0xbd, 0x78, 0x75, 0x8e, + 0x86, 0x94, 0x30, 0x9f, 0xcd, 0xb3, 0x64, 0x98, 0xb4, 0x04, 0xbc, 0xe8, + 0x8a, 0xc2, 0xe5, 0x54, 0x16, 0x55, 0x40, 0x47, 0x85, 0x1f, 0x81, 0x93, + 0x57, 0x31, 0x9f, 0xcd, 0x53, 0xeb, 0xf5, 0x94, 0x2c, 0x78, 0x3e, 0xba, + 0x9c, 0xc6, 0x92, 0xb0, 0x6b, 0x15, 0x07, 0xcd, 0x59, 0x36, 0xb3, 0x99, + 0x3c, 0x69, 0xd3, 0x2a, 0xe1, 0xb4, 0x1d, 0x15, 0x3e, 0x7c, 0xaa, 0xc2, + 0xe5, 0x54, 0x0e, 0xa4, 0xa4, 0x35, 0xe8, 0xc3, 0xe3, 0xe6, 0x68, 0x5c, + 0x4a, 0x66, 0x90, 0x12, 0xc2, 0x15, 0x3e, 0x24, 0x92, 0xf1, 0xe5, 0x2c, + 0xf5, 0x3e, 0x4f, 0x89, 0x2e, 0xbc, 0x98, 0x33, 0x89, 0x66, 0x72, 0x54, + 0x7b, 0x3d, 0xc5, 0x85, 0x1f, 0x0b, 0x7c, 0x3f, 0x92, 0xca, 0x91, 0xb5, + 0x6c, 0x7a, 0x42, 0x4e, 0x4e, 0x48, 0xc6, 0xb4, 0x89, 0x65, 0x0d, 0x84, + 0x70, 0x82, 0x5b, 0xaf, 0x2a, 0x8a, 0x1c, 0x7e, 0x29, 0xef, 0x50, 0x90, + 0xe2, 0x18, 0x16, 0x10, 0xd0, 0x54, 0x5a, 0x02, 0xde, 0xeb, 0x5a, 0x05, + 0xaa, 0x0c, 0xe8, 0x0d, 0x2c, 0x3e, 0x3f, 0xc9, 0xc8, 0xc0, 0xe3, 0x98, + 0xe6, 0x4b, 0x7b, 0xb9, 0xa4, 0x94, 0x12, 0xdd, 0x17, 0xe0, 0x8e, 0x57, + 0xbf, 0x13, 0x45, 0xb9, 0x75, 0xe6, 0xe3, 0x6d, 0x07, 0xdb, 0x56, 0x94, + 0x43, 0x4a, 0x9b, 0xea, 0xfa, 0xf5, 0xd3, 0xa8, 0x14, 0xe1, 0x78, 0xa6, + 0xcb, 0xc9, 0x2c, 0xa6, 0xb4, 0x29, 0xcc, 0x3c, 0xdb, 0xc8, 0x91, 0x08, + 0xb7, 0x9c, 0x8a, 0x8a, 0x46, 0x06, 0xe2, 0x69, 0x07, 0xd0, 0xee, 0x71, + 0x85, 0xa5, 0x80, 0x0b, 0x4b, 0x6d, 0x81, 0x33, 0x97, 0xaf, 0x70, 0xa2, + 0x10, 0x2b, 0x0a, 0xc0, 0xea, 0x0f, 0xab, 0x06, 0xae, 0x04, 0x94, 0x7c, + 0x5f, 0x5d, 0x0f, 0xb1, 0xaa, 0x0e, 0x45, 0x35, 0xdb, 0x2d, 0x44, 0x48, + 0x4a, 0x46, 0x14, 0x57, 0xbf, 0x1f, 0x6b, 0x75, 0x7d, 0xc4, 0x6a, 0x1d, + 0xa2, 0xa8, 0x89, 0xcb, 0x75, 0x72, 0x61, 0x09, 0x31, 0x13, 0x2b, 0xeb, + 0xe4, 0xad, 0x79, 0x51, 0x80, 0xbb, 0x6f, 0x4d, 0xf9, 0x6b, 0xee, 0xb3, + 0x74, 0xbb, 0x13, 0x80, 0xab, 0xaf, 0x90, 0x93, 0xbe, 0x65, 0xb2, 0xed, + 0xbe, 0x31, 0x3a, 0xcf, 0x1f, 0x3e, 0x3d, 0xe4, 0x4e, 0x4c, 0x55, 0x50, + 0x14, 0x81, 0x22, 0x24, 0x42, 0x28, 0xce, 0xff, 0x6a, 0x01, 0x1c, 0xce, + 0xf2, 0xb4, 0x8a, 0x3b, 0xc4, 0x2e, 0x14, 0x05, 0x55, 0x38, 0x92, 0x9f, + 0x47, 0x38, 0x83, 0x25, 0x9a, 0x70, 0x5e, 0x76, 0xa9, 0x00, 0x9a, 0x2a, + 0x50, 0x11, 0xa8, 0x8a, 0x40, 0x15, 0x02, 0x45, 0x71, 0xff, 0x17, 0x8e, + 0xee, 0xad, 0xb9, 0x6a, 0x84, 0x42, 0x61, 0xbf, 0x33, 0xe0, 0x51, 0xf8, + 0xd1, 0x3d, 0x38, 0xe5, 0x29, 0xee, 0x39, 0xce, 0x79, 0x0a, 0x8a, 0x70, + 0xae, 0xab, 0x28, 0xee, 0x39, 0x28, 0xc5, 0xe3, 0x34, 0x57, 0x82, 0x54, + 0x85, 0x13, 0x0d, 0xa8, 0x8a, 0x5b, 0x67, 0xa1, 0xa0, 0xba, 0xf5, 0x2a, + 0x94, 0xaf, 0xe0, 0xdc, 0xa7, 0xe2, 0x96, 0x2b, 0x84, 0x40, 0xc5, 0x99, + 0xfe, 0xa5, 0x28, 0x8a, 0xbb, 0xcf, 0xa1, 0x12, 0xc5, 0xed, 0x25, 0xe7, + 0x89, 0x62, 0xdd, 0x9c, 0x67, 0xb6, 0x7a, 0xbf, 0xf3, 0x5d, 0x75, 0x1b, + 0x84, 0xc0, 0x99, 0x9a, 0x57, 0xed, 0x55, 0xf1, 0xbf, 0x42, 0x88, 0xbe, + 0x65, 0xde, 0xb1, 0x12, 0x4d, 0xa5, 0xd0, 0xb1, 0xa9, 0xf6, 0xa9, 0x28, + 0x45, 0xe0, 0xca, 0xe2, 0x8f, 0x24, 0x5c, 0x37, 0x59, 0xf8, 0x91, 0x84, + 0x50, 0x50, 0x84, 0x86, 0x28, 0x00, 0xc7, 0x95, 0xcd, 0x34, 0x1c, 0xa0, + 0x3a, 0xa0, 0x2c, 0x00, 0xc7, 0x05, 0x84, 0xb2, 0x02, 0x8c, 0x02, 0xa0, + 0x34, 0x17, 0xec, 0x05, 0x90, 0x09, 0x51, 0x0a, 0x68, 0x8d, 0x15, 0xe0, + 0x15, 0x00, 0xad, 0x0a, 0x65, 0x05, 0x38, 0x62, 0x05, 0xd0, 0xaa, 0xc0, + 0x69, 0x2c, 0x6e, 0x59, 0x0e, 0xd8, 0x24, 0xaa, 0xa2, 0x38, 0xe5, 0x0a, + 0x05, 0xd5, 0x9d, 0x65, 0xae, 0xad, 0x05, 0x26, 0x4e, 0xb9, 0xc2, 0x6d, + 0x04, 0x4e, 0x1d, 0x14, 0x04, 0xee, 0x33, 0x58, 0x7d, 0xef, 0xac, 0xa9, + 0x2f, 0xab, 0xea, 0xe2, 0xd6, 0x5f, 0xb8, 0x3d, 0x8b, 0xe2, 0x96, 0x27, + 0xdc, 0x80, 0xdc, 0xe3, 0x36, 0xfc, 0x32, 0xe5, 0xb8, 0xa9, 0x54, 0x04, + 0x5e, 0xd3, 0x5c, 0x43, 0xbd, 0x4f, 0xc7, 0xa3, 0xac, 0xbc, 0x74, 0xad, + 0xd8, 0x9d, 0x17, 0x29, 0x81, 0x58, 0x4f, 0x0b, 0x44, 0xa1, 0x4b, 0x2f, + 0x00, 0x64, 0xe5, 0x78, 0x51, 0xf4, 0x4c, 0xab, 0xbe, 0xbb, 0x5d, 0xb4, + 0xd3, 0x68, 0xa4, 0xbb, 0xbf, 0x00, 0x14, 0x56, 0x28, 0x8b, 0x0b, 0x46, + 0xb1, 0x9a, 0xa2, 0x14, 0xc0, 0x21, 0x56, 0x68, 0x43, 0xf1, 0x3a, 0x52, + 0x94, 0xac, 0x2c, 0xaa, 0xac, 0x12, 0xe7, 0x4a, 0xeb, 0xe1, 0x1c, 0xa0, + 0xac, 0xa1, 0x3d, 0x45, 0x3a, 0x24, 0x56, 0x28, 0x4d, 0x09, 0x0d, 0xda, + 0x80, 0xba, 0x6c, 0xb8, 0x7f, 0x15, 0xdd, 0x28, 0x38, 0x00, 0x0a, 0xb4, + 0xa6, 0xd0, 0x90, 0x5f, 0xc1, 0x74, 0x8e, 0x72, 0x82, 0x7f, 0xd9, 0xb6, + 0x95, 0x95, 0xdf, 0x53, 0x58, 0xb6, 0x6d, 0x65, 0xff, 0x1f, 0x15, 0xa9, + 0x64, 0x27, 0x80, 0x33, 0x9e, 0x47, 0x00, 0x00, 0x00, 0x00, 0x49, 0x45, + 0x4e, 0x44, 0xae, 0x42, 0x60, 0x82 }; -unsigned int openair_logo_png_len = 4664; +unsigned int openair_logo_png_len = 7026; diff --git a/common/utils/T/tracer/openair_logo.png b/common/utils/T/tracer/openair_logo.png index 8b3dcfe46ef222f6b21f7d7517914b3e6019873f..6a14f2ab4bdf39e7d01bb396f80299b3e5dea075 100644 Binary files a/common/utils/T/tracer/openair_logo.png and b/common/utils/T/tracer/openair_logo.png differ diff --git a/common/utils/T/tracer/record.c b/common/utils/T/tracer/record.c index c81b93e7d73b89c176462bd2cbde58d150ad2371..b1a1bc60de8cb8bdd0b69604f414f7d5aa7b0802 100644 --- a/common/utils/T/tracer/record.c +++ b/common/utils/T/tracer/record.c @@ -2,6 +2,7 @@ #include <stdlib.h> #include <signal.h> #include <string.h> +#include <unistd.h> #include "database.h" #include "utils.h" #include "../T_defs.h" diff --git a/openair1/PHY/LTE_TRANSPORT/dci_tools.c b/openair1/PHY/LTE_TRANSPORT/dci_tools.c index c849adf2f694a40e63ac6911335f3fe7ba96edd8..1bd7db46a0b596a788ba7c0ec9dac5f21636288c 100644 --- a/openair1/PHY/LTE_TRANSPORT/dci_tools.c +++ b/openair1/PHY/LTE_TRANSPORT/dci_tools.c @@ -6389,6 +6389,7 @@ int generate_ue_ulsch_params_from_dci(void *dci_pdu, if (ulsch->harq_processes[harq_pid]->first_tx==1) { // ulsch->harq_processes[harq_pid]->Ndi = 1; ulsch->harq_processes[harq_pid]->first_tx=0; + ulsch->harq_processes[harq_pid]->DCINdi= ndi; ulsch->harq_processes[harq_pid]->round = 0; } else { if (ulsch->harq_processes[harq_pid]->DCINdi!=ndi) { // new SDU opportunity diff --git a/openair2/LAYER2/MAC/eNB_scheduler_primitives.c b/openair2/LAYER2/MAC/eNB_scheduler_primitives.c index 80a1dbc76aa9f4c9676e137b619088ba99ca550c..bb9e7b3d306512aa8d38eb6d88f442c529c9ee86 100644 --- a/openair2/LAYER2/MAC/eNB_scheduler_primitives.c +++ b/openair2/LAYER2/MAC/eNB_scheduler_primitives.c @@ -298,6 +298,12 @@ int rrc_mac_remove_ue(module_id_t mod_idP,rnti_t rntiP) int UE_id = find_UE_id(mod_idP,rntiP); int pCC_id = UE_PCCID(mod_idP,UE_id); + if (UE_id == -1) { + LOG_W(MAC,"rrc_mac_remove_ue: UE %x not found\n", rntiP); + mac_phy_remove_ue(mod_idP,rntiP); + return 0; + } + LOG_I(MAC,"Removing UE %d from Primary CC_id %d (rnti %x)\n",UE_id,pCC_id, rntiP); dump_ue_list(UE_list,0); diff --git a/openair2/LAYER2/RLC/AM_v9.3.0/rlc_am.c b/openair2/LAYER2/RLC/AM_v9.3.0/rlc_am.c index 0b8abf383832249251b90f65e2817136a14d3b9a..fd8279579d031eef0fb7990f4a546aa30f959307 100755 --- a/openair2/LAYER2/RLC/AM_v9.3.0/rlc_am.c +++ b/openair2/LAYER2/RLC/AM_v9.3.0/rlc_am.c @@ -103,7 +103,7 @@ rlc_am_get_buffer_occupancy_in_bytes ( } #endif - return rlc_pP->status_buffer_occupancy + rlc_pP->retransmission_buffer_occupancy + rlc_pP->sdu_buffer_occupancy + max_li_overhead + header_overhead; + return rlc_pP->status_buffer_occupancy + rlc_pP->retrans_num_bytes_to_retransmit + rlc_pP->sdu_buffer_occupancy + max_li_overhead + header_overhead; } //----------------------------------------------------------------------------- void diff --git a/openair2/RRC/LITE/L2_interface.c b/openair2/RRC/LITE/L2_interface.c index a28f2b18948953988edbf7dd8f51a2d77dba78e4..d4ddd0e7abb66d82412eaa47369d9c2882b297a5 100644 --- a/openair2/RRC/LITE/L2_interface.c +++ b/openair2/RRC/LITE/L2_interface.c @@ -719,12 +719,12 @@ mac_eNB_get_rrc_status( } } -void mac_eNB_rrc_ul_failure(const module_id_t Mod_instP, - const int CC_idP, +void mac_eNB_rrc_ul_failure(const module_id_t Mod_instP, + const int CC_idP, const frame_t frameP, const sub_frame_t subframeP, - const rnti_t rntiP) { - + const rnti_t rntiP) +{ struct rrc_eNB_ue_context_s* ue_context_p = NULL; ue_context_p = rrc_eNB_get_ue_context( &eNB_rrc_inst[Mod_instP], @@ -735,10 +735,9 @@ void mac_eNB_rrc_ul_failure(const module_id_t Mod_instP, ue_context_p->ue_context.ul_failure_timer=1; } else { - LOG_W(RRC,"Frame %d, Subframe %d: UE %x unknown \n",frameP,subframeP,rntiP); - rrc_mac_remove_ue(Mod_instP,rntiP); + LOG_W(RRC,"Frame %d, Subframe %d: UL failure: UE %x unknown \n",frameP,subframeP,rntiP); } - + rrc_mac_remove_ue(Mod_instP,rntiP); } void mac_eNB_rrc_ul_in_sync(const module_id_t Mod_instP, diff --git a/openair2/RRC/LITE/rrc_eNB.c b/openair2/RRC/LITE/rrc_eNB.c index c85e61a0a435b1203dfc46b2f40c172766700abb..2828209d6207a40721bef46a398e54b9da8bde76 100644 --- a/openair2/RRC/LITE/rrc_eNB.c +++ b/openair2/RRC/LITE/rrc_eNB.c @@ -3790,14 +3790,29 @@ rrc_eNB_decode_ccch( //#warning "TODO: stmsi_exist: remove UE from MAC/PHY (how?)" LOG_I(RRC," S-TMSI exists, ue_context_p %p\n",ue_context_p); stmsi_received=1; + /* replace rnti in the context */ + /* for that, remove the context from the RB tree */ + RB_REMOVE(rrc_ue_tree_s, &eNB_rrc_inst[ctxt_pP->module_id].rrc_ue_head, ue_context_p); + /* and insert again, after changing rnti everywhere it has to be changed */ + ue_context_p->ue_id_rnti = ctxt_pP->rnti; ue_context_p->ue_context.rnti = ctxt_pP->rnti; + RB_INSERT(rrc_ue_tree_s, &eNB_rrc_inst[ctxt_pP->module_id].rrc_ue_head, ue_context_p); + /* reset timers */ + ue_context_p->ue_context.ul_failure_timer = 0; + ue_context_p->ue_context.ue_release_timer = 0; // AssertFatal(0 == 1, "TODO: remove UE from MAC/PHY (how?)"); // ue_context_p = NULL; } else { ue_context_p = rrc_eNB_get_next_free_ue_context(ctxt_pP, NOT_A_RANDOM_UE_IDENTITY); - ue_context_p->ue_context.Initialue_identity_s_TMSI.presence = TRUE; - ue_context_p->ue_context.Initialue_identity_s_TMSI.mme_code = mme_code; - ue_context_p->ue_context.Initialue_identity_s_TMSI.m_tmsi = m_tmsi; + if (ue_context_p == NULL) + LOG_E(RRC, "%s:%d:%s: rrc_eNB_get_next_free_ue_context returned NULL\n", __FILE__, __LINE__, __FUNCTION__); + if (ue_context_p != NULL) { + ue_context_p->ue_context.Initialue_identity_s_TMSI.presence = TRUE; + ue_context_p->ue_context.Initialue_identity_s_TMSI.mme_code = mme_code; + ue_context_p->ue_context.Initialue_identity_s_TMSI.m_tmsi = m_tmsi; + } else { + break; + } } MSC_LOG_RX_MESSAGE(