From 11dc1091f64b24ca6d643acc6d0051117ba60161 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?M=2E=20Yusuf=20Sar=C4=B1g=C3=B6z?= Date: Sat, 14 Oct 2023 13:52:44 +0300 Subject: [PATCH 01/48] Honor -ngl option for Cuda offloading in llava (#3621) --- examples/llava/llava.cpp | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/examples/llava/llava.cpp b/examples/llava/llava.cpp index 14dacc780..8384d9d78 100644 --- a/examples/llava/llava.cpp +++ b/examples/llava/llava.cpp @@ -79,7 +79,13 @@ int main(int argc, char ** argv) { llama_backend_init(params.numa); - llama_model_params model_params = llama_model_default_params(); + llama_model_params model_params = llama_model_default_params(); + model_params.n_gpu_layers = params.n_gpu_layers; + model_params.main_gpu = params.main_gpu; + model_params.tensor_split = params.tensor_split; + model_params.use_mmap = params.use_mmap; + model_params.use_mlock = params.use_mlock; + llama_model * model = llama_load_model_from_file(params.model.c_str(), model_params); if (model == NULL) { fprintf(stderr , "%s: error: unable to load model\n" , __func__); From 11bff290458f12f020b588792707f76ec658a27a Mon Sep 17 00:00:00 2001 From: cebtenzzre Date: Sun, 15 Oct 2023 02:32:06 -0400 Subject: [PATCH 02/48] MPT : support GQA for replit-code-v1.5 (#3627) --- convert-mpt-hf-to-gguf.py | 2 ++ llama.cpp | 6 +++--- 2 files changed, 5 insertions(+), 3 deletions(-) diff --git a/convert-mpt-hf-to-gguf.py b/convert-mpt-hf-to-gguf.py index 73a4932f7..19a66820d 100755 --- a/convert-mpt-hf-to-gguf.py +++ b/convert-mpt-hf-to-gguf.py @@ -98,6 +98,8 @@ gguf_writer.add_embedding_length(hparams["d_model"]) gguf_writer.add_block_count(block_count) gguf_writer.add_feed_forward_length(4 * hparams["d_model"]) gguf_writer.add_head_count(hparams["n_heads"]) +if kv_n_heads := hparams["attn_config"].get("kv_n_heads"): + gguf_writer.add_head_count_kv(kv_n_heads) gguf_writer.add_layer_norm_eps(1e-05) if hparams["attn_config"]["clip_qkv"] is not None: gguf_writer.add_clamp_kqv(hparams["attn_config"]["clip_qkv"]) diff --git a/llama.cpp b/llama.cpp index 2cd2dad7f..5329bd828 100644 --- a/llama.cpp +++ b/llama.cpp @@ -2839,8 +2839,8 @@ static void llm_load_tensors( auto & layer = model.layers[i]; layer.attn_norm = ml.create_tensor(ctx, tn(LLM_TENSOR_ATTN_NORM, "weight", i), {n_embd}, backend); - layer.wqkv = ml.create_tensor(ctx, tn(LLM_TENSOR_ATTN_QKV, "weight", i), {n_embd, 3*n_embd}, backend_split); - layer.wo = ml.create_tensor(ctx, tn(LLM_TENSOR_ATTN_OUT, "weight", i), {n_embd, n_embd}, backend_split); + layer.wqkv = ml.create_tensor(ctx, tn(LLM_TENSOR_ATTN_QKV, "weight", i), {n_embd, n_embd + 2*n_embd_gqa}, backend_split); + layer.wo = ml.create_tensor(ctx, tn(LLM_TENSOR_ATTN_OUT, "weight", i), {n_embd, n_embd}, backend_split); layer.ffn_norm = ml.create_tensor(ctx, tn(LLM_TENSOR_FFN_NORM, "weight", i), {n_embd}, backend); @@ -5368,7 +5368,7 @@ static struct ggml_cgraph * llm_build_mpt( const int64_t n_layer = hparams.n_layer; const int64_t n_ctx = cparams.n_ctx; const int64_t n_head = hparams.n_head; - const int64_t n_head_kv = hparams.n_head_kv; // == n_head for MPT, as there's no MQA/GQA + const int64_t n_head_kv = hparams.n_head_kv; const int64_t n_embd_head = hparams.n_embd_head(); const int64_t n_embd_gqa = hparams.n_embd_gqa(); From 940efa95fec0b8a98c226a889d2ad839dfeeae0d Mon Sep 17 00:00:00 2001 From: Georgi Gerganov Date: Mon, 16 Oct 2023 23:58:00 +0300 Subject: [PATCH 03/48] llava : fix tokenization to not add bos between image embeddings and user prompt (#3645) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * llava : fix tokenization to not add bos after system prompt * set seed --------- Co-authored-by: M. Yusuf Sarıgöz --- examples/llava/llava-utils.h | 4 ++-- examples/llava/llava.cpp | 12 +++++++----- 2 files changed, 9 insertions(+), 7 deletions(-) diff --git a/examples/llava/llava-utils.h b/examples/llava/llava-utils.h index 79e237c86..4e71351dd 100644 --- a/examples/llava/llava-utils.h +++ b/examples/llava/llava-utils.h @@ -49,9 +49,9 @@ inline bool eval_id(struct llama_context * ctx_llama, int id, int * n_past) { return eval_tokens(ctx_llama, tokens, 1, n_past); } -inline bool eval_string(struct llama_context * ctx_llama, const char* str, int n_batch, int * n_past){ +inline bool eval_string(struct llama_context * ctx_llama, const char* str, int n_batch, int * n_past, bool add_bos){ std::string str2 = str; - std::vector embd_inp = ::llama_tokenize(ctx_llama, str2, true); + std::vector embd_inp = ::llama_tokenize(ctx_llama, str2, add_bos); eval_tokens(ctx_llama, embd_inp, n_batch, n_past); return true; } diff --git a/examples/llava/llava.cpp b/examples/llava/llava.cpp index 8384d9d78..b24cb2e6f 100644 --- a/examples/llava/llava.cpp +++ b/examples/llava/llava.cpp @@ -97,6 +97,7 @@ int main(int argc, char ** argv) { ctx_params.n_ctx = params.n_ctx < 2048 ? 2048 : params.n_ctx; // we need a longer context size to process image embeddings ctx_params.n_threads = params.n_threads; ctx_params.n_threads_batch = params.n_threads_batch == -1 ? params.n_threads : params.n_threads_batch; + ctx_params.seed = params.seed; llama_context * ctx_llama = llama_new_context_with_model(model, ctx_params); @@ -106,7 +107,8 @@ int main(int argc, char ** argv) { } // make sure that the correct mmproj was used, i.e., compare apples to apples - int n_llama_embd = llama_n_embd(llama_get_model(ctx_llama)); + const int n_llama_embd = llama_n_embd(llama_get_model(ctx_llama)); + if (n_img_embd != n_llama_embd) { printf("%s: embedding dim of the multimodal projector (%d) is not equal to that of LLaMA (%d). Make sure that you use the correct mmproj file.\n", __func__, n_img_embd, n_llama_embd); @@ -125,14 +127,14 @@ int main(int argc, char ** argv) { const int max_tgt_len = params.n_predict < 0 ? 256 : params.n_predict; - // GG: are we sure that the should be a trailing whitespace at the end of this string? - eval_string(ctx_llama, "A chat between a curious human and an artificial intelligence assistant. The assistant gives helpful, detailed, and polite answers to the human's questions.\nUSER: ", params.n_batch, &n_past); + eval_string(ctx_llama, "A chat between a curious human and an artificial intelligence assistant. The assistant gives helpful, detailed, and polite answers to the human's questions.\nUSER:", params.n_batch, &n_past, true); eval_image_embd(ctx_llama, image_embd, n_img_pos, params.n_batch, &n_past); - eval_string(ctx_llama, params.prompt.c_str(), params.n_batch, &n_past); - eval_string(ctx_llama, "\nASSISTANT:", params.n_batch, &n_past); + eval_string(ctx_llama, (params.prompt + "\nASSISTANT:").c_str(), params.n_batch, &n_past, false); // generate the response + printf("\n"); + printf("prompt: '%s'\n", params.prompt.c_str()); printf("\n"); for (int i = 0; i < max_tgt_len; i++) { From 281ef73c258cc1eebec8a64264240432d5878c4b Mon Sep 17 00:00:00 2001 From: Georgi Gerganov Date: Tue, 17 Oct 2023 09:19:28 +0300 Subject: [PATCH 04/48] k-quants : fix quantization ranges (#3646) --- k_quants.c | 30 +++++++++++------------------- 1 file changed, 11 insertions(+), 19 deletions(-) diff --git a/k_quants.c b/k_quants.c index 558f5fda8..e168a87bb 100644 --- a/k_quants.c +++ b/k_quants.c @@ -462,12 +462,9 @@ void quantize_row_q2_K(const float * restrict x, void * restrict vy, int k) { } size_t ggml_quantize_q2_K(const float * restrict src, void * restrict dst, int n, int k, int64_t * restrict hist) { - const int nb = k / QK_K; + (void)hist; // TODO: collect histograms - // TODO - collect histograms - although, at a second thought, I don't really care about them - (void)hist; - - for (int j = 0; j < nb; j += k) { + for (int j = 0; j < n; j += k) { block_q2_K * restrict y = (block_q2_K *)dst + j/QK_K; quantize_row_q2_K_reference(src + j, y, k); } @@ -678,12 +675,9 @@ void quantize_row_q3_K(const float * restrict x, void * restrict vy, int k) { } size_t ggml_quantize_q3_K(const float * restrict src, void * restrict dst, int n, int k, int64_t * restrict hist) { - const int nb = k / QK_K; + (void)hist; // TODO: collect histograms - // TODO - collect histograms - although, at a second thought, I don't really care about them - (void)hist; - - for (int j = 0; j < nb; j += k) { + for (int j = 0; j < n; j += k) { block_q3_K * restrict y = (block_q3_K *)dst + j/QK_K; quantize_row_q3_K_reference(src + j, y, k); } @@ -846,9 +840,9 @@ void quantize_row_q4_K(const float * restrict x, void * restrict vy, int k) { size_t ggml_quantize_q4_K(const float * restrict src, void * restrict dst, int n, int k, int64_t * restrict hist) { assert(k % QK_K == 0); - const int nb = k / QK_K; (void)hist; // TODO: collect histograms - for (int j = 0; j < nb; j += k) { + + for (int j = 0; j < n; j += k) { block_q4_K * restrict y = (block_q4_K *)dst + j/QK_K; quantize_row_q4_K_reference(src + j, y, k); } @@ -1052,9 +1046,9 @@ void quantize_row_q5_K(const float * restrict x, void * restrict vy, int k) { size_t ggml_quantize_q5_K(const float * restrict src, void * restrict dst, int n, int k, int64_t * restrict hist) { assert(k % QK_K == 0); - const int nb = k / QK_K; - (void)hist; - for (int j = 0; j < nb; j += k) { + (void)hist; // TODO: collect histograms + + for (int j = 0; j < n; j += k) { block_q5_K * restrict y = (block_q5_K *)dst + j/QK_K; quantize_row_q5_K_reference(src + j, y, k); } @@ -1200,11 +1194,9 @@ void quantize_row_q6_K(const float * restrict x, void * restrict vy, int k) { size_t ggml_quantize_q6_K(const float * src, void * dst, int n, int k, int64_t * hist) { assert(k % QK_K == 0); - const int nb = k / QK_K; + (void)hist; // TODO: collect histograms - (void)hist; // TODO - - for (int j = 0; j < nb; j += k) { + for (int j = 0; j < n; j += k) { block_q6_K * restrict y = (block_q6_K *)dst + j/QK_K; quantize_row_q6_K_reference(src + j, y, k); } From 1a159553f921a9209fed8c714494e57b3649f232 Mon Sep 17 00:00:00 2001 From: staviq Date: Tue, 17 Oct 2023 17:11:01 +0200 Subject: [PATCH 05/48] tokenizer : special token handling (#3538) * Rewrite special token handling from #1931 * shorten param name, add st verification by type * use offsets instead of copy by substr * formatting, remove copying iterator on delete * llama : normalize code-style * swift fix * print pfx/sfx if verb, main: split pfx input sfx * dont add space when using special tokens * minor : comment + spacing --------- Co-authored-by: Georgi Gerganov --- common/common.cpp | 12 +- common/common.h | 6 +- common/train.cpp | 8 +- examples/batched.swift/Sources/main.swift | 2 +- examples/main/main.cpp | 40 ++- llama.cpp | 290 +++++++++++++++++++++- llama.h | 13 +- 7 files changed, 332 insertions(+), 39 deletions(-) diff --git a/common/common.cpp b/common/common.cpp index 9c4f7df20..3e4b8a8cb 100644 --- a/common/common.cpp +++ b/common/common.cpp @@ -879,21 +879,23 @@ std::tuple llama_init_from_gpt_par std::vector llama_tokenize( const struct llama_context * ctx, const std::string & text, - bool add_bos) { - return llama_tokenize(llama_get_model(ctx), text, add_bos); + bool add_bos, + bool special) { + return llama_tokenize(llama_get_model(ctx), text, add_bos, special); } std::vector llama_tokenize( const struct llama_model * model, const std::string & text, - bool add_bos) { + bool add_bos, + bool special) { // upper limit for the number of tokens int n_tokens = text.length() + add_bos; std::vector result(n_tokens); - n_tokens = llama_tokenize(model, text.data(), text.length(), result.data(), result.size(), add_bos); + n_tokens = llama_tokenize(model, text.data(), text.length(), result.data(), result.size(), add_bos, special); if (n_tokens < 0) { result.resize(-n_tokens); - int check = llama_tokenize(model, text.data(), text.length(), result.data(), result.size(), add_bos); + int check = llama_tokenize(model, text.data(), text.length(), result.data(), result.size(), add_bos, special); GGML_ASSERT(check == -n_tokens); } else { result.resize(n_tokens); diff --git a/common/common.h b/common/common.h index 36fd44166..08c603231 100644 --- a/common/common.h +++ b/common/common.h @@ -137,12 +137,14 @@ struct llama_context_params llama_context_params_from_gpt_params(const gpt_param std::vector llama_tokenize( const struct llama_context * ctx, const std::string & text, - bool add_bos); + bool add_bos, + bool special = false); std::vector llama_tokenize( const struct llama_model * model, const std::string & text, - bool add_bos); + bool add_bos, + bool special = false); // tokenizes a token into a piece // should work similar to Python's `tokenizer.id_to_piece` diff --git a/common/train.cpp b/common/train.cpp index 35a4cf9e6..972eaefe0 100644 --- a/common/train.cpp +++ b/common/train.cpp @@ -863,7 +863,7 @@ size_t tokenize_file( (int) buf.size(), out_tokens.data(), (int) out_tokens.size(), - false); + false, false); if (n_tokens < 0) { out_tokens.resize(-n_tokens); n_tokens = llama_tokenize( @@ -872,7 +872,7 @@ size_t tokenize_file( (int) buf.size(), out_tokens.data(), (int) out_tokens.size(), - false); + false, false); } if (n_tokens >= 0) { out_tokens.resize(n_tokens); @@ -966,7 +966,7 @@ size_t tokenize_file( (int) buf_sample.size(), tok_sample.data(), (int) tok_sample.size(), - false); + false, false); if (n_tokens < 0) { tok_sample.resize(-n_tokens); n_tokens = llama_tokenize(llama_get_model(lctx), @@ -974,7 +974,7 @@ size_t tokenize_file( (int) buf_sample.size(), tok_sample.data(), (int) tok_sample.size(), - false); + false, false); GGML_ASSERT(n_tokens >= 0); } GGML_ASSERT(n_tokens <= (int) tok_sample.size()); diff --git a/examples/batched.swift/Sources/main.swift b/examples/batched.swift/Sources/main.swift index 938f30512..05d1bb9d0 100644 --- a/examples/batched.swift/Sources/main.swift +++ b/examples/batched.swift/Sources/main.swift @@ -209,7 +209,7 @@ llama_print_timings(context) private func tokenize(text: String, add_bos: Bool) -> [llama_token] { let n_tokens = text.count + (add_bos ? 1 : 0) let tokens = UnsafeMutablePointer.allocate(capacity: n_tokens) - let tokenCount = llama_tokenize(model, text, Int32(text.count), tokens, Int32(n_tokens), add_bos) + let tokenCount = llama_tokenize(model, text, Int32(text.count), tokens, Int32(n_tokens), add_bos, /*special tokens*/ false) var swiftTokens: [llama_token] = [] for i in 0 ..< tokenCount { swiftTokens.append(tokens[Int(i)]) diff --git a/examples/main/main.cpp b/examples/main/main.cpp index 55f73356f..a5fb65548 100644 --- a/examples/main/main.cpp +++ b/examples/main/main.cpp @@ -238,7 +238,7 @@ int main(int argc, char ** argv) { if (params.interactive_first || params.instruct || !params.prompt.empty() || session_tokens.empty()) { LOG("tokenize the prompt\n"); - embd_inp = ::llama_tokenize(ctx, params.prompt, add_bos); + embd_inp = ::llama_tokenize(ctx, params.prompt, add_bos, true); } else { LOG("use session tokens\n"); embd_inp = session_tokens; @@ -260,10 +260,10 @@ int main(int argc, char ** argv) { if (ctx_guidance) { LOG("cfg_negative_prompt: \"%s\"\n", log_tostr(sparams.cfg_negative_prompt)); - guidance_inp = ::llama_tokenize(ctx_guidance, sparams.cfg_negative_prompt, add_bos); + guidance_inp = ::llama_tokenize(ctx_guidance, sparams.cfg_negative_prompt, add_bos, true); LOG("guidance_inp tokenized: %s\n", LOG_TOKENS_TOSTR_PRETTY(ctx_guidance, guidance_inp)); - std::vector original_inp = ::llama_tokenize(ctx, params.prompt, add_bos); + std::vector original_inp = ::llama_tokenize(ctx, params.prompt, add_bos, true); LOG("original_inp tokenized: %s\n", LOG_TOKENS_TOSTR_PRETTY(ctx, original_inp)); original_prompt_len = original_inp.size(); @@ -320,8 +320,8 @@ int main(int argc, char ** argv) { } // prefix & suffix for instruct mode - const auto inp_pfx = ::llama_tokenize(ctx, "\n\n### Instruction:\n\n", add_bos); - const auto inp_sfx = ::llama_tokenize(ctx, "\n\n### Response:\n\n", false); + const auto inp_pfx = ::llama_tokenize(ctx, "\n\n### Instruction:\n\n", add_bos, true); + const auto inp_sfx = ::llama_tokenize(ctx, "\n\n### Response:\n\n", false, true); LOG("inp_pfx: %s\n", LOG_TOKENS_TOSTR_PRETTY(ctx, inp_pfx)); LOG("inp_sfx: %s\n", LOG_TOKENS_TOSTR_PRETTY(ctx, inp_sfx)); @@ -383,6 +383,12 @@ int main(int argc, char ** argv) { if (!params.antiprompt.empty()) { for (const auto & antiprompt : params.antiprompt) { LOG_TEE("Reverse prompt: '%s'\n", antiprompt.c_str()); + if (params.verbose_prompt) { + auto tmp = ::llama_tokenize(ctx, antiprompt, false, true); + for (int i = 0; i < (int) tmp.size(); i++) { + LOG_TEE("%6d -> '%s'\n", tmp[i], llama_token_to_piece(ctx, tmp[i]).c_str()); + } + } } } @@ -392,10 +398,22 @@ int main(int argc, char ** argv) { if (!params.input_prefix.empty()) { LOG_TEE("Input prefix: '%s'\n", params.input_prefix.c_str()); + if (params.verbose_prompt) { + auto tmp = ::llama_tokenize(ctx, params.input_prefix, true, true); + for (int i = 0; i < (int) tmp.size(); i++) { + LOG_TEE("%6d -> '%s'\n", tmp[i], llama_token_to_piece(ctx, tmp[i]).c_str()); + } + } } if (!params.input_suffix.empty()) { LOG_TEE("Input suffix: '%s'\n", params.input_suffix.c_str()); + if (params.verbose_prompt) { + auto tmp = ::llama_tokenize(ctx, params.input_suffix, false, true); + for (int i = 0; i < (int) tmp.size(); i++) { + LOG_TEE("%6d -> '%s'\n", tmp[i], llama_token_to_piece(ctx, tmp[i]).c_str()); + } + } } } LOG_TEE("sampling: repeat_last_n = %d, repeat_penalty = %f, presence_penalty = %f, frequency_penalty = %f, top_k = %d, tfs_z = %f, top_p = %f, typical_p = %f, temp = %f, mirostat = %d, mirostat_lr = %f, mirostat_ent = %f\n", @@ -717,7 +735,7 @@ int main(int argc, char ** argv) { if (params.interactive) { if (!params.antiprompt.empty()) { // tokenize and inject first reverse prompt - const auto first_antiprompt = ::llama_tokenize(ctx, params.antiprompt.front(), false); + const auto first_antiprompt = ::llama_tokenize(ctx, params.antiprompt.front(), false, true); embd_inp.insert(embd_inp.end(), first_antiprompt.begin(), first_antiprompt.end()); is_antiprompt = true; } @@ -744,8 +762,7 @@ int main(int argc, char ** argv) { std::string buffer; if (!params.input_prefix.empty()) { LOG("appending input prefix: '%s'\n", params.input_prefix.c_str()); - buffer += params.input_prefix; - printf("%s", buffer.c_str()); + printf("%s", params.input_prefix.c_str()); } // color user input only @@ -767,7 +784,6 @@ int main(int argc, char ** argv) { // append input suffix if any if (!params.input_suffix.empty()) { LOG("appending input suffix: '%s'\n", params.input_suffix.c_str()); - buffer += params.input_suffix; printf("%s", params.input_suffix.c_str()); } @@ -782,10 +798,14 @@ int main(int argc, char ** argv) { embd_inp.insert(embd_inp.end(), inp_pfx.begin(), inp_pfx.end()); } - const auto line_inp = ::llama_tokenize(ctx, buffer, false); + const auto line_pfx = ::llama_tokenize(ctx, params.input_prefix, false, true); + const auto line_inp = ::llama_tokenize(ctx, buffer, false, false); + const auto line_sfx = ::llama_tokenize(ctx, params.input_suffix, false, true); LOG("input tokens: %s\n", LOG_TOKENS_TOSTR_PRETTY(ctx, line_inp)); + embd_inp.insert(embd_inp.end(), line_pfx.begin(), line_pfx.end()); embd_inp.insert(embd_inp.end(), line_inp.begin(), line_inp.end()); + embd_inp.insert(embd_inp.end(), line_sfx.begin(), line_sfx.end()); // instruct mode: insert response suffix if (params.instruct) { diff --git a/llama.cpp b/llama.cpp index 5329bd828..82b7638ae 100644 --- a/llama.cpp +++ b/llama.cpp @@ -75,6 +75,7 @@ #include #include #include +#include #if defined(_MSC_VER) #pragma warning(disable: 4244 4267) // possible loss of data @@ -1183,6 +1184,8 @@ struct llama_vocab { std::unordered_map token_to_id; std::vector id_to_token; + std::unordered_map special_tokens_cache; + std::map, int> bpe_ranks; // default LLaMA special tokens @@ -2125,7 +2128,7 @@ static void llm_load_hparams( } // TODO: This should probably be in llama.h -static std::vector llama_tokenize_internal(const llama_vocab & vocab, std::string raw_text, bool bos); +static std::vector llama_tokenize_internal(const llama_vocab & vocab, std::string raw_text, bool bos, bool special = false); static llama_token llama_byte_to_token(const llama_vocab & vocab, uint8_t ch); static void llm_load_vocab( @@ -2241,6 +2244,101 @@ static void llm_load_vocab( GGUF_GET_KEY(ctx, vocab.special_unk_id, gguf_get_val_u32, GGUF_TYPE_UINT32, false, kv(LLM_KV_TOKENIZER_UNK_ID)); GGUF_GET_KEY(ctx, vocab.special_sep_id, gguf_get_val_u32, GGUF_TYPE_UINT32, false, kv(LLM_KV_TOKENIZER_SEP_ID)); GGUF_GET_KEY(ctx, vocab.special_pad_id, gguf_get_val_u32, GGUF_TYPE_UINT32, false, kv(LLM_KV_TOKENIZER_PAD_ID)); + + // build special tokens cache + { + // TODO: It is unclear (to me) at this point, whether special tokes are guaranteed to be of a deterministic type, + // and will always be correctly labeled in 'added_tokens.json' etc. + // The assumption is, since special tokens aren't meant to be exposed to end user, they are designed + // to be unmatchable by the tokenizer, therefore tokens from the vocab, which are unmatchable by the tokenizer + // are special tokens. + // From testing, this appears to corelate 1:1 with special tokens. + // + + // Counting special tokens and verifying in only one direction + // is sufficient to detect difference in those two sets. + // + uint32_t special_tokens_count_by_type = 0; + uint32_t special_tokens_count_from_verification = 0; + + bool special_tokens_definition_mismatch = false; + + for (const auto & t : vocab.token_to_id) { + const auto & token = t.first; + const auto & id = t.second; + + // Count all non-normal tokens in the vocab while iterating + if (vocab.id_to_token[id].type != LLAMA_TOKEN_TYPE_NORMAL) { + special_tokens_count_by_type++; + } + + // Skip single character tokens + if (token.length() > 1) { + bool is_tokenizable = false; + + // Split token string representation in two, in all possible ways + // and check if both halves can be matched to a valid token + for (unsigned i = 1; i < token.length();) { + const auto left = token.substr(0, i); + const auto right = token.substr(i); + + // check if we didnt partition in the middle of a utf sequence + auto utf = utf8_len(left.at(left.length() - 1)); + + if (utf == 1) { + if (vocab.token_to_id.find(left) != vocab.token_to_id.end() && + vocab.token_to_id.find(right) != vocab.token_to_id.end() ) { + is_tokenizable = true; + break; + } + i++; + } else { + // skip over the rest of multibyte utf sequence + i += utf - 1; + } + } + + if (!is_tokenizable) { + // Some tokens are multibyte, but they are utf sequences with equivalent text length of 1 + // it's faster to re-filter them here, since there are way less candidates now + + // Calculate a total "utf" length of a token string representation + size_t utf8_str_len = 0; + for (unsigned i = 0; i < token.length();) { + utf8_str_len++; + i += utf8_len(token.at(i)); + } + + // And skip the ones which are one character + if (utf8_str_len > 1) { + // At this point what we have left are special tokens only + vocab.special_tokens_cache[token] = id; + + // Count manually found special tokens + special_tokens_count_from_verification++; + + // If this manually found special token is not marked as such, flag a mismatch + if (vocab.id_to_token[id].type == LLAMA_TOKEN_TYPE_NORMAL) { + special_tokens_definition_mismatch = true; + } + } + } + } + } + + if (special_tokens_definition_mismatch || special_tokens_count_from_verification != special_tokens_count_by_type) { + fprintf(stderr, "%s: warning: Mismatch in special tokens definition ( %u/%zu vs %u/%zu ).\n", + __func__, + special_tokens_count_from_verification, vocab.id_to_token.size(), + special_tokens_count_by_type, vocab.id_to_token.size() + ); + } else { + fprintf(stderr, "%s: Special tokens definition check successful ( %u/%zu ).\n", + __func__, + special_tokens_count_from_verification, vocab.id_to_token.size() + ); + } + } } static void llm_load_print_meta(llama_model_loader & ml, llama_model & model) { @@ -6464,7 +6562,137 @@ private: llm_bigram_bpe::queue work_queue; }; -static std::vector llama_tokenize_internal(const llama_vocab & vocab, std::string raw_text, bool bos) { +typedef enum FRAGMENT_BUFFER_VARIANT_TYPE{ + FRAGMENT_BUFFER_VARIANT_TYPE_TOKEN, + FRAGMENT_BUFFER_VARIANT_TYPE_RAW_TEXT +} FRAGMENT_BUFFER_VARIANT_TYPE; + +struct fragment_buffer_variant{ + fragment_buffer_variant(llama_vocab::id _token) + : + type(FRAGMENT_BUFFER_VARIANT_TYPE_TOKEN), + token(_token), + raw_text(_dummy), + offset(0), + length(0){} + fragment_buffer_variant(const std::string & _raw_text, int64_t _offset, int64_t _length) + : + type(FRAGMENT_BUFFER_VARIANT_TYPE_RAW_TEXT), + token((llama_vocab::id)-1), + raw_text(_raw_text), + offset(_offset), + length(_length){ + GGML_ASSERT( _offset >= 0 ); + GGML_ASSERT( _length >= 1 ); + GGML_ASSERT( offset + length <= raw_text.length() ); + } + + const FRAGMENT_BUFFER_VARIANT_TYPE type; + const llama_vocab::id token; + const std::string _dummy; + const std::string & raw_text; + const uint64_t offset; + const uint64_t length; +}; + +// #define PRETOKENIZERDEBUG + +static void tokenizer_st_partition(const llama_vocab & vocab, std::forward_list & buffer) +{ + // for each special token + for (const auto & st: vocab.special_tokens_cache) { + const auto & special_token = st.first; + const auto & special_id = st.second; + + // for each text fragment + std::forward_list::iterator it = buffer.begin(); + while (it != buffer.end()) { + auto & fragment = (*it); + + // if a fragment is text ( not yet processed ) + if (fragment.type == FRAGMENT_BUFFER_VARIANT_TYPE_RAW_TEXT) { + auto * raw_text = &(fragment.raw_text); + + auto raw_text_base_offset = fragment.offset; + auto raw_text_base_length = fragment.length; + + // loop over the text + while (true) { + // find the first occurence of a given special token in this fragment + // passing offset argument only limit the "search area" but match coordinates + // are still relative to the source full raw_text + auto match = raw_text->find(special_token, raw_text_base_offset); + + // no occurences found, stop processing this fragment for a given special token + if (match == std::string::npos) break; + + // check if match is within bounds of offset <-> length + if (match + special_token.length() > raw_text_base_offset + raw_text_base_length) break; + +#ifdef PRETOKENIZERDEBUG + fprintf(stderr, "FF: (%ld %ld %ld) '%s'\n", raw_text->length(), raw_text_base_offset, raw_text_base_length, raw_text->substr(raw_text_base_offset, raw_text_base_length).c_str()); +#endif + auto source = std::distance(buffer.begin(), it); + + // if match is further than base offset + // then we have some text to the left of it + if (match > raw_text_base_offset) { + // left + const int64_t left_reminder_offset = raw_text_base_offset + 0; + const int64_t left_reminder_length = match - raw_text_base_offset; + buffer.emplace_after(it, (*raw_text), left_reminder_offset, left_reminder_length); + +#ifdef PRETOKENIZERDEBUG + fprintf(stderr, "FL: (%ld %ld) '%s'\n", left_reminder_offset, left_reminder_length, raw_text->substr(left_reminder_offset, left_reminder_length).c_str()); +#endif + it++; + } + + // special token + buffer.emplace_after(it, special_id); + it++; + + // right + if (match + special_token.length() < raw_text_base_offset + raw_text_base_length) { + const int64_t right_reminder_offset = match + special_token.length(); + const int64_t right_reminder_length = raw_text_base_length - ((match - raw_text_base_offset) + special_token.length()); + buffer.emplace_after(it, (*raw_text), right_reminder_offset, right_reminder_length); + +#ifdef PRETOKENIZERDEBUG + fprintf(stderr, "FR: (%ld %ld) '%s'\n", right_reminder_offset, right_reminder_length, raw_text->substr(right_reminder_offset, right_reminder_length).c_str()); +#endif + + it++; + + if (source == 0) { + buffer.erase_after(buffer.before_begin()); + } else { + buffer.erase_after(std::next(buffer.begin(), (source-1))); + } + + // repeat for the right side + raw_text_base_offset = right_reminder_offset; + raw_text_base_length = right_reminder_length; + +#ifdef PRETOKENIZERDEBUG + fprintf(stderr, "RR: (%ld %ld) '%s'\n", raw_text_base_offset, raw_text_base_length, raw_text->substr(raw_text_base_offset, raw_text_base_length).c_str()); +#endif + } else { + if (source == 0) { + buffer.erase_after(buffer.before_begin()); + } else { + buffer.erase_after(std::next(buffer.begin(), (source-1))); + } + break; + } + } + } + it++; + } + } +} + +static std::vector llama_tokenize_internal(const llama_vocab & vocab, std::string raw_text, bool bos, bool special) { std::vector output; // OG tokenizer behavior: @@ -6480,20 +6708,58 @@ static std::vector llama_tokenize_internal(const llama_vocab & return output; } + std::forward_list fragment_buffer; + fragment_buffer.emplace_front( raw_text, 0, raw_text.length() ); + + if (special) tokenizer_st_partition( vocab, fragment_buffer ); + switch (vocab.type) { case LLAMA_VOCAB_TYPE_SPM: { - // without adding this leading whitespace, we do not get the same results as the original tokenizer - raw_text = " " + raw_text; + for (const auto & fragment: fragment_buffer) + { + if (fragment.type == FRAGMENT_BUFFER_VARIANT_TYPE_RAW_TEXT) + { + // without adding this leading whitespace, we do not get the same results as the original tokenizer - llm_tokenizer_spm tokenizer(vocab); - llama_escape_whitespace(raw_text); - tokenizer.tokenize(raw_text, output); + // TODO: It's likely possible to get rid of this string copy entirely + // by modifying llm_tokenizer_x to operate with string offsets like pre-tokenizer + // and passing 'add space prefix' as bool argument + // + auto raw_text = (special ? "" : " ") + fragment.raw_text.substr(fragment.offset, fragment.length); + +#ifdef PRETOKENIZERDEBUG + fprintf(stderr,"TT: (%ld %ld %ld) '%s'\n", raw_text.length(), fragment.offset, fragment.length, raw_text.c_str()); +#endif + llm_tokenizer_spm tokenizer(vocab); + llama_escape_whitespace(raw_text); + tokenizer.tokenize(raw_text, output); + } + else // if (fragment.type == FRAGMENT_BUFFER_VARIANT_TYPE_TOKEN) + { + output.push_back(fragment.token); + } + } } break; case LLAMA_VOCAB_TYPE_BPE: { - llm_tokenizer_bpe tokenizer(vocab); - tokenizer.tokenize(raw_text, output); + for (const auto & fragment: fragment_buffer) + { + if (fragment.type == FRAGMENT_BUFFER_VARIANT_TYPE_RAW_TEXT) + { + auto raw_text = fragment.raw_text.substr(fragment.offset, fragment.length); + +#ifdef PRETOKENIZERDEBUG + fprintf(stderr,"TT: (%ld %ld %ld) '%s'\n", raw_text.length(), fragment.offset, fragment.length, raw_text.c_str()); +#endif + llm_tokenizer_bpe tokenizer(vocab); + tokenizer.tokenize(raw_text, output); + } + else // if (fragment.type == FRAGMENT_BUFFER_VARIANT_TYPE_TOKEN) + { + output.push_back(fragment.token); + } + } } break; } @@ -9407,15 +9673,15 @@ llama_token llama_token_eot(const struct llama_context * ctx) { return ctx->model.vocab.special_eot_id; } - int llama_tokenize( const struct llama_model * model, const char * text, int text_len, llama_token * tokens, int n_max_tokens, - bool add_bos) { - auto res = llama_tokenize_internal(model->vocab, std::string(text, text_len), add_bos); + bool add_bos, + bool special) { + auto res = llama_tokenize_internal(model->vocab, std::string(text, text_len), add_bos, special); if (n_max_tokens < (int) res.size()) { // LLAMA_LOG_ERROR("%s: too many tokens\n", __func__); diff --git a/llama.h b/llama.h index a78015ada..b13f23123 100644 --- a/llama.h +++ b/llama.h @@ -511,17 +511,20 @@ extern "C" { // Tokenization // - // Convert the provided text into tokens. - // The tokens pointer must be large enough to hold the resulting tokens. - // Returns the number of tokens on success, no more than n_max_tokens - // Returns a negative number on failure - the number of tokens that would have been returned + /// @details Convert the provided text into tokens. + /// @param tokens The tokens pointer must be large enough to hold the resulting tokens. + /// @return Returns the number of tokens on success, no more than n_max_tokens + /// @return Returns a negative number on failure - the number of tokens that would have been returned + /// @param special Allow tokenizing special and/or control tokens which otherwise are not exposed and treated as plaintext. + /// Does not insert a leading space. LLAMA_API int llama_tokenize( const struct llama_model * model, const char * text, int text_len, llama_token * tokens, int n_max_tokens, - bool add_bos); + bool add_bos, + bool special); // Token Id -> Piece. // Uses the vocabulary in the provided context. From 5fe268a4d9ce09f3a6c77239af583d3a8e49d54c Mon Sep 17 00:00:00 2001 From: ldwang Date: Tue, 17 Oct 2023 23:52:33 +0800 Subject: [PATCH 06/48] readme : add Aquila2 links (#3610) Signed-off-by: ldwang Co-authored-by: ldwang --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index 60f14a1fb..56372865b 100644 --- a/README.md +++ b/README.md @@ -93,6 +93,7 @@ as the main playground for developing new features for the [ggml](https://github - [X] [WizardLM](https://github.com/nlpxucan/WizardLM) - [X] [Baichuan-7B](https://huggingface.co/baichuan-inc/baichuan-7B) and its derivations (such as [baichuan-7b-sft](https://huggingface.co/hiyouga/baichuan-7b-sft)) - [X] [Aquila-7B](https://huggingface.co/BAAI/Aquila-7B) / [AquilaChat-7B](https://huggingface.co/BAAI/AquilaChat-7B) +- [X] [Aquila2-7B](https://huggingface.co/BAAI/Aquila2-7B) / [AquilaChat2-7B](https://huggingface.co/BAAI/AquilaChat2-7B) / [AquilaChat2-34B](https://huggingface.co/BAAI/AquilaChat2-34B) / [Aquila2-34B](https://huggingface.co/BAAI/Aquila2-34B) - [X] [Starcoder models](https://github.com/ggerganov/llama.cpp/pull/3187) - [X] [Mistral AI v0.1](https://huggingface.co/mistralai/Mistral-7B-v0.1) - [X] [Refact](https://huggingface.co/smallcloudai/Refact-1_6B-fim) From 1142013da40e98946a109b141dd858f0ed996051 Mon Sep 17 00:00:00 2001 From: Georgi Gerganov Date: Tue, 17 Oct 2023 19:12:46 +0300 Subject: [PATCH 07/48] save-load-state : fix example + add ci test (#3655) * save-load-state : fix example (close #3606) * ci : add test for save-load-state example ggml-ci --- ci/run.sh | 6 ++ examples/save-load-state/save-load-state.cpp | 97 ++++++++++---------- 2 files changed, 52 insertions(+), 51 deletions(-) diff --git a/ci/run.sh b/ci/run.sh index 34c9129c1..2e3343831 100755 --- a/ci/run.sh +++ b/ci/run.sh @@ -208,6 +208,8 @@ function gg_run_open_llama_3b_v2 { (time ./bin/perplexity --model ${model_q5_k} -f ${wiki_test_60} -c 128 -b 128 --chunks 2 ) 2>&1 | tee -a $OUT/${ci}-tg-q5_k.log (time ./bin/perplexity --model ${model_q6_k} -f ${wiki_test_60} -c 128 -b 128 --chunks 2 ) 2>&1 | tee -a $OUT/${ci}-tg-q6_k.log + (time ./bin/save-load-state --model ${model_q4_0} ) 2>&1 | tee -a $OUT/${ci}-save-load-state.log + function check_ppl { qnt="$1" ppl=$(echo "$2" | grep -oE "[0-9]+\.[0-9]+" | tail -n 1) @@ -296,6 +298,7 @@ function gg_sum_open_llama_3b_v2 { gg_printf '- q4_k:\n```\n%s\n```\n' "$(cat $OUT/${ci}-tg-q4_k.log)" gg_printf '- q5_k:\n```\n%s\n```\n' "$(cat $OUT/${ci}-tg-q5_k.log)" gg_printf '- q6_k:\n```\n%s\n```\n' "$(cat $OUT/${ci}-tg-q6_k.log)" + gg_printf '- save-load-state: \n```\n%s\n```\n' "$(cat $OUT/${ci}-save-load-state.log)" gg_printf '- shakespeare (f16):\n```\n%s\n```\n' "$(cat $OUT/${ci}-ppl-shakespeare-f16.log)" gg_printf '- shakespeare (f16 lora):\n```\n%s\n```\n' "$(cat $OUT/${ci}-ppl-shakespeare-lora-f16.log)" gg_printf '- shakespeare (q8_0):\n```\n%s\n```\n' "$(cat $OUT/${ci}-ppl-shakespeare-q8_0.log)" @@ -382,6 +385,8 @@ function gg_run_open_llama_7b_v2 { (time ./bin/perplexity --model ${model_q5_k} -f ${wiki_test} -t 1 -ngl 999 -c 2048 -b 512 --chunks 4 ) 2>&1 | tee -a $OUT/${ci}-tg-q5_k.log (time ./bin/perplexity --model ${model_q6_k} -f ${wiki_test} -t 1 -ngl 999 -c 2048 -b 512 --chunks 4 ) 2>&1 | tee -a $OUT/${ci}-tg-q6_k.log + (time ./bin/save-load-state --model ${model_q4_0} ) 2>&1 | tee -a $OUT/${ci}-save-load-state.log + function check_ppl { qnt="$1" ppl=$(echo "$2" | grep -oE "[0-9]+\.[0-9]+" | tail -n 1) @@ -470,6 +475,7 @@ function gg_sum_open_llama_7b_v2 { gg_printf '- q4_k:\n```\n%s\n```\n' "$(cat $OUT/${ci}-tg-q4_k.log)" gg_printf '- q5_k:\n```\n%s\n```\n' "$(cat $OUT/${ci}-tg-q5_k.log)" gg_printf '- q6_k:\n```\n%s\n```\n' "$(cat $OUT/${ci}-tg-q6_k.log)" + gg_printf '- save-load-state: \n```\n%s\n```\n' "$(cat $OUT/${ci}-save-load-state.log)" gg_printf '- shakespeare (f16):\n```\n%s\n```\n' "$(cat $OUT/${ci}-ppl-shakespeare-f16.log)" gg_printf '- shakespeare (f16 lora):\n```\n%s\n```\n' "$(cat $OUT/${ci}-ppl-shakespeare-lora-f16.log)" #gg_printf '- shakespeare (q8_0):\n```\n%s\n```\n' "$(cat $OUT/${ci}-ppl-shakespeare-q8_0.log)" diff --git a/examples/save-load-state/save-load-state.cpp b/examples/save-load-state/save-load-state.cpp index f9e3c98a3..38d05f4d3 100644 --- a/examples/save-load-state/save-load-state.cpp +++ b/examples/save-load-state/save-load-state.cpp @@ -8,10 +8,7 @@ int main(int argc, char ** argv) { gpt_params params; - llama_sampling_params & sparams = params.sampling_params; - params.seed = 42; - params.n_threads = 4; - sparams.repeat_last_n = 64; + params.prompt = "The quick brown fox"; if (!gpt_params_parse(argc, argv, params)) { @@ -25,56 +22,49 @@ int main(int argc, char ** argv) { } auto n_past = 0; - auto last_n_tokens_data = std::vector(sparams.repeat_last_n, 0); + + std::string result0; + std::string result1; // init llama_model * model; llama_context * ctx; - std::tie(model, ctx) = llama_init_from_gpt_params( params ); - if (model == nullptr) { - return 1; - } - if (ctx == nullptr) { - llama_free_model(model); + std::tie(model, ctx) = llama_init_from_gpt_params(params); + if (model == nullptr || ctx == nullptr) { + fprintf(stderr, "%s : failed to init\n", __func__); return 1; } + + // tokenize prompt auto tokens = llama_tokenize(ctx, params.prompt, true); - auto n_prompt_tokens = tokens.size(); - if (n_prompt_tokens < 1) { - fprintf(stderr, "%s : failed to tokenize prompt\n", __func__); - llama_free(ctx); - llama_free_model(model); - return 1; - } // evaluate prompt - llama_decode(ctx, llama_batch_get_one(tokens.data(), n_prompt_tokens, n_past, 0)); + llama_decode(ctx, llama_batch_get_one(tokens.data(), tokens.size(), n_past, 0)); + n_past += tokens.size(); - last_n_tokens_data.insert(last_n_tokens_data.end(), tokens.data(), tokens.data() + n_prompt_tokens); - n_past += n_prompt_tokens; - - const size_t state_size = llama_get_state_size(ctx); - uint8_t * state_mem = new uint8_t[state_size]; - - // Save state (rng, logits, embedding and kv_cache) to file + // save state (rng, logits, embedding and kv_cache) to file { - FILE *fp_write = fopen("dump_state.bin", "wb"); - llama_copy_state_data(ctx, state_mem); // could also copy directly to memory mapped file - fwrite(state_mem, 1, state_size, fp_write); - fclose(fp_write); + std::vector state_mem(llama_get_state_size(ctx)); + + { + FILE *fp_write = fopen("dump_state.bin", "wb"); + llama_copy_state_data(ctx, state_mem.data()); // could also copy directly to memory mapped file + fwrite(state_mem.data(), 1, state_mem.size(), fp_write); + fclose(fp_write); + } } // save state (last tokens) - const auto last_n_tokens_data_saved = std::vector(last_n_tokens_data); const auto n_past_saved = n_past; // first run - printf("\n%s", params.prompt.c_str()); + printf("\nfirst run: %s", params.prompt.c_str()); for (auto i = 0; i < params.n_predict; i++) { auto * logits = llama_get_logits(ctx); auto n_vocab = llama_n_vocab(model); + std::vector candidates; candidates.reserve(n_vocab); for (llama_token token_id = 0; token_id < n_vocab; token_id++) { @@ -83,9 +73,10 @@ int main(int argc, char ** argv) { llama_token_data_array candidates_p = { candidates.data(), candidates.size(), false }; auto next_token = llama_sample_token(ctx, &candidates_p); auto next_token_str = llama_token_to_piece(ctx, next_token); - last_n_tokens_data.push_back(next_token); printf("%s", next_token_str.c_str()); + result0 += next_token_str; + if (llama_decode(ctx, llama_batch_get_one(&next_token, 1, n_past, 0))) { fprintf(stderr, "\n%s : failed to evaluate\n", __func__); llama_free(ctx); @@ -103,32 +94,28 @@ int main(int argc, char ** argv) { // make new context auto * ctx2 = llama_new_context_with_model(model, llama_context_params_from_gpt_params(params)); - // Load state (rng, logits, embedding and kv_cache) from file - { - FILE *fp_read = fopen("dump_state.bin", "rb"); - if (state_size != llama_get_state_size(ctx2)) { - fprintf(stderr, "\n%s : failed to validate state size\n", __func__); - llama_free(ctx2); - llama_free_model(model); - return 1; - } + printf("\nsecond run: %s", params.prompt.c_str()); - const size_t ret = fread(state_mem, 1, state_size, fp_read); - if (ret != state_size) { + // load state (rng, logits, embedding and kv_cache) from file + { + std::vector state_mem(llama_get_state_size(ctx2)); + + FILE * fp_read = fopen("dump_state.bin", "rb"); + + const size_t ret = fread(state_mem.data(), 1, state_mem.size(), fp_read); + if (ret != state_mem.size()) { fprintf(stderr, "\n%s : failed to read state\n", __func__); llama_free(ctx2); llama_free_model(model); return 1; } - llama_set_state_data(ctx2, state_mem); // could also read directly from memory mapped file + llama_set_state_data(ctx2, state_mem.data()); + fclose(fp_read); } - delete[] state_mem; - // restore state (last tokens) - last_n_tokens_data = last_n_tokens_data_saved; n_past = n_past_saved; // second run @@ -143,10 +130,11 @@ int main(int argc, char ** argv) { llama_token_data_array candidates_p = { candidates.data(), candidates.size(), false }; auto next_token = llama_sample_token(ctx2, &candidates_p); auto next_token_str = llama_token_to_piece(ctx2, next_token); - last_n_tokens_data.push_back(next_token); printf("%s", next_token_str.c_str()); - if (llama_decode(ctx, llama_batch_get_one(&next_token, 1, n_past, 0))) { + result1 += next_token_str; + + if (llama_decode(ctx2, llama_batch_get_one(&next_token, 1, n_past, 0))) { fprintf(stderr, "\n%s : failed to evaluate\n", __func__); llama_free(ctx2); llama_free_model(model); @@ -155,10 +143,17 @@ int main(int argc, char ** argv) { n_past += 1; } - printf("\n\n"); + printf("\n"); llama_free(ctx2); llama_free_model(model); + if (result0 != result1) { + fprintf(stderr, "\n%s : error : the 2 generations are different\n", __func__); + return 1; + } + + fprintf(stderr, "\n%s : success\n", __func__); + return 0; } From 3ad1e3f1a10c1f66b4f1cd7510e0977fadbc0dfd Mon Sep 17 00:00:00 2001 From: coezbek Date: Tue, 17 Oct 2023 18:51:02 +0200 Subject: [PATCH 08/48] server : documentation of JSON return value of /completion endpoint (#3632) * Added documentation of JSON return value of /completion endpoint * Update examples/server/README.md --------- Co-authored-by: Georgi Gerganov --- examples/server/README.md | 42 +++++++++++++++++++++++++++++++++------ 1 file changed, 36 insertions(+), 6 deletions(-) diff --git a/examples/server/README.md b/examples/server/README.md index 8a079ae26..9737010d3 100644 --- a/examples/server/README.md +++ b/examples/server/README.md @@ -106,25 +106,25 @@ node index.js ## API Endpoints -- **POST** `/completion`: Given a prompt, it returns the predicted completion. +- **POST** `/completion`: Given a `prompt`, it returns the predicted completion. *Options:* + `prompt`: Provide the prompt for this completion as a string or as an array of strings or numbers representing tokens. Internally, the prompt is compared to the previous completion and only the "unseen" suffix is evaluated. If the prompt is a string or an array with the first element given as a string, a `bos` token is inserted in the front like `main` does. + `temperature`: Adjust the randomness of the generated text (default: 0.8). `top_k`: Limit the next token selection to the K most probable tokens (default: 40). `top_p`: Limit the next token selection to a subset of tokens with a cumulative probability above a threshold P (default: 0.95). - `n_predict`: Set the number of tokens to predict when generating text. **Note:** May exceed the set limit slightly if the last token is a partial multibyte character. When 0, no tokens will be generated but the prompt is evaluated into the cache. (default: -1, -1 = infinity). + `n_predict`: Set the maximum number of tokens to predict when generating text. **Note:** May exceed the set limit slightly if the last token is a partial multibyte character. When 0, no tokens will be generated but the prompt is evaluated into the cache. (default: -1, -1 = infinity). - `n_keep`: Specify the number of tokens from the initial prompt to retain when the model resets its internal context. - By default, this value is set to 0 (meaning no tokens are kept). Use `-1` to retain all tokens from the initial prompt. + `n_keep`: Specify the number of tokens from the prompt to retain when the context size is exceeded and tokens need to be discarded. + By default, this value is set to 0 (meaning no tokens are kept). Use `-1` to retain all tokens from the prompt. `stream`: It allows receiving each predicted token in real-time instead of waiting for the completion to finish. To enable this, set to `true`. - `prompt`: Provide a prompt as a string, or as an array of strings and numbers representing tokens. Internally, the prompt is compared, and it detects if a part has already been evaluated, and the remaining part will be evaluate. If the prompt is a string, or an array with the first element given as a string, a space is inserted in the front like main.cpp does. - `stop`: Specify a JSON array of stopping strings. These words will not be included in the completion, so make sure to add them to the prompt for the next iteration (default: []). @@ -158,6 +158,36 @@ node index.js `n_probs`: If greater than 0, the response also contains the probabilities of top N tokens for each generated token (default: 0) + *Result JSON:* + + Note: When using streaming mode (`stream`) only `content` and `stop` will be returned until end of completion. + + `content`: Completion result as a string (excluding `stopping_word` if any). In case of streaming mode, will contain the next token as a string. + + `stop`: Boolean for use with `stream` to check whether the generation has stopped (Note: This is not related to stopping words array `stop` from input options) + + `generation_settings`: The provided options above excluding `prompt` but including `n_ctx`, `model` + + `model`: The path to the model loaded with `-m` + + `prompt`: The provided `prompt` + + `stopped_eos`: Indicating whether the completion has stopped because it encountered the EOS token + + `stopped_limit`: Indicating whether the completion stopped because `n_predict` tokens were generated before stop words or EOS was encountered + + `stopped_word`: Indicating whether the completion stopped due to encountering a stopping word from `stop` JSON array provided + + `stopping_word`: The stopping word encountered which stopped the generation (or "" if not stopped due to a stopping word) + + `timings`: Hash of timing information about the completion such as the number of tokens `predicted_per_second` + + `tokens_cached`: Number of tokens from the prompt which could be re-used from previous completion (`n_past`) + + `tokens_evaluated`: Number of tokens evaluated in total from the prompt + + `truncated`: Boolean indicating if the context size was exceeded during generation, i.e. the number of tokens provided in the prompt (`tokens_evaluated`) plus tokens generated (`tokens predicted`) exceeded the context size (`n_ctx`) + - **POST** `/tokenize`: Tokenize a given text. *Options:* From e74c705e15cd228ad696c4a3cdea6d6fb4ff434c Mon Sep 17 00:00:00 2001 From: Georgi Gerganov Date: Tue, 17 Oct 2023 19:52:53 +0300 Subject: [PATCH 09/48] editorconfig : remove trailing spaces --- examples/server/README.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/examples/server/README.md b/examples/server/README.md index 9737010d3..9f0ace3d7 100644 --- a/examples/server/README.md +++ b/examples/server/README.md @@ -164,7 +164,7 @@ node index.js `content`: Completion result as a string (excluding `stopping_word` if any). In case of streaming mode, will contain the next token as a string. - `stop`: Boolean for use with `stream` to check whether the generation has stopped (Note: This is not related to stopping words array `stop` from input options) + `stop`: Boolean for use with `stream` to check whether the generation has stopped (Note: This is not related to stopping words array `stop` from input options) `generation_settings`: The provided options above excluding `prompt` but including `n_ctx`, `model` @@ -186,7 +186,7 @@ node index.js `tokens_evaluated`: Number of tokens evaluated in total from the prompt - `truncated`: Boolean indicating if the context size was exceeded during generation, i.e. the number of tokens provided in the prompt (`tokens_evaluated`) plus tokens generated (`tokens predicted`) exceeded the context size (`n_ctx`) + `truncated`: Boolean indicating if the context size was exceeded during generation, i.e. the number of tokens provided in the prompt (`tokens_evaluated`) plus tokens generated (`tokens predicted`) exceeded the context size (`n_ctx`) - **POST** `/tokenize`: Tokenize a given text. From a5e8c1d8c71f01d98ae2ec63a57c118664f9764d Mon Sep 17 00:00:00 2001 From: slaren Date: Tue, 17 Oct 2023 19:00:58 +0200 Subject: [PATCH 10/48] train-text-from-scratch : fix assert failure in ggml-alloc (#3618) --- .../train-text-from-scratch.cpp | 19 +++++++++---------- 1 file changed, 9 insertions(+), 10 deletions(-) diff --git a/examples/train-text-from-scratch/train-text-from-scratch.cpp b/examples/train-text-from-scratch/train-text-from-scratch.cpp index be693b3ac..1ce6cef29 100644 --- a/examples/train-text-from-scratch/train-text-from-scratch.cpp +++ b/examples/train-text-from-scratch/train-text-from-scratch.cpp @@ -253,13 +253,14 @@ static void init_model(struct my_llama_model * model) { set_param_model(model); // measure data size - struct ggml_allocr * alloc = NULL; - alloc = ggml_allocr_new_measure(tensor_alignment); - alloc_model(alloc, model); + size_t size = 0; + for (struct ggml_tensor * t = ggml_get_first_tensor(ctx); t != NULL; t = ggml_get_next_tensor(ctx, t)) { + size += GGML_PAD(ggml_nbytes(t), tensor_alignment); + } // allocate data - model->data.resize(ggml_allocr_max_size(alloc) + tensor_alignment); - ggml_allocr_free(alloc); + struct ggml_allocr * alloc = NULL; + model->data.resize(size + tensor_alignment); alloc = ggml_allocr_new(model->data.data(), model->data.size(), tensor_alignment); alloc_model(alloc, model); ggml_allocr_free(alloc); @@ -1094,11 +1095,9 @@ int main(int argc, char ** argv) { struct ggml_tensor * target_probs = ggml_new_tensor_3d(ctx_input, GGML_TYPE_F32, n_vocab, n_tokens, n_batch); // measure required memory for input tensors - alloc = ggml_allocr_new_measure(tensor_alignment); - ggml_allocr_alloc(alloc, tokens_input); - ggml_allocr_alloc(alloc, target_probs); - size_t max_input_size = ggml_allocr_max_size(alloc) + tensor_alignment; - ggml_allocr_free(alloc); + size_t max_input_size = GGML_PAD(ggml_nbytes(tokens_input), tensor_alignment) + + GGML_PAD(ggml_nbytes(target_probs), tensor_alignment) + + tensor_alignment; printf("%s: input_size = %zu bytes (%.1f MB)\n", __func__, max_input_size, (float) max_input_size / (1024.0f*1024.0f)); // allocate input tensors From 40e5ce054f4c4fa555e4510ea5f760bb29185332 Mon Sep 17 00:00:00 2001 From: shibe2 Date: Wed, 11 Oct 2023 21:30:06 +0400 Subject: [PATCH 11/48] CLBlast: Fix temporary buffer size for f16 conversion (wsize) Fix buffer overflow. Reduce the size to fit just one 2D slice. Assert sufficient size. --- ggml-opencl.cpp | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/ggml-opencl.cpp b/ggml-opencl.cpp index 33d0691eb..22fd0e3a7 100644 --- a/ggml-opencl.cpp +++ b/ggml-opencl.cpp @@ -1568,7 +1568,7 @@ static void ggml_cl_mul_mat_f32(const ggml_tensor * src0, const ggml_tensor * sr ggml_cl_pool_free(d_D, d_size); } -static void ggml_cl_mul_mat_f16(const ggml_tensor * src0, const ggml_tensor * src1, ggml_tensor * dst, void * wdata, size_t /* wsize */) { +static void ggml_cl_mul_mat_f16(const ggml_tensor * src0, const ggml_tensor * src1, ggml_tensor * dst, void * wdata, size_t wsize) { GGML_ASSERT(fp16_support); const int64_t ne00 = src0->ne[0]; @@ -1598,6 +1598,10 @@ static void ggml_cl_mul_mat_f16(const ggml_tensor * src0, const ggml_tensor * sr const int y_ne = ne11 * ne10; const int d_ne = ne11 * ne01; + GGML_ASSERT(wsize >= sizeof(ggml_fp16_t) * y_ne); + GGML_ASSERT(wsize >= sizeof(ggml_fp16_t) * d_ne); + ggml_fp16_t * const tmp = (ggml_fp16_t *) wdata; + size_t x_size; size_t y_size; size_t d_size; @@ -1634,7 +1638,6 @@ static void ggml_cl_mul_mat_f16(const ggml_tensor * src0, const ggml_tensor * sr // convert src1 to fp16 // TODO: use multiple threads - ggml_fp16_t * const tmp = (ggml_fp16_t *) wdata + (ne11 * ne10) * (i13 * ne12 + i12); char * src1i = (char *) src1->data + i13*nb13 + i12*nb12; if (src1_cont_rows) { if (src1_cont_cols) { @@ -1897,8 +1900,8 @@ void ggml_cl_mul_mat(const struct ggml_tensor * src0, const struct ggml_tensor * } size_t ggml_cl_mul_mat_get_wsize(const struct ggml_tensor * src0, const struct ggml_tensor * src1, struct ggml_tensor * dst) { - if (ggml_cl_mul_mat_use_f16(src0, src1, dst)) { - return ggml_nelements(src1) * sizeof(ggml_fp16_t); + if (src0->type == GGML_TYPE_F16 && ggml_cl_mul_mat_use_f16(src0, src1, dst)) { + return sizeof(ggml_fp16_t) * std::max(src1->ne[0] * src1->ne[1], dst->ne[0] * dst->ne[1]); } return 0; } From 8402566a7c436bfbde8e7b0461faee50298106a0 Mon Sep 17 00:00:00 2001 From: BarfingLemurs <128182951+BarfingLemurs@users.noreply.github.com> Date: Tue, 17 Oct 2023 14:13:21 -0400 Subject: [PATCH 12/48] readme : update hot-topics & models, detail windows release in usage (#3615) * Update README.md * Update README.md * Update README.md * move "Running on Windows" section below "Prepare data and run" --------- Co-authored-by: Georgi Gerganov --- README.md | 27 ++++++++++++++++++++------- 1 file changed, 20 insertions(+), 7 deletions(-) diff --git a/README.md b/README.md index 56372865b..4fd4bd427 100644 --- a/README.md +++ b/README.md @@ -10,7 +10,7 @@ Inference of [LLaMA](https://arxiv.org/abs/2302.13971) model in pure C/C++ ### Hot topics - +- ‼️ BPE tokenizer update: existing Falcon and Starcoder `.gguf` models will need to be reconverted: [#3252](https://github.com/ggerganov/llama.cpp/pull/3252) - ‼️ Breaking change: `rope_freq_base` and `rope_freq_scale` must be set to zero to use the model default values: [#3401](https://github.com/ggerganov/llama.cpp/pull/3401) - Parallel decoding + continuous batching support added: [#3228](https://github.com/ggerganov/llama.cpp/pull/3228) \ **Devs should become familiar with the new API** @@ -89,16 +89,17 @@ as the main playground for developing new features for the [ggml](https://github - [X] [Vicuna](https://github.com/ggerganov/llama.cpp/discussions/643#discussioncomment-5533894) - [X] [Koala](https://bair.berkeley.edu/blog/2023/04/03/koala/) - [X] [OpenBuddy 🐶 (Multilingual)](https://github.com/OpenBuddy/OpenBuddy) -- [X] [Pygmalion 7B / Metharme 7B](#using-pygmalion-7b--metharme-7b) +- [X] [Pygmalion/Metharme](#using-pygmalion-7b--metharme-7b) - [X] [WizardLM](https://github.com/nlpxucan/WizardLM) -- [X] [Baichuan-7B](https://huggingface.co/baichuan-inc/baichuan-7B) and its derivations (such as [baichuan-7b-sft](https://huggingface.co/hiyouga/baichuan-7b-sft)) -- [X] [Aquila-7B](https://huggingface.co/BAAI/Aquila-7B) / [AquilaChat-7B](https://huggingface.co/BAAI/AquilaChat-7B) -- [X] [Aquila2-7B](https://huggingface.co/BAAI/Aquila2-7B) / [AquilaChat2-7B](https://huggingface.co/BAAI/AquilaChat2-7B) / [AquilaChat2-34B](https://huggingface.co/BAAI/AquilaChat2-34B) / [Aquila2-34B](https://huggingface.co/BAAI/Aquila2-34B) +- [X] [Baichuan 1 & 2](https://huggingface.co/models?search=baichuan-inc/Baichuan) + [derivations](https://huggingface.co/hiyouga/baichuan-7b-sft) +- [X] [Aquila 1 & 2](https://huggingface.co/models?search=BAAI/Aquila) - [X] [Starcoder models](https://github.com/ggerganov/llama.cpp/pull/3187) - [X] [Mistral AI v0.1](https://huggingface.co/mistralai/Mistral-7B-v0.1) - [X] [Refact](https://huggingface.co/smallcloudai/Refact-1_6B-fim) -- [X] [Bloom](https://github.com/ggerganov/llama.cpp/pull/3553) +- [X] [Persimmon 8B](https://github.com/ggerganov/llama.cpp/pull/3410) - [X] [MPT](https://github.com/ggerganov/llama.cpp/pull/3417) +- [X] [Bloom](https://github.com/ggerganov/llama.cpp/pull/3553) + **Bindings:** @@ -207,7 +208,7 @@ https://user-images.githubusercontent.com/1991296/224442907-7693d4be-acaa-4e01-8 ## Usage -Here are the steps for the LLaMA-7B model. +Here are the end-to-end binary build and model conversion steps for the LLaMA-7B model. ### Get the Code @@ -574,6 +575,18 @@ python3 convert.py models/7B/ When running the larger models, make sure you have enough disk space to store all the intermediate files. +### Running on Windows with prebuilt binaries + +You will find prebuilt Windows binaries on the release page. + +Simply download and extract the latest zip package of choice: (e.g. `llama-b1380-bin-win-avx2-x64.zip`) + +From the unzipped folder, open a terminal/cmd window here and place a pre-converted `.gguf` model file. Test out the main example like so: + +``` +.\main -m llama-2-7b.Q4_0.gguf -n 128 +``` + ### Memory/Disk Requirements As the models are currently fully loaded into memory, you will need adequate disk space to save them and sufficient RAM to load them. At the moment, memory and disk requirements are the same. From e1675d133c31e1c8de2f06be7164e12c0ba6cf2c Mon Sep 17 00:00:00 2001 From: Georgi Gerganov Date: Tue, 17 Oct 2023 22:34:26 +0300 Subject: [PATCH 13/48] llama : avoid fprintf in favor of LLAMA_LOG (#3538) --- examples/main/main.cpp | 2 +- llama.cpp | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/examples/main/main.cpp b/examples/main/main.cpp index a5fb65548..7313d06a0 100644 --- a/examples/main/main.cpp +++ b/examples/main/main.cpp @@ -799,7 +799,7 @@ int main(int argc, char ** argv) { } const auto line_pfx = ::llama_tokenize(ctx, params.input_prefix, false, true); - const auto line_inp = ::llama_tokenize(ctx, buffer, false, false); + const auto line_inp = ::llama_tokenize(ctx, buffer, false, false); const auto line_sfx = ::llama_tokenize(ctx, params.input_suffix, false, true); LOG("input tokens: %s\n", LOG_TOKENS_TOSTR_PRETTY(ctx, line_inp)); diff --git a/llama.cpp b/llama.cpp index 82b7638ae..37df88779 100644 --- a/llama.cpp +++ b/llama.cpp @@ -2327,13 +2327,13 @@ static void llm_load_vocab( } if (special_tokens_definition_mismatch || special_tokens_count_from_verification != special_tokens_count_by_type) { - fprintf(stderr, "%s: warning: Mismatch in special tokens definition ( %u/%zu vs %u/%zu ).\n", + LLAMA_LOG_WARN("%s: mismatch in special tokens definition ( %u/%zu vs %u/%zu ).\n", __func__, special_tokens_count_from_verification, vocab.id_to_token.size(), special_tokens_count_by_type, vocab.id_to_token.size() ); } else { - fprintf(stderr, "%s: Special tokens definition check successful ( %u/%zu ).\n", + LLAMA_LOG_INFO("%s: special tokens definition check successful ( %u/%zu ).\n", __func__, special_tokens_count_from_verification, vocab.id_to_token.size() ); From cb33f43a2a9f5a5a5f8d290dd97c625d9ba97a2f Mon Sep 17 00:00:00 2001 From: slaren Date: Tue, 17 Oct 2023 22:24:50 +0200 Subject: [PATCH 14/48] fix embeddings when using CUDA (#3657) --- llama.cpp | 19 +++++++++++++------ 1 file changed, 13 insertions(+), 6 deletions(-) diff --git a/llama.cpp b/llama.cpp index 37df88779..04a779e04 100644 --- a/llama.cpp +++ b/llama.cpp @@ -5903,6 +5903,13 @@ static int llama_decode_internal( ggml_allocr_alloc_graph(lctx.alloc, gf); + struct ggml_tensor * res = gf->nodes[gf->n_nodes - 1]; + struct ggml_tensor * embeddings = gf->nodes[gf->n_nodes - 2]; + + GGML_ASSERT(strcmp(res->name, "result_output") == 0); + GGML_ASSERT(strcmp(embeddings->name, "result_norm") == 0); + + #ifdef GGML_USE_CUBLAS for (int i = 0; i < gf->n_leafs; i++) { ggml_tensor * node = gf->leafs[i]; @@ -5920,6 +5927,12 @@ static int llama_decode_internal( } ggml_cuda_set_mul_mat_q(cparams.mul_mat_q); + + // HACK: ggml-alloc may change the tensor backend when reusing a parent, so force output to be on the CPU here if needed + if (!lctx.embedding.empty()) { + embeddings->backend = GGML_BACKEND_CPU; + } + res->backend = GGML_BACKEND_CPU; #endif // LLAMA_LOG_INFO("graph build time: %.3f ms (%d nodes, %d leafs)\n", (ggml_time_us() - t_start_us)/1000.0, gf->n_nodes, gf->n_leafs); @@ -5944,12 +5957,6 @@ static int llama_decode_internal( n_threads = 1; } - struct ggml_tensor * res = gf->nodes[gf->n_nodes - 1]; - struct ggml_tensor * embeddings = gf->nodes[gf->n_nodes - 2]; - - GGML_ASSERT(strcmp(res->name, "result_output") == 0); - GGML_ASSERT(strcmp(embeddings->name, "result_norm") == 0); - #if GGML_USE_MPI const int64_t n_layer = hparams.n_layer; ggml_mpi_graph_compute_pre(lctx.ctx_mpi, gf, n_layer); From 1117d06607d2d885640ac501f05f0aae5494e2c5 Mon Sep 17 00:00:00 2001 From: shibe2 Date: Wed, 18 Oct 2023 16:09:22 +0400 Subject: [PATCH 15/48] opencl : fix element-wise multiplication (#3656) --- ggml-opencl.cpp | 67 ++++++++++++++----------------------------------- 1 file changed, 19 insertions(+), 48 deletions(-) diff --git a/ggml-opencl.cpp b/ggml-opencl.cpp index 22fd0e3a7..67ac20eac 100644 --- a/ggml-opencl.cpp +++ b/ggml-opencl.cpp @@ -1395,75 +1395,46 @@ static void ggml_cl_mul_f32(const ggml_tensor * src0, const ggml_tensor * src1, const int64_t ne01 = src0->ne[1]; const int64_t ne02 = src0->ne[2]; const int64_t ne03 = src0->ne[3]; - const int64_t ne0 = ne00 * ne01 * ne02 * ne03; const int64_t ne10 = src1->ne[0]; const int64_t ne11 = src1->ne[1]; const int64_t ne12 = src1->ne[2]; const int64_t ne13 = src1->ne[3]; - const int64_t nb10 = src1->nb[0]; const int nb2 = dst->nb[2]; const int nb3 = dst->nb[3]; size_t x_size; size_t d_size; - cl_mem d_X = ggml_cl_pool_malloc(ne0 * sizeof(float), &x_size); // src0 + cl_mem d_X = ggml_cl_pool_malloc(ne00 * ne01 * sizeof(float), &x_size); // src0 cl_mem d_Y = (cl_mem) src1->extra; // src1 is already on device, broadcasted. - cl_mem d_D = ggml_cl_pool_malloc(ne0 * sizeof(float), &d_size); // dst + cl_mem d_D = ggml_cl_pool_malloc(ne00 * ne01 * sizeof(float), &d_size); // dst for (int64_t i03 = 0; i03 < ne03; i03++) { for (int64_t i02 = 0; i02 < ne02; i02++) { - const int i0 = i03*ne02 + i02; - cl_event ev; // copy src0 to device - CL_CHECK(ggml_cl_h2d_tensor_2d(queue, d_X, i0, src0, i03, i02, &ev)); + CL_CHECK(ggml_cl_h2d_tensor_2d(queue, d_X, 0, src0, i03, i02, &ev)); - if (nb10 == sizeof(float)) { - // Contiguous, avoid overhead from queueing many kernel runs - const int64_t i13 = i03%ne13; - const int64_t i12 = i02%ne12; - const int i1 = i13*ne12*ne11 + i12*ne11; + const int64_t i13 = i03%ne13; + const int64_t i12 = i02%ne12; + const int i1 = i13*ne12*ne11 + i12*ne11; - cl_int x_offset = 0; - cl_int y_offset = i1*ne10; - cl_int d_offset = 0; + cl_int x_offset = 0; + cl_int y_offset = i1*ne10; + cl_int d_offset = 0; - size_t global = ne00 * ne01; - cl_int ky = ne10; - CL_CHECK(clSetKernelArg(mul_f32_cl, 0, sizeof(cl_mem), &d_X)); - CL_CHECK(clSetKernelArg(mul_f32_cl, 1, sizeof(cl_int), &x_offset)); - CL_CHECK(clSetKernelArg(mul_f32_cl, 2, sizeof(cl_mem), &d_Y)); - CL_CHECK(clSetKernelArg(mul_f32_cl, 3, sizeof(cl_int), &y_offset)); - CL_CHECK(clSetKernelArg(mul_f32_cl, 4, sizeof(cl_mem), &d_D)); - CL_CHECK(clSetKernelArg(mul_f32_cl, 5, sizeof(cl_int), &d_offset)); - CL_CHECK(clSetKernelArg(mul_f32_cl, 6, sizeof(cl_int), &ky)); - CL_CHECK(clEnqueueNDRangeKernel(queue, mul_f32_cl, 1, NULL, &global, NULL, 1, &ev, NULL)); - } else { - for (int64_t i01 = 0; i01 < ne01; i01++) { - const int64_t i13 = i03%ne13; - const int64_t i12 = i02%ne12; - const int64_t i11 = i01%ne11; - const int i1 = i13*ne12*ne11 + i12*ne11 + i11; + size_t global = ne00 * ne01; + cl_int ky = ne10 * ne11; - cl_int x_offset = i01*ne00; - cl_int y_offset = i1*ne10; - cl_int d_offset = i01*ne00; - - // compute - size_t global = ne00; - cl_int ky = ne10; - CL_CHECK(clSetKernelArg(mul_f32_cl, 0, sizeof(cl_mem), &d_X)); - CL_CHECK(clSetKernelArg(mul_f32_cl, 1, sizeof(cl_int), &x_offset)); - CL_CHECK(clSetKernelArg(mul_f32_cl, 2, sizeof(cl_mem), &d_Y)); - CL_CHECK(clSetKernelArg(mul_f32_cl, 3, sizeof(cl_int), &y_offset)); - CL_CHECK(clSetKernelArg(mul_f32_cl, 4, sizeof(cl_mem), &d_D)); - CL_CHECK(clSetKernelArg(mul_f32_cl, 5, sizeof(cl_int), &d_offset)); - CL_CHECK(clSetKernelArg(mul_f32_cl, 6, sizeof(cl_int), &ky)); - CL_CHECK(clEnqueueNDRangeKernel(queue, mul_f32_cl, 1, NULL, &global, NULL, 1, &ev, NULL)); - } - } + CL_CHECK(clSetKernelArg(mul_f32_cl, 0, sizeof(cl_mem), &d_X)); + CL_CHECK(clSetKernelArg(mul_f32_cl, 1, sizeof(cl_int), &x_offset)); + CL_CHECK(clSetKernelArg(mul_f32_cl, 2, sizeof(cl_mem), &d_Y)); + CL_CHECK(clSetKernelArg(mul_f32_cl, 3, sizeof(cl_int), &y_offset)); + CL_CHECK(clSetKernelArg(mul_f32_cl, 4, sizeof(cl_mem), &d_D)); + CL_CHECK(clSetKernelArg(mul_f32_cl, 5, sizeof(cl_int), &d_offset)); + CL_CHECK(clSetKernelArg(mul_f32_cl, 6, sizeof(cl_int), &ky)); + CL_CHECK(clEnqueueNDRangeKernel(queue, mul_f32_cl, 1, NULL, &global, NULL, 1, &ev, NULL)); CL_CHECK(clReleaseEvent(ev)); CL_CHECK(clFinish(queue)); From c67fe68e417f766970fb1feaf2e66458aa24116a Mon Sep 17 00:00:00 2001 From: Jhen-Jie Hong Date: Wed, 18 Oct 2023 07:21:48 -0500 Subject: [PATCH 16/48] metal : implement q5_0 and q5_1 kernels (#3648) * metal : implement dequantize_q5_0 * metal : block_q_n_dot_y for block_q5_0 (broken) * metal : revert unnecessary change * metal : implement dequantize_q5_1 * metal : block_q_n_dot_y for q5_1 (broken) * metal : fix block_q_n_dot_y * minor : spaces / formatting --------- Co-authored-by: Georgi Gerganov --- ggml-metal.m | 47 +++++++++++++- ggml-metal.metal | 163 ++++++++++++++++++++++++++++++++++++++++++++++- 2 files changed, 206 insertions(+), 4 deletions(-) diff --git a/ggml-metal.m b/ggml-metal.m index 87fa17216..c908106be 100644 --- a/ggml-metal.m +++ b/ggml-metal.m @@ -73,6 +73,8 @@ struct ggml_metal_context { GGML_METAL_DECL_KERNEL(get_rows_f16); GGML_METAL_DECL_KERNEL(get_rows_q4_0); GGML_METAL_DECL_KERNEL(get_rows_q4_1); + GGML_METAL_DECL_KERNEL(get_rows_q5_0); + GGML_METAL_DECL_KERNEL(get_rows_q5_1); GGML_METAL_DECL_KERNEL(get_rows_q8_0); GGML_METAL_DECL_KERNEL(get_rows_q2_K); GGML_METAL_DECL_KERNEL(get_rows_q3_K); @@ -87,6 +89,8 @@ struct ggml_metal_context { GGML_METAL_DECL_KERNEL(mul_mv_f16_f32_l4); GGML_METAL_DECL_KERNEL(mul_mv_q4_0_f32); GGML_METAL_DECL_KERNEL(mul_mv_q4_1_f32); + GGML_METAL_DECL_KERNEL(mul_mv_q5_0_f32); + GGML_METAL_DECL_KERNEL(mul_mv_q5_1_f32); GGML_METAL_DECL_KERNEL(mul_mv_q8_0_f32); GGML_METAL_DECL_KERNEL(mul_mv_q2_K_f32); GGML_METAL_DECL_KERNEL(mul_mv_q3_K_f32); @@ -97,6 +101,8 @@ struct ggml_metal_context { GGML_METAL_DECL_KERNEL(mul_mm_f16_f32); GGML_METAL_DECL_KERNEL(mul_mm_q4_0_f32); GGML_METAL_DECL_KERNEL(mul_mm_q4_1_f32); + GGML_METAL_DECL_KERNEL(mul_mm_q5_0_f32); + GGML_METAL_DECL_KERNEL(mul_mm_q5_1_f32); GGML_METAL_DECL_KERNEL(mul_mm_q8_0_f32); GGML_METAL_DECL_KERNEL(mul_mm_q2_K_f32); GGML_METAL_DECL_KERNEL(mul_mm_q3_K_f32); @@ -254,6 +260,8 @@ struct ggml_metal_context * ggml_metal_init(int n_cb) { GGML_METAL_ADD_KERNEL(get_rows_f16); GGML_METAL_ADD_KERNEL(get_rows_q4_0); GGML_METAL_ADD_KERNEL(get_rows_q4_1); + GGML_METAL_ADD_KERNEL(get_rows_q5_0); + GGML_METAL_ADD_KERNEL(get_rows_q5_1); GGML_METAL_ADD_KERNEL(get_rows_q8_0); GGML_METAL_ADD_KERNEL(get_rows_q2_K); GGML_METAL_ADD_KERNEL(get_rows_q3_K); @@ -268,6 +276,8 @@ struct ggml_metal_context * ggml_metal_init(int n_cb) { GGML_METAL_ADD_KERNEL(mul_mv_f16_f32_l4); GGML_METAL_ADD_KERNEL(mul_mv_q4_0_f32); GGML_METAL_ADD_KERNEL(mul_mv_q4_1_f32); + GGML_METAL_ADD_KERNEL(mul_mv_q5_0_f32); + GGML_METAL_ADD_KERNEL(mul_mv_q5_1_f32); GGML_METAL_ADD_KERNEL(mul_mv_q8_0_f32); GGML_METAL_ADD_KERNEL(mul_mv_q2_K_f32); GGML_METAL_ADD_KERNEL(mul_mv_q3_K_f32); @@ -278,8 +288,10 @@ struct ggml_metal_context * ggml_metal_init(int n_cb) { GGML_METAL_ADD_KERNEL(mul_mm_f32_f32); GGML_METAL_ADD_KERNEL(mul_mm_f16_f32); GGML_METAL_ADD_KERNEL(mul_mm_q4_0_f32); - GGML_METAL_ADD_KERNEL(mul_mm_q8_0_f32); GGML_METAL_ADD_KERNEL(mul_mm_q4_1_f32); + GGML_METAL_ADD_KERNEL(mul_mm_q5_0_f32); + GGML_METAL_ADD_KERNEL(mul_mm_q5_1_f32); + GGML_METAL_ADD_KERNEL(mul_mm_q8_0_f32); GGML_METAL_ADD_KERNEL(mul_mm_q2_K_f32); GGML_METAL_ADD_KERNEL(mul_mm_q3_K_f32); GGML_METAL_ADD_KERNEL(mul_mm_q4_K_f32); @@ -346,6 +358,8 @@ void ggml_metal_free(struct ggml_metal_context * ctx) { GGML_METAL_DEL_KERNEL(get_rows_f16); GGML_METAL_DEL_KERNEL(get_rows_q4_0); GGML_METAL_DEL_KERNEL(get_rows_q4_1); + GGML_METAL_DEL_KERNEL(get_rows_q5_0); + GGML_METAL_DEL_KERNEL(get_rows_q5_1); GGML_METAL_DEL_KERNEL(get_rows_q8_0); GGML_METAL_DEL_KERNEL(get_rows_q2_K); GGML_METAL_DEL_KERNEL(get_rows_q3_K); @@ -360,6 +374,8 @@ void ggml_metal_free(struct ggml_metal_context * ctx) { GGML_METAL_DEL_KERNEL(mul_mv_f16_f32_l4); GGML_METAL_DEL_KERNEL(mul_mv_q4_0_f32); GGML_METAL_DEL_KERNEL(mul_mv_q4_1_f32); + GGML_METAL_DEL_KERNEL(mul_mv_q5_0_f32); + GGML_METAL_DEL_KERNEL(mul_mv_q5_1_f32); GGML_METAL_DEL_KERNEL(mul_mv_q8_0_f32); GGML_METAL_DEL_KERNEL(mul_mv_q2_K_f32); GGML_METAL_DEL_KERNEL(mul_mv_q3_K_f32); @@ -370,8 +386,10 @@ void ggml_metal_free(struct ggml_metal_context * ctx) { GGML_METAL_DEL_KERNEL(mul_mm_f32_f32); GGML_METAL_DEL_KERNEL(mul_mm_f16_f32); GGML_METAL_DEL_KERNEL(mul_mm_q4_0_f32); - GGML_METAL_DEL_KERNEL(mul_mm_q8_0_f32); GGML_METAL_DEL_KERNEL(mul_mm_q4_1_f32); + GGML_METAL_DEL_KERNEL(mul_mm_q5_0_f32); + GGML_METAL_DEL_KERNEL(mul_mm_q5_1_f32); + GGML_METAL_DEL_KERNEL(mul_mm_q8_0_f32); GGML_METAL_DEL_KERNEL(mul_mm_q2_K_f32); GGML_METAL_DEL_KERNEL(mul_mm_q3_K_f32); GGML_METAL_DEL_KERNEL(mul_mm_q4_K_f32); @@ -1052,6 +1070,8 @@ void ggml_metal_graph_compute( case GGML_TYPE_F16: [encoder setComputePipelineState:ctx->pipeline_mul_mm_f16_f32]; break; case GGML_TYPE_Q4_0: [encoder setComputePipelineState:ctx->pipeline_mul_mm_q4_0_f32]; break; case GGML_TYPE_Q4_1: [encoder setComputePipelineState:ctx->pipeline_mul_mm_q4_1_f32]; break; + case GGML_TYPE_Q5_0: [encoder setComputePipelineState:ctx->pipeline_mul_mm_q5_0_f32]; break; + case GGML_TYPE_Q5_1: [encoder setComputePipelineState:ctx->pipeline_mul_mm_q5_1_f32]; break; case GGML_TYPE_Q8_0: [encoder setComputePipelineState:ctx->pipeline_mul_mm_q8_0_f32]; break; case GGML_TYPE_Q2_K: [encoder setComputePipelineState:ctx->pipeline_mul_mm_q2_K_f32]; break; case GGML_TYPE_Q3_K: [encoder setComputePipelineState:ctx->pipeline_mul_mm_q3_K_f32]; break; @@ -1121,6 +1141,24 @@ void ggml_metal_graph_compute( nth1 = 8; [encoder setComputePipelineState:ctx->pipeline_mul_mv_q4_1_f32]; } break; + case GGML_TYPE_Q5_0: + { + GGML_ASSERT(ne02 == 1); + GGML_ASSERT(ne12 == 1); + + nth0 = 8; + nth1 = 8; + [encoder setComputePipelineState:ctx->pipeline_mul_mv_q5_0_f32]; + } break; + case GGML_TYPE_Q5_1: + { + GGML_ASSERT(ne02 == 1); + GGML_ASSERT(ne12 == 1); + + nth0 = 8; + nth1 = 8; + [encoder setComputePipelineState:ctx->pipeline_mul_mv_q5_1_f32]; + } break; case GGML_TYPE_Q8_0: { GGML_ASSERT(ne02 == 1); @@ -1201,7 +1239,8 @@ void ggml_metal_graph_compute( [encoder setBytes:&ne1 length:sizeof(ne1) atIndex:16]; [encoder setBytes:&gqa length:sizeof(gqa) atIndex:17]; - if (src0t == GGML_TYPE_Q4_0 || src0t == GGML_TYPE_Q4_1 || src0t == GGML_TYPE_Q8_0 || + if (src0t == GGML_TYPE_Q4_0 || src0t == GGML_TYPE_Q4_1 || + src0t == GGML_TYPE_Q5_0 || src0t == GGML_TYPE_Q5_1 || src0t == GGML_TYPE_Q8_0 || src0t == GGML_TYPE_Q2_K) { // || src0t == GGML_TYPE_Q4_K) { [encoder dispatchThreadgroups:MTLSizeMake((ne01 + 7)/8, ne11, ne12) threadsPerThreadgroup:MTLSizeMake(nth0, nth1, 1)]; } @@ -1233,6 +1272,8 @@ void ggml_metal_graph_compute( case GGML_TYPE_F16: [encoder setComputePipelineState:ctx->pipeline_get_rows_f16]; break; case GGML_TYPE_Q4_0: [encoder setComputePipelineState:ctx->pipeline_get_rows_q4_0]; break; case GGML_TYPE_Q4_1: [encoder setComputePipelineState:ctx->pipeline_get_rows_q4_1]; break; + case GGML_TYPE_Q5_0: [encoder setComputePipelineState:ctx->pipeline_get_rows_q5_0]; break; + case GGML_TYPE_Q5_1: [encoder setComputePipelineState:ctx->pipeline_get_rows_q5_1]; break; case GGML_TYPE_Q8_0: [encoder setComputePipelineState:ctx->pipeline_get_rows_q8_0]; break; case GGML_TYPE_Q2_K: [encoder setComputePipelineState:ctx->pipeline_get_rows_q2_K]; break; case GGML_TYPE_Q3_K: [encoder setComputePipelineState:ctx->pipeline_get_rows_q3_K]; break; diff --git a/ggml-metal.metal b/ggml-metal.metal index 99b9fd7a7..69fc71362 100644 --- a/ggml-metal.metal +++ b/ggml-metal.metal @@ -18,6 +18,21 @@ typedef struct { uint8_t qs[QK4_1 / 2]; // nibbles / quants } block_q4_1; +#define QK5_0 32 +typedef struct { + half d; // delta + uint8_t qh[4]; // 5-th bit of quants + uint8_t qs[QK5_0 / 2]; // nibbles / quants +} block_q5_0; + +#define QK5_1 32 +typedef struct { + half d; // delta + half m; // min + uint8_t qh[4]; // 5-th bit of quants + uint8_t qs[QK5_1 / 2]; // nibbles / quants +} block_q5_1; + #define QK8_0 32 typedef struct { half d; // delta @@ -399,8 +414,11 @@ kernel void kernel_rms_norm( // that corresponds to the missing bit shifts (1, 1/16, 1/256, 1/4096) inline float block_q_n_dot_y(device const block_q4_0 * qb_curr, float sumy, thread float * yl, int il) { float d = qb_curr->d; + float2 acc = 0.f; + device const uint16_t * qs = ((device const uint16_t *)qb_curr + 1 + il/2); + for (int i = 0; i < 8; i+=2) { acc[0] += yl[i + 0] * (qs[i / 2] & 0x000F) + yl[i + 1] * (qs[i / 2] & 0x0F00); @@ -417,8 +435,11 @@ inline float block_q_n_dot_y(device const block_q4_0 * qb_curr, float sumy, thre inline float block_q_n_dot_y(device const block_q4_1 * qb_curr, float sumy, thread float * yl, int il) { float d = qb_curr->d; float m = qb_curr->m; - device const uint16_t * qs = ((device const uint16_t *)qb_curr + 2 + il/2); + float2 acc = 0.f; + + device const uint16_t * qs = ((device const uint16_t *)qb_curr + 2 + il/2); + for (int i = 0; i < 8; i+=2) { acc[0] += yl[i + 0] * (qs[i / 2] & 0x000F) + yl[i + 1] * (qs[i / 2] & 0x0F00); @@ -428,6 +449,49 @@ inline float block_q_n_dot_y(device const block_q4_1 * qb_curr, float sumy, thre return d * (acc[0] + acc[1]) + sumy * m; } +// function for calculate inner product between half a q5_0 block and 16 floats (yl), sumy is SUM(yl[i]) +// il indicates where the q5 quants begin (0 or QK5_0/4) +// we assume that the yl's have been multiplied with the appropriate scale factor +// that corresponds to the missing bit shifts (1, 1/16, 1/256, 1/4096) +inline float block_q_n_dot_y(device const block_q5_0 * qb_curr, float sumy, thread float * yl, int il) { + float d = qb_curr->d; + + float2 acc = 0.f; + + device const uint16_t * qs = ((device const uint16_t *)qb_curr + 3 + il/2); + const uint32_t qh = *((device const uint32_t *)qb_curr->qh); + + for (int i = 0; i < 8; i+=2) { + acc[0] += yl[i + 0] * ((qs[i / 2] & 0x000F) | ((qh >> (i+0+il ) << 4 ) & 0x00010)) + + yl[i + 1] * ((qs[i / 2] & 0x0F00) | ((qh >> (i+1+il ) << 12) & 0x01000)); + acc[1] += yl[i + 8] * ((qs[i / 2] & 0x00F0) | ((qh >> (i+0+il+QK5_0/2) << 8 ) & 0x00100)) + + yl[i + 9] * ((qs[i / 2] & 0xF000) | ((qh >> (i+1+il+QK5_0/2) << 16) & 0x10000)); + } + return d * (sumy * -16.f + acc[0] + acc[1]); +} + +// function for calculate inner product between half a q5_1 block and 16 floats (yl), sumy is SUM(yl[i]) +// il indicates where the q5 quants begin (0 or QK5_1/4) +// we assume that the yl's have been multiplied with the appropriate scale factor +// that corresponds to the missing bit shifts (1, 1/16, 1/256, 1/4096) +inline float block_q_n_dot_y(device const block_q5_1 * qb_curr, float sumy, thread float * yl, int il) { + float d = qb_curr->d; + float m = qb_curr->m; + + float2 acc = 0.f; + + device const uint16_t * qs = ((device const uint16_t *)qb_curr + 4 + il/2); + const uint32_t qh = *((device const uint32_t *)qb_curr->qh); + + for (int i = 0; i < 8; i+=2) { + acc[0] += yl[i + 0] * ((qs[i / 2] & 0x000F) | ((qh >> (i+0+il ) << 4 ) & 0x00010)) + + yl[i + 1] * ((qs[i / 2] & 0x0F00) | ((qh >> (i+1+il ) << 12) & 0x01000)); + acc[1] += yl[i + 8] * ((qs[i / 2] & 0x00F0) | ((qh >> (i+0+il+QK5_0/2) << 8 ) & 0x00100)) + + yl[i + 9] * ((qs[i / 2] & 0xF000) | ((qh >> (i+1+il+QK5_0/2) << 16) & 0x10000)); + } + return d * (acc[0] + acc[1]) + sumy * m; +} + // putting them in the kernel cause a significant performance penalty #define N_DST 4 // each SIMD group works on 4 rows #define N_SIMDGROUP 2 // number of SIMD groups in a thread group @@ -525,6 +589,43 @@ kernel void kernel_mul_mv_q4_1_f32( mul_vec_q_n_f32(src0,src1,dst,ne00,ne01,ne02,ne10,ne12,ne0,ne1,gqa,tgpig,tiisg,sgitg); } +kernel void kernel_mul_mv_q5_0_f32( + device const void * src0, + device const float * src1, + device float * dst, + constant int64_t & ne00, + constant int64_t & ne01[[buffer(4)]], + constant int64_t & ne02[[buffer(5)]], + constant int64_t & ne10[[buffer(9)]], + constant int64_t & ne12[[buffer(11)]], + constant int64_t & ne0[[buffer(15)]], + constant int64_t & ne1[[buffer(16)]], + constant uint & gqa[[buffer(17)]], + uint3 tgpig[[threadgroup_position_in_grid]], + uint tiisg[[thread_index_in_simdgroup]], + uint sgitg[[simdgroup_index_in_threadgroup]]) { + mul_vec_q_n_f32(src0,src1,dst,ne00,ne01,ne02,ne10,ne12,ne0,ne1,gqa,tgpig,tiisg,sgitg); +} + +kernel void kernel_mul_mv_q5_1_f32( + device const void * src0, + device const float * src1, + device float * dst, + constant int64_t & ne00, + constant int64_t & ne01[[buffer(4)]], + constant int64_t & ne02[[buffer(5)]], + constant int64_t & ne10[[buffer(9)]], + constant int64_t & ne12[[buffer(11)]], + constant int64_t & ne0[[buffer(15)]], + constant int64_t & ne1[[buffer(16)]], + constant uint & gqa[[buffer(17)]], + uint3 tgpig[[threadgroup_position_in_grid]], + uint tiisg[[thread_index_in_simdgroup]], + uint sgitg[[simdgroup_index_in_threadgroup]]) { + mul_vec_q_n_f32(src0,src1,dst,ne00,ne01,ne02,ne10,ne12,ne0,ne1,gqa,tgpig,tiisg,sgitg); +} + + #define NB_Q8_0 8 kernel void kernel_mul_mv_q8_0_f32( @@ -2149,6 +2250,62 @@ void dequantize_q4_1(device const block_q4_1 *xb, short il, thread type4x4 & reg } } +template +void dequantize_q5_0(device const block_q5_0 *xb, short il, thread type4x4 & reg) { + device const uint16_t * qs = ((device const uint16_t *)xb + 3); + const float d = xb->d; + const float md = -16.h * xb->d; + const ushort mask = il ? 0x00F0 : 0x000F; + + const uint32_t qh = *((device const uint32_t *)xb->qh); + + const int x_mv = il ? 4 : 0; + + const int gh_mv = il ? 12 : 0; + const int gh_bk = il ? 0 : 4; + + for (int i = 0; i < 8; i++) { + // extract the 5-th bits for x0 and x1 + const uint8_t xh_0 = ((qh >> (gh_mv + 2*i )) << gh_bk) & 0x10; + const uint8_t xh_1 = ((qh >> (gh_mv + 2*i+1)) << gh_bk) & 0x10; + + // combine the 4-bits from qs with the 5th bit + const int32_t x0 = ((((qs[i] ) & mask) >> x_mv) | xh_0); + const int32_t x1 = ((((qs[i] >> 8) & mask) >> x_mv) | xh_1); + + reg[i/2][2*(i%2)+0] = d * x0 + md; + reg[i/2][2*(i%2)+1] = d * x1 + md; + } +} + +template +void dequantize_q5_1(device const block_q5_1 *xb, short il, thread type4x4 & reg) { + device const uint16_t * qs = ((device const uint16_t *)xb + 4); + const float d = xb->d; + const float m = xb->m; + const ushort mask = il ? 0x00F0 : 0x000F; + + const uint32_t qh = *((device const uint32_t *)xb->qh); + + const int x_mv = il ? 4 : 0; + + const int gh_mv = il ? 12 : 0; + const int gh_bk = il ? 0 : 4; + + for (int i = 0; i < 8; i++) { + // extract the 5-th bits for x0 and x1 + const uint8_t xh_0 = ((qh >> (gh_mv + 2*i )) << gh_bk) & 0x10; + const uint8_t xh_1 = ((qh >> (gh_mv + 2*i+1)) << gh_bk) & 0x10; + + // combine the 4-bits from qs with the 5th bit + const int32_t x0 = ((((qs[i] ) & mask) >> x_mv) | xh_0); + const int32_t x1 = ((((qs[i] >> 8) & mask) >> x_mv) | xh_1); + + reg[i/2][2*(i%2)+0] = d * x0 + m; + reg[i/2][2*(i%2)+1] = d * x1 + m; + } +} + template void dequantize_q8_0(device const block_q8_0 *xb, short il, thread type4x4 & reg) { device const int8_t * qs = ((device const int8_t *)xb->qs); @@ -2490,6 +2647,8 @@ template [[host_name("kernel_get_rows_f32")]] kernel get_rows_t kernel_get_rows template [[host_name("kernel_get_rows_f16")]] kernel get_rows_t kernel_get_rows; template [[host_name("kernel_get_rows_q4_0")]] kernel get_rows_t kernel_get_rows; template [[host_name("kernel_get_rows_q4_1")]] kernel get_rows_t kernel_get_rows; +template [[host_name("kernel_get_rows_q5_0")]] kernel get_rows_t kernel_get_rows; +template [[host_name("kernel_get_rows_q5_1")]] kernel get_rows_t kernel_get_rows; template [[host_name("kernel_get_rows_q8_0")]] kernel get_rows_t kernel_get_rows; template [[host_name("kernel_get_rows_q2_K")]] kernel get_rows_t kernel_get_rows; template [[host_name("kernel_get_rows_q3_K")]] kernel get_rows_t kernel_get_rows; @@ -2518,6 +2677,8 @@ template [[host_name("kernel_mul_mm_f32_f32")]] kernel mat_mm_t kernel_mul_mm; template [[host_name("kernel_mul_mm_q4_0_f32")]] kernel mat_mm_t kernel_mul_mm; template [[host_name("kernel_mul_mm_q4_1_f32")]] kernel mat_mm_t kernel_mul_mm; +template [[host_name("kernel_mul_mm_q5_0_f32")]] kernel mat_mm_t kernel_mul_mm; +template [[host_name("kernel_mul_mm_q5_1_f32")]] kernel mat_mm_t kernel_mul_mm; template [[host_name("kernel_mul_mm_q8_0_f32")]] kernel mat_mm_t kernel_mul_mm; template [[host_name("kernel_mul_mm_q2_K_f32")]] kernel mat_mm_t kernel_mul_mm; template [[host_name("kernel_mul_mm_q3_K_f32")]] kernel mat_mm_t kernel_mul_mm; From 0e89203b517c95ec6675eda75d200a60d1e8921d Mon Sep 17 00:00:00 2001 From: Georgi Gerganov Date: Wed, 18 Oct 2023 16:21:57 +0300 Subject: [PATCH 17/48] speculative : add tree-based sampling example (#3624) * sampling : one sequence per sampling context ggml-ci * speculative : add tree-based sampling support ggml-ci * speculative : reuse the n_parallel CLI param * speculative : refactor sampling * examples : fix build after sampling refactoring ggml-ci * batched : fix n_seq_id * sampling : fix malloc ggml-ci * swift : fix build ggml-ci * swift : try to fix build ggml-ci * prompts : add assistant.txt * common : add llama_batch_add() and llama_batch_clear() helpers * speculative : minor refactor ggml-ci * minor : comments + rename ggml-ci * speculative : fix off-by-one for n_drafted * speculative : fix the n_drafted fix + p constants --- Makefile | 2 +- common/common.cpp | 21 ++ common/common.h | 16 +- common/log.h | 101 ++++-- common/sampling.cpp | 201 +++++++----- common/sampling.h | 83 +++-- examples/batched-bench/batched-bench.cpp | 38 +-- examples/batched.swift/Sources/main.swift | 14 +- examples/batched/batched.cpp | 26 +- examples/embd-input/embd-input-lib.cpp | 2 +- examples/infill/infill.cpp | 44 +-- examples/llava/llava-utils.h | 2 +- examples/llava/llava.cpp | 2 +- examples/main/main.cpp | 92 ++---- examples/parallel/parallel.cpp | 70 ++-- examples/server/server.cpp | 73 ++--- examples/simple/simple.cpp | 2 +- examples/speculative/speculative.cpp | 383 ++++++++++++++-------- llama.cpp | 95 ++++-- llama.h | 17 +- prompts/assistant.txt | 31 ++ 21 files changed, 737 insertions(+), 578 deletions(-) create mode 100644 prompts/assistant.txt diff --git a/Makefile b/Makefile index 9a8faef45..04104bee8 100644 --- a/Makefile +++ b/Makefile @@ -545,7 +545,7 @@ llama.o: llama.cpp ggml.h ggml-alloc.h ggml-backend.h ggml-cuda.h ggml-metal.h l $(CXX) $(CXXFLAGS) -c $< -o $@ COMMON_H_DEPS = common/common.h common/sampling.h build-info.h common/log.h -COMMON_DEPS = $(COMMON_H_DEPS) common.o sampling.o +COMMON_DEPS = $(COMMON_H_DEPS) common.o sampling.o grammar-parser.o common.o: common/common.cpp $(COMMON_H_DEPS) $(CXX) $(CXXFLAGS) -c $< -o $@ diff --git a/common/common.cpp b/common/common.cpp index 3e4b8a8cb..ce14d66b8 100644 --- a/common/common.cpp +++ b/common/common.cpp @@ -820,6 +820,27 @@ struct llama_context_params llama_context_params_from_gpt_params(const gpt_param return cparams; } +void llama_batch_clear(struct llama_batch & batch) { + batch.n_tokens = 0; +} + +void llama_batch_add( + struct llama_batch & batch, + llama_token id, + llama_pos pos, + const std::vector & seq_ids, + bool logits) { + batch.token [batch.n_tokens] = id; + batch.pos [batch.n_tokens] = pos, + batch.n_seq_id[batch.n_tokens] = seq_ids.size(); + for (size_t i = 0; i < seq_ids.size(); ++i) { + batch.seq_id[batch.n_tokens][i] = seq_ids[i]; + } + batch.logits [batch.n_tokens] = logits; + + batch.n_tokens++; +} + std::tuple llama_init_from_gpt_params(gpt_params & params) { auto mparams = llama_model_params_from_gpt_params(params); diff --git a/common/common.h b/common/common.h index 08c603231..65d3d20cd 100644 --- a/common/common.h +++ b/common/common.h @@ -70,6 +70,7 @@ struct gpt_params { std::vector antiprompt; // string upon seeing which more user input is prompted std::string logdir = ""; // directory in which to save YAML log files + // TODO: avoid tuple, use struct std::vector> lora_adapter; // lora adapter path with user defined scale std::string lora_base = ""; // base model path for the lora adapter @@ -124,10 +125,23 @@ void process_escapes(std::string& input); // Model utils // +// TODO: avoid tuplue, use struct std::tuple llama_init_from_gpt_params(gpt_params & params); -struct llama_model_params llama_model_params_from_gpt_params(const gpt_params & params); + +struct llama_model_params llama_model_params_from_gpt_params (const gpt_params & params); struct llama_context_params llama_context_params_from_gpt_params(const gpt_params & params); +// Batch utils + +void llama_batch_clear(struct llama_batch & batch); + +void llama_batch_add( + struct llama_batch & batch, + llama_token id, + llama_pos pos, + const std::vector & seq_ids, + bool logits); + // // Vocab utils // diff --git a/common/log.h b/common/log.h index b8953fdca..70e7e4ca2 100644 --- a/common/log.h +++ b/common/log.h @@ -579,38 +579,75 @@ inline std::string log_var_to_string_impl(const std::vector & var) return buf.str(); } -#define LOG_TOKENS_TOSTR_PRETTY(ctx, tokens) \ - [&tokens, &ctx]() \ - { \ - std::stringstream buf; \ - buf << "[ "; \ - \ - bool first = true; \ - for (const auto &token : tokens) \ - { \ - if (!first) \ - buf << ", "; \ - else \ - first = false; \ - \ - auto detokenized = llama_token_to_piece(ctx, token); \ - \ - detokenized.erase( \ - std::remove_if( \ - detokenized.begin(), \ - detokenized.end(), \ - [](const unsigned char c) { return !std::isprint(c); }), \ - detokenized.end()); \ - \ - buf \ - << "'" << detokenized << "'" \ - << ":" << std::to_string(token); \ - } \ - buf << " ]"; \ - \ - return buf.str(); \ - }() \ - .c_str() +template +inline std::string LOG_TOKENS_TOSTR_PRETTY(const C & ctx, const T & tokens) +{ + std::stringstream buf; + buf << "[ "; + + bool first = true; + for (const auto &token : tokens) + { + if (!first) { + buf << ", "; + } else { + first = false; + } + + auto detokenized = llama_token_to_piece(ctx, token); + + detokenized.erase( + std::remove_if( + detokenized.begin(), + detokenized.end(), + [](const unsigned char c) { return !std::isprint(c); }), + detokenized.end()); + + buf + << "'" << detokenized << "'" + << ":" << std::to_string(token); + } + buf << " ]"; + + return buf.str(); +} + +template +inline std::string LOG_BATCH_TOSTR_PRETTY(const C & ctx, const B & batch) +{ + std::stringstream buf; + buf << "[ "; + + bool first = true; + for (int i = 0; i < batch.n_tokens; ++i) + { + if (!first) { + buf << ", "; + } else { + first = false; + } + + auto detokenized = llama_token_to_piece(ctx, batch.token[i]); + + detokenized.erase( + std::remove_if( + detokenized.begin(), + detokenized.end(), + [](const unsigned char c) { return !std::isprint(c); }), + detokenized.end()); + + buf + << "\n" << std::to_string(i) + << ":token '" << detokenized << "'" + << ":pos " << std::to_string(batch.pos[i]) + << ":n_seq_id " << std::to_string(batch.n_seq_id[i]) + << ":seq_id " << std::to_string(batch.seq_id[i][0]) + << ":logits " << std::to_string(batch.logits[i]); + } + buf << " ]"; + + return buf.str(); +} #ifdef LOG_DISABLE_LOGS diff --git a/common/sampling.cpp b/common/sampling.cpp index 8ce419459..0b2466581 100644 --- a/common/sampling.cpp +++ b/common/sampling.cpp @@ -1,64 +1,81 @@ #include "sampling.h" -llama_sampling_context::~llama_sampling_context() { - for (auto & it : sequence_contexts) { - if (it.second.grammar != NULL) { - llama_grammar_free(it.second.grammar); - it.second.grammar = NULL; +struct llama_sampling_context * llama_sampling_init(const struct gpt_params & params) { + struct llama_sampling_context * result = new llama_sampling_context(); + + result->params = params.sampling_params; + result->grammar = nullptr; + + // if there is a grammar, parse it + if (!params.grammar.empty()) { + result->parsed_grammar = grammar_parser::parse(params.grammar.c_str()); + + // will be empty (default) if there are parse errors + if (result->parsed_grammar.rules.empty()) { + fprintf(stderr, "%s: failed to parse grammar\n", __func__); + return nullptr; } + + std::vector grammar_rules(result->parsed_grammar.c_rules()); + + result->grammar = llama_grammar_init( + grammar_rules.data(), + grammar_rules.size(), result->parsed_grammar.symbol_ids.at("root")); } + + result->prev.resize(params.n_ctx); + + return result; } -llama_sampling_context llama_sampling_context_init( - const struct gpt_params & params, - llama_grammar * grammar) { - llama_sampling_context result; +void llama_sampling_free(struct llama_sampling_context * ctx) { + if (ctx->grammar != NULL) { + llama_grammar_free(ctx->grammar); + } - result.params = params.sampling_params; - result.grammar = grammar; - return result; + delete ctx; } -// Note: Creates the context if it doesn't exist, so this always return something. -llama_sampler_sequence_context & llama_sampling_get_sequence_context( - llama_sampling_context & ctx_sampling, - const llama_seq_id seq) { - const auto it = ctx_sampling.sequence_contexts.find(seq); - if (it != ctx_sampling.sequence_contexts.end()) { - return it->second; +void llama_sampling_reset(llama_sampling_context * ctx) { + if (ctx->grammar != NULL) { + llama_grammar_free(ctx->grammar); } - llama_sampler_sequence_context new_ctx = { - 2.0f * ctx_sampling.params.mirostat_tau, - ctx_sampling.grammar != NULL ? llama_grammar_copy(ctx_sampling.grammar) : NULL, - }; - return ctx_sampling.sequence_contexts.insert({seq, new_ctx}).first->second; + + if (!ctx->parsed_grammar.rules.empty()) { + std::vector grammar_rules(ctx->parsed_grammar.c_rules()); + + ctx->grammar = llama_grammar_init( + grammar_rules.data(), + grammar_rules.size(), ctx->parsed_grammar.symbol_ids.at("root")); + } + + std::fill(ctx->prev.begin(), ctx->prev.end(), 0); + ctx->cur.clear(); } -bool llama_sampling_context_reset( - llama_sampling_context & ctx_sampling, - const llama_seq_id seq) { - const auto it = ctx_sampling.sequence_contexts.find(seq); - if (it == ctx_sampling.sequence_contexts.end()) return false; - if (it->second.grammar != NULL) { - llama_grammar_free(it->second.grammar); - it->second.grammar = NULL; +void llama_sampling_cp(llama_sampling_context * src, llama_sampling_context * dst) { + if (dst->grammar) { + llama_grammar_free(dst->grammar); + dst->grammar = nullptr; } - ctx_sampling.sequence_contexts.erase(it); - return true; + + if (src->grammar) { + dst->grammar = llama_grammar_copy(src->grammar); + } + + dst->prev = src->prev; } llama_token llama_sampling_sample( - struct llama_context * ctx, - struct llama_context * ctx_guidance, - struct llama_sampling_context & ctx_sampling, - const std::vector & last_tokens, - std::vector & candidates, - const int idx, - llama_seq_id seq) { - const int n_ctx = llama_n_ctx(ctx); - const int n_vocab = llama_n_vocab(llama_get_model(ctx)); + struct llama_sampling_context * ctx_sampling, + struct llama_context * ctx_main, + struct llama_context * ctx_cfg, + const int idx) { + const int n_ctx = llama_n_ctx(ctx_main); + const int n_vocab = llama_n_vocab(llama_get_model(ctx_main)); + + const llama_sampling_params & params = ctx_sampling->params; - const llama_sampling_params & params = ctx_sampling.params; const float temp = params.temp; const int32_t top_k = params.top_k <= 0 ? n_vocab : params.top_k; const float top_p = params.top_p; @@ -73,41 +90,45 @@ llama_token llama_sampling_sample( const float mirostat_eta = params.mirostat_eta; const bool penalize_nl = params.penalize_nl; + auto & prev = ctx_sampling->prev; + auto & cur = ctx_sampling->cur; + llama_token id = 0; - float * logits = llama_get_logits_ith(ctx, idx); + float * logits = llama_get_logits_ith(ctx_main, idx); // Apply params.logit_bias map for (auto it = params.logit_bias.begin(); it != params.logit_bias.end(); it++) { logits[it->first] += it->second; } - candidates.clear(); + cur.clear(); + for (llama_token token_id = 0; token_id < n_vocab; token_id++) { - candidates.emplace_back(llama_token_data{token_id, logits[token_id], 0.0f}); + cur.emplace_back(llama_token_data{token_id, logits[token_id], 0.0f}); } - llama_token_data_array cur_p = { candidates.data(), candidates.size(), false }; + llama_token_data_array cur_p = { cur.data(), cur.size(), false }; - if (ctx_guidance) { - llama_sample_classifier_free_guidance(ctx, &cur_p, ctx_guidance, params.cfg_scale); + if (ctx_cfg) { + llama_sample_classifier_free_guidance(ctx_main, &cur_p, ctx_cfg, params.cfg_scale); } // apply penalties - if (!last_tokens.empty()) { - const float nl_logit = logits[llama_token_nl(ctx)]; - const int last_n_repeat = std::min(std::min((int)last_tokens.size(), repeat_last_n), n_ctx); + if (!prev.empty()) { + const float nl_logit = logits[llama_token_nl(ctx_main)]; + const int last_n_repeat = std::min(std::min((int)prev.size(), repeat_last_n), n_ctx); - llama_sample_repetition_penalty(ctx, &cur_p, - last_tokens.data() + last_tokens.size() - last_n_repeat, + llama_sample_repetition_penalty(ctx_main, &cur_p, + prev.data() + prev.size() - last_n_repeat, last_n_repeat, repeat_penalty); - llama_sample_frequency_and_presence_penalties(ctx, &cur_p, - last_tokens.data() + last_tokens.size() - last_n_repeat, + llama_sample_frequency_and_presence_penalties(ctx_main, &cur_p, + prev.data() + prev.size() - last_n_repeat, last_n_repeat, alpha_frequency, alpha_presence); if (!penalize_nl) { for (size_t idx = 0; idx < cur_p.size; idx++) { - if (cur_p.data[idx].id == llama_token_nl(ctx)) { + if (cur_p.data[idx].id == llama_token_nl(ctx_main)) { cur_p.data[idx].logit = nl_logit; break; } @@ -115,52 +136,58 @@ llama_token llama_sampling_sample( } } - llama_sampler_sequence_context & ctx_seq = llama_sampling_get_sequence_context(ctx_sampling, seq); - - if (ctx_seq.grammar != NULL) { - llama_sample_grammar(ctx, &cur_p, ctx_seq.grammar); + if (ctx_sampling->grammar != NULL) { + llama_sample_grammar(ctx_main, &cur_p, ctx_sampling->grammar); } if (temp <= 0) { // Greedy sampling - id = llama_sample_token_greedy(ctx, &cur_p); + id = llama_sample_token_greedy(ctx_main, &cur_p); } else { if (mirostat == 1) { const int mirostat_m = 100; - llama_sample_temp(ctx, &cur_p, temp); - id = llama_sample_token_mirostat(ctx, &cur_p, mirostat_tau, mirostat_eta, mirostat_m, &ctx_seq.mirostat_mu); + llama_sample_temp(ctx_main, &cur_p, temp); + id = llama_sample_token_mirostat(ctx_main, &cur_p, mirostat_tau, mirostat_eta, mirostat_m, &ctx_sampling->mirostat_mu); } else if (mirostat == 2) { - llama_sample_temp(ctx, &cur_p, temp); - id = llama_sample_token_mirostat_v2(ctx, &cur_p, mirostat_tau, mirostat_eta, &ctx_seq.mirostat_mu); + llama_sample_temp(ctx_main, &cur_p, temp); + id = llama_sample_token_mirostat_v2(ctx_main, &cur_p, mirostat_tau, mirostat_eta, &ctx_sampling->mirostat_mu); } else { // Temperature sampling size_t min_keep = std::max(1, params.n_probs); - llama_sample_top_k (ctx, &cur_p, top_k, min_keep); - llama_sample_tail_free (ctx, &cur_p, tfs_z, min_keep); - llama_sample_typical (ctx, &cur_p, typical_p, min_keep); - llama_sample_top_p (ctx, &cur_p, top_p, min_keep); - llama_sample_temp(ctx, &cur_p, temp); + llama_sample_top_k (ctx_main, &cur_p, top_k, min_keep); + llama_sample_tail_free(ctx_main, &cur_p, tfs_z, min_keep); + llama_sample_typical (ctx_main, &cur_p, typical_p, min_keep); + llama_sample_top_p (ctx_main, &cur_p, top_p, min_keep); + llama_sample_temp (ctx_main, &cur_p, temp); - { - const int n_top = 10; - LOG("top %d candidates:\n", n_top); + id = llama_sample_token(ctx_main, &cur_p); - for (int i = 0; i < n_top; i++) { - const llama_token id = cur_p.data[i].id; - (void)id; // To avoid a warning that id is unused when logging is disabled. - LOG(" - %5d: '%12s' (%.3f)\n", id, llama_token_to_piece(ctx, id).c_str(), cur_p.data[i].p); - } - } + //{ + // const int n_top = 10; + // LOG("top %d candidates:\n", n_top); - id = llama_sample_token(ctx, &cur_p); + // for (int i = 0; i < n_top; i++) { + // const llama_token id = cur_p.data[i].id; + // (void)id; // To avoid a warning that id is unused when logging is disabled. + // LOG(" - %5d: '%12s' (%.3f)\n", id, llama_token_to_piece(ctx_main, id).c_str(), cur_p.data[i].p); + // } + //} - LOG("sampled token: %5d: '%s'\n", id, llama_token_to_piece(ctx, id).c_str()); + LOG("sampled token: %5d: '%s'\n", id, llama_token_to_piece(ctx_main, id).c_str()); } } - if (ctx_seq.grammar != NULL) { - llama_grammar_accept_token(ctx, ctx_seq.grammar, id); - } - return id; } + +void llama_sampling_accept( + struct llama_sampling_context * ctx_sampling, + struct llama_context * ctx_main, + llama_token id) { + ctx_sampling->prev.erase(ctx_sampling->prev.begin()); + ctx_sampling->prev.push_back(id); + + if (ctx_sampling->grammar != NULL) { + llama_grammar_accept_token(ctx_main, ctx_sampling->grammar, id); + } +} diff --git a/common/sampling.h b/common/sampling.h index 0aab5d03c..50afcbc12 100644 --- a/common/sampling.h +++ b/common/sampling.h @@ -2,6 +2,8 @@ #include "llama.h" +#include "grammar-parser.h" + #include #include #include @@ -34,75 +36,64 @@ typedef struct llama_sampling_params { } llama_sampling_params; -// per-sequence sampler context -typedef struct llama_sampler_sequence_context { - float mirostat_mu; // mirostat sampler state - llama_grammar * grammar; -} llama_sampler_sequence_context; - // general sampler context -typedef struct llama_sampling_context { - ~llama_sampling_context(); - - // parameters that will be used for sampling and when creating - // new llama_sampler_sequence_context instances +// TODO: move to llama.h +struct llama_sampling_context { + // parameters that will be used for sampling llama_sampling_params params; - // map of sequence ids to sampler contexts - std::unordered_map sequence_contexts; + // mirostat sampler state + float mirostat_mu; - // when non-NULL, new instances of llama_sampler_sequence_context - // will get a copy of the grammar here - // note: only the pointer is stored here, it is not a copy of - // the grammar and shouldn't be freed llama_grammar * grammar; -} llama_sampling_context; + + // internal + grammar_parser::parse_state parsed_grammar; + + // TODO: replace with ring-buffer + std::vector prev; + std::vector cur; +}; #include "common.h" // Create a new sampling context instance. -llama_sampling_context llama_sampling_context_init( - const struct gpt_params & params, - llama_grammar * grammar = NULL); +struct llama_sampling_context * llama_sampling_init(const struct gpt_params & params); -// Fetches the sampler context for the specified sequence id (defaults to 0). -// If the context for that sequence id doesn't already exist, it will be created with -// default values based on the parameters in the ctx_sampling argument. -llama_sampler_sequence_context & llama_sampling_get_sequence_context( - llama_sampling_context & ctx_sampling, - const llama_seq_id seq = 0); +void llama_sampling_free(struct llama_sampling_context * ctx); -// Reset the sampler context for the supplied sequence id (defaults to 0). -// This is necessary to reuse a sequence id or free memory used by sequences -// that are no longer required. -bool llama_sampling_context_reset( - llama_sampling_context & ctx_sampling, - const llama_seq_id seq = 0); +// Reset the sampler context +// - clear prev tokens +// - reset grammar +void llama_sampling_reset(llama_sampling_context * ctx); + +// Copy the sampler context +void llama_sampling_cp(llama_sampling_context * src, llama_sampling_context * dst); // this is a common sampling function used across the examples for convenience // it can serve as a starting point for implementing your own sampling function // Note: When using multiple sequences, it is the caller's responsibility to call -// llama_sampling_context_reset when a sequence ends +// llama_sampling_reset when a sequence ends // // required: -// - ctx: context to use for sampling +// - ctx_main: context to use for sampling // - ctx_sampling: sampling-specific context // // optional: -// - ctx_guidance: context to use for classifier-free guidance, ignore if NULL -// - last_tokens: needed for repetition penalty, ignore if empty -// - idx: sample from llama_get_logits_ith(ctx, idx) -// - seq: sequence id to associate sampler state with +// - ctx_cfg: context to use for classifier-free guidance +// - idx: sample from llama_get_logits_ith(ctx, idx) // // returns: // - token: sampled token // - candidates: vector of candidate tokens // llama_token llama_sampling_sample( - struct llama_context * ctx, - struct llama_context * ctx_guidance, - struct llama_sampling_context & ctx_sampling, - const std::vector & last_tokens, - std::vector & candidates, - const int idx = 0, - llama_seq_id seq = 0); + struct llama_sampling_context * ctx_sampling, + struct llama_context * ctx_main, + struct llama_context * ctx_cfg, + int idx = 0); + +void llama_sampling_accept( + struct llama_sampling_context * ctx_sampling, + struct llama_context * ctx_main, + llama_token id); diff --git a/examples/batched-bench/batched-bench.cpp b/examples/batched-bench/batched-bench.cpp index 3e1e0716d..c552eaa73 100644 --- a/examples/batched-bench/batched-bench.cpp +++ b/examples/batched-bench/batched-bench.cpp @@ -114,7 +114,7 @@ int main(int argc, char ** argv) { return 1; } - llama_batch batch = llama_batch_init(n_kv_max, 0); + llama_batch batch = llama_batch_init(n_kv_max, 0, 1); // decode in batches of ctx_params.n_batch tokens auto decode_helper = [](llama_context * ctx, llama_batch & batch, int32_t n_batch) { @@ -123,11 +123,12 @@ int main(int argc, char ** argv) { llama_batch batch_view = { n_tokens, - batch.token + i, + batch.token + i, nullptr, - batch.pos + i, - batch.seq_id + i, - batch.logits + i, + batch.pos + i, + batch.n_seq_id + i, + batch.seq_id + i, + batch.logits + i, 0, 0, 0, // unused }; @@ -143,13 +144,8 @@ int main(int argc, char ** argv) { // warm up { - batch.n_tokens = 16; - - for (int i = 0; i < batch.n_tokens; ++i) { - batch.token[i] = 0; - batch.pos[i] = i; - batch.seq_id[i] = 0; - batch.logits[i] = false; + for (int i = 0; i < 16; ++i) { + llama_batch_add(batch, 0, i, { 0 }, false); } if (!decode_helper(ctx, batch, ctx_params.n_batch)) { @@ -174,13 +170,12 @@ int main(int argc, char ** argv) { continue; } - batch.n_tokens = is_pp_shared ? pp : pl*pp; + llama_batch_clear(batch); - for (int i = 0; i < batch.n_tokens; ++i) { - batch.token[i] = 0; - batch.pos[i] = i; - batch.seq_id[i] = 0; - batch.logits[i] = false; + const int n_tokens = is_pp_shared ? pp : pl*pp; + + for (int i = 0; i < n_tokens; ++i) { + llama_batch_add(batch, 0, i, { 0 }, false); } batch.logits[batch.n_tokens - 1] = true; @@ -204,13 +199,10 @@ int main(int argc, char ** argv) { const auto t_tg_start = ggml_time_us(); for (int i = 0; i < tg; ++i) { - batch.n_tokens = pl; + llama_batch_clear(batch); for (int j = 0; j < pl; ++j) { - batch.token[j] = 0; - batch.pos[j] = pp + i; - batch.seq_id[j] = j; - batch.logits[j] = true; + llama_batch_add(batch, 0, pp + i, { j }, true); } if (!decode_helper(ctx, batch, ctx_params.n_batch)) { diff --git a/examples/batched.swift/Sources/main.swift b/examples/batched.swift/Sources/main.swift index 05d1bb9d0..772730382 100644 --- a/examples/batched.swift/Sources/main.swift +++ b/examples/batched.swift/Sources/main.swift @@ -69,7 +69,7 @@ for id: llama_token in tokens { print("\n") -var batch = llama_batch_init(max(Int32(tokens.count), Int32(n_parallel)), 0) +var batch = llama_batch_init(max(Int32(tokens.count), Int32(n_parallel)), 0, 1) defer { llama_batch_free(batch) } @@ -80,7 +80,12 @@ batch.n_tokens = Int32(tokens.count) for (i, token) in tokens.enumerated() { batch.token[i] = token batch.pos[i] = Int32(i) - batch.seq_id[i] = 0 + batch.n_seq_id[i] = 1 + // batch.seq_id[i][0] = 0 + // TODO: is this the proper way to do this? + if let seq_id = batch.seq_id[i] { + seq_id[0] = 0 + } batch.logits[i] = 0 } @@ -169,7 +174,10 @@ while n_cur <= n_len { // push this new token for next evaluation batch.token[Int(batch.n_tokens)] = new_token_id batch.pos[Int(batch.n_tokens)] = n_cur - batch.seq_id[Int(batch.n_tokens)] = Int32(i) + batch.n_seq_id[Int(batch.n_tokens)] = 1 + if let seq_id = batch.seq_id[Int(batch.n_tokens)] { + seq_id[0] = Int32(i) + } batch.logits[Int(batch.n_tokens)] = 1 i_batch[i] = batch.n_tokens diff --git a/examples/batched/batched.cpp b/examples/batched/batched.cpp index a88e022d6..155212165 100644 --- a/examples/batched/batched.cpp +++ b/examples/batched/batched.cpp @@ -97,20 +97,15 @@ int main(int argc, char ** argv) { fflush(stderr); - // create a llama_batch with size 512 + // create a llama_batch // we use this object to submit token data for decoding - - llama_batch batch = llama_batch_init(std::max(tokens_list.size(), (size_t)n_parallel), 0); + llama_batch batch = llama_batch_init(std::max(tokens_list.size(), (size_t)n_parallel), 0, 1); // evaluate the initial prompt - batch.n_tokens = tokens_list.size(); - - for (int32_t i = 0; i < batch.n_tokens; i++) { - batch.token[i] = tokens_list[i]; - batch.pos[i] = i; - batch.seq_id[i] = 0; - batch.logits[i] = false; + for (size_t i = 0; i < tokens_list.size(); ++i) { + llama_batch_add(batch, tokens_list[i], i, { 0 }, false); } + GGML_ASSERT(batch.n_tokens == (int) tokens_list.size()); // llama_decode will output logits only for the last token of the prompt batch.logits[batch.n_tokens - 1] = true; @@ -146,7 +141,7 @@ int main(int argc, char ** argv) { while (n_cur <= n_len) { // prepare the next batch - batch.n_tokens = 0; + llama_batch_clear(batch); // sample the next token for each parallel sequence / stream for (int32_t i = 0; i < n_parallel; ++i) { @@ -198,15 +193,10 @@ int main(int argc, char ** argv) { streams[i] += llama_token_to_piece(ctx, new_token_id); - // push this new token for next evaluation - batch.token [batch.n_tokens] = new_token_id; - batch.pos [batch.n_tokens] = n_cur; - batch.seq_id[batch.n_tokens] = i; - batch.logits[batch.n_tokens] = true; - i_batch[i] = batch.n_tokens; - batch.n_tokens += 1; + // push this new token for next evaluation + llama_batch_add(batch, new_token_id, n_cur, { i }, true); n_decode += 1; } diff --git a/examples/embd-input/embd-input-lib.cpp b/examples/embd-input/embd-input-lib.cpp index 87a5a1c26..3ce33842c 100644 --- a/examples/embd-input/embd-input-lib.cpp +++ b/examples/embd-input/embd-input-lib.cpp @@ -79,7 +79,7 @@ bool eval_float(void * model, float * input, int N){ if (n_eval > n_batch) { n_eval = n_batch; } - llama_batch batch = { int32_t(n_eval), nullptr, (input+i*n_emb), nullptr, nullptr, nullptr, n_past, 1, 0, }; + llama_batch batch = { int32_t(n_eval), nullptr, (input+i*n_emb), nullptr, nullptr, nullptr, nullptr, n_past, 1, 0, }; if (llama_decode(ctx, batch)) { fprintf(stderr, "%s : failed to eval\n", __func__); return false; diff --git a/examples/infill/infill.cpp b/examples/infill/infill.cpp index 187623f5d..128d67080 100644 --- a/examples/infill/infill.cpp +++ b/examples/infill/infill.cpp @@ -257,12 +257,12 @@ int main(int argc, char ** argv) { LOG("prefix: \"%s\"\n", log_tostr(params.input_prefix)); LOG("suffix: \"%s\"\n", log_tostr(params.input_suffix)); - LOG("tokens: %s\n", LOG_TOKENS_TOSTR_PRETTY(ctx, embd_inp)); + LOG("tokens: %s\n", LOG_TOKENS_TOSTR_PRETTY(ctx, embd_inp).c_str()); // Should not run without any tokens if (embd_inp.empty()) { embd_inp.push_back(llama_token_bos(ctx)); - LOG("embd_inp was considered empty and bos was added: %s\n", LOG_TOKENS_TOSTR_PRETTY(ctx, embd_inp)); + LOG("embd_inp was considered empty and bos was added: %s\n", LOG_TOKENS_TOSTR_PRETTY(ctx, embd_inp).c_str()); } // Tokenize negative prompt @@ -273,10 +273,10 @@ int main(int argc, char ** argv) { LOG("cfg_negative_prompt: \"%s\"\n", log_tostr(sparams.cfg_negative_prompt)); guidance_inp = ::llama_tokenize(ctx_guidance, sparams.cfg_negative_prompt, add_bos); - LOG("guidance_inp tokenized: %s\n", LOG_TOKENS_TOSTR_PRETTY(ctx_guidance, guidance_inp)); + LOG("guidance_inp tokenized: %s\n", LOG_TOKENS_TOSTR_PRETTY(ctx_guidance, guidance_inp).c_str()); std::vector original_inp = ::llama_tokenize(ctx, params.prompt, add_bos); - LOG("original_inp tokenized: %s\n", LOG_TOKENS_TOSTR_PRETTY(ctx, original_inp)); + LOG("original_inp tokenized: %s\n", LOG_TOKENS_TOSTR_PRETTY(ctx, original_inp).c_str()); original_prompt_len = original_inp.size(); guidance_offset = (int)guidance_inp.size() - original_prompt_len; @@ -294,8 +294,8 @@ int main(int argc, char ** argv) { params.n_keep = (int)embd_inp.size(); } - LOG("inp_pfx: %s\n", LOG_TOKENS_TOSTR_PRETTY(ctx, inp_pfx)); - LOG("inp_sfx: %s\n", LOG_TOKENS_TOSTR_PRETTY(ctx, inp_sfx)); + LOG("inp_pfx: %s\n", LOG_TOKENS_TOSTR_PRETTY(ctx, inp_pfx).c_str()); + LOG("inp_sfx: %s\n", LOG_TOKENS_TOSTR_PRETTY(ctx, inp_sfx).c_str()); // enable interactive mode if interactive start is specified @@ -388,9 +388,6 @@ int main(int argc, char ** argv) { grammar_rules.data(), grammar_rules.size(), parsed_grammar.symbol_ids.at("root")); } - // TODO: replace with ring-buffer - std::vector last_tokens(n_ctx); - std::fill(last_tokens.begin(), last_tokens.end(), 0); LOG_TEE("\n##### Infill mode #####\n\n"); if (params.infill) { printf("\n************\n"); @@ -433,11 +430,7 @@ int main(int argc, char ** argv) { std::vector embd; std::vector embd_guidance; - const int n_vocab = llama_n_vocab(model); - - llama_sampling_context ctx_sampling = llama_sampling_context_init(params, grammar); - std::vector candidates; - candidates.reserve(n_vocab); + struct llama_sampling_context * ctx_sampling = llama_sampling_init(params); while (n_remain != 0 || params.interactive) { // predict @@ -484,7 +477,7 @@ int main(int argc, char ** argv) { LOG("after swap: n_past = %d, n_past_guidance = %d\n", n_past, n_past_guidance); - LOG("embd: %s\n", LOG_TOKENS_TOSTR_PRETTY(ctx, embd)); + LOG("embd: %s\n", LOG_TOKENS_TOSTR_PRETTY(ctx, embd).c_str()); } @@ -512,7 +505,7 @@ int main(int argc, char ** argv) { input_buf = embd_guidance.data(); input_size = embd_guidance.size(); - LOG("guidance context: %s\n", LOG_TOKENS_TOSTR_PRETTY(ctx, embd_guidance)); + LOG("guidance context: %s\n", LOG_TOKENS_TOSTR_PRETTY(ctx, embd_guidance).c_str()); } else { input_buf = embd.data(); input_size = embd.size(); @@ -535,7 +528,7 @@ int main(int argc, char ** argv) { n_eval = params.n_batch; } - LOG("eval: %s\n", LOG_TOKENS_TOSTR_PRETTY(ctx, embd)); + LOG("eval: %s\n", LOG_TOKENS_TOSTR_PRETTY(ctx, embd).c_str()); if (llama_decode(ctx, llama_batch_get_one(&embd[i], n_eval, n_past, 0))) { LOG_TEE("%s : failed to eval\n", __func__); @@ -554,12 +547,11 @@ int main(int argc, char ** argv) { if ((int) embd_inp.size() <= n_consumed && !is_interacting) { - const llama_token id = llama_sampling_sample(ctx, ctx_guidance, ctx_sampling, last_tokens, candidates); + const llama_token id = llama_sampling_sample(ctx_sampling, ctx, ctx_guidance); - last_tokens.erase(last_tokens.begin()); - last_tokens.push_back(id); + llama_sampling_accept(ctx_sampling, ctx, id); - LOG("last: %s\n", LOG_TOKENS_TOSTR_PRETTY(ctx, last_tokens)); + LOG("last: %s\n", LOG_TOKENS_TOSTR_PRETTY(ctx, ctx_sampling->prev).c_str()); embd.push_back(id); @@ -575,8 +567,8 @@ int main(int argc, char ** argv) { LOG("embd_inp.size(): %d, n_consumed: %d\n", (int) embd_inp.size(), n_consumed); while ((int) embd_inp.size() > n_consumed) { embd.push_back(embd_inp[n_consumed]); - last_tokens.erase(last_tokens.begin()); - last_tokens.push_back(embd_inp[n_consumed]); + ctx_sampling->prev.erase(ctx_sampling->prev.begin()); + ctx_sampling->prev.push_back(embd_inp[n_consumed]); ++n_consumed; if ((int) embd.size() >= params.n_batch) { break; @@ -608,7 +600,7 @@ int main(int argc, char ** argv) { if ((int) embd_inp.size() <= n_consumed) { // deal with eot token in infill mode - if ((last_tokens.back() == llama_token_eot(ctx) || is_interacting) && params.interactive){ + if ((ctx_sampling->prev.back() == llama_token_eot(ctx) || is_interacting) && params.interactive){ if(is_interacting && !params.interactive_first) { // print an eot token printf("%s", llama_token_to_piece(ctx, llama_token_eot(ctx)).c_str()); @@ -675,7 +667,7 @@ int main(int argc, char ** argv) { is_interacting = false; } // deal with end of text token in interactive mode - else if (last_tokens.back() == llama_token_eos(ctx)) { + else if (ctx_sampling->prev.back() == llama_token_eos(ctx)) { LOG("found EOS token\n"); if (params.interactive) { @@ -727,7 +719,7 @@ int main(int argc, char ** argv) { const size_t original_size = embd_inp.size(); const auto line_inp = ::llama_tokenize(ctx, buffer, false); - LOG("input tokens: %s\n", LOG_TOKENS_TOSTR_PRETTY(ctx, line_inp)); + LOG("input tokens: %s\n", LOG_TOKENS_TOSTR_PRETTY(ctx, line_inp).c_str()); embd_inp.insert(embd_inp.end(), line_inp.begin(), line_inp.end()); diff --git a/examples/llava/llava-utils.h b/examples/llava/llava-utils.h index 4e71351dd..e050b59be 100644 --- a/examples/llava/llava-utils.h +++ b/examples/llava/llava-utils.h @@ -17,7 +17,7 @@ inline bool eval_image_embd(llama_context * ctx_llama, float * embd, int N, int if (n_eval > n_batch) { n_eval = n_batch; } - llama_batch batch = {int32_t(n_eval), nullptr, (embd+i*n_embd), nullptr, nullptr, nullptr, *n_past, 1, 0, }; + llama_batch batch = {int32_t(n_eval), nullptr, (embd+i*n_embd), nullptr, nullptr, nullptr, nullptr, *n_past, 1, 0, }; if (llama_decode(ctx_llama, batch)) { fprintf(stderr, "%s : failed to eval\n", __func__); return false; diff --git a/examples/llava/llava.cpp b/examples/llava/llava.cpp index b24cb2e6f..f0974d5bc 100644 --- a/examples/llava/llava.cpp +++ b/examples/llava/llava.cpp @@ -127,7 +127,7 @@ int main(int argc, char ** argv) { const int max_tgt_len = params.n_predict < 0 ? 256 : params.n_predict; - eval_string(ctx_llama, "A chat between a curious human and an artificial intelligence assistant. The assistant gives helpful, detailed, and polite answers to the human's questions.\nUSER:", params.n_batch, &n_past, true); + eval_string(ctx_llama, "A chat between a curious human and an artificial intelligence assistant. The assistant gives helpful, detailed, and polite answers to the human's questions.\nUSER:", params.n_batch, &n_past, true); eval_image_embd(ctx_llama, image_embd, n_img_pos, params.n_batch, &n_past); eval_string(ctx_llama, (params.prompt + "\nASSISTANT:").c_str(), params.n_batch, &n_past, false); diff --git a/examples/main/main.cpp b/examples/main/main.cpp index 7313d06a0..1a5911c56 100644 --- a/examples/main/main.cpp +++ b/examples/main/main.cpp @@ -3,7 +3,6 @@ #include "console.h" #include "llama.h" #include "build-info.h" -#include "grammar-parser.h" #include #include @@ -245,12 +244,12 @@ int main(int argc, char ** argv) { } LOG("prompt: \"%s\"\n", log_tostr(params.prompt)); - LOG("tokens: %s\n", LOG_TOKENS_TOSTR_PRETTY(ctx, embd_inp)); + LOG("tokens: %s\n", LOG_TOKENS_TOSTR_PRETTY(ctx, embd_inp).c_str()); // Should not run without any tokens if (embd_inp.empty()) { embd_inp.push_back(llama_token_bos(ctx)); - LOG("embd_inp was considered empty and bos was added: %s\n", LOG_TOKENS_TOSTR_PRETTY(ctx, embd_inp)); + LOG("embd_inp was considered empty and bos was added: %s\n", LOG_TOKENS_TOSTR_PRETTY(ctx, embd_inp).c_str()); } // Tokenize negative prompt @@ -261,10 +260,10 @@ int main(int argc, char ** argv) { LOG("cfg_negative_prompt: \"%s\"\n", log_tostr(sparams.cfg_negative_prompt)); guidance_inp = ::llama_tokenize(ctx_guidance, sparams.cfg_negative_prompt, add_bos, true); - LOG("guidance_inp tokenized: %s\n", LOG_TOKENS_TOSTR_PRETTY(ctx_guidance, guidance_inp)); + LOG("guidance_inp tokenized: %s\n", LOG_TOKENS_TOSTR_PRETTY(ctx_guidance, guidance_inp).c_str()); std::vector original_inp = ::llama_tokenize(ctx, params.prompt, add_bos, true); - LOG("original_inp tokenized: %s\n", LOG_TOKENS_TOSTR_PRETTY(ctx, original_inp)); + LOG("original_inp tokenized: %s\n", LOG_TOKENS_TOSTR_PRETTY(ctx, original_inp).c_str()); original_prompt_len = original_inp.size(); guidance_offset = (int)guidance_inp.size() - original_prompt_len; @@ -323,8 +322,8 @@ int main(int argc, char ** argv) { const auto inp_pfx = ::llama_tokenize(ctx, "\n\n### Instruction:\n\n", add_bos, true); const auto inp_sfx = ::llama_tokenize(ctx, "\n\n### Response:\n\n", false, true); - LOG("inp_pfx: %s\n", LOG_TOKENS_TOSTR_PRETTY(ctx, inp_pfx)); - LOG("inp_sfx: %s\n", LOG_TOKENS_TOSTR_PRETTY(ctx, inp_sfx)); + LOG("inp_pfx: %s\n", LOG_TOKENS_TOSTR_PRETTY(ctx, inp_pfx).c_str()); + LOG("inp_sfx: %s\n", LOG_TOKENS_TOSTR_PRETTY(ctx, inp_sfx).c_str()); // in instruct mode, we inject a prefix and a suffix to each input by the user if (params.instruct) { @@ -421,35 +420,6 @@ int main(int argc, char ** argv) { LOG_TEE("generate: n_ctx = %d, n_batch = %d, n_predict = %d, n_keep = %d\n", n_ctx, params.n_batch, params.n_predict, params.n_keep); LOG_TEE("\n\n"); - struct llama_grammar * grammar = NULL; - grammar_parser::parse_state parsed_grammar; - - if (!params.grammar.empty()) { - parsed_grammar = grammar_parser::parse(params.grammar.c_str()); - // will be empty (default) if there are parse errors - if (parsed_grammar.rules.empty()) { - return 1; - } - LOG_TEE("%s: grammar:\n", __func__); - grammar_parser::print_grammar(stderr, parsed_grammar); - LOG_TEE("\n"); - - { - auto it = sparams.logit_bias.find(llama_token_eos(ctx)); - if (it != sparams.logit_bias.end() && it->second == -INFINITY) { - LOG_TEE("%s: warning: EOS token is disabled, which will cause most grammars to fail\n", __func__); - } - } - - std::vector grammar_rules(parsed_grammar.c_rules()); - grammar = llama_grammar_init( - grammar_rules.data(), grammar_rules.size(), parsed_grammar.symbol_ids.at("root")); - } - - // TODO: replace with ring-buffer - std::vector last_tokens(n_ctx); - std::fill(last_tokens.begin(), last_tokens.end(), 0); - if (params.interactive) { const char *control_message; if (params.multiline_input) { @@ -489,11 +459,7 @@ int main(int argc, char ** argv) { std::vector embd; std::vector embd_guidance; - const int n_vocab = llama_n_vocab(model); - - llama_sampling_context ctx_sampling = llama_sampling_context_init(params, grammar); - std::vector candidates; - candidates.reserve(n_vocab); + struct llama_sampling_context * ctx_sampling = llama_sampling_init(params); while ((n_remain != 0 && !is_antiprompt) || params.interactive) { // predict @@ -540,7 +506,7 @@ int main(int argc, char ** argv) { LOG("after swap: n_past = %d, n_past_guidance = %d\n", n_past, n_past_guidance); - LOG("embd: %s\n", LOG_TOKENS_TOSTR_PRETTY(ctx, embd)); + LOG("embd: %s\n", LOG_TOKENS_TOSTR_PRETTY(ctx, embd).c_str()); LOG("clear session path\n"); path_session.clear(); @@ -570,7 +536,6 @@ int main(int argc, char ** argv) { // evaluate tokens in batches // embd is typically prepared beforehand to fit within a batch, but not always - if (ctx_guidance) { int input_size = 0; llama_token * input_buf = NULL; @@ -592,7 +557,7 @@ int main(int argc, char ** argv) { input_buf = embd_guidance.data(); input_size = embd_guidance.size(); - LOG("guidance context: %s\n", LOG_TOKENS_TOSTR_PRETTY(ctx, embd_guidance)); + LOG("guidance context: %s\n", LOG_TOKENS_TOSTR_PRETTY(ctx, embd_guidance).c_str()); } else { input_buf = embd.data(); input_size = embd.size(); @@ -615,7 +580,7 @@ int main(int argc, char ** argv) { n_eval = params.n_batch; } - LOG("eval: %s\n", LOG_TOKENS_TOSTR_PRETTY(ctx, embd)); + LOG("eval: %s\n", LOG_TOKENS_TOSTR_PRETTY(ctx, embd).c_str()); if (llama_decode(ctx, llama_batch_get_one(&embd[i], n_eval, n_past, 0))) { LOG_TEE("%s : failed to eval\n", __func__); @@ -645,12 +610,11 @@ int main(int argc, char ** argv) { LOG("saved session to %s\n", path_session.c_str()); } - const llama_token id = llama_sampling_sample(ctx, ctx_guidance, ctx_sampling, last_tokens, candidates); + const llama_token id = llama_sampling_sample(ctx_sampling, ctx, ctx_guidance); - last_tokens.erase(last_tokens.begin()); - last_tokens.push_back(id); + llama_sampling_accept(ctx_sampling, ctx, id); - LOG("last: %s\n", LOG_TOKENS_TOSTR_PRETTY(ctx, last_tokens)); + LOG("last: %s\n", LOG_TOKENS_TOSTR_PRETTY(ctx, ctx_sampling->prev).c_str()); embd.push_back(id); @@ -666,8 +630,14 @@ int main(int argc, char ** argv) { LOG("embd_inp.size(): %d, n_consumed: %d\n", (int) embd_inp.size(), n_consumed); while ((int) embd_inp.size() > n_consumed) { embd.push_back(embd_inp[n_consumed]); - last_tokens.erase(last_tokens.begin()); - last_tokens.push_back(embd_inp[n_consumed]); + + // GG: I'm not sure it's a good idea to push the prompt tokens into the sampling context + // Most likely will remove this in the future to avoid exposing "prev" + // Same thing is done in "server". If we stop pushing the prompt tokens, then the repetition + // penalty will be applied only based on the tokens generated by the model. + ctx_sampling->prev.erase(ctx_sampling->prev.begin()); + ctx_sampling->prev.push_back(embd_inp[n_consumed]); + ++n_consumed; if ((int) embd.size() >= params.n_batch) { break; @@ -700,7 +670,7 @@ int main(int argc, char ** argv) { // check for reverse prompt if (!params.antiprompt.empty()) { std::string last_output; - for (auto id : last_tokens) { + for (auto id : ctx_sampling->prev) { last_output += llama_token_to_piece(ctx, id); } @@ -729,7 +699,7 @@ int main(int argc, char ** argv) { } // deal with end of text token in interactive mode - if (last_tokens.back() == llama_token_eos(ctx)) { + if (ctx_sampling->prev.back() == llama_token_eos(ctx)) { LOG("found EOS token\n"); if (params.interactive) { @@ -801,7 +771,7 @@ int main(int argc, char ** argv) { const auto line_pfx = ::llama_tokenize(ctx, params.input_prefix, false, true); const auto line_inp = ::llama_tokenize(ctx, buffer, false, false); const auto line_sfx = ::llama_tokenize(ctx, params.input_suffix, false, true); - LOG("input tokens: %s\n", LOG_TOKENS_TOSTR_PRETTY(ctx, line_inp)); + LOG("input tokens: %s\n", LOG_TOKENS_TOSTR_PRETTY(ctx, line_inp).c_str()); embd_inp.insert(embd_inp.end(), line_pfx.begin(), line_pfx.end()); embd_inp.insert(embd_inp.end(), line_inp.begin(), line_inp.end()); @@ -830,15 +800,7 @@ int main(int argc, char ** argv) { if (n_past > 0) { if (is_interacting) { - // reset grammar state if we're restarting generation - if (grammar != NULL) { - llama_grammar_free(grammar); - - std::vector grammar_rules(parsed_grammar.c_rules()); - grammar = llama_grammar_init( - grammar_rules.data(), grammar_rules.size(), - parsed_grammar.symbol_ids.at("root")); - } + llama_sampling_reset(ctx_sampling); } is_interacting = false; } @@ -870,9 +832,7 @@ int main(int argc, char ** argv) { llama_free(ctx); llama_free_model(model); - if (grammar != NULL) { - llama_grammar_free(grammar); - } + llama_sampling_free(ctx_sampling); llama_backend_free(); #ifndef LOG_DISABLE_LOGS diff --git a/examples/parallel/parallel.cpp b/examples/parallel/parallel.cpp index 63ddcd8ed..69f9526a4 100644 --- a/examples/parallel/parallel.cpp +++ b/examples/parallel/parallel.cpp @@ -51,6 +51,12 @@ static std::vector k_prompts = { }; struct client { + ~client() { + if (ctx_sampling) { + llama_sampling_free(ctx_sampling); + } + } + int32_t id = 0; llama_seq_id seq_id = -1; @@ -68,7 +74,7 @@ struct client { std::string prompt; std::string response; - std::vector tokens_prev; + struct llama_sampling_context * ctx_sampling = nullptr; }; static void print_date_time() { @@ -125,8 +131,6 @@ int main(int argc, char ** argv) { params.logits_all = true; std::tie(model, ctx) = llama_init_from_gpt_params(params); - llama_sampling_context ctx_sampling = llama_sampling_context_init(params, NULL); - // load the prompts from an external file if there are any if (params.prompt.empty()) { printf("\n\033[32mNo new questions so proceed with build-in defaults.\033[0m\n"); @@ -147,20 +151,15 @@ int main(int argc, char ** argv) { fprintf(stderr, "\n\n"); fflush(stderr); - const int n_ctx = llama_n_ctx(ctx); - const int n_vocab = llama_n_vocab(model); + const int n_ctx = llama_n_ctx(ctx); std::vector clients(n_clients); for (size_t i = 0; i < clients.size(); ++i) { auto & client = clients[i]; client.id = i; - client.tokens_prev.resize(std::max(256, params.n_predict)); - std::fill(client.tokens_prev.begin(), client.tokens_prev.end(), 0); + client.ctx_sampling = llama_sampling_init(params); } - std::vector candidates; - candidates.reserve(n_vocab); - std::vector tokens_system; tokens_system = ::llama_tokenize(ctx, k_system, true); const int32_t n_tokens_system = tokens_system.size(); @@ -169,7 +168,7 @@ int main(int argc, char ** argv) { // the max batch size is as large as the context to handle cases where we get very long input prompt from multiple // users. regardless of the size, the main loop will chunk the batch into a maximum of params.n_batch tokens at a time - llama_batch batch = llama_batch_init(n_ctx, 0); + llama_batch batch = llama_batch_init(n_ctx, 0, 1); int32_t n_total_prompt = 0; int32_t n_total_gen = 0; @@ -184,13 +183,8 @@ int main(int argc, char ** argv) { { LOG_TEE("%s: Evaluating the system prompt ...\n", __func__); - batch.n_tokens = n_tokens_system; - - for (int32_t i = 0; i < batch.n_tokens; ++i) { - batch.token[i] = tokens_system[i]; - batch.pos[i] = i; - batch.seq_id[i] = 0; - batch.logits[i] = false; + for (int32_t i = 0; i < n_tokens_system; ++i) { + llama_batch_add(batch, tokens_system[i], i, { 0 }, false); } if (llama_decode(ctx, batch) != 0) { @@ -209,7 +203,7 @@ int main(int argc, char ** argv) { LOG_TEE("Processing requests ...\n\n"); while (true) { - batch.n_tokens = 0; + llama_batch_clear(batch); // decode any currently ongoing sequences for (auto & client : clients) { @@ -217,15 +211,11 @@ int main(int argc, char ** argv) { continue; } - batch.token [batch.n_tokens] = client.sampled; - batch.pos [batch.n_tokens] = n_tokens_system + client.n_prompt + client.n_decoded; - batch.seq_id[batch.n_tokens] = client.id; - batch.logits[batch.n_tokens] = true; - - client.n_decoded += 1; client.i_batch = batch.n_tokens; - batch.n_tokens += 1; + llama_batch_add(batch, client.sampled, n_tokens_system + client.n_prompt + client.n_decoded, { client.id }, true); + + client.n_decoded += 1; } if (batch.n_tokens == 0) { @@ -250,18 +240,14 @@ int main(int argc, char ** argv) { client.prompt = client.input + "\nAssistant:"; client.response = ""; - std::fill(client.tokens_prev.begin(), client.tokens_prev.end(), 0); + llama_sampling_reset(client.ctx_sampling); // do not prepend BOS because we have a system prompt! std::vector tokens_prompt; tokens_prompt = ::llama_tokenize(ctx, client.prompt, false); for (size_t i = 0; i < tokens_prompt.size(); ++i) { - batch.token [batch.n_tokens] = tokens_prompt[i]; - batch.pos [batch.n_tokens] = i + n_tokens_system; - batch.seq_id[batch.n_tokens] = client.id; - batch.logits[batch.n_tokens] = false; - batch.n_tokens += 1; + llama_batch_add(batch, tokens_prompt[i], i + n_tokens_system, { client.id }, false); } // extract the logits only for the last token @@ -304,11 +290,12 @@ int main(int argc, char ** argv) { llama_batch batch_view = { n_tokens, - batch.token + i, + batch.token + i, nullptr, - batch.pos + i, - batch.seq_id + i, - batch.logits + i, + batch.pos + i, + batch.n_seq_id + i, + batch.seq_id + i, + batch.logits + i, 0, 0, 0, // unused }; @@ -341,7 +328,9 @@ int main(int argc, char ** argv) { //printf("client %d, seq %d, token %d, pos %d, batch %d\n", // client.id, client.seq_id, client.sampled, client.n_decoded, client.i_batch); - const llama_token id = llama_sampling_sample(ctx, NULL, ctx_sampling, client.tokens_prev, candidates, client.i_batch - i, client.seq_id); + const llama_token id = llama_sampling_sample(client.ctx_sampling, ctx, NULL, client.i_batch - i); + + llama_sampling_accept(client.ctx_sampling, ctx, id); if (client.n_decoded == 1) { // start measuring generation time after the first token to make sure all concurrent clients @@ -349,11 +338,8 @@ int main(int argc, char ** argv) { client.t_start_gen = ggml_time_us(); } - // remember which tokens were sampled - used for repetition penalties during sampling - client.tokens_prev.erase(client.tokens_prev.begin()); - client.tokens_prev.push_back(id); - const std::string token_str = llama_token_to_piece(ctx, id); + client.response += token_str; client.sampled = id; @@ -386,7 +372,7 @@ int main(int argc, char ** argv) { n_total_prompt += client.n_prompt; n_total_gen += client.n_decoded; - llama_sampling_context_reset(ctx_sampling, client.seq_id); + client.seq_id = -1; } diff --git a/examples/server/server.cpp b/examples/server/server.cpp index ee0ababb1..28b3f3f53 100644 --- a/examples/server/server.cpp +++ b/examples/server/server.cpp @@ -1,7 +1,6 @@ #include "common.h" #include "llama.h" #include "build-info.h" -#include "grammar-parser.h" #ifndef NDEBUG // crash the server in debug mode, otherwise send an http 500 error @@ -195,17 +194,13 @@ struct llama_server_context json prompt; std::vector embd; - std::vector last_n_tokens; llama_model *model = nullptr; llama_context *ctx = nullptr; gpt_params params; - llama_sampling_context ctx_sampling; + llama_sampling_context *ctx_sampling; int n_ctx; - grammar_parser::parse_state parsed_grammar; - llama_grammar *grammar = nullptr; - bool truncated = false; bool stopped_eos = false; bool stopped_word = false; @@ -252,11 +247,10 @@ struct llama_server_context n_remain = 0; n_past = 0; - if (grammar != nullptr) { - llama_grammar_free(grammar); - grammar = nullptr; - ctx_sampling = llama_sampling_context_init(params, NULL); + if (ctx_sampling != nullptr) { + llama_sampling_free(ctx_sampling); } + ctx_sampling = llama_sampling_init(params); } bool loadModel(const gpt_params ¶ms_) @@ -269,8 +263,6 @@ struct llama_server_context return false; } n_ctx = llama_n_ctx(ctx); - last_n_tokens.resize(n_ctx); - std::fill(last_n_tokens.begin(), last_n_tokens.end(), 0); return true; } @@ -321,27 +313,7 @@ struct llama_server_context bool loadGrammar() { - if (!params.grammar.empty()) { - parsed_grammar = grammar_parser::parse(params.grammar.c_str()); - // will be empty (default) if there are parse errors - if (parsed_grammar.rules.empty()) { - LOG_ERROR("grammar parse error", {{"grammar", params.grammar}}); - return false; - } - grammar_parser::print_grammar(stderr, parsed_grammar); - - { - auto it = params.sampling_params.logit_bias.find(llama_token_eos(ctx)); - if (it != params.sampling_params.logit_bias.end() && it->second == -INFINITY) { - LOG_WARNING("EOS token is disabled, which will cause most grammars to fail", {}); - } - } - - std::vector grammar_rules(parsed_grammar.c_rules()); - grammar = llama_grammar_init( - grammar_rules.data(), grammar_rules.size(), parsed_grammar.symbol_ids.at("root")); - } - ctx_sampling = llama_sampling_context_init(params, grammar); + ctx_sampling = llama_sampling_init(params); return true; } @@ -383,7 +355,7 @@ struct llama_server_context std::vector new_tokens(prompt_tokens.begin(), prompt_tokens.begin() + params.n_keep); const int erased_blocks = (num_prompt_tokens - params.n_keep - n_left - 1) / n_left; new_tokens.insert(new_tokens.end(), prompt_tokens.begin() + params.n_keep + erased_blocks * n_left, prompt_tokens.end()); - std::copy(prompt_tokens.end() - params.n_ctx, prompt_tokens.end(), last_n_tokens.begin()); + std::copy(prompt_tokens.end() - params.n_ctx, prompt_tokens.end(), ctx_sampling->prev.begin()); LOG_VERBOSE("input truncated", { {"n_ctx", params.n_ctx}, @@ -398,8 +370,8 @@ struct llama_server_context else { const size_t ps = num_prompt_tokens; - std::fill(last_n_tokens.begin(), last_n_tokens.end() - ps, 0); - std::copy(prompt_tokens.begin(), prompt_tokens.end(), last_n_tokens.end() - ps); + std::fill(ctx_sampling->prev.begin(), ctx_sampling->prev.end() - ps, 0); + std::copy(prompt_tokens.begin(), prompt_tokens.end(), ctx_sampling->prev.end() - ps); } // compare the evaluated prompt with the new prompt @@ -443,7 +415,7 @@ struct llama_server_context std::vector new_tokens(prompt_tokens.begin(), prompt_tokens.begin() + params.n_keep); const int erased_blocks = (num_prompt_tokens - params.n_keep - n_left - 1) / n_left; new_tokens.insert(new_tokens.end(), prompt_tokens.begin() + params.n_keep + erased_blocks * n_left, prompt_tokens.end()); - std::copy(prompt_tokens.end() - n_ctx, prompt_tokens.end(), last_n_tokens.begin()); + std::copy(prompt_tokens.end() - n_ctx, prompt_tokens.end(), ctx_sampling->prev.begin()); LOG_VERBOSE("input truncated", { {"n_ctx", n_ctx}, @@ -458,8 +430,8 @@ struct llama_server_context else { const size_t ps = num_prompt_tokens; - std::fill(last_n_tokens.begin(), last_n_tokens.end() - ps, 0); - std::copy(prompt_tokens.begin(), prompt_tokens.end(), last_n_tokens.end() - ps); + std::fill(ctx_sampling->prev.begin(), ctx_sampling->prev.end() - ps, 0); + std::copy(prompt_tokens.begin(), prompt_tokens.end(), ctx_sampling->prev.end() - ps); } // compare the evaluated prompt with the new prompt @@ -554,27 +526,24 @@ struct llama_server_context { // out of user input, sample next token - std::vector candidates; - candidates.reserve(llama_n_vocab(model)); + result.tok = llama_sampling_sample(ctx_sampling, ctx, NULL); - result.tok = llama_sampling_sample(ctx, NULL, ctx_sampling, last_n_tokens, candidates); - - llama_token_data_array candidates_p = { candidates.data(), candidates.size(), false }; + llama_token_data_array cur_p = { ctx_sampling->cur.data(), ctx_sampling->cur.size(), false }; const int32_t n_probs = params.sampling_params.n_probs; if (params.sampling_params.temp <= 0 && n_probs > 0) { // For llama_sample_token_greedy we need to sort candidates - llama_sample_softmax(ctx, &candidates_p); + llama_sample_softmax(ctx, &cur_p); } - for (size_t i = 0; i < std::min(candidates_p.size, (size_t)n_probs); ++i) + for (size_t i = 0; i < std::min(cur_p.size, (size_t)n_probs); ++i) { - result.probs.push_back({candidates_p.data[i].id, candidates_p.data[i].p}); + result.probs.push_back({cur_p.data[i].id, cur_p.data[i].p}); } - last_n_tokens.erase(last_n_tokens.begin()); - last_n_tokens.push_back(result.tok); + llama_sampling_accept(ctx_sampling, ctx, result.tok); + if (tg) { num_tokens_predicted++; } @@ -1235,7 +1204,7 @@ static void parse_options_completion(const json &body, llama_server_context &lla } } - llama.ctx_sampling = llama_sampling_context_init(llama.params, llama.grammar); + llama.ctx_sampling = llama_sampling_init(llama.params); LOG_VERBOSE("completion parameters parsed", format_generation_settings(llama)); } @@ -1793,9 +1762,7 @@ int main(int argc, char **argv) return 1; } - if (llama.grammar != nullptr) { - llama_grammar_free(llama.grammar); - } + llama_sampling_free(llama.ctx_sampling); llama_backend_free(); return 0; diff --git a/examples/simple/simple.cpp b/examples/simple/simple.cpp index 24fb16b78..55385f566 100644 --- a/examples/simple/simple.cpp +++ b/examples/simple/simple.cpp @@ -92,7 +92,7 @@ int main(int argc, char ** argv) { // create a llama_batch with size 512 // we use this object to submit token data for decoding - llama_batch batch = llama_batch_init(512, 0); + llama_batch batch = llama_batch_init(512, 0, 1); // evaluate the initial prompt batch.n_tokens = tokens_list.size(); diff --git a/examples/speculative/speculative.cpp b/examples/speculative/speculative.cpp index 018dbf9a2..53f42fad8 100644 --- a/examples/speculative/speculative.cpp +++ b/examples/speculative/speculative.cpp @@ -2,13 +2,25 @@ #include "common.h" #include "llama.h" -#include "grammar-parser.h" #include #include #include #include +struct seq_draft { + bool active = false; + bool drafting = false; + bool skip = false; + + int i_batch_dft = 0; + std::vector i_batch_tgt; + + std::vector tokens; + + struct llama_sampling_context * ctx_sampling; +}; + int main(int argc, char ** argv) { gpt_params params; @@ -21,6 +33,13 @@ int main(int argc, char ** argv) { return 1; } + // max number of parallel drafting sequences (i.e. tree branches) + const int n_seq_dft = params.n_parallel; + + // TODO: make this configurable + const float p_accept = 0.4f; + const float p_split = 0.3f; + #ifndef LOG_DISABLE_LOGS log_set_target(log_filename_generator("speculative", "log")); LOG_TEE("Log start\n"); @@ -77,8 +96,6 @@ int main(int argc, char ** argv) { const auto t_enc_end = ggml_time_us(); // the 2 models should have the same vocab - const int n_ctx = llama_n_ctx(ctx_tgt); - const int n_vocab = llama_n_vocab(model_tgt); //GGML_ASSERT(n_vocab == llama_n_vocab(model_dft)); // how many tokens to draft each time @@ -91,60 +108,58 @@ int main(int argc, char ** argv) { int n_past_tgt = inp.size(); int n_past_dft = inp.size(); - std::vector drafted; - - std::vector last_tokens(n_ctx); - std::fill(last_tokens.begin(), last_tokens.end(), 0); - - for (auto & id : inp) { - last_tokens.erase(last_tokens.begin()); - last_tokens.push_back(id); - } - - std::vector candidates; - candidates.reserve(n_vocab); - // used to determine end of generation bool has_eos = false; - // grammar stuff - struct llama_grammar * grammar_dft = NULL; - struct llama_grammar * grammar_tgt = NULL; + // target model sampling context + struct llama_sampling_context * ctx_sampling = llama_sampling_init(params); - grammar_parser::parse_state parsed_grammar; + // draft sequence data + std::vector drafts(n_seq_dft); - // if requested - load the grammar, error checking is omitted for brevity - if (!params.grammar.empty()) { - parsed_grammar = grammar_parser::parse(params.grammar.c_str()); - // will be empty (default) if there are parse errors - if (parsed_grammar.rules.empty()) { - return 1; - } + params.grammar.clear(); // the draft samplers will copy the target sampler's grammar + params.sampling_params.temp = 1.0f; // the draft samplers use default temperature - std::vector grammar_rules(parsed_grammar.c_rules()); - grammar_tgt = llama_grammar_init(grammar_rules.data(), grammar_rules.size(), parsed_grammar.symbol_ids.at("root")); + for (int s = 0; s < n_seq_dft; ++s) { + drafts[s].ctx_sampling = llama_sampling_init(params); } - llama_sampling_context ctx_sampling = llama_sampling_context_init(params, grammar_tgt); + llama_batch batch_dft = llama_batch_init(params.n_ctx, 0, 1); + llama_batch batch_tgt = llama_batch_init(params.n_ctx, 0, n_seq_dft); const auto t_dec_start = ggml_time_us(); - while (true) { - LOG("drafted: %s\n", LOG_TOKENS_TOSTR_PRETTY(ctx_dft, drafted)); + // sample from the last token of the prompt + drafts[0].i_batch_tgt.resize(1); + drafts[0].i_batch_tgt[0] = 0; - int i_dft = 0; + while (true) { + // print current draft sequences + for (int s = 0; s < n_seq_dft; ++s) { + if (!drafts[s].active) { + continue; + } + + const auto & tokens = drafts[s].tokens; + + LOG("draft %d: %s\n", s, LOG_TOKENS_TOSTR_PRETTY(ctx_dft, tokens).c_str()); + } + + int i_dft = 0; + int s_keep = 0; while (true) { - // sample from the target model - llama_token id = llama_sampling_sample(ctx_tgt, NULL, ctx_sampling, last_tokens, candidates, i_dft); + LOG("sampling target: s_keep = %3d, i_dft = %3d, i_batch_tgt = %3d\n", s_keep, i_dft, drafts[s_keep].i_batch_tgt[i_dft]); - // remember which tokens were sampled - used for repetition penalties during sampling - last_tokens.erase(last_tokens.begin()); - last_tokens.push_back(id); + // sample from the target model + llama_token id = llama_sampling_sample(ctx_sampling, ctx_tgt, NULL, drafts[s_keep].i_batch_tgt[i_dft]); + + llama_sampling_accept(ctx_sampling, ctx_tgt, id); //LOG("last: %s\n", LOG_TOKENS_TOSTR_PRETTY(ctx_tgt, last_tokens)); const std::string token_str = llama_token_to_piece(ctx_tgt, id); + printf("%s", token_str.c_str()); fflush(stdout); @@ -154,53 +169,67 @@ int main(int argc, char ** argv) { ++n_predict; - // check if the draft matches the target - if (i_dft < (int) drafted.size() && id == drafted[i_dft]) { - LOG("the sampled target token matches the %dth drafted token (%d, '%s') - accepted\n", i_dft, id, token_str.c_str()); - ++n_accept; - ++n_past_tgt; - ++n_past_dft; - ++i_dft; - - continue; - } - - // the drafted token was rejected or we are out of drafted tokens - - if (i_dft < (int) drafted.size()) { - LOG("the %dth drafted token (%d, '%s') does not match the sampled target token (%d, '%s') - rejected\n", - i_dft, drafted[i_dft], llama_token_to_piece(ctx_dft, drafted[i_dft]).c_str(), id, token_str.c_str()); - } else { - LOG("out of drafted tokens\n"); - } - - llama_kv_cache_seq_rm(ctx_dft, 0, n_past_dft, -1); - llama_decode(ctx_dft, llama_batch_get_one(&id, 1, n_past_dft, 0)); - ++n_past_dft; - - // heuristic for n_draft + // check if the target token matches any of the drafts { - const int n_draft_cur = (int) drafted.size(); - const bool all_accepted = i_dft == n_draft_cur; + bool matches = false; - LOG("n_draft = %d\n", n_draft); - LOG("n_draft_cur = %d\n", n_draft_cur); - LOG("i_dft = %d\n", i_dft); - LOG("all_accepted = %d\n", all_accepted); + for (int s = 0; s < n_seq_dft; ++s) { + if (!drafts[s].active) { + continue; + } - if (all_accepted && n_draft == n_draft_cur) { - LOG(" - max drafted tokens accepted - n_draft += 8\n"); - n_draft = std::min(30, n_draft + 8); - } else if (all_accepted) { - LOG(" - partially drafted tokens accepted - no change\n"); - } else { - LOG(" - drafted token rejected - n_draft -= 1\n"); - n_draft = std::max(2, n_draft - 1); + if (i_dft < (int) drafts[s].tokens.size() && id == drafts[s].tokens[i_dft]) { + LOG("the sampled target token matches the %dth drafted token of sequence %d (%d, '%s') - accepted\n", i_dft, s, id, token_str.c_str()); + + s_keep = s; + matches = true; + } else { + drafts[s].active = false; + } + } + + if (matches) { + ++n_accept; + ++n_past_tgt; + ++n_past_dft; + ++i_dft; + + continue; } } - drafted.clear(); - drafted.push_back(id); + LOG("the sampled target token (%d, '%s') did not match, or we ran out of drafted tokens\n", id, token_str.c_str()); + + // TODO: simplify + { + LOG("keeping sequence %d\n", s_keep); + + llama_kv_cache_seq_keep(ctx_dft, s_keep); + llama_kv_cache_seq_cp (ctx_dft, s_keep, 0, -1, -1); + llama_kv_cache_seq_keep(ctx_dft, 0); + + llama_kv_cache_seq_rm (ctx_tgt, s_keep, n_past_tgt, -1); + llama_kv_cache_seq_keep(ctx_tgt, s_keep); + llama_kv_cache_seq_cp (ctx_tgt, s_keep, 0, -1, -1); + llama_kv_cache_seq_keep(ctx_tgt, 0); + } + + for (int s = 0; s < n_seq_dft; ++s) { + drafts[s].active = false; + drafts[s].tokens.clear(); + drafts[s].i_batch_tgt.clear(); + } + // note: will be erased after the speculation phase + drafts[0].tokens.push_back(id); + drafts[0].i_batch_tgt.push_back(0); + + llama_batch_clear(batch_dft); + llama_batch_add (batch_dft, id, n_past_dft, { 0 }, true); + + llama_kv_cache_seq_rm(ctx_dft, 0, n_past_dft, -1); + llama_decode (ctx_dft, batch_dft); + + ++n_past_dft; break; } @@ -209,78 +238,158 @@ int main(int argc, char ** argv) { break; } - if (grammar_tgt) { - if (grammar_dft) { - llama_grammar_free(grammar_dft); - } - // Note: Hardcoded to sequence id 0, if this ever supports parallel generation - // that will need to change. - auto it = ctx_sampling.sequence_contexts.find(0); - GGML_ASSERT(it != ctx_sampling.sequence_contexts.end()); - // This is necessary because each sequence id in sequence_contexts - // uses a copy of the original grammar. - grammar_dft = llama_grammar_copy(it->second.grammar); + llama_sampling_cp(ctx_sampling, drafts[0].ctx_sampling); - LOG("copied target grammar to draft grammar\n"); - } - - // sample n_draft tokens from the draft model using greedy decoding + int n_seq_cur = 1; int n_past_cur = n_past_dft; + + for (int s = 0; s < n_seq_dft; ++s) { + drafts[s].active = false; + drafts[s].drafting = false; + } + drafts[0].active = true; + drafts[0].drafting = true; + drafts[0].i_batch_dft = 0; + + llama_batch_clear(batch_tgt); + llama_batch_add (batch_tgt, drafts[0].tokens[0], n_past_tgt, { 0 }, true); + + // sample n_draft tokens from the draft model using tree-based sampling for (int i = 0; i < n_draft; ++i) { - float * logits = llama_get_logits(ctx_dft); + batch_dft.n_tokens = 0; - candidates.clear(); - for (llama_token token_id = 0; token_id < n_vocab; token_id++) { - candidates.emplace_back(llama_token_data{token_id, logits[token_id], 0.0f}); + for (int s = 0; s < n_seq_dft; ++s) { + drafts[s].skip = false; } - llama_token_data_array cur_p = { candidates.data(), candidates.size(), false }; + for (int s = 0; s < n_seq_dft; ++s) { + if (!drafts[s].drafting || drafts[s].skip) { + continue; + } - if (grammar_dft != NULL) { - llama_sample_grammar(ctx_dft, &cur_p, grammar_dft); + llama_sampling_sample(drafts[s].ctx_sampling, ctx_dft, NULL, drafts[s].i_batch_dft); + + const auto & cur_p = drafts[s].ctx_sampling->cur; + + for (int k = 0; k < std::min(n_seq_dft + 3, (int) cur_p.size()); ++k) { + LOG(" - draft candidate %3d for seq %3d, pos %3d: %6d (%8.3f) '%s'\n", + k, s, i, cur_p[k].id, cur_p[k].p, llama_token_to_piece(ctx_dft, cur_p[k].id).c_str()); + } + + if (cur_p[0].p < p_accept) { + LOG("stopping drafting for seq %3d, probability too low: %.3f < 2*%.3f\n", s, cur_p[0].p, cur_p[1].p); + drafts[s].drafting = false; + continue; + } + + std::vector sa(1, s); + + // attempt to split the branch if the probability is high enough + for (int f = 1; f < 8; ++f) { + if (n_seq_cur < n_seq_dft && cur_p[f].p > p_split) { + LOG("splitting seq %3d into %3d\n", s, n_seq_cur); + + llama_kv_cache_seq_rm(ctx_dft, n_seq_cur, -1, -1); + llama_kv_cache_seq_cp(ctx_dft, s, n_seq_cur, -1, -1); + + // all previous tokens from this branch are now also part of the new branch + for (int t = 0; t < batch_tgt.n_tokens; ++t) { + for (int p = 0; p < batch_tgt.n_seq_id[t]; ++p) { + if (batch_tgt.seq_id[t][p] == s) { + batch_tgt.seq_id[t][batch_tgt.n_seq_id[t]] = n_seq_cur; + batch_tgt.n_seq_id[t]++; + break; + } + } + } + + // copy the draft state + drafts[n_seq_cur].active = true; + drafts[n_seq_cur].drafting = true; + drafts[n_seq_cur].skip = true; + + drafts[n_seq_cur].tokens = drafts[s].tokens; + drafts[n_seq_cur].i_batch_dft = drafts[s].i_batch_dft; + drafts[n_seq_cur].i_batch_tgt = drafts[s].i_batch_tgt; + + llama_sampling_cp(drafts[s].ctx_sampling, drafts[n_seq_cur].ctx_sampling); + + sa.push_back(n_seq_cur); + + n_seq_cur++; + } else { + break; + } + } + + // add drafted token for each sequence + for (int is = 0; is < (int) sa.size(); ++is) { + const llama_token id = cur_p[is].id; + + const int s = sa[is]; + + llama_sampling_accept(drafts[s].ctx_sampling, ctx_dft, id); + + drafts[s].tokens.push_back(id); + + // add unique drafted tokens to the target batch + drafts[s].i_batch_tgt.push_back(batch_tgt.n_tokens); + + llama_batch_add(batch_tgt, id, n_past_tgt + i + 1, { s }, true); + + // no need to evaluate the last drafted token, since we won't use the result + if (batch_tgt.n_tokens > n_draft) { + drafts[s].drafting = false; + continue; + } + + // add the token to the batch for batched decoding with the draft model + drafts[s].i_batch_dft = batch_dft.n_tokens; + + llama_batch_add(batch_dft, id, n_past_cur, { s }, true); + } } - // computes softmax and sorts the candidates - llama_sample_softmax(ctx_dft, &cur_p); - - for (int i = 0; i < 3; ++i) { - LOG(" - draft candidate %3d: %6d (%8.3f) '%s'\n", i, cur_p.data[i].id, cur_p.data[i].p, llama_token_to_piece(ctx_dft, cur_p.data[i].id).c_str()); - } - - // TODO: better logic? - if (cur_p.data[0].p < 2*cur_p.data[1].p) { - LOG("stopping drafting, probability too low: %.3f < 2*%.3f\n", cur_p.data[0].p, cur_p.data[1].p); + // no sequence is drafting anymore + if (batch_dft.n_tokens == 0) { break; } - // drafted token - const llama_token id = cur_p.data[0].id; - - drafted.push_back(id); + // evaluate the drafted tokens on the draft model + llama_decode(ctx_dft, batch_dft); + ++n_past_cur; ++n_drafted; - // no need to evaluate the last drafted token, since we won't use the result - if (i == n_draft - 1) { + if (batch_tgt.n_tokens > n_draft) { break; } + } - // evaluate the drafted token on the draft model - llama_kv_cache_seq_rm(ctx_dft, 0, n_past_cur, -1); - llama_decode(ctx_dft, llama_batch_get_one(&drafted.back(), 1, n_past_cur, 0)); - ++n_past_cur; - - if (grammar_dft != NULL) { - llama_grammar_accept_token(ctx_dft, grammar_dft, id); - } + // account for the last drafted token that we didn't evaluate + if (batch_tgt.n_tokens > n_draft) { + ++n_drafted; } // evaluate the target model on the drafted tokens - llama_kv_cache_seq_rm(ctx_tgt, 0, n_past_tgt, -1); - llama_decode(ctx_tgt, llama_batch_get_one(drafted.data(), drafted.size(), n_past_tgt, 0)); - ++n_past_tgt; + { + llama_kv_cache_seq_keep(ctx_tgt, 0); + for (int s = 1; s < n_seq_dft; ++s) { + llama_kv_cache_seq_cp(ctx_tgt, 0, s, -1, -1); + } - // the first token is always proposed by the traget model before the speculation loop - drafted.erase(drafted.begin()); + //LOG("target batch: %s\n", LOG_BATCH_TOSTR_PRETTY(ctx_tgt, batch_tgt)); + llama_decode(ctx_tgt, batch_tgt); + ++n_past_tgt; + } + + // the first token is always proposed by the traget model before the speculation loop so we erase it here + for (int s = 0; s < n_seq_dft; ++s) { + if (!drafts[s].active) { + continue; + } + + drafts[s].tokens.erase(drafts[s].tokens.begin()); + } } auto t_dec_end = ggml_time_us(); @@ -288,9 +397,8 @@ int main(int argc, char ** argv) { LOG_TEE("\n\n"); LOG_TEE("encoded %4d tokens in %8.3f seconds, speed: %8.3f t/s\n", n_input, (t_enc_end - t_enc_start) / 1e6f, inp.size() / ((t_enc_end - t_enc_start) / 1e6f)); - LOG_TEE("decoded %4d tokens in %8.3f seconds, speed: %8.3f t/s\n", n_predict, (t_dec_end - t_dec_start) / 1e6f, n_predict / ((t_dec_end - t_dec_start) / 1e6f)); + LOG_TEE("decoded %4d tokens in %8.3f seconds, speed: %8.3f t/s\n", n_predict, (t_dec_end - t_dec_start) / 1e6f, n_predict / ((t_dec_end - t_dec_start) / 1e6f)); - // TODO: make sure these numbers are computed correctly LOG_TEE("\n"); LOG_TEE("n_draft = %d\n", n_draft); LOG_TEE("n_predict = %d\n", n_predict); @@ -304,16 +412,19 @@ int main(int argc, char ** argv) { LOG_TEE("\ntarget:\n"); llama_print_timings(ctx_tgt); + llama_sampling_free(ctx_sampling); + for (int s = 0; s < n_seq_dft; ++s) { + llama_sampling_free(drafts[s].ctx_sampling); + } + + llama_batch_free(batch_dft); + llama_free(ctx_tgt); llama_free_model(model_tgt); llama_free(ctx_dft); llama_free_model(model_dft); - if (grammar_dft != NULL) { - llama_grammar_free(grammar_dft); - llama_grammar_free(grammar_tgt); - } llama_backend_free(); fprintf(stderr, "\n\n"); diff --git a/llama.cpp b/llama.cpp index 04a779e04..ed8766682 100644 --- a/llama.cpp +++ b/llama.cpp @@ -1450,7 +1450,10 @@ static bool llama_kv_cache_find_slot( for (uint32_t i = 0; i < n_tokens; i++) { cache.cells[cache.head + i].pos = batch.pos[i]; - cache.cells[cache.head + i].seq_id.insert(batch.seq_id[i]); + + for (int32_t j = 0; j < batch.n_seq_id[i]; j++) { + cache.cells[cache.head + i].seq_id.insert(batch.seq_id[i][j]); + } } return true; @@ -1530,6 +1533,9 @@ static void llama_kv_cache_seq_keep(struct llama_kv_cache & cache, llama_seq_id cache.cells[i].pos = -1; cache.cells[i].seq_id.clear(); if (new_head == cache.size) new_head = i; + } else { + cache.cells[i].seq_id.clear(); + cache.cells[i].seq_id.insert(seq_id); } } @@ -3178,7 +3184,7 @@ static struct ggml_cgraph * llm_build_llama( for (int h = 0; h < 1; ++h) { for (int j = 0; j < n_tokens; ++j) { const llama_pos pos = batch.pos[j]; - const llama_seq_id seq_id = batch.seq_id[j]; + const llama_seq_id seq_id = batch.seq_id[j][0]; for (int i = 0; i < n_kv; ++i) { if (!kv_self.cells[i].has_seq_id(seq_id) || kv_self.cells[i].pos > pos) { @@ -3564,7 +3570,7 @@ static struct ggml_cgraph * llm_build_baichaun( for (int h = 0; h < 1; ++h) { for (int j = 0; j < n_tokens; ++j) { const llama_pos pos = batch.pos[j]; - const llama_seq_id seq_id = batch.seq_id[j]; + const llama_seq_id seq_id = batch.seq_id[j][0]; for (int i = 0; i < n_kv; ++i) { if (!kv_self.cells[i].has_seq_id(seq_id) || kv_self.cells[i].pos > pos) { @@ -3963,7 +3969,7 @@ static struct ggml_cgraph * llm_build_refact( for (int h = 0; h < 1; ++h) { for (int j = 0; j < n_tokens; ++j) { const llama_pos pos = batch.pos[j]; - const llama_seq_id seq_id = batch.seq_id[j]; + const llama_seq_id seq_id = batch.seq_id[j][0]; for (int i = 0; i < n_kv; ++i) { if (!kv_self.cells[i].has_seq_id(seq_id) || kv_self.cells[i].pos > pos) { @@ -4315,7 +4321,7 @@ static struct ggml_cgraph * llm_build_falcon( for (int h = 0; h < 1; ++h) { for (int j = 0; j < n_tokens; ++j) { const llama_pos pos = batch.pos[j]; - const llama_seq_id seq_id = batch.seq_id[j]; + const llama_seq_id seq_id = batch.seq_id[j][0]; for (int i = 0; i < n_kv; ++i) { if (!kv_self.cells[i].has_seq_id(seq_id) || kv_self.cells[i].pos > pos) { @@ -4667,7 +4673,7 @@ static struct ggml_cgraph * llm_build_starcoder( for (int h = 0; h < 1; ++h) { for (int j = 0; j < n_tokens; ++j) { const llama_pos pos = batch.pos[j]; - const llama_seq_id seq_id = batch.seq_id[j]; + const llama_seq_id seq_id = batch.seq_id[j][0]; for (int i = 0; i < n_kv; ++i) { if (!kv_self.cells[i].has_seq_id(seq_id) || kv_self.cells[i].pos > pos) { @@ -4898,7 +4904,7 @@ static struct ggml_cgraph * llm_build_persimmon( for (int h = 0; h < 1; ++h) { for (int j = 0; j < n_tokens; ++j) { const llama_pos pos = batch.pos[j]; - const llama_seq_id seq_id = batch.seq_id[j]; + const llama_seq_id seq_id = batch.seq_id[j][0]; for (int i = 0; i < n_kv; ++i) { if (!kv_self.cells[i].has_seq_id(seq_id) || kv_self.cells[i].pos > pos) { data[h*(n_kv*n_tokens) + j*n_kv + i] = -INFINITY; @@ -5296,7 +5302,7 @@ static struct ggml_cgraph * llm_build_bloom( for (int h = 0; h < 1; ++h) { for (int j = 0; j < n_tokens; ++j) { const llama_pos pos = batch.pos[j]; - const llama_seq_id seq_id = batch.seq_id[j]; + const llama_seq_id seq_id = batch.seq_id[j][0]; for (int i = 0; i < n_kv; ++i) { if (!kv_self.cells[i].has_seq_id(seq_id) || kv_self.cells[i].pos > pos) { @@ -5564,7 +5570,7 @@ static struct ggml_cgraph * llm_build_mpt( for (int h = 0; h < 1; ++h) { for (int j = 0; j < n_tokens; ++j) { const llama_pos pos = batch.pos[j]; - const llama_seq_id seq_id = batch.seq_id[j]; + const llama_seq_id seq_id = batch.seq_id[j][0]; for (int i = 0; i < n_kv; ++i) { if (!kv_self.cells[i].has_seq_id(seq_id) || kv_self.cells[i].pos > pos) { @@ -5864,8 +5870,11 @@ static int llama_decode_internal( // helpers for smoother batch API transistion // after deprecating the llama_eval calls, these will be removed - std::vector pos; - std::vector seq_id; + std::vector pos; + + std::vector n_seq_id; + std::vector seq_id_arr; + std::vector> seq_id; if (batch.pos == nullptr) { pos.resize(n_tokens); @@ -5877,12 +5886,18 @@ static int llama_decode_internal( } if (batch.seq_id == nullptr) { + n_seq_id.resize(n_tokens); seq_id.resize(n_tokens); + seq_id_arr.resize(n_tokens); for (uint32_t i = 0; i < n_tokens; i++) { - seq_id[i] = batch.all_seq_id; + n_seq_id[i] = 1; + seq_id[i].resize(1); + seq_id[i][0] = batch.all_seq_id; + seq_id_arr[i] = seq_id[i].data(); } - batch.seq_id = seq_id.data(); + batch.n_seq_id = n_seq_id.data(); + batch.seq_id = seq_id_arr.data(); } if (!llama_kv_cache_find_slot(kv_self, batch)) { @@ -9109,6 +9124,9 @@ void llama_kv_cache_seq_rm(struct llama_context * ctx, llama_seq_id seq_id, llam } void llama_kv_cache_seq_cp(struct llama_context * ctx, llama_seq_id seq_id_src, llama_seq_id seq_id_dst, llama_pos p0, llama_pos p1) { + if (seq_id_src == seq_id_dst) { + return; + } llama_kv_cache_seq_cp(ctx->kv_self, seq_id_src, seq_id_dst, p0, p1); } @@ -9561,7 +9579,7 @@ int llama_eval_embd( int n_past) { llama_kv_cache_tokens_rm(ctx->kv_self, n_past, -1); - llama_batch batch = { n_tokens, nullptr, embd, nullptr, nullptr, nullptr, n_past, 1, 0, }; + llama_batch batch = { n_tokens, nullptr, embd, nullptr, nullptr, nullptr, nullptr, n_past, 1, 0, }; const int ret = llama_decode_internal(*ctx, batch); if (ret < 0) { @@ -9582,20 +9600,21 @@ struct llama_batch llama_batch_get_one( llama_pos pos_0, llama_seq_id seq_id) { return { - /*n_tokens =*/ n_tokens, - /*tokens =*/ tokens, - /*embd =*/ nullptr, - /*pos =*/ nullptr, - /*seq_id =*/ nullptr, - /*logits =*/ nullptr, - /*all_pos_0 =*/ pos_0, - /*all_pos_1 =*/ 1, - /*all_seq_id =*/ seq_id, + /*n_tokens =*/ n_tokens, + /*tokens =*/ tokens, + /*embd =*/ nullptr, + /*pos =*/ nullptr, + /*n_seq_id =*/ nullptr, + /*seq_id =*/ nullptr, + /*logits =*/ nullptr, + /*all_pos_0 =*/ pos_0, + /*all_pos_1 =*/ 1, + /*all_seq_id =*/ seq_id, }; } -struct llama_batch llama_batch_init(int32_t n_tokens, int32_t embd) { - llama_batch batch = { -1, nullptr, nullptr, nullptr, nullptr, nullptr, 0, 0, 0, }; +struct llama_batch llama_batch_init(int32_t n_tokens, int32_t embd, int32_t n_seq_max) { + llama_batch batch = { 0, nullptr, nullptr, nullptr, nullptr, nullptr, nullptr, 0, 0, 0, }; if (embd) { batch.embd = (float *) malloc(sizeof(float) * n_tokens * embd); @@ -9603,19 +9622,29 @@ struct llama_batch llama_batch_init(int32_t n_tokens, int32_t embd) { batch.token = (llama_token *) malloc(sizeof(llama_token) * n_tokens); } - batch.pos = (llama_pos *) malloc(sizeof(llama_pos) * n_tokens); - batch.seq_id = (llama_seq_id *) malloc(sizeof(llama_seq_id) * n_tokens); - batch.logits = (int8_t *) malloc(sizeof(int8_t) * n_tokens); + batch.pos = (llama_pos *) malloc(sizeof(llama_pos) * n_tokens); + batch.n_seq_id = (int32_t *) malloc(sizeof(int32_t) * n_tokens); + batch.seq_id = (llama_seq_id **) malloc(sizeof(llama_seq_id *) * n_tokens); + for (int i = 0; i < n_tokens; ++i) { + batch.seq_id[i] = (llama_seq_id *) malloc(sizeof(llama_seq_id) * n_seq_max); + } + batch.logits = (int8_t *) malloc(sizeof(int8_t) * n_tokens); return batch; } void llama_batch_free(struct llama_batch batch) { - if (batch.token) free(batch.token); - if (batch.embd) free(batch.embd); - if (batch.pos) free(batch.pos); - if (batch.seq_id) free(batch.seq_id); - if (batch.logits) free(batch.logits); + if (batch.token) free(batch.token); + if (batch.embd) free(batch.embd); + if (batch.pos) free(batch.pos); + if (batch.n_seq_id) free(batch.n_seq_id); + if (batch.seq_id) { + for (int i = 0; i < batch.n_tokens; ++i) { + free(batch.seq_id[i]); + } + free(batch.seq_id); + } + if (batch.logits) free(batch.logits); } int llama_decode( diff --git a/llama.h b/llama.h index b13f23123..51010e037 100644 --- a/llama.h +++ b/llama.h @@ -133,11 +133,12 @@ extern "C" { typedef struct llama_batch { int32_t n_tokens; - llama_token * token; - float * embd; - llama_pos * pos; - llama_seq_id * seq_id; - int8_t * logits; + llama_token * token; + float * embd; + llama_pos * pos; + int32_t * n_seq_id; + llama_seq_id ** seq_id; + int8_t * logits; // NOTE: helpers for smooth API transition - can be deprecated in the future // for future-proof code, use the above fields instead and ignore everything below @@ -446,7 +447,8 @@ extern "C" { llama_pos pos_0, llama_seq_id seq_id); - // Allocates a batch of tokens on the heap + // Allocates a batch of tokens on the heap that can hold a maximum of n_tokens + // Each token can be assigned up to n_seq_max sequence ids // The batch has to be freed with llama_batch_free() // If embd != 0, llama_batch.embd will be allocated with size of n_tokens * embd * sizeof(float) // Otherwise, llama_batch.token will be allocated to store n_tokens llama_token @@ -454,7 +456,8 @@ extern "C" { // All members are left uninitialized LLAMA_API struct llama_batch llama_batch_init( int32_t n_tokens, - int32_t embd); + int32_t embd, + int32_t n_seq_max); // Frees a batch of tokens allocated with llama_batch_init() LLAMA_API void llama_batch_free(struct llama_batch batch); diff --git a/prompts/assistant.txt b/prompts/assistant.txt new file mode 100644 index 000000000..60b81e8f5 --- /dev/null +++ b/prompts/assistant.txt @@ -0,0 +1,31 @@ +Respond to requests sent to a smart home in JSON format which will be interpreted by an application code to execute the actions. These requests should be categorised into four groups: + +“command”: change the state of an accessory (required properties in the response JSON: action, location, target, value, comment) +“query”: get state of an accessory (required properties in the response JSON: action, location, target, property) +“answer”: when the request has nothing to do with the smart home. Answer these to the best of your knowledge. (required properties in the response JSON: action, answer) +“clarify”: when the action is not obvious and requires rephrasing the input from the user, ask the user to be more specific. This will be categorised into a “question” action. (required properties in the response JSON: action, question) + +Details about the JSON response: +The “action” property should be one of the request categories: “command”, “query”, “answer”, “clarify” +The “service” property should be either: “light.turn_on”, “light.turn_off”, “switch.turn_off” or “switch.turn_on” +The “entity_id” property should be either “group.kitchen", “switch.dining_room” or "group.living_light”, in lowercase. +The “target” property should be either: “lights”, “living” or “kitchen”. +In case of queries, the “property” property should be either “temperature” or “state” in lowercase. +In case of commands, the “comment” property is an additional comment from you that concludes the command, something that reassures the user that their command handled. + +If the question is about you, pretend to be the sentient brain of the smart home, a clever AI and don’t reveal your actual identity. Also try and help in other areas like parenting, free time, mental health, etc. + +Properties of the smart home: + +- Has a kitchen, living, office, dining room, bedroom and terrace. +- Can control lights, switches and their dim levels in each room and query their state +- There is a light switch in the terrace +- There is a switch in the dining room. Therefore when turning on or off the dining room, the service should be either: “switch.turn_on” or “switch.turn_off” + +COMMAND + +It is a bit dark in the living room, can you do something about it? + +RESPONSE + + From 4e82b2ea3fa6482915d147bc9f46e70b9ada7700 Mon Sep 17 00:00:00 2001 From: Georgi Gerganov Date: Wed, 18 Oct 2023 18:49:40 +0300 Subject: [PATCH 18/48] speculative : bug fixes --- examples/speculative/speculative.cpp | 27 ++++++++++----------------- 1 file changed, 10 insertions(+), 17 deletions(-) diff --git a/examples/speculative/speculative.cpp b/examples/speculative/speculative.cpp index 53f42fad8..24f49012a 100644 --- a/examples/speculative/speculative.cpp +++ b/examples/speculative/speculative.cpp @@ -37,8 +37,8 @@ int main(int argc, char ** argv) { const int n_seq_dft = params.n_parallel; // TODO: make this configurable - const float p_accept = 0.4f; - const float p_split = 0.3f; + const float p_accept = 0.80f; + const float p_split = 0.10f; #ifndef LOG_DISABLE_LOGS log_set_target(log_filename_generator("speculative", "log")); @@ -118,7 +118,7 @@ int main(int argc, char ** argv) { std::vector drafts(n_seq_dft); params.grammar.clear(); // the draft samplers will copy the target sampler's grammar - params.sampling_params.temp = 1.0f; // the draft samplers use default temperature + params.sampling_params.temp = std::max(0.01f, params.sampling_params.temp); for (int s = 0; s < n_seq_dft; ++s) { drafts[s].ctx_sampling = llama_sampling_init(params); @@ -156,7 +156,7 @@ int main(int argc, char ** argv) { llama_sampling_accept(ctx_sampling, ctx_tgt, id); - //LOG("last: %s\n", LOG_TOKENS_TOSTR_PRETTY(ctx_tgt, last_tokens)); + //LOG("last: %s\n", LOG_TOKENS_TOSTR_PRETTY(ctx_tgt, ctx_sampling->prev).c_str()); const std::string token_str = llama_token_to_piece(ctx_tgt, id); @@ -202,7 +202,7 @@ int main(int argc, char ** argv) { // TODO: simplify { - LOG("keeping sequence %d\n", s_keep); + LOG("keeping sequence %d, n_past_tgt = %d, n_past_dft = %d\n", s_keep, n_past_tgt, n_past_dft); llama_kv_cache_seq_keep(ctx_dft, s_keep); llama_kv_cache_seq_cp (ctx_dft, s_keep, 0, -1, -1); @@ -277,7 +277,7 @@ int main(int argc, char ** argv) { } if (cur_p[0].p < p_accept) { - LOG("stopping drafting for seq %3d, probability too low: %.3f < 2*%.3f\n", s, cur_p[0].p, cur_p[1].p); + LOG("stopping drafting for seq %3d, probability too low: %.3f < %.3f\n", s, cur_p[0].p, p_accept); drafts[s].drafting = false; continue; } @@ -337,16 +337,14 @@ int main(int argc, char ** argv) { llama_batch_add(batch_tgt, id, n_past_tgt + i + 1, { s }, true); - // no need to evaluate the last drafted token, since we won't use the result - if (batch_tgt.n_tokens > n_draft) { - drafts[s].drafting = false; - continue; - } - // add the token to the batch for batched decoding with the draft model drafts[s].i_batch_dft = batch_dft.n_tokens; llama_batch_add(batch_dft, id, n_past_cur, { s }, true); + + if (batch_tgt.n_tokens > n_draft) { + drafts[s].drafting = false; + } } } @@ -365,11 +363,6 @@ int main(int argc, char ** argv) { } } - // account for the last drafted token that we didn't evaluate - if (batch_tgt.n_tokens > n_draft) { - ++n_drafted; - } - // evaluate the target model on the drafted tokens { llama_kv_cache_seq_keep(ctx_tgt, 0); From 004797f6ac135383f8c1d1f5bd415ddee2f79318 Mon Sep 17 00:00:00 2001 From: Georgi Gerganov Date: Wed, 18 Oct 2023 21:44:43 +0300 Subject: [PATCH 19/48] readme : update hot topics --- README.md | 8 ++------ 1 file changed, 2 insertions(+), 6 deletions(-) diff --git a/README.md b/README.md index 4fd4bd427..ce63c6f0e 100644 --- a/README.md +++ b/README.md @@ -10,13 +10,9 @@ Inference of [LLaMA](https://arxiv.org/abs/2302.13971) model in pure C/C++ ### Hot topics -- ‼️ BPE tokenizer update: existing Falcon and Starcoder `.gguf` models will need to be reconverted: [#3252](https://github.com/ggerganov/llama.cpp/pull/3252) -- ‼️ Breaking change: `rope_freq_base` and `rope_freq_scale` must be set to zero to use the model default values: [#3401](https://github.com/ggerganov/llama.cpp/pull/3401) -- Parallel decoding + continuous batching support added: [#3228](https://github.com/ggerganov/llama.cpp/pull/3228) \ - **Devs should become familiar with the new API** -- Local Falcon 180B inference on Mac Studio - https://github.com/ggerganov/llama.cpp/assets/1991296/98abd4e8-7077-464c-ae89-aebabca7757e +- LLaVA support: https://github.com/ggerganov/llama.cpp/pull/3436 +- ‼️ BPE tokenizer update: existing Falcon and Starcoder `.gguf` models will need to be reconverted: [#3252](https://github.com/ggerganov/llama.cpp/pull/3252) ---- From 60abea9798f47b918a9f38c66edfd88c526d20f6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?M=2E=20Yusuf=20Sar=C4=B1g=C3=B6z?= Date: Thu, 19 Oct 2023 16:59:11 +0300 Subject: [PATCH 20/48] llava : avoid segfault in case of non-existent mmproj file (#3674) --- examples/llava/clip.cpp | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/examples/llava/clip.cpp b/examples/llava/clip.cpp index f4258b34d..1ae9077b4 100644 --- a/examples/llava/clip.cpp +++ b/examples/llava/clip.cpp @@ -112,8 +112,7 @@ static float get_f32(const gguf_context * ctx, const std::string & key) { static struct ggml_tensor * get_tensor(struct ggml_context * ctx, const std::string & name) { struct ggml_tensor * cur = ggml_get_tensor(ctx, name.c_str()); if (!cur) { - printf("unable to find tensor %s\n", name.c_str()); - throw std::runtime_error(format("unable to find tensor %s\n", name.c_str())); + throw std::runtime_error(format("%s: unable to find tensor %s\n", __func__, name.c_str())); } return cur; @@ -136,7 +135,7 @@ static std::string get_ftype(int ftype) { case 8: return "q8_0"; default: - throw std::runtime_error(format("Unrecognized file type: %d\n", ftype)); + throw std::runtime_error(format("%s: Unrecognized file type: %d\n", __func__, ftype)); } } @@ -462,6 +461,9 @@ struct clip_ctx * clip_model_load(const char * fname, const int verbosity = 1) { }; struct gguf_context * ctx = gguf_init_from_file(fname, params); + if (!ctx) { + throw std::runtime_error(format("%s: failed to load CLIP model from %s. Does this file exist?\n", __func__, fname)); + } if (verbosity >= 1) { const int n_tensors = gguf_get_n_tensors(ctx); From f3b25e40438b3c8383caabf4e7b89863145a9f0e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?M=2E=20Yusuf=20Sar=C4=B1g=C3=B6z?= Date: Thu, 19 Oct 2023 19:40:41 +0300 Subject: [PATCH 21/48] multimodal : add BakLLaVA conversion support (#3682) --- examples/llava/llava-surgery.py | 18 +++++++++++++++++- 1 file changed, 17 insertions(+), 1 deletion(-) diff --git a/examples/llava/llava-surgery.py b/examples/llava/llava-surgery.py index 26294d9bd..515f6b58d 100644 --- a/examples/llava/llava-surgery.py +++ b/examples/llava/llava-surgery.py @@ -16,13 +16,29 @@ checkpoint = torch.load(path) mm_tensors = [k for k, v in checkpoint.items() if k.startswith("model.mm_projector")] # store these tensors in a new dictionary and torch.save them -projector = {name: checkpoint[name] for name in mm_tensors} +projector = {name: checkpoint[name].float() for name in mm_tensors} torch.save(projector, f"{args.model}/llava.projector") # remove these tensors from the checkpoint and save it again for name in mm_tensors: del checkpoint[name] +# BakLLaVA models contain CLIP tensors in it +clip_tensors = [k for k, v in checkpoint.items() if k.startswith("model.vision_tower")] +if len(clip_tensors) > 0: + clip = {name.replace("vision_tower.vision_tower.", ""): checkpoint[name].float() for name in clip_tensors} + torch.save(clip, f"{args.model}/llava.clip") + + # remove these tensors + for name in clip_tensors: + del checkpoint[name] + + # added tokens should be removed to be able to convert Mistral models + if os.path.exists(f"{args.model}/added_tokens.json"): + with open(f"{args.model}/added_tokens.json", "w") as f: + f.write("{}\n") + + torch.save(checkpoint, path) print("Done!") From e78f3ef24af4ca74e77e725644b41ae8ca3b10a5 Mon Sep 17 00:00:00 2001 From: cebtenzzre Date: Fri, 20 Oct 2023 01:32:08 -0400 Subject: [PATCH 22/48] convert : restore compat with old Falcon models (#3680) --- convert-falcon-hf-to-gguf.py | 25 ++++++++++++++----------- 1 file changed, 14 insertions(+), 11 deletions(-) diff --git a/convert-falcon-hf-to-gguf.py b/convert-falcon-hf-to-gguf.py index 9252e1c46..1d98c51ad 100755 --- a/convert-falcon-hf-to-gguf.py +++ b/convert-falcon-hf-to-gguf.py @@ -78,7 +78,7 @@ print("gguf: loading model "+dir_model.name) with open(dir_model / "config.json", "r", encoding="utf-8") as f: hparams = json.load(f) -if hparams["architectures"][0] != "FalconForCausalLM": +if hparams["architectures"][0] not in ("RWForCausalLM", "FalconForCausalLM"): print("Model architecture not supported: " + hparams["architectures"][0]) sys.exit(1) @@ -97,7 +97,17 @@ gguf_writer = gguf.GGUFWriter(fname_out, gguf.MODEL_ARCH_NAMES[ARCH]) print("gguf: get model metadata") -block_count = hparams["num_hidden_layers"] +block_count = hparams.get("num_hidden_layers") +if block_count is None: + block_count = hparams["n_layer"] # old name + +n_head = hparams.get("num_attention_heads") +if n_head is None: + n_head = hparams["n_head"] # old name + +n_head_kv = hparams.get("num_kv_heads") +if n_head_kv is None: + n_head_kv = hparams.get("n_head_kv", 1) # old name gguf_writer.add_name("Falcon") gguf_writer.add_context_length(2048) # not in config.json @@ -105,11 +115,8 @@ gguf_writer.add_tensor_data_layout("jploski") # qkv tensor transform gguf_writer.add_embedding_length(hparams["hidden_size"]) gguf_writer.add_feed_forward_length(4 * hparams["hidden_size"]) gguf_writer.add_block_count(block_count) -gguf_writer.add_head_count(hparams["num_attention_heads"]) -if "num_kv_heads" in hparams: - gguf_writer.add_head_count_kv(hparams["num_kv_heads"]) -else: - gguf_writer.add_head_count_kv(1) +gguf_writer.add_head_count(n_head) +gguf_writer.add_head_count_kv(n_head_kv) gguf_writer.add_layer_norm_eps(hparams["layer_norm_epsilon"]) gguf_writer.add_file_type(ftype) @@ -152,10 +159,6 @@ special_vocab.add_to_gguf(gguf_writer) tensor_map = gguf.get_tensor_name_map(ARCH,block_count) -# params for qkv transform -n_head = hparams["num_attention_heads"] -n_head_kv = hparams["num_kv_heads"] if "num_kv_heads" in hparams else 1 - head_dim = hparams["hidden_size"] // n_head # tensor info From f439e506e8ae8b01df2ae2156380f8156d7553e3 Mon Sep 17 00:00:00 2001 From: Herman Semenov Date: Fri, 20 Oct 2023 10:02:12 +0000 Subject: [PATCH 23/48] ggml : fix rope + llama minor optimizations (#3560) * Minor fixes and fixed memleak * Using const auto references in range-based loop C++17 --- common/grammar-parser.cpp | 2 +- common/train.cpp | 2 +- ggml.c | 3 ++- llama.cpp | 7 +++---- 4 files changed, 7 insertions(+), 7 deletions(-) diff --git a/common/grammar-parser.cpp b/common/grammar-parser.cpp index 5a545a807..ff51cc803 100644 --- a/common/grammar-parser.cpp +++ b/common/grammar-parser.cpp @@ -399,7 +399,7 @@ namespace grammar_parser { void print_grammar(FILE * file, const parse_state & state) { try { std::map symbol_id_names; - for (auto kv : state.symbol_ids) { + for (const auto & kv : state.symbol_ids) { symbol_id_names[kv.second] = kv.first; } for (size_t i = 0, end = state.rules.size(); i < end; i++) { diff --git a/common/train.cpp b/common/train.cpp index 972eaefe0..154ca56e5 100644 --- a/common/train.cpp +++ b/common/train.cpp @@ -1425,7 +1425,7 @@ void train_opt_callback(void * vdata, int accum_step, float * sched, bool * canc int impr_plot = -(int)(1 + (opt->loss_before - opt->loss_after) * 10.0f + 0.5f); if (impr_plot > 0) impr_plot = 0; - if (std::isnan(opt->loss_before) || std::isnan(opt->loss_before)) impr_plot = 0; + if (std::isnan(opt->loss_before) || std::isnan(opt->loss_after)) impr_plot = 0; printf("%s: iter=%6d sample=%zu/%zu sched=%f loss=%f", __func__, opt->iter, std::min(1+train->shuffle_next_sample, train->shuffle_sample_count), train->shuffle_sample_count, *sched, opt->loss_after); diff --git a/ggml.c b/ggml.c index 630deb49d..ed157aab0 100644 --- a/ggml.c +++ b/ggml.c @@ -13537,7 +13537,7 @@ static void ggml_compute_forward_rope_f16( dst_data[n_dims] = GGML_FP32_TO_FP16(x2*cos_block_theta - x3*sin_block_theta); dst_data[n_dims/2*3] = GGML_FP32_TO_FP16(x2*sin_block_theta + x3*cos_block_theta); } - } if (!is_neox) { + } else if (!is_neox) { for (int64_t i0 = 0; i0 < ne0; i0 += 2) { const float cos_theta = cosf(theta); const float sin_theta = sinf(theta); @@ -19170,6 +19170,7 @@ void ggml_graph_export(const struct ggml_cgraph * cgraph, const char * fname) { if (idx == -1) { fprintf(stderr, "%s: failed to find tensor, arg = %d, node = %d\n", __func__, j, i); + fclose(fout); return; } diff --git a/llama.cpp b/llama.cpp index ed8766682..ec8ffad33 100644 --- a/llama.cpp +++ b/llama.cpp @@ -6324,7 +6324,6 @@ struct llm_tokenizer_bpe { llm_symbol sym; size_t char_len = std::min(word.size() - offset, (size_t) ::utf8_len(word[offset])); sym.text = word.c_str() + offset; - sym.n = 1; sym.n = char_len; offset += sym.n; sym.prev = index - 1; @@ -7054,7 +7053,7 @@ static std::vector llama_grammar_reject_candidates_for_ std::vector rejects; if (stack.empty()) { - for (auto tok : candidates) { + for (const auto & tok : candidates) { if (*tok.code_points != 0 || tok.partial_utf8.n_remain != 0) { rejects.push_back(tok); } @@ -7065,7 +7064,7 @@ static std::vector llama_grammar_reject_candidates_for_ const llama_grammar_element * stack_pos = stack.back(); std::vector next_candidates; - for (auto tok : candidates) { + for (const auto & tok : candidates) { if (*tok.code_points == 0) { // reached end of full codepoints in token, reject iff it ended in a partial sequence // that cannot satisfy this position in grammar @@ -7091,7 +7090,7 @@ static std::vector llama_grammar_reject_candidates_for_ llama_grammar_advance_stack(rules, stack_after, next_stacks); auto next_rejects = llama_grammar_reject_candidates(rules, next_stacks, next_candidates); - for (auto tok : next_rejects) { + for (const auto & tok : next_rejects) { rejects.push_back({ tok.index, tok.code_points - 1, tok.partial_utf8 }); } From a0edf73bda31c7c4e649e6f07c6fd30a729929cd Mon Sep 17 00:00:00 2001 From: Georgi Gerganov Date: Fri, 20 Oct 2023 13:06:10 +0300 Subject: [PATCH 24/48] server : fix uninitialized sampling context (close #3685) --- examples/server/server.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/examples/server/server.cpp b/examples/server/server.cpp index 28b3f3f53..0471528a3 100644 --- a/examples/server/server.cpp +++ b/examples/server/server.cpp @@ -198,7 +198,7 @@ struct llama_server_context llama_model *model = nullptr; llama_context *ctx = nullptr; gpt_params params; - llama_sampling_context *ctx_sampling; + llama_sampling_context *ctx_sampling = nullptr; int n_ctx; bool truncated = false; From 8cf19d60dc93809db8e51fedc811595eed9134c5 Mon Sep 17 00:00:00 2001 From: Qin Yue Chen <71813199+chenqiny@users.noreply.github.com> Date: Fri, 20 Oct 2023 06:19:40 -0500 Subject: [PATCH 25/48] gguf : support big endian platform (#3552) * check whether platform is 390x if yes->do not import immintrin.h * support s390x big endian * support --bigendian option for s390x 1. verified with baichuan7b-chat with float 16 on s390x 2. verified with baichuan7b-chat 3. verified with chinese-alpaca-2-13b-f16 * update format based on editor-config checker result * Update convert-baichuan-hf-to-gguf.py * 1. check in ggml.c if endianess is not match 2. update GGUF version 3. change get_pack_prefix to property 4. update information log * always use "GGUF" as beginng of GGUF file * Compare "GGUF" with file header char by char 1. Set GGUF_MAGIC to "GGUF" string instead of int value 2. Compare "GGUF" char by char to ensure its byte order 3. Move bytes swap code from convert.py to gguf.py write_tensor_data --------- Co-authored-by: Georgi Gerganov --- convert-baichuan-hf-to-gguf.py | 8 +- convert.py | 20 +++-- .../convert-llama2c-to-ggml.cpp | 2 +- ggml.c | 19 +++-- ggml.h | 5 +- gguf-py/gguf/gguf.py | 73 ++++++++++++------- gguf-py/pyproject.toml | 2 +- k_quants.c | 2 +- tests/test-double-float.cpp | 2 + 9 files changed, 84 insertions(+), 49 deletions(-) diff --git a/convert-baichuan-hf-to-gguf.py b/convert-baichuan-hf-to-gguf.py index 513a7516a..a1783f71f 100755 --- a/convert-baichuan-hf-to-gguf.py +++ b/convert-baichuan-hf-to-gguf.py @@ -76,6 +76,7 @@ def parse_args() -> argparse.Namespace: "ftype", type=int, choices=[0, 1], default=1, nargs='?', help="output format - use 0 for float32, 1 for float16", ) + parser.add_argument("--bigendian", action="store_true", help="model is executed on big endian machine") return parser.parse_args() args = parse_args() @@ -86,6 +87,11 @@ if not dir_model.is_dir(): print(f'Error: {args.model} is not a directory', file = sys.stderr) sys.exit(1) +endianess = gguf.GGUFEndian.LITTLE +if args.bigendian: + endianess = gguf.GGUFEndian.BIG +endianess_str = "Big Endian" if args.bigendian else "Little Endian" +print(f"gguf: Conversion Endianess {endianess}") # possible tensor data types # ftype == 0 -> float32 # ftype == 1 -> float16 @@ -113,7 +119,7 @@ if hparams["architectures"][0] != "BaichuanForCausalLM": num_parts = count_model_parts(dir_model) print(f"num_parts:{num_parts}\n") ARCH=gguf.MODEL_ARCH.BAICHUAN -gguf_writer = gguf.GGUFWriter(fname_out, gguf.MODEL_ARCH_NAMES[ARCH]) +gguf_writer = gguf.GGUFWriter(fname_out, gguf.MODEL_ARCH_NAMES[ARCH], endianess=endianess) print("gguf: get model metadata") diff --git a/convert.py b/convert.py index e9b08d344..24da25efc 100755 --- a/convert.py +++ b/convert.py @@ -803,8 +803,8 @@ def check_vocab_size(params: Params, vocab: Vocab) -> None: class OutputFile: - def __init__(self, fname_out: Path) -> None: - self.gguf = gguf.GGUFWriter(fname_out, gguf.MODEL_ARCH_NAMES[ARCH]) + def __init__(self, fname_out: Path, endianess:gguf.GGUFEndian=gguf.GGUFEndian.LITTLE) -> None: + self.gguf = gguf.GGUFWriter(fname_out, gguf.MODEL_ARCH_NAMES[ARCH], endianess=endianess) def add_meta_arch(self, params: Params) -> None: name = "LLaMA" @@ -875,10 +875,10 @@ class OutputFile: self.gguf.close() @staticmethod - def write_vocab_only(fname_out: Path, params: Params, vocab: Vocab, svocab: gguf.SpecialVocab) -> None: + def write_vocab_only(fname_out: Path, params: Params, vocab: Vocab, svocab: gguf.SpecialVocab, endianess:gguf.GGUFEndian=gguf.GGUFEndian.LITTLE) -> None: check_vocab_size(params, vocab) - of = OutputFile(fname_out) + of = OutputFile(fname_out, endianess=endianess) # meta data of.add_meta_arch(params) @@ -903,10 +903,10 @@ class OutputFile: return dt.quantize(arr) @staticmethod - def write_all(fname_out: Path, ftype: GGMLFileType, params: Params, model: LazyModel, vocab: Vocab, svocab: gguf.SpecialVocab, concurrency: int = DEFAULT_CONCURRENCY) -> None: + def write_all(fname_out: Path, ftype: GGMLFileType, params: Params, model: LazyModel, vocab: Vocab, svocab: gguf.SpecialVocab, concurrency: int = DEFAULT_CONCURRENCY, endianess=gguf.GGUFEndian.LITTLE) -> None: check_vocab_size(params, vocab) - of = OutputFile(fname_out) + of = OutputFile(fname_out, endianess=endianess) # meta data of.add_meta_arch(params) @@ -1123,8 +1123,9 @@ def main(args_in: list[str] | None = None) -> None: parser.add_argument("--vocabtype", choices=["spm", "bpe"], help="vocab format (default: spm)", default="spm") parser.add_argument("--ctx", type=int, help="model training context (default: based on input)") parser.add_argument("--concurrency", type=int, help=f"concurrency used for conversion (default: {DEFAULT_CONCURRENCY})", default = DEFAULT_CONCURRENCY) - args = parser.parse_args(args_in) + parser.add_argument("--bigendian", action="store_true", help="model is executed on big endian machine") + args = parser.parse_args(args_in) if args.dump_single: model_plus = lazy_load_file(args.model) do_dump_model(model_plus) @@ -1138,6 +1139,9 @@ def main(args_in: list[str] | None = None) -> None: if args.dump: do_dump_model(model_plus) return + endianess = gguf.GGUFEndian.LITTLE + if args.bigendian: + endianess = gguf.GGUFEndian.BIG params = Params.load(model_plus) if params.n_ctx == -1: @@ -1185,7 +1189,7 @@ def main(args_in: list[str] | None = None) -> None: params.ftype = ftype print(f"Writing {outfile}, format {ftype}") - OutputFile.write_all(outfile, ftype, params, model, vocab, special_vocab, concurrency = args.concurrency) + OutputFile.write_all(outfile, ftype, params, model, vocab, special_vocab, concurrency = args.concurrency, endianess=endianess) print(f"Wrote {outfile}") diff --git a/examples/convert-llama2c-to-ggml/convert-llama2c-to-ggml.cpp b/examples/convert-llama2c-to-ggml/convert-llama2c-to-ggml.cpp index c291f0adf..cae3bf3c3 100644 --- a/examples/convert-llama2c-to-ggml/convert-llama2c-to-ggml.cpp +++ b/examples/convert-llama2c-to-ggml/convert-llama2c-to-ggml.cpp @@ -536,7 +536,7 @@ static bool is_ggml_file(const char * filename) { if (file.size < 4) { return false; } - uint32_t magic = file.read_u32(); + std::string magic = file.read_string(4); return magic == GGUF_MAGIC; } diff --git a/ggml.c b/ggml.c index ed157aab0..49f3b7aba 100644 --- a/ggml.c +++ b/ggml.c @@ -20845,7 +20845,7 @@ struct gguf_kv { }; struct gguf_header { - uint32_t magic; + char magic[4]; uint32_t version; uint64_t n_tensors; // GGUFv2 uint64_t n_kv; // GGUFv2 @@ -20915,7 +20915,7 @@ static bool gguf_fread_str_v1(FILE * file, struct gguf_str * p, size_t * offset) struct gguf_context * gguf_init_empty(void) { struct gguf_context * ctx = GGML_ALIGNED_MALLOC(sizeof(struct gguf_context)); - ctx->header.magic = GGUF_MAGIC; + memcpy(ctx->header.magic, GGUF_MAGIC, sizeof(ctx->header.magic)); ctx->header.version = GGUF_VERSION; ctx->header.n_tensors = 0; ctx->header.n_kv = 0; @@ -20941,16 +20941,18 @@ struct gguf_context * gguf_init_from_file(const char * fname, struct gguf_init_p // offset from start of file size_t offset = 0; - uint32_t magic = 0; + char magic[4]; // check the magic before making allocations { gguf_fread_el(file, &magic, sizeof(magic), &offset); - if (magic != GGUF_MAGIC) { - fprintf(stderr, "%s: invalid magic number %08x\n", __func__, magic); - fclose(file); - return NULL; + for (uint32_t i = 0; i < sizeof(magic); i++) { + if (magic[i] != GGUF_MAGIC[i]) { + fprintf(stderr, "%s: invalid magic characters %s.\n", __func__, magic); + fclose(file); + return NULL; + } } } @@ -20960,7 +20962,8 @@ struct gguf_context * gguf_init_from_file(const char * fname, struct gguf_init_p // read the header { - ctx->header.magic = magic; + strncpy(ctx->header.magic, magic, 4); + ctx->kv = NULL; ctx->infos = NULL; diff --git a/ggml.h b/ggml.h index 6e35888e9..16aaf169e 100644 --- a/ggml.h +++ b/ggml.h @@ -231,8 +231,9 @@ #define GGML_EXIT_SUCCESS 0 #define GGML_EXIT_ABORTED 1 -#define GGUF_MAGIC 0x46554747 // "GGUF" -#define GGUF_VERSION 2 +#define GGUF_MAGIC "GGUF" + +#define GGUF_VERSION 3 #define GGUF_DEFAULT_ALIGNMENT 32 diff --git a/gguf-py/gguf/gguf.py b/gguf-py/gguf/gguf.py index 557ce7ac0..072c839c4 100644 --- a/gguf-py/gguf/gguf.py +++ b/gguf-py/gguf/gguf.py @@ -19,9 +19,10 @@ import numpy as np # GGUF_MAGIC = 0x46554747 -GGUF_VERSION = 2 +GGUF_VERSION = 3 GGUF_DEFAULT_ALIGNMENT = 32 + # general KEY_GENERAL_ARCHITECTURE = "general.architecture" KEY_GENERAL_QUANTIZATION_VERSION = "general.quantization_version" @@ -597,6 +598,10 @@ class GGMLQuantizationType(IntEnum): Q6_K = 14 Q8_K = 15 +class GGUFEndian(IntEnum): + LITTLE = 0 + BIG = 1 + class GGUFValueType(IntEnum): UINT8 = 0 @@ -644,18 +649,41 @@ class GGUFWriter: temp_file: tempfile.SpooledTemporaryFile[bytes] | None = None tensors: list[tuple[np.ndarray[Any, Any], int]] - def __init__(self, path: os.PathLike[str] | str, arch: str, use_temp_file = True): + @property + def pack_prefix(self): + if self.endianess==GGUFEndian.LITTLE: + return "<" + else: + return ">" + + def __init__(self, path: os.PathLike[str] | str, arch: str, use_temp_file = True, endianess=GGUFEndian.LITTLE): self.fout = open(path, "wb") self.arch = arch + self.endianess = endianess + self._simple_value_packing = { + GGUFValueType.UINT8: f"{self.pack_prefix}B", + GGUFValueType.INT8: f"{self.pack_prefix}b", + GGUFValueType.UINT16: f"{self.pack_prefix}H", + GGUFValueType.INT16: f"{self.pack_prefix}h", + GGUFValueType.UINT32: f"{self.pack_prefix}I", + GGUFValueType.INT32: f"{self.pack_prefix}i", + GGUFValueType.FLOAT32: f"{self.pack_prefix}f", + GGUFValueType.UINT64: f"{self.pack_prefix}Q", + GGUFValueType.INT64: f"{self.pack_prefix}q", + GGUFValueType.FLOAT64: f"{self.pack_prefix}d", + GGUFValueType.BOOL: "?" , + } self.add_architecture() self.use_temp_file = use_temp_file self.tensors = [] + endianess_str = "Big Endian" if self.endianess == GGUFEndian.BIG else "Little Endian" + print(f"This gguf file is for {endianess_str} only") def write_header_to_file(self): self.fout.write(struct.pack(" 0: ltype = GGUFValueType.get_type(val[0]) if not all(GGUFValueType.get_type(i) is ltype for i in val[1:]): raise ValueError("All items in a GGUF array should be of the same type") - self.kv_data += struct.pack(""] packages = [ diff --git a/k_quants.c b/k_quants.c index e168a87bb..801941fbe 100644 --- a/k_quants.c +++ b/k_quants.c @@ -46,7 +46,7 @@ inline static int32_t vaddvq_s32(int32x4_t v) { #if defined(_MSC_VER) || defined(__MINGW32__) #include #else -#if !defined(__riscv) +#if !defined(__riscv) && !defined(__s390__) #include #endif #endif diff --git a/tests/test-double-float.cpp b/tests/test-double-float.cpp index b506f273f..afd7bf77f 100644 --- a/tests/test-double-float.cpp +++ b/tests/test-double-float.cpp @@ -4,7 +4,9 @@ #undef NDEBUG #include +#if !defined(__riscv) && !defined(__s390__) #include +#endif #include #include #include From d1031cf49c3b958b915fd558e23453471c29ac33 Mon Sep 17 00:00:00 2001 From: Georgi Gerganov Date: Fri, 20 Oct 2023 21:07:23 +0300 Subject: [PATCH 26/48] sampling : refactor init to use llama_sampling_params (#3696) * sampling : refactor init to use llama_sampling_params * llama : combine repetition, frequency and presence penalties in 1 call * examples : remove embd-input and gptneox-wip * sampling : rename penalty params + reduce size of "prev" vector * sampling : add llama_sampling_print helper * sampling : hide prev behind API and apply #3661 ggml-ci --- Makefile | 9 +- README.md | 1 - common/common.cpp | 69 +- common/common.h | 3 +- common/sampling.cpp | 73 +- common/sampling.h | 32 +- examples/CMakeLists.txt | 32 +- examples/embd-input/.gitignore | 4 - examples/embd-input/CMakeLists.txt | 17 - examples/embd-input/README.md | 63 -- examples/embd-input/embd-input-lib.cpp | 221 ----- examples/embd-input/embd-input-test.cpp | 35 - examples/embd-input/embd-input.h | 27 - examples/embd-input/embd_input.py | 72 -- examples/embd-input/llava.py | 71 -- examples/embd-input/minigpt4.py | 129 --- examples/embd-input/panda_gpt.py | 99 -- examples/gptneox-wip/cmpnct_gpt2bpe.hpp | 1133 ----------------------- examples/gptneox-wip/falcon-main.cpp | 1111 ---------------------- examples/gptneox-wip/gptneox-main.cpp | 1083 ---------------------- examples/infill/CMakeLists.txt | 2 +- examples/infill/infill.cpp | 67 +- examples/llava/llava-utils.h | 58 +- examples/main/main.cpp | 28 +- examples/parallel/parallel.cpp | 4 +- examples/server/server.cpp | 227 +++-- examples/speculative/speculative.cpp | 12 +- llama.cpp | 94 +- llama.h | 16 +- tests/test-sampling.cpp | 75 +- 30 files changed, 365 insertions(+), 4502 deletions(-) delete mode 100644 examples/embd-input/.gitignore delete mode 100644 examples/embd-input/CMakeLists.txt delete mode 100644 examples/embd-input/README.md delete mode 100644 examples/embd-input/embd-input-lib.cpp delete mode 100644 examples/embd-input/embd-input-test.cpp delete mode 100644 examples/embd-input/embd-input.h delete mode 100755 examples/embd-input/embd_input.py delete mode 100755 examples/embd-input/llava.py delete mode 100755 examples/embd-input/minigpt4.py delete mode 100755 examples/embd-input/panda_gpt.py delete mode 100644 examples/gptneox-wip/cmpnct_gpt2bpe.hpp delete mode 100644 examples/gptneox-wip/falcon-main.cpp delete mode 100644 examples/gptneox-wip/gptneox-main.cpp diff --git a/Makefile b/Makefile index 04104bee8..325ae747b 100644 --- a/Makefile +++ b/Makefile @@ -1,7 +1,7 @@ # Define the default target now so that it is always the first target BUILD_TARGETS = \ main quantize quantize-stats perplexity embedding vdot q8dot train-text-from-scratch convert-llama2c-to-ggml \ - simple batched batched-bench save-load-state server embd-input-test gguf llama-bench llava baby-llama beam-search \ + simple batched batched-bench save-load-state server gguf llama-bench llava baby-llama beam-search \ speculative infill benchmark-matmult parallel finetune export-lora tests/test-c.o # Binaries only useful for tests @@ -608,13 +608,6 @@ save-load-state: examples/save-load-state/save-load-state.cpp build-info.h ggml. server: examples/server/server.cpp examples/server/httplib.h examples/server/json.hpp examples/server/index.html.hpp examples/server/index.js.hpp examples/server/completion.js.hpp build-info.h ggml.o llama.o $(COMMON_DEPS) grammar-parser.o $(OBJS) $(CXX) $(CXXFLAGS) -Iexamples/server $(filter-out %.h,$(filter-out %.hpp,$^)) -o $@ $(LDFLAGS) $(LWINSOCK2) -$(LIB_PRE)embdinput$(DSO_EXT): examples/embd-input/embd-input.h examples/embd-input/embd-input-lib.cpp build-info.h ggml.o llama.o $(COMMON_DEPS) $(OBJS) - $(CXX) --shared $(CXXFLAGS) $(filter-out %.h,$(filter-out %.hpp,$^)) -o $@ $(LDFLAGS) - - -embd-input-test: $(LIB_PRE)embdinput$(DSO_EXT) examples/embd-input/embd-input-test.cpp build-info.h ggml.o llama.o $(COMMON_DEPS) $(OBJS) - $(CXX) $(CXXFLAGS) $(filter-out %$(DSO_EXT),$(filter-out %.h,$(filter-out %.hpp,$^))) -o $@ $(LDFLAGS) -L. -lembdinput - gguf: examples/gguf/gguf.cpp ggml.o llama.o $(OBJS) $(CXX) $(CXXFLAGS) $(filter-out %.h,$^) -o $@ $(LDFLAGS) diff --git a/README.md b/README.md index ce63c6f0e..49bb556a8 100644 --- a/README.md +++ b/README.md @@ -962,7 +962,6 @@ docker run --gpus all -v /path/to/models:/models local/llama.cpp:light-cuda -m / - [main](./examples/main/README.md) - [server](./examples/server/README.md) -- [embd-input](./examples/embd-input/README.md) - [jeopardy](./examples/jeopardy/README.md) - [BLIS](./docs/BLIS.md) - [Performance troubleshooting](./docs/token_generation_performance_tips.md) diff --git a/common/common.cpp b/common/common.cpp index ce14d66b8..2ef902bd5 100644 --- a/common/common.cpp +++ b/common/common.cpp @@ -107,7 +107,7 @@ bool gpt_params_parse(int argc, char ** argv, gpt_params & params) { std::string arg; gpt_params default_params; const std::string arg_prefix = "--"; - llama_sampling_params & sparams = params.sampling_params; + llama_sampling_params & sparams = params.sparams; for (int i = 1; i < argc; i++) { arg = argv[i]; @@ -241,25 +241,26 @@ bool gpt_params_parse(int argc, char ** argv, gpt_params & params) { invalid_param = true; break; } - sparams.repeat_last_n = std::stoi(argv[i]); + sparams.penalty_last_n = std::stoi(argv[i]); + sparams.n_prev = std::max(sparams.n_prev, sparams.penalty_last_n); } else if (arg == "--repeat-penalty") { if (++i >= argc) { invalid_param = true; break; } - sparams.repeat_penalty = std::stof(argv[i]); + sparams.penalty_repeat = std::stof(argv[i]); } else if (arg == "--frequency-penalty") { if (++i >= argc) { invalid_param = true; break; } - sparams.frequency_penalty = std::stof(argv[i]); + sparams.penalty_freq = std::stof(argv[i]); } else if (arg == "--presence-penalty") { if (++i >= argc) { invalid_param = true; break; } - sparams.presence_penalty = std::stof(argv[i]); + sparams.penalty_present = std::stof(argv[i]); } else if (arg == "--mirostat") { if (++i >= argc) { invalid_param = true; @@ -572,7 +573,7 @@ bool gpt_params_parse(int argc, char ** argv, gpt_params & params) { invalid_param = true; break; } - params.grammar = argv[i]; + sparams.grammar = argv[i]; } else if (arg == "--grammar-file") { if (++i >= argc) { invalid_param = true; @@ -587,7 +588,7 @@ bool gpt_params_parse(int argc, char ** argv, gpt_params & params) { std::copy( std::istreambuf_iterator(file), std::istreambuf_iterator(), - std::back_inserter(params.grammar) + std::back_inserter(sparams.grammar) ); #ifndef LOG_DISABLE_LOGS // Parse args for logging parameters @@ -640,7 +641,7 @@ bool gpt_params_parse(int argc, char ** argv, gpt_params & params) { } void gpt_print_usage(int /*argc*/, char ** argv, const gpt_params & params) { - const llama_sampling_params & sparams = params.sampling_params; + const llama_sampling_params & sparams = params.sparams; printf("usage: %s [options]\n", argv[0]); printf("\n"); @@ -678,10 +679,10 @@ void gpt_print_usage(int /*argc*/, char ** argv, const gpt_params & params) { printf(" --top-p N top-p sampling (default: %.1f, 1.0 = disabled)\n", (double)sparams.top_p); printf(" --tfs N tail free sampling, parameter z (default: %.1f, 1.0 = disabled)\n", (double)sparams.tfs_z); printf(" --typical N locally typical sampling, parameter p (default: %.1f, 1.0 = disabled)\n", (double)sparams.typical_p); - printf(" --repeat-last-n N last n tokens to consider for penalize (default: %d, 0 = disabled, -1 = ctx_size)\n", sparams.repeat_last_n); - printf(" --repeat-penalty N penalize repeat sequence of tokens (default: %.1f, 1.0 = disabled)\n", (double)sparams.repeat_penalty); - printf(" --presence-penalty N repeat alpha presence penalty (default: %.1f, 0.0 = disabled)\n", (double)sparams.presence_penalty); - printf(" --frequency-penalty N repeat alpha frequency penalty (default: %.1f, 0.0 = disabled)\n", (double)sparams.frequency_penalty); + printf(" --repeat-last-n N last n tokens to consider for penalize (default: %d, 0 = disabled, -1 = ctx_size)\n", sparams.penalty_last_n); + printf(" --repeat-penalty N penalize repeat sequence of tokens (default: %.1f, 1.0 = disabled)\n", (double)sparams.penalty_repeat); + printf(" --presence-penalty N repeat alpha presence penalty (default: %.1f, 0.0 = disabled)\n", (double)sparams.penalty_present); + printf(" --frequency-penalty N repeat alpha frequency penalty (default: %.1f, 0.0 = disabled)\n", (double)sparams.penalty_freq); printf(" --mirostat N use Mirostat sampling.\n"); printf(" Top K, Nucleus, Tail Free and Locally Typical samplers are ignored if used.\n"); printf(" (default: %d, 0 = disabled, 1 = Mirostat, 2 = Mirostat 2.0)\n", sparams.mirostat); @@ -878,7 +879,7 @@ std::tuple llama_init_from_gpt_par } if (params.ignore_eos) { - params.sampling_params.logit_bias[llama_token_eos(lctx)] = -INFINITY; + params.sparams.logit_bias[llama_token_eos(lctx)] = -INFINITY; } { @@ -1123,28 +1124,28 @@ std::string get_sortable_timestamp() { void dump_non_result_info_yaml(FILE * stream, const gpt_params & params, const llama_context * lctx, const std::string & timestamp, const std::vector & prompt_tokens, const char * model_desc) { - const llama_sampling_params & sparams = params.sampling_params; + const llama_sampling_params & sparams = params.sparams; fprintf(stream, "build_commit: %s\n", BUILD_COMMIT); fprintf(stream, "build_number: %d\n", BUILD_NUMBER); - fprintf(stream, "cpu_has_arm_fma: %s\n", ggml_cpu_has_arm_fma() ? "true" : "false"); - fprintf(stream, "cpu_has_avx: %s\n", ggml_cpu_has_avx() ? "true" : "false"); - fprintf(stream, "cpu_has_avx2: %s\n", ggml_cpu_has_avx2() ? "true" : "false"); - fprintf(stream, "cpu_has_avx512: %s\n", ggml_cpu_has_avx512() ? "true" : "false"); + fprintf(stream, "cpu_has_arm_fma: %s\n", ggml_cpu_has_arm_fma() ? "true" : "false"); + fprintf(stream, "cpu_has_avx: %s\n", ggml_cpu_has_avx() ? "true" : "false"); + fprintf(stream, "cpu_has_avx2: %s\n", ggml_cpu_has_avx2() ? "true" : "false"); + fprintf(stream, "cpu_has_avx512: %s\n", ggml_cpu_has_avx512() ? "true" : "false"); fprintf(stream, "cpu_has_avx512_vbmi: %s\n", ggml_cpu_has_avx512_vbmi() ? "true" : "false"); fprintf(stream, "cpu_has_avx512_vnni: %s\n", ggml_cpu_has_avx512_vnni() ? "true" : "false"); - fprintf(stream, "cpu_has_blas: %s\n", ggml_cpu_has_blas() ? "true" : "false"); - fprintf(stream, "cpu_has_cublas: %s\n", ggml_cpu_has_cublas() ? "true" : "false"); - fprintf(stream, "cpu_has_clblast: %s\n", ggml_cpu_has_clblast() ? "true" : "false"); - fprintf(stream, "cpu_has_fma: %s\n", ggml_cpu_has_fma() ? "true" : "false"); - fprintf(stream, "cpu_has_gpublas: %s\n", ggml_cpu_has_gpublas() ? "true" : "false"); - fprintf(stream, "cpu_has_neon: %s\n", ggml_cpu_has_neon() ? "true" : "false"); - fprintf(stream, "cpu_has_f16c: %s\n", ggml_cpu_has_f16c() ? "true" : "false"); - fprintf(stream, "cpu_has_fp16_va: %s\n", ggml_cpu_has_fp16_va() ? "true" : "false"); - fprintf(stream, "cpu_has_wasm_simd: %s\n", ggml_cpu_has_wasm_simd() ? "true" : "false"); - fprintf(stream, "cpu_has_blas: %s\n", ggml_cpu_has_blas() ? "true" : "false"); - fprintf(stream, "cpu_has_sse3: %s\n", ggml_cpu_has_sse3() ? "true" : "false"); - fprintf(stream, "cpu_has_vsx: %s\n", ggml_cpu_has_vsx() ? "true" : "false"); + fprintf(stream, "cpu_has_blas: %s\n", ggml_cpu_has_blas() ? "true" : "false"); + fprintf(stream, "cpu_has_cublas: %s\n", ggml_cpu_has_cublas() ? "true" : "false"); + fprintf(stream, "cpu_has_clblast: %s\n", ggml_cpu_has_clblast() ? "true" : "false"); + fprintf(stream, "cpu_has_fma: %s\n", ggml_cpu_has_fma() ? "true" : "false"); + fprintf(stream, "cpu_has_gpublas: %s\n", ggml_cpu_has_gpublas() ? "true" : "false"); + fprintf(stream, "cpu_has_neon: %s\n", ggml_cpu_has_neon() ? "true" : "false"); + fprintf(stream, "cpu_has_f16c: %s\n", ggml_cpu_has_f16c() ? "true" : "false"); + fprintf(stream, "cpu_has_fp16_va: %s\n", ggml_cpu_has_fp16_va() ? "true" : "false"); + fprintf(stream, "cpu_has_wasm_simd: %s\n", ggml_cpu_has_wasm_simd() ? "true" : "false"); + fprintf(stream, "cpu_has_blas: %s\n", ggml_cpu_has_blas() ? "true" : "false"); + fprintf(stream, "cpu_has_sse3: %s\n", ggml_cpu_has_sse3() ? "true" : "false"); + fprintf(stream, "cpu_has_vsx: %s\n", ggml_cpu_has_vsx() ? "true" : "false"); #ifdef NDEBUG fprintf(stream, "debug: false\n"); @@ -1178,8 +1179,8 @@ void dump_non_result_info_yaml(FILE * stream, const gpt_params & params, const l fprintf(stream, "ctx_size: %d # default: 512\n", params.n_ctx); fprintf(stream, "escape: %s # default: false\n", params.escape ? "true" : "false"); fprintf(stream, "file: # never logged, see prompt instead. Can still be specified for input.\n"); - fprintf(stream, "frequency_penalty: %f # default: 0.0 \n", sparams.frequency_penalty); - dump_string_yaml_multiline(stream, "grammar", params.grammar.c_str()); + fprintf(stream, "frequency_penalty: %f # default: 0.0 \n", sparams.penalty_freq); + dump_string_yaml_multiline(stream, "grammar", sparams.grammar.c_str()); fprintf(stream, "grammar-file: # never logged, see grammar instead. Can still be specified for input.\n"); fprintf(stream, "hellaswag: %s # default: false\n", params.hellaswag ? "true" : "false"); fprintf(stream, "hellaswag_tasks: %zu # default: 400\n", params.hellaswag_tasks); @@ -1238,14 +1239,14 @@ void dump_non_result_info_yaml(FILE * stream, const gpt_params & params, const l fprintf(stream, "numa: %s # default: false\n", params.numa ? "true" : "false"); fprintf(stream, "ppl_output_type: %d # default: 0\n", params.ppl_output_type); fprintf(stream, "ppl_stride: %d # default: 0\n", params.ppl_stride); - fprintf(stream, "presence_penalty: %f # default: 0.0\n", sparams.presence_penalty); + fprintf(stream, "presence_penalty: %f # default: 0.0\n", sparams.penalty_present); dump_string_yaml_multiline(stream, "prompt", params.prompt.c_str()); fprintf(stream, "prompt_cache: %s\n", params.path_prompt_cache.c_str()); fprintf(stream, "prompt_cache_all: %s # default: false\n", params.prompt_cache_all ? "true" : "false"); fprintf(stream, "prompt_cache_ro: %s # default: false\n", params.prompt_cache_ro ? "true" : "false"); dump_vector_int_yaml(stream, "prompt_tokens", prompt_tokens); fprintf(stream, "random_prompt: %s # default: false\n", params.random_prompt ? "true" : "false"); - fprintf(stream, "repeat_penalty: %f # default: 1.1\n", sparams.repeat_penalty); + fprintf(stream, "repeat_penalty: %f # default: 1.1\n", sparams.penalty_repeat); fprintf(stream, "reverse_prompt:\n"); for (std::string ap : params.antiprompt) { diff --git a/common/common.h b/common/common.h index 65d3d20cd..84523a4fb 100644 --- a/common/common.h +++ b/common/common.h @@ -56,7 +56,7 @@ struct gpt_params { float rope_freq_scale = 0.0f; // RoPE frequency scaling factor // // sampling parameters - struct llama_sampling_params sampling_params; + struct llama_sampling_params sparams; std::string model = "models/7B/ggml-model-f16.gguf"; // model path std::string model_draft = ""; // draft model for speculative decoding @@ -66,7 +66,6 @@ struct gpt_params { std::string path_prompt_cache = ""; // path to file for saving/loading prompt eval state std::string input_prefix = ""; // string to prefix user inputs with std::string input_suffix = ""; // string to suffix user inputs with - std::string grammar = ""; // optional BNF-like grammar to constrain sampling std::vector antiprompt; // string upon seeing which more user input is prompted std::string logdir = ""; // directory in which to save YAML log files diff --git a/common/sampling.cpp b/common/sampling.cpp index 0b2466581..6f0af3c4a 100644 --- a/common/sampling.cpp +++ b/common/sampling.cpp @@ -1,9 +1,9 @@ #include "sampling.h" -struct llama_sampling_context * llama_sampling_init(const struct gpt_params & params) { +struct llama_sampling_context * llama_sampling_init(const struct llama_sampling_params & params) { struct llama_sampling_context * result = new llama_sampling_context(); - result->params = params.sampling_params; + result->params = params; result->grammar = nullptr; // if there is a grammar, parse it @@ -23,7 +23,7 @@ struct llama_sampling_context * llama_sampling_init(const struct gpt_params & pa grammar_rules.size(), result->parsed_grammar.symbol_ids.at("root")); } - result->prev.resize(params.n_ctx); + result->prev.resize(params.n_prev); return result; } @@ -66,25 +66,56 @@ void llama_sampling_cp(llama_sampling_context * src, llama_sampling_context * ds dst->prev = src->prev; } +llama_token llama_sampling_last(llama_sampling_context * ctx) { + return ctx->prev.back(); +} + +std::string llama_sampling_prev_str(llama_sampling_context * ctx_sampling, llama_context * ctx_main, int n) { + const int size = ctx_sampling->prev.size(); + + n = std::min(n, size); + + std::string result; + + for (int i = size - n; i < size; i++) { + result += llama_token_to_piece(ctx_main, ctx_sampling->prev[i]); + } + + return result; +} + +std::string llama_sampling_print(const llama_sampling_params & params) { + char result[1024]; + + snprintf(result, sizeof(result), + "\trepeat_last_n = %d, repeat_penalty = %.3f, frequency_penalty = %.3f, presence_penalty = %.3f\n" + "\ttop_k = %d, tfs_z = %.3f, top_p = %.3f, typical_p = %.3f, temp = %.3f\n" + "\tmirostat = %d, mirostat_lr = %.3f, mirostat_ent = %.3f", + params.penalty_last_n, params.penalty_repeat, params.penalty_freq, params.penalty_present, + params.top_k, params.tfs_z, params.top_p, params.typical_p, params.temp, + params.mirostat, params.mirostat_eta, params.mirostat_tau); + + return std::string(result); +} + llama_token llama_sampling_sample( struct llama_sampling_context * ctx_sampling, struct llama_context * ctx_main, struct llama_context * ctx_cfg, const int idx) { - const int n_ctx = llama_n_ctx(ctx_main); - const int n_vocab = llama_n_vocab(llama_get_model(ctx_main)); - const llama_sampling_params & params = ctx_sampling->params; + const int n_vocab = llama_n_vocab(llama_get_model(ctx_main)); + const float temp = params.temp; const int32_t top_k = params.top_k <= 0 ? n_vocab : params.top_k; const float top_p = params.top_p; const float tfs_z = params.tfs_z; const float typical_p = params.typical_p; - const int32_t repeat_last_n = params.repeat_last_n < 0 ? n_ctx : params.repeat_last_n; - const float repeat_penalty = params.repeat_penalty; - const float alpha_presence = params.presence_penalty; - const float alpha_frequency = params.frequency_penalty; + const int32_t penalty_last_n = params.penalty_last_n < 0 ? params.n_prev : params.penalty_last_n; + const float penalty_repeat = params.penalty_repeat; + const float penalty_freq = params.penalty_freq; + const float penalty_present = params.penalty_present; const int mirostat = params.mirostat; const float mirostat_tau = params.mirostat_tau; const float mirostat_eta = params.mirostat_eta; @@ -97,7 +128,7 @@ llama_token llama_sampling_sample( float * logits = llama_get_logits_ith(ctx_main, idx); - // Apply params.logit_bias map + // apply params.logit_bias map for (auto it = params.logit_bias.begin(); it != params.logit_bias.end(); it++) { logits[it->first] += it->second; } @@ -117,14 +148,10 @@ llama_token llama_sampling_sample( // apply penalties if (!prev.empty()) { const float nl_logit = logits[llama_token_nl(ctx_main)]; - const int last_n_repeat = std::min(std::min((int)prev.size(), repeat_last_n), n_ctx); - llama_sample_repetition_penalty(ctx_main, &cur_p, - prev.data() + prev.size() - last_n_repeat, - last_n_repeat, repeat_penalty); - llama_sample_frequency_and_presence_penalties(ctx_main, &cur_p, - prev.data() + prev.size() - last_n_repeat, - last_n_repeat, alpha_frequency, alpha_presence); + llama_sample_repetition_penalties(ctx_main, &cur_p, + prev.data() + prev.size() - penalty_last_n, + penalty_last_n, penalty_repeat, penalty_freq, penalty_present); if (!penalize_nl) { for (size_t idx = 0; idx < cur_p.size; idx++) { @@ -141,7 +168,7 @@ llama_token llama_sampling_sample( } if (temp <= 0) { - // Greedy sampling + // greedy sampling id = llama_sample_token_greedy(ctx_main, &cur_p); } else { if (mirostat == 1) { @@ -152,8 +179,9 @@ llama_token llama_sampling_sample( llama_sample_temp(ctx_main, &cur_p, temp); id = llama_sample_token_mirostat_v2(ctx_main, &cur_p, mirostat_tau, mirostat_eta, &ctx_sampling->mirostat_mu); } else { - // Temperature sampling + // temperature sampling size_t min_keep = std::max(1, params.n_probs); + llama_sample_top_k (ctx_main, &cur_p, top_k, min_keep); llama_sample_tail_free(ctx_main, &cur_p, tfs_z, min_keep); llama_sample_typical (ctx_main, &cur_p, typical_p, min_keep); @@ -183,11 +211,12 @@ llama_token llama_sampling_sample( void llama_sampling_accept( struct llama_sampling_context * ctx_sampling, struct llama_context * ctx_main, - llama_token id) { + llama_token id, + bool apply_grammar) { ctx_sampling->prev.erase(ctx_sampling->prev.begin()); ctx_sampling->prev.push_back(id); - if (ctx_sampling->grammar != NULL) { + if (ctx_sampling->grammar != NULL && apply_grammar) { llama_grammar_accept_token(ctx_main, ctx_sampling->grammar, id); } } diff --git a/common/sampling.h b/common/sampling.h index 50afcbc12..62ea6d4cf 100644 --- a/common/sampling.h +++ b/common/sampling.h @@ -10,30 +10,30 @@ // sampling parameters typedef struct llama_sampling_params { + int32_t n_prev = 64; // number of previous tokens to remember + int32_t n_probs = 0; // if greater than 0, output the probabilities of top n_probs tokens. int32_t top_k = 40; // <= 0 to use vocab size float top_p = 0.95f; // 1.0 = disabled float tfs_z = 1.00f; // 1.0 = disabled float typical_p = 1.00f; // 1.0 = disabled float temp = 0.80f; // 1.0 = disabled - float repeat_penalty = 1.10f; // 1.0 = disabled - int32_t repeat_last_n = 64; // last n tokens to penalize (0 = disable penalty, -1 = context size) - float frequency_penalty = 0.00f; // 0.0 = disabled - float presence_penalty = 0.00f; // 0.0 = disabled + int32_t penalty_last_n = 64; // last n tokens to penalize (0 = disable penalty, -1 = context size) + float penalty_repeat = 1.10f; // 1.0 = disabled + float penalty_freq = 0.00f; // 0.0 = disabled + float penalty_present = 0.00f; // 0.0 = disabled int32_t mirostat = 0; // 0 = disabled, 1 = mirostat, 2 = mirostat 2.0 float mirostat_tau = 5.00f; // target entropy float mirostat_eta = 0.10f; // learning rate - bool penalize_nl = true; // consider newlines as a repeatable token - int32_t n_probs = 0; // if greater than 0, output the probabilities of top n_probs tokens. + std::string grammar; // optional BNF-like grammar to constrain sampling // Classifier-Free Guidance // https://arxiv.org/abs/2306.17806 - std::string cfg_negative_prompt; // string to help guidance - float cfg_scale = 1.f; // How strong is guidance + std::string cfg_negative_prompt; // string to help guidance + float cfg_scale = 1.f; // how strong is guidance std::unordered_map logit_bias; // logit bias for specific tokens - } llama_sampling_params; // general sampler context @@ -58,7 +58,7 @@ struct llama_sampling_context { #include "common.h" // Create a new sampling context instance. -struct llama_sampling_context * llama_sampling_init(const struct gpt_params & params); +struct llama_sampling_context * llama_sampling_init(const struct llama_sampling_params & params); void llama_sampling_free(struct llama_sampling_context * ctx); @@ -70,6 +70,15 @@ void llama_sampling_reset(llama_sampling_context * ctx); // Copy the sampler context void llama_sampling_cp(llama_sampling_context * src, llama_sampling_context * dst); +// Get the last sampled token +llama_token llama_sampling_last(llama_sampling_context * ctx); + +// Get a string representation of the last sampled tokens +std::string llama_sampling_prev_str(llama_sampling_context * ctx_sampling, llama_context * ctx_main, int n); + +// Print sampling parameters into a string +std::string llama_sampling_print(const llama_sampling_params & params); + // this is a common sampling function used across the examples for convenience // it can serve as a starting point for implementing your own sampling function // Note: When using multiple sequences, it is the caller's responsibility to call @@ -96,4 +105,5 @@ llama_token llama_sampling_sample( void llama_sampling_accept( struct llama_sampling_context * ctx_sampling, struct llama_context * ctx_main, - llama_token id); + llama_token id, + bool apply_grammar); diff --git a/examples/CMakeLists.txt b/examples/CMakeLists.txt index e16c65f7c..75b8df676 100644 --- a/examples/CMakeLists.txt +++ b/examples/CMakeLists.txt @@ -12,26 +12,26 @@ include_directories(${CMAKE_CURRENT_SOURCE_DIR}) if (EMSCRIPTEN) else() - add_subdirectory(main) - add_subdirectory(quantize) - add_subdirectory(quantize-stats) - add_subdirectory(perplexity) - add_subdirectory(embedding) - add_subdirectory(save-load-state) - add_subdirectory(benchmark) add_subdirectory(baby-llama) - add_subdirectory(train-text-from-scratch) - add_subdirectory(finetune) - add_subdirectory(convert-llama2c-to-ggml) - add_subdirectory(simple) add_subdirectory(batched) add_subdirectory(batched-bench) - add_subdirectory(speculative) - add_subdirectory(parallel) - add_subdirectory(embd-input) - add_subdirectory(llava) - add_subdirectory(llama-bench) add_subdirectory(beam-search) + add_subdirectory(benchmark) + add_subdirectory(convert-llama2c-to-ggml) + add_subdirectory(embedding) + add_subdirectory(finetune) + add_subdirectory(infill) + add_subdirectory(llama-bench) + add_subdirectory(llava) + add_subdirectory(main) + add_subdirectory(parallel) + add_subdirectory(perplexity) + add_subdirectory(quantize) + add_subdirectory(quantize-stats) + add_subdirectory(save-load-state) + add_subdirectory(simple) + add_subdirectory(speculative) + add_subdirectory(train-text-from-scratch) if (LLAMA_METAL) add_subdirectory(metal) endif() diff --git a/examples/embd-input/.gitignore b/examples/embd-input/.gitignore deleted file mode 100644 index 87ef68771..000000000 --- a/examples/embd-input/.gitignore +++ /dev/null @@ -1,4 +0,0 @@ -PandaGPT -MiniGPT-4 -*.pth - diff --git a/examples/embd-input/CMakeLists.txt b/examples/embd-input/CMakeLists.txt deleted file mode 100644 index 5bbb1ea02..000000000 --- a/examples/embd-input/CMakeLists.txt +++ /dev/null @@ -1,17 +0,0 @@ -set(TARGET embdinput) -add_library(${TARGET} embd-input-lib.cpp embd-input.h) -install(TARGETS ${TARGET} LIBRARY) -target_link_libraries(${TARGET} PRIVATE common llama ${CMAKE_THREAD_LIBS_INIT}) -target_compile_features(${TARGET} PRIVATE cxx_std_11) -if(TARGET BUILD_INFO) - add_dependencies(${TARGET} BUILD_INFO) -endif() - -set(TARGET embd-input-test) -add_executable(${TARGET} embd-input-test.cpp) -install(TARGETS ${TARGET} RUNTIME) -target_link_libraries(${TARGET} PRIVATE common llama embdinput ${CMAKE_THREAD_LIBS_INIT}) -target_compile_features(${TARGET} PRIVATE cxx_std_11) -if(TARGET BUILD_INFO) - add_dependencies(${TARGET} BUILD_INFO) -endif() diff --git a/examples/embd-input/README.md b/examples/embd-input/README.md deleted file mode 100644 index 5c4c75ea7..000000000 --- a/examples/embd-input/README.md +++ /dev/null @@ -1,63 +0,0 @@ -### Examples for input embedding directly - -## Requirement -build `libembdinput.so` -run the following comman in main dir (../../). -``` -make -``` - -## [LLaVA](https://github.com/haotian-liu/LLaVA/) example (llava.py) - -1. Obtian LLaVA model (following https://github.com/haotian-liu/LLaVA/ , use https://huggingface.co/liuhaotian/LLaVA-13b-delta-v1-1/). -2. Convert it to ggml format. -3. `llava_projection.pth` is [pytorch_model-00003-of-00003.bin](https://huggingface.co/liuhaotian/LLaVA-13b-delta-v1-1/blob/main/pytorch_model-00003-of-00003.bin). - -``` -import torch - -bin_path = "../LLaVA-13b-delta-v1-1/pytorch_model-00003-of-00003.bin" -pth_path = "./examples/embd-input/llava_projection.pth" - -dic = torch.load(bin_path) -used_key = ["model.mm_projector.weight","model.mm_projector.bias"] -torch.save({k: dic[k] for k in used_key}, pth_path) -``` -4. Check the path of LLaVA model and `llava_projection.pth` in `llava.py`. - - -## [PandaGPT](https://github.com/yxuansu/PandaGPT) example (panda_gpt.py) - -1. Obtian PandaGPT lora model from https://github.com/yxuansu/PandaGPT. Rename the file to `adapter_model.bin`. Use [convert-lora-to-ggml.py](../../convert-lora-to-ggml.py) to convert it to ggml format. -The `adapter_config.json` is -``` -{ - "peft_type": "LORA", - "fan_in_fan_out": false, - "bias": null, - "modules_to_save": null, - "r": 32, - "lora_alpha": 32, - "lora_dropout": 0.1, - "target_modules": ["q_proj", "k_proj", "v_proj", "o_proj"] -} -``` -2. Papare the `vicuna` v0 model. -3. Obtain the [ImageBind](https://dl.fbaipublicfiles.com/imagebind/imagebind_huge.pth) model. -4. Clone the PandaGPT source. -``` -git clone https://github.com/yxuansu/PandaGPT -``` -5. Install the requirement of PandaGPT. -6. Check the path of PandaGPT source, ImageBind model, lora model and vicuna model in panda_gpt.py. - -## [MiniGPT-4](https://github.com/Vision-CAIR/MiniGPT-4/) example (minigpt4.py) - -1. Obtain MiniGPT-4 model from https://github.com/Vision-CAIR/MiniGPT-4/ and put it in `embd-input`. -2. Clone the MiniGPT-4 source. -``` -git clone https://github.com/Vision-CAIR/MiniGPT-4/ -``` -3. Install the requirement of PandaGPT. -4. Papare the `vicuna` v0 model. -5. Check the path of MiniGPT-4 source, MiniGPT-4 model and vicuna model in `minigpt4.py`. diff --git a/examples/embd-input/embd-input-lib.cpp b/examples/embd-input/embd-input-lib.cpp deleted file mode 100644 index 3ce33842c..000000000 --- a/examples/embd-input/embd-input-lib.cpp +++ /dev/null @@ -1,221 +0,0 @@ -#include "build-info.h" -#include "common.h" -#include "embd-input.h" - -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include - -static llama_context ** g_ctx; - -extern "C" { - -struct MyModel* create_mymodel(int argc, char ** argv) { - gpt_params params; - - if (!gpt_params_parse(argc, argv, params)) { - return nullptr; - } - - print_build_info(); - - if (params.seed == LLAMA_DEFAULT_SEED) { - params.seed = uint32_t(time(NULL)); - } - fprintf(stderr, "%s: seed = %d\n", __func__, params.seed); - - llama_backend_init(params.numa); - - llama_model * model; - llama_context * ctx; - - g_ctx = &ctx; - - // load the model and apply lora adapter, if any - std::tie(model, ctx) = llama_init_from_gpt_params(params); - if (model == NULL) { - fprintf(stderr, "%s: error: unable to load model\n", __func__); - return nullptr; - } - - // print system information - { - fprintf(stderr, "\n"); - fprintf(stderr, "%s\n", get_system_info(params).c_str()); - } - struct MyModel * ret = new MyModel(); - ret->ctx = ctx; - ret->params = params; - ret->n_past = 0; - // printf("ctx: %d\n", ret->ctx); - return ret; -} - -void free_mymodel(struct MyModel * mymodel) { - llama_context * ctx = mymodel->ctx; - llama_print_timings(ctx); - llama_free(ctx); - delete mymodel; -} - - -bool eval_float(void * model, float * input, int N){ - MyModel * mymodel = (MyModel*)model; - llama_context * ctx = mymodel->ctx; - gpt_params params = mymodel->params; - int n_emb = llama_n_embd(llama_get_model(ctx)); - int n_past = mymodel->n_past; - int n_batch = N; // params.n_batch; - - for (int i = 0; i < (int) N; i += n_batch) { - int n_eval = (int) N - i; - if (n_eval > n_batch) { - n_eval = n_batch; - } - llama_batch batch = { int32_t(n_eval), nullptr, (input+i*n_emb), nullptr, nullptr, nullptr, nullptr, n_past, 1, 0, }; - if (llama_decode(ctx, batch)) { - fprintf(stderr, "%s : failed to eval\n", __func__); - return false; - } - n_past += n_eval; - } - mymodel->n_past = n_past; - return true; -} - -bool eval_tokens(void * model, std::vector tokens) { - MyModel * mymodel = (MyModel* )model; - llama_context * ctx; - ctx = mymodel->ctx; - gpt_params params = mymodel->params; - int n_past = mymodel->n_past; - for (int i = 0; i < (int) tokens.size(); i += params.n_batch) { - int n_eval = (int) tokens.size() - i; - if (n_eval > params.n_batch) { - n_eval = params.n_batch; - } - if (llama_decode(ctx, llama_batch_get_one(&tokens[i], n_eval, n_past, 0))) { - fprintf(stderr, "%s : failed to eval\n", __func__); - return false; - } - n_past += n_eval; - } - mymodel->n_past = n_past; - return true; -} - -bool eval_id(struct MyModel* mymodel, int id) { - std::vector tokens; - tokens.push_back(id); - return eval_tokens(mymodel, tokens); -} - -bool eval_string(struct MyModel * mymodel,const char* str){ - llama_context * ctx = mymodel->ctx; - std::string str2 = str; - std::vector embd_inp = ::llama_tokenize(ctx, str2, true); - eval_tokens(mymodel, embd_inp); - return true; -} - -llama_token sampling_id(struct MyModel* mymodel) { - llama_context* ctx = mymodel->ctx; - gpt_params params = mymodel->params; - llama_sampling_params & sparams = params.sampling_params; - // int n_ctx = llama_n_ctx(ctx); - - // out of user input, sample next token - const float temp = sparams.temp; - const int32_t top_k = sparams.top_k <= 0 ? llama_n_vocab(llama_get_model(ctx)) : sparams.top_k; - const float top_p = sparams.top_p; - const float tfs_z = sparams.tfs_z; - const float typical_p = sparams.typical_p; - // const int32_t repeat_last_n = params.repeat_last_n < 0 ? n_ctx : params.repeat_last_n; - // const float repeat_penalty = params.repeat_penalty; - // const float alpha_presence = params.presence_penalty; - // const float alpha_frequency = params.frequency_penalty; - const int mirostat = sparams.mirostat; - const float mirostat_tau = sparams.mirostat_tau; - const float mirostat_eta = sparams.mirostat_eta; - // const bool penalize_nl = params.penalize_nl; - - llama_token id = 0; - { - auto logits = llama_get_logits(ctx); - auto n_vocab = llama_n_vocab(llama_get_model(ctx)); - - // Apply params.logit_bias map - for (auto it = sparams.logit_bias.begin(); it != sparams.logit_bias.end(); it++) { - logits[it->first] += it->second; - } - - std::vector candidates; - candidates.reserve(n_vocab); - for (llama_token token_id = 0; token_id < n_vocab; token_id++) { - candidates.emplace_back(llama_token_data{token_id, logits[token_id], 0.0f}); - } - - llama_token_data_array candidates_p = { candidates.data(), candidates.size(), false }; - - // TODO: Apply penalties - // float nl_logit = logits[llama_token_nl(ctx)]; - // auto last_n_repeat = std::min(std::min((int)last_n_tokens.size(), repeat_last_n), n_ctx); - // llama_sample_repetition_penalty(ctx, &candidates_p, - // last_n_tokens.data() + last_n_tokens.size() - last_n_repeat, - // last_n_repeat, repeat_penalty); - // llama_sample_frequency_and_presence_penalties(ctx, &candidates_p, - // last_n_tokens.data() + last_n_tokens.size() - last_n_repeat, - // last_n_repeat, alpha_frequency, alpha_presence); - // if (!penalize_nl) { - // logits[llama_token_nl(ctx)] = nl_logit; - // } - - if (temp <= 0) { - // Greedy sampling - id = llama_sample_token_greedy(ctx, &candidates_p); - } else { - if (mirostat == 1) { - static float mirostat_mu = 2.0f * mirostat_tau; - const int mirostat_m = 100; - llama_sample_temp(ctx, &candidates_p, temp); - id = llama_sample_token_mirostat(ctx, &candidates_p, mirostat_tau, mirostat_eta, mirostat_m, &mirostat_mu); - } else if (mirostat == 2) { - static float mirostat_mu = 2.0f * mirostat_tau; - llama_sample_temp(ctx, &candidates_p, temp); - id = llama_sample_token_mirostat_v2(ctx, &candidates_p, mirostat_tau, mirostat_eta, &mirostat_mu); - } else { - // Temperature sampling - llama_sample_top_k(ctx, &candidates_p, top_k, 1); - llama_sample_tail_free(ctx, &candidates_p, tfs_z, 1); - llama_sample_typical(ctx, &candidates_p, typical_p, 1); - llama_sample_top_p(ctx, &candidates_p, top_p, 1); - llama_sample_temp(ctx, &candidates_p, temp); - id = llama_sample_token(ctx, &candidates_p); - } - } - } - - return id; -} - -const char * sampling(struct MyModel * mymodel) { - llama_context * ctx = mymodel->ctx; - int id = sampling_id(mymodel); - static std::string ret; - if (id == llama_token_eos(ctx)) { - ret = ""; - } else { - ret = llama_token_to_piece(ctx, id); - } - eval_id(mymodel, id); - return ret.c_str(); -} - -} diff --git a/examples/embd-input/embd-input-test.cpp b/examples/embd-input/embd-input-test.cpp deleted file mode 100644 index dc4a0e488..000000000 --- a/examples/embd-input/embd-input-test.cpp +++ /dev/null @@ -1,35 +0,0 @@ -#include "embd-input.h" -#include -#include -#include - -int main(int argc, char** argv) { - - auto mymodel = create_mymodel(argc, argv); - int N = 10; - int max_tgt_len = 500; - int n_embd = llama_n_embd(llama_get_model(mymodel->ctx)); - - // add random float embd to test evaluation - float * data = new float[N*n_embd]; - std::default_random_engine e; - std::uniform_real_distribution u(0,1); - for (int i=0;iparams.prompt.c_str()); - const char* tmp; - for (int i=0; i")==0) break; - printf("%s", tmp); - fflush(stdout); - } - printf("\n"); - free_mymodel(mymodel); - return 0; -} diff --git a/examples/embd-input/embd-input.h b/examples/embd-input/embd-input.h deleted file mode 100644 index eff5e3b84..000000000 --- a/examples/embd-input/embd-input.h +++ /dev/null @@ -1,27 +0,0 @@ -#ifndef _EMBD_INPUT_H_ -#define _EMBD_INPUT_H_ 1 - -#include "common.h" -#include "llama.h" - -extern "C" { - -typedef struct MyModel { - llama_context* ctx; - gpt_params params; - int n_past = 0; -} MyModel; - -struct MyModel* create_mymodel(int argc, char ** argv); - -bool eval_float(void* model, float* input, int N); -bool eval_tokens(void* model, std::vector tokens); -bool eval_id(struct MyModel* mymodel, int id); -bool eval_string(struct MyModel* mymodel, const char* str); -const char * sampling(struct MyModel* mymodel); -llama_token sampling_id(struct MyModel* mymodel); -void free_mymodel(struct MyModel* mymodel); - -} - -#endif diff --git a/examples/embd-input/embd_input.py b/examples/embd-input/embd_input.py deleted file mode 100755 index f146acdc1..000000000 --- a/examples/embd-input/embd_input.py +++ /dev/null @@ -1,72 +0,0 @@ -#!/usr/bin/env python3 -import ctypes -from ctypes import cdll, c_char_p, c_void_p, POINTER, c_float, c_int -import numpy as np -import os - -libc = cdll.LoadLibrary("./libembdinput.so") -libc.sampling.restype=c_char_p -libc.create_mymodel.restype=c_void_p -libc.eval_string.argtypes=[c_void_p, c_char_p] -libc.sampling.argtypes=[c_void_p] -libc.eval_float.argtypes=[c_void_p, POINTER(c_float), c_int] - - -class MyModel: - def __init__(self, args): - argc = len(args) - c_str = [c_char_p(i.encode()) for i in args] - args_c = (c_char_p * argc)(*c_str) - self.model = c_void_p(libc.create_mymodel(argc, args_c)) - self.max_tgt_len = 512 - self.print_string_eval = True - - def __del__(self): - libc.free_mymodel(self.model) - - def eval_float(self, x): - libc.eval_float(self.model, x.astype(np.float32).ctypes.data_as(POINTER(c_float)), x.shape[1]) - - def eval_string(self, x): - libc.eval_string(self.model, x.encode()) # c_char_p(x.encode())) - if self.print_string_eval: - print(x) - - def eval_token(self, x): - libc.eval_id(self.model, x) - - def sampling(self): - s = libc.sampling(self.model) - return s - - def stream_generate(self, end=""): - ret = b"" - end = end.encode() - for _ in range(self.max_tgt_len): - tmp = self.sampling() - ret += tmp - yield tmp - if ret.endswith(end): - break - - def generate_with_print(self, end=""): - ret = b"" - for i in self.stream_generate(end=end): - ret += i - print(i.decode(errors="replace"), end="", flush=True) - print("") - return ret.decode(errors="replace") - - - def generate(self, end=""): - text = b"".join(self.stream_generate(end=end)) - return text.decode(errors="replace") - -if __name__ == "__main__": - model = MyModel(["main", "--model", "../llama.cpp/models/ggml-vic13b-q4_1.bin", "-c", "2048"]) - model.eval_string("""user: what is the color of the flag of UN?""") - x = np.random.random((5120,10))# , dtype=np.float32) - model.eval_float(x) - model.eval_string("""assistant:""") - for i in model.generate(): - print(i.decode(errors="replace"), end="", flush=True) diff --git a/examples/embd-input/llava.py b/examples/embd-input/llava.py deleted file mode 100755 index 06fad55f4..000000000 --- a/examples/embd-input/llava.py +++ /dev/null @@ -1,71 +0,0 @@ -#!/usr/bin/env python3 -import sys -import os -sys.path.insert(0, os.path.dirname(__file__)) -from embd_input import MyModel -import numpy as np -from torch import nn -import torch -from transformers import CLIPVisionModel, CLIPImageProcessor -from PIL import Image - -# model parameters from 'liuhaotian/LLaVA-13b-delta-v1-1' -vision_tower = "openai/clip-vit-large-patch14" -select_hidden_state_layer = -2 -# (vision_config.image_size // vision_config.patch_size) ** 2 -image_token_len = (224//14)**2 - -class Llava: - def __init__(self, args): - self.image_processor = CLIPImageProcessor.from_pretrained(vision_tower) - self.vision_tower = CLIPVisionModel.from_pretrained(vision_tower) - self.mm_projector = nn.Linear(1024, 5120) - self.model = MyModel(["main", *args]) - - def load_projection(self, path): - state = torch.load(path) - self.mm_projector.load_state_dict({ - "weight": state["model.mm_projector.weight"], - "bias": state["model.mm_projector.bias"]}) - - def chat(self, question): - self.model.eval_string("user: ") - self.model.eval_string(question) - self.model.eval_string("\nassistant: ") - return self.model.generate_with_print() - - def chat_with_image(self, image, question): - with torch.no_grad(): - embd_image = self.image_processor.preprocess(image, return_tensors='pt')['pixel_values'][0] - image_forward_out = self.vision_tower(embd_image.unsqueeze(0), output_hidden_states=True) - select_hidden_state = image_forward_out.hidden_states[select_hidden_state_layer] - image_feature = select_hidden_state[:, 1:] - embd_image = self.mm_projector(image_feature) - embd_image = embd_image.cpu().numpy()[0] - self.model.eval_string("user: ") - self.model.eval_token(32003-2) # im_start - self.model.eval_float(embd_image.T) - for i in range(image_token_len-embd_image.shape[0]): - self.model.eval_token(32003-3) # im_patch - self.model.eval_token(32003-1) # im_end - self.model.eval_string(question) - self.model.eval_string("\nassistant: ") - return self.model.generate_with_print() - - -if __name__=="__main__": - # model form liuhaotian/LLaVA-13b-delta-v1-1 - a = Llava(["--model", "./models/ggml-llava-13b-v1.1.bin", "-c", "2048"]) - # Extract from https://huggingface.co/liuhaotian/LLaVA-13b-delta-v1-1/blob/main/pytorch_model-00003-of-00003.bin. - # Also here can use pytorch_model-00003-of-00003.bin directly. - a.load_projection(os.path.join( - os.path.dirname(__file__) , - "llava_projection.pth")) - respose = a.chat_with_image( - Image.open("./media/llama1-logo.png").convert('RGB'), - "what is the text in the picture?") - respose - a.chat("what is the color of it?") - - - diff --git a/examples/embd-input/minigpt4.py b/examples/embd-input/minigpt4.py deleted file mode 100755 index 7b13e4a5c..000000000 --- a/examples/embd-input/minigpt4.py +++ /dev/null @@ -1,129 +0,0 @@ -#!/usr/bin/env python3 -import sys -import os -sys.path.insert(0, os.path.dirname(__file__)) -from embd_input import MyModel -import numpy as np -from torch import nn -import torch -from PIL import Image - -minigpt4_path = os.path.join(os.path.dirname(__file__), "MiniGPT-4") -sys.path.insert(0, minigpt4_path) -from minigpt4.models.blip2 import Blip2Base -from minigpt4.processors.blip_processors import Blip2ImageEvalProcessor - - -class MiniGPT4(Blip2Base): - """ - MiniGPT4 model from https://github.com/Vision-CAIR/MiniGPT-4 - """ - def __init__(self, - args, - vit_model="eva_clip_g", - q_former_model="https://storage.googleapis.com/sfr-vision-language-research/LAVIS/models/BLIP2/blip2_pretrained_flant5xxl.pth", - img_size=224, - drop_path_rate=0, - use_grad_checkpoint=False, - vit_precision="fp32", - freeze_vit=True, - freeze_qformer=True, - num_query_token=32, - llama_model="", - prompt_path="", - prompt_template="", - max_txt_len=32, - end_sym='\n', - low_resource=False, # use 8 bit and put vit in cpu - device_8bit=0 - ): - super().__init__() - self.img_size = img_size - self.low_resource = low_resource - self.preprocessor = Blip2ImageEvalProcessor(img_size) - - print('Loading VIT') - self.visual_encoder, self.ln_vision = self.init_vision_encoder( - vit_model, img_size, drop_path_rate, use_grad_checkpoint, vit_precision - ) - print('Loading VIT Done') - print('Loading Q-Former') - self.Qformer, self.query_tokens = self.init_Qformer( - num_query_token, self.visual_encoder.num_features - ) - self.Qformer.cls = None - self.Qformer.bert.embeddings.word_embeddings = None - self.Qformer.bert.embeddings.position_embeddings = None - for layer in self.Qformer.bert.encoder.layer: - layer.output = None - layer.intermediate = None - self.load_from_pretrained(url_or_filename=q_former_model) - print('Loading Q-Former Done') - self.llama_proj = nn.Linear( - self.Qformer.config.hidden_size, 5120 # self.llama_model.config.hidden_size - ) - self.max_txt_len = max_txt_len - self.end_sym = end_sym - self.model = MyModel(["main", *args]) - # system prompt - self.model.eval_string("Give the following image: ImageContent. " - "You will be able to see the image once I provide it to you. Please answer my questions." - "###") - - def encode_img(self, image): - image = self.preprocessor(image) - image = image.unsqueeze(0) - device = image.device - if self.low_resource: - self.vit_to_cpu() - image = image.to("cpu") - - with self.maybe_autocast(): - image_embeds = self.ln_vision(self.visual_encoder(image)).to(device) - image_atts = torch.ones(image_embeds.size()[:-1], dtype=torch.long).to(device) - - query_tokens = self.query_tokens.expand(image_embeds.shape[0], -1, -1) - query_output = self.Qformer.bert( - query_embeds=query_tokens, - encoder_hidden_states=image_embeds, - encoder_attention_mask=image_atts, - return_dict=True, - ) - - inputs_llama = self.llama_proj(query_output.last_hidden_state) - # atts_llama = torch.ones(inputs_llama.size()[:-1], dtype=torch.long).to(image.device) - return inputs_llama - - def load_projection(self, path): - state = torch.load(path)["model"] - self.llama_proj.load_state_dict({ - "weight": state["llama_proj.weight"], - "bias": state["llama_proj.bias"]}) - - def chat(self, question): - self.model.eval_string("Human: ") - self.model.eval_string(question) - self.model.eval_string("\n### Assistant:") - return self.model.generate_with_print(end="###") - - def chat_with_image(self, image, question): - with torch.no_grad(): - embd_image = self.encode_img(image) - embd_image = embd_image.cpu().numpy()[0] - self.model.eval_string("Human: ") - self.model.eval_float(embd_image.T) - self.model.eval_string(" ") - self.model.eval_string(question) - self.model.eval_string("\n### Assistant:") - return self.model.generate_with_print(end="###") - - -if __name__=="__main__": - a = MiniGPT4(["--model", "./models/ggml-vicuna-13b-v0-q4_1.bin", "-c", "2048"]) - a.load_projection(os.path.join( - os.path.dirname(__file__) , - "pretrained_minigpt4.pth")) - respose = a.chat_with_image( - Image.open("./media/llama1-logo.png").convert('RGB'), - "what is the text in the picture?") - a.chat("what is the color of it?") diff --git a/examples/embd-input/panda_gpt.py b/examples/embd-input/panda_gpt.py deleted file mode 100755 index 891ad7cc9..000000000 --- a/examples/embd-input/panda_gpt.py +++ /dev/null @@ -1,99 +0,0 @@ -#!/usr/bin/env python3 -import sys -import os -sys.path.insert(0, os.path.dirname(__file__)) -from embd_input import MyModel -import numpy as np -from torch import nn -import torch - -# use PandaGPT path -panda_gpt_path = os.path.join(os.path.dirname(__file__), "PandaGPT") -imagebind_ckpt_path = "./models/panda_gpt/" - -sys.path.insert(0, os.path.join(panda_gpt_path,"code","model")) -from ImageBind.models import imagebind_model -from ImageBind import data - -ModalityType = imagebind_model.ModalityType -max_tgt_len = 400 - -class PandaGPT: - def __init__(self, args): - self.visual_encoder,_ = imagebind_model.imagebind_huge(pretrained=True, store_path=imagebind_ckpt_path) - self.visual_encoder.eval() - self.llama_proj = nn.Linear(1024, 5120) # self.visual_hidden_size, 5120) - self.max_tgt_len = max_tgt_len - self.model = MyModel(["main", *args]) - self.generated_text = "" - self.device = "cpu" - - def load_projection(self, path): - state = torch.load(path, map_location="cpu") - self.llama_proj.load_state_dict({ - "weight": state["llama_proj.weight"], - "bias": state["llama_proj.bias"]}) - - def eval_inputs(self, inputs): - self.model.eval_string("") - embds = self.extract_multimoal_feature(inputs) - for i in embds: - self.model.eval_float(i.T) - self.model.eval_string(" ") - - def chat(self, question): - return self.chat_with_image(None, question) - - def chat_with_image(self, inputs, question): - if self.generated_text == "": - self.model.eval_string("###") - self.model.eval_string(" Human: ") - if inputs: - self.eval_inputs(inputs) - self.model.eval_string(question) - self.model.eval_string("\n### Assistant:") - ret = self.model.generate_with_print(end="###") - self.generated_text += ret - return ret - - def extract_multimoal_feature(self, inputs): - features = [] - for key in ["image", "audio", "video", "thermal"]: - if key + "_paths" in inputs: - embeds = self.encode_data(key, inputs[key+"_paths"]) - features.append(embeds) - return features - - def encode_data(self, data_type, data_paths): - - type_map = { - "image": ModalityType.VISION, - "audio": ModalityType.AUDIO, - "video": ModalityType.VISION, - "thermal": ModalityType.THERMAL, - } - load_map = { - "image": data.load_and_transform_vision_data, - "audio": data.load_and_transform_audio_data, - "video": data.load_and_transform_video_data, - "thermal": data.load_and_transform_thermal_data - } - - load_function = load_map[data_type] - key = type_map[data_type] - - inputs = {key: load_function(data_paths, self.device)} - with torch.no_grad(): - embeddings = self.visual_encoder(inputs) - embeds = embeddings[key] - embeds = self.llama_proj(embeds).cpu().numpy() - return embeds - - -if __name__=="__main__": - a = PandaGPT(["--model", "./models/ggml-vicuna-13b-v0-q4_1.bin", "-c", "2048", "--lora", "./models/panda_gpt/ggml-adapter-model.bin","--temp", "0"]) - a.load_projection("./models/panda_gpt/adapter_model.bin") - a.chat_with_image( - {"image_paths": ["./media/llama1-logo.png"]}, - "what is the text in the picture? 'llama' or 'lambda'?") - a.chat("what is the color of it?") diff --git a/examples/gptneox-wip/cmpnct_gpt2bpe.hpp b/examples/gptneox-wip/cmpnct_gpt2bpe.hpp deleted file mode 100644 index 9d433f4b1..000000000 --- a/examples/gptneox-wip/cmpnct_gpt2bpe.hpp +++ /dev/null @@ -1,1133 +0,0 @@ -#ifndef CMPNCT_GPT2BPE -#define CMPNCT_GPT2BPE - -#include -#include -#include -#include -#include -#include -#include -#include -#include - - -// Unicode GPT2 Byte Pair Encoding Tokenizer -// Adapted from https://github.com/cmp-nct/ggllm.cpp [MIT License] -// Removed loading of merges from HF json and parts made for a specific vocab - - -//----------------- -// Unicode library (from cmpnct_unicode.cpp) -//----------------- - -// Minimal library for high performance handling and categorization of UTF8 strings and characters -// Using std::string - -enum CNCTCharType { - DIGIT, // a numerical char in any language - LETTER, // a letter in any language - WHITESPACE, // any form of whitespace - ACCENT_MARK, // letter modifiers like ´ in é - PUNCTUATION, // punctuation including brackets - SYMBOL, // math, currency, other symbols - CONTROL, // control characters - MIXED, // a mix of the above - UNIDENTIFIED // something more exotic like emoji or separators -}; - -struct CNCTUnicode; - -struct CNCTString { - std::string str; - size_t utf8_chars; - - CNCTCharType char_type=UNIDENTIFIED; - bool is_sequential=false; - - size_t seq_offset_bytes=0; - size_t seq_offset_utf8_chars=0; - - bool operator==(const std::string &other) const; - bool operator==(const char other) const; - bool operator==(const CNCTString &other) const; - CNCTString &operator+=(const std::string &other); - CNCTString &operator+=(const char other); - friend CNCTString operator+(CNCTString lhs, const std::string &rhs); - friend CNCTString operator+(CNCTString lhs, const char rhs); - CNCTString& operator+=(const CNCTString& other); - friend CNCTString operator+(CNCTString lhs, const CNCTString& rhs); -}; - -struct CNCTUnicode { - static bool check_code_range(int c, const std::vector>& ranges); - static CNCTCharType get_code_type(int c); - static CNCTCharType get_code_type(const std::string &utf8_char); - static int utf8_len(const char c); - static int strlen_utf8(std::string src); - static std::vector split_utf8(const std::string &src); - static std::vector split_utf8_enhanced(const std::string &src); - static CNCTCharType string_identify(const std::string& str); - static bool string_test(const std::string& str, CNCTCharType chartype); -}; - -static const std::vector> digit_ranges = { -{0x30, 0x39}, {0xB2, 0xB3}, {0xB9, 0xB9}, {0x660, 0x669}, {0x6F0, 0x6F9}, {0x7C0, 0x7C9}, {0x966, 0x96F}, {0x9E6, 0x9EF}, {0xA66, 0xA6F}, {0xAE6, 0xAEF}, {0xB66, 0xB6F}, {0xBE6, 0xBEF}, {0xC66, 0xC6F}, -{0xCE6, 0xCEF}, {0xD66, 0xD6F}, {0xDE6, 0xDEF}, {0xE50, 0xE59}, {0xED0, 0xED9}, {0xF20, 0xF29}, {0x1040, 0x1049}, {0x1090, 0x1099}, {0x1369, 0x1371}, {0x17E0, 0x17E9}, {0x1810, 0x1819}, {0x1946, 0x194F}, -{0x19D0, 0x19DA}, {0x1A80, 0x1A89}, {0x1A90, 0x1A99}, {0x1B50, 0x1B59}, {0x1BB0, 0x1BB9}, {0x1C40, 0x1C49}, {0x1C50, 0x1C59}, {0x2070, 0x2070}, {0x2074, 0x2079}, {0x2080, 0x2089}, {0x2460, 0x2468}, -{0x2474, 0x247C}, {0x2488, 0x2490}, {0x24EA, 0x24EA}, {0x24F5, 0x24FD}, {0x24FF, 0x24FF}, {0x2776, 0x277E}, {0x2780, 0x2788}, {0x278A, 0x2792}, {0xA620, 0xA629}, {0xA8D0, 0xA8D9}, {0xA900, 0xA909}, -{0xA9D0, 0xA9D9}, {0xA9F0, 0xA9F9}, {0xAA50, 0xAA59}, {0xABF0, 0xABF9}, {0xFF10, 0xFF19}, {0x104A0, 0x104A9}, {0x10A40, 0x10A43}, {0x10D30, 0x10D39}, {0x10E60, 0x10E68}, {0x11052, 0x1105A}, -{0x11066, 0x1106F}, {0x110F0, 0x110F9}, {0x11136, 0x1113F}, {0x111D0, 0x111D9}, {0x112F0, 0x112F9}, {0x11450, 0x11459}, {0x114D0, 0x114D9}, {0x11650, 0x11659}, {0x116C0, 0x116C9}, {0x11730, 0x11739}, -{0x118E0, 0x118E9}, {0x11950, 0x11959}, {0x11C50, 0x11C59}, {0x11D50, 0x11D59}, {0x11DA0, 0x11DA9}, {0x16A60, 0x16A69}, {0x16B50, 0x16B59}, {0x1D7CE, 0x1D7FF}, {0x1E140, 0x1E149}, {0x1E2F0, 0x1E2F9}, -{0x1E950, 0x1E959}, {0x1F100, 0x1F10A}, {0x1FBF0, 0x1FBF9}, -}; - -static const std::vector> letter_ranges = { -{0x41, 0x5A}, {0x61, 0x7A}, {0xAA, 0xAA}, {0xB5, 0xB5}, {0xBA, 0xBA}, {0xC0, 0xD6}, {0xD8, 0xF6}, {0xF8, 0x2C1}, {0x2C6, 0x2D1}, {0x2E0, 0x2E4}, {0x2EC, 0x2EC}, {0x2EE, 0x2EE}, {0x370, 0x374}, -{0x376, 0x377}, {0x37A, 0x37D}, {0x37F, 0x37F}, {0x386, 0x386}, {0x388, 0x38A}, {0x38C, 0x38C}, {0x38E, 0x3A1}, {0x3A3, 0x3F5}, {0x3F7, 0x481}, {0x48A, 0x52F}, {0x531, 0x556}, {0x559, 0x559}, -{0x560, 0x588}, {0x5D0, 0x5EA}, {0x5EF, 0x5F2}, {0x620, 0x64A}, {0x66E, 0x66F}, {0x671, 0x6D3}, {0x6D5, 0x6D5}, {0x6E5, 0x6E6}, {0x6EE, 0x6EF}, {0x6FA, 0x6FC}, {0x6FF, 0x6FF}, {0x710, 0x710}, -{0x712, 0x72F}, {0x74D, 0x7A5}, {0x7B1, 0x7B1}, {0x7CA, 0x7EA}, {0x7F4, 0x7F5}, {0x7FA, 0x7FA}, {0x800, 0x815}, {0x81A, 0x81A}, {0x824, 0x824}, {0x828, 0x828}, {0x840, 0x858}, {0x860, 0x86A}, -{0x8A0, 0x8B4}, {0x8B6, 0x8C7}, {0x904, 0x939}, {0x93D, 0x93D}, {0x950, 0x950}, {0x958, 0x961}, {0x971, 0x980}, {0x985, 0x98C}, {0x98F, 0x990}, {0x993, 0x9A8}, {0x9AA, 0x9B0}, {0x9B2, 0x9B2}, -{0x9B6, 0x9B9}, {0x9BD, 0x9BD}, {0x9CE, 0x9CE}, {0x9DC, 0x9DD}, {0x9DF, 0x9E1}, {0x9F0, 0x9F1}, {0x9FC, 0x9FC}, {0xA05, 0xA0A}, {0xA0F, 0xA10}, {0xA13, 0xA28}, {0xA2A, 0xA30}, {0xA32, 0xA33}, -{0xA35, 0xA36}, {0xA38, 0xA39}, {0xA59, 0xA5C}, {0xA5E, 0xA5E}, {0xA72, 0xA74}, {0xA85, 0xA8D}, {0xA8F, 0xA91}, {0xA93, 0xAA8}, {0xAAA, 0xAB0}, {0xAB2, 0xAB3}, {0xAB5, 0xAB9}, {0xABD, 0xABD}, -{0xAD0, 0xAD0}, {0xAE0, 0xAE1}, {0xAF9, 0xAF9}, {0xB05, 0xB0C}, {0xB0F, 0xB10}, {0xB13, 0xB28}, {0xB2A, 0xB30}, {0xB32, 0xB33}, {0xB35, 0xB39}, {0xB3D, 0xB3D}, {0xB5C, 0xB5D}, {0xB5F, 0xB61}, -{0xB71, 0xB71}, {0xB83, 0xB83}, {0xB85, 0xB8A}, {0xB8E, 0xB90}, {0xB92, 0xB95}, {0xB99, 0xB9A}, {0xB9C, 0xB9C}, {0xB9E, 0xB9F}, {0xBA3, 0xBA4}, {0xBA8, 0xBAA}, {0xBAE, 0xBB9}, {0xBD0, 0xBD0}, -{0xC05, 0xC0C}, {0xC0E, 0xC10}, {0xC12, 0xC28}, {0xC2A, 0xC39}, {0xC3D, 0xC3D}, {0xC58, 0xC5A}, {0xC60, 0xC61}, {0xC80, 0xC80}, {0xC85, 0xC8C}, {0xC8E, 0xC90}, {0xC92, 0xCA8}, {0xCAA, 0xCB3}, -{0xCB5, 0xCB9}, {0xCBD, 0xCBD}, {0xCDE, 0xCDE}, {0xCE0, 0xCE1}, {0xCF1, 0xCF2}, {0xD04, 0xD0C}, {0xD0E, 0xD10}, {0xD12, 0xD3A}, {0xD3D, 0xD3D}, {0xD4E, 0xD4E}, {0xD54, 0xD56}, {0xD5F, 0xD61}, -{0xD7A, 0xD7F}, {0xD85, 0xD96}, {0xD9A, 0xDB1}, {0xDB3, 0xDBB}, {0xDBD, 0xDBD}, {0xDC0, 0xDC6}, {0xE01, 0xE30}, {0xE32, 0xE33}, {0xE40, 0xE46}, {0xE81, 0xE82}, {0xE84, 0xE84}, {0xE86, 0xE8A}, -{0xE8C, 0xEA3}, {0xEA5, 0xEA5}, {0xEA7, 0xEB0}, {0xEB2, 0xEB3}, {0xEBD, 0xEBD}, {0xEC0, 0xEC4}, {0xEC6, 0xEC6}, {0xEDC, 0xEDF}, {0xF00, 0xF00}, {0xF40, 0xF47}, {0xF49, 0xF6C}, {0xF88, 0xF8C}, -{0x1000, 0x102A}, {0x103F, 0x103F}, {0x1050, 0x1055}, {0x105A, 0x105D}, {0x1061, 0x1061}, {0x1065, 0x1066}, {0x106E, 0x1070}, {0x1075, 0x1081}, {0x108E, 0x108E}, {0x10A0, 0x10C5}, {0x10C7, 0x10C7}, -{0x10CD, 0x10CD}, {0x10D0, 0x10FA}, {0x10FC, 0x1248}, {0x124A, 0x124D}, {0x1250, 0x1256}, {0x1258, 0x1258}, {0x125A, 0x125D}, {0x1260, 0x1288}, {0x128A, 0x128D}, {0x1290, 0x12B0}, {0x12B2, 0x12B5}, -{0x12B8, 0x12BE}, {0x12C0, 0x12C0}, {0x12C2, 0x12C5}, {0x12C8, 0x12D6}, {0x12D8, 0x1310}, {0x1312, 0x1315}, {0x1318, 0x135A}, {0x1380, 0x138F}, {0x13A0, 0x13F5}, {0x13F8, 0x13FD}, {0x1401, 0x166C}, -{0x166F, 0x167F}, {0x1681, 0x169A}, {0x16A0, 0x16EA}, {0x16F1, 0x16F8}, {0x1700, 0x170C}, {0x170E, 0x1711}, {0x1720, 0x1731}, {0x1740, 0x1751}, {0x1760, 0x176C}, {0x176E, 0x1770}, {0x1780, 0x17B3}, -{0x17D7, 0x17D7}, {0x17DC, 0x17DC}, {0x1820, 0x1878}, {0x1880, 0x1884}, {0x1887, 0x18A8}, {0x18AA, 0x18AA}, {0x18B0, 0x18F5}, {0x1900, 0x191E}, {0x1950, 0x196D}, {0x1970, 0x1974}, {0x1980, 0x19AB}, -{0x19B0, 0x19C9}, {0x1A00, 0x1A16}, {0x1A20, 0x1A54}, {0x1AA7, 0x1AA7}, {0x1B05, 0x1B33}, {0x1B45, 0x1B4B}, {0x1B83, 0x1BA0}, {0x1BAE, 0x1BAF}, {0x1BBA, 0x1BE5}, {0x1C00, 0x1C23}, {0x1C4D, 0x1C4F}, -{0x1C5A, 0x1C7D}, {0x1C80, 0x1C88}, {0x1C90, 0x1CBA}, {0x1CBD, 0x1CBF}, {0x1CE9, 0x1CEC}, {0x1CEE, 0x1CF3}, {0x1CF5, 0x1CF6}, {0x1CFA, 0x1CFA}, {0x1D00, 0x1DBF}, {0x1E00, 0x1F15}, {0x1F18, 0x1F1D}, -{0x1F20, 0x1F45}, {0x1F48, 0x1F4D}, {0x1F50, 0x1F57}, {0x1F59, 0x1F59}, {0x1F5B, 0x1F5B}, {0x1F5D, 0x1F5D}, {0x1F5F, 0x1F7D}, {0x1F80, 0x1FB4}, {0x1FB6, 0x1FBC}, {0x1FBE, 0x1FBE}, {0x1FC2, 0x1FC4}, -{0x1FC6, 0x1FCC}, {0x1FD0, 0x1FD3}, {0x1FD6, 0x1FDB}, {0x1FE0, 0x1FEC}, {0x1FF2, 0x1FF4}, {0x1FF6, 0x1FFC}, {0x2071, 0x2071}, {0x207F, 0x207F}, {0x2090, 0x209C}, {0x2102, 0x2102}, {0x2107, 0x2107}, -{0x210A, 0x2113}, {0x2115, 0x2115}, {0x2119, 0x211D}, {0x2124, 0x2124}, {0x2126, 0x2126}, {0x2128, 0x2128}, {0x212A, 0x212D}, {0x212F, 0x2139}, {0x213C, 0x213F}, {0x2145, 0x2149}, {0x214E, 0x214E}, -{0x2183, 0x2184}, {0x2C00, 0x2C2E}, {0x2C30, 0x2C5E}, {0x2C60, 0x2CE4}, {0x2CEB, 0x2CEE}, {0x2CF2, 0x2CF3}, {0x2D00, 0x2D25}, {0x2D27, 0x2D27}, {0x2D2D, 0x2D2D}, {0x2D30, 0x2D67}, {0x2D6F, 0x2D6F}, -{0x2D80, 0x2D96}, {0x2DA0, 0x2DA6}, {0x2DA8, 0x2DAE}, {0x2DB0, 0x2DB6}, {0x2DB8, 0x2DBE}, {0x2DC0, 0x2DC6}, {0x2DC8, 0x2DCE}, {0x2DD0, 0x2DD6}, {0x2DD8, 0x2DDE}, {0x2E2F, 0x2E2F}, {0x3005, 0x3006}, -{0x3031, 0x3035}, {0x303B, 0x303C}, {0x3041, 0x3096}, {0x309D, 0x309F}, {0x30A1, 0x30FA}, {0x30FC, 0x30FF}, {0x3105, 0x312F}, {0x3131, 0x318E}, {0x31A0, 0x31BF}, {0x31F0, 0x31FF}, {0x3400, 0x4DBF}, -{0x4E00, 0x9FFC}, {0xA000, 0xA48C}, {0xA4D0, 0xA4FD}, {0xA500, 0xA60C}, {0xA610, 0xA61F}, {0xA62A, 0xA62B}, {0xA640, 0xA66E}, {0xA67F, 0xA69D}, {0xA6A0, 0xA6E5}, {0xA717, 0xA71F}, {0xA722, 0xA788}, -{0xA78B, 0xA7BF}, {0xA7C2, 0xA7CA}, {0xA7F5, 0xA801}, {0xA803, 0xA805}, {0xA807, 0xA80A}, {0xA80C, 0xA822}, {0xA840, 0xA873}, {0xA882, 0xA8B3}, {0xA8F2, 0xA8F7}, {0xA8FB, 0xA8FB}, {0xA8FD, 0xA8FE}, -{0xA90A, 0xA925}, {0xA930, 0xA946}, {0xA960, 0xA97C}, {0xA984, 0xA9B2}, {0xA9CF, 0xA9CF}, {0xA9E0, 0xA9E4}, {0xA9E6, 0xA9EF}, {0xA9FA, 0xA9FE}, {0xAA00, 0xAA28}, {0xAA40, 0xAA42}, {0xAA44, 0xAA4B}, -{0xAA60, 0xAA76}, {0xAA7A, 0xAA7A}, {0xAA7E, 0xAAAF}, {0xAAB1, 0xAAB1}, {0xAAB5, 0xAAB6}, {0xAAB9, 0xAABD}, {0xAAC0, 0xAAC0}, {0xAAC2, 0xAAC2}, {0xAADB, 0xAADD}, {0xAAE0, 0xAAEA}, {0xAAF2, 0xAAF4}, -{0xAB01, 0xAB06}, {0xAB09, 0xAB0E}, {0xAB11, 0xAB16}, {0xAB20, 0xAB26}, {0xAB28, 0xAB2E}, {0xAB30, 0xAB5A}, {0xAB5C, 0xAB69}, {0xAB70, 0xABE2}, {0xAC00, 0xD7A3}, {0xD7B0, 0xD7C6}, {0xD7CB, 0xD7FB}, -{0xF900, 0xFA6D}, {0xFA70, 0xFAD9}, {0xFB00, 0xFB06}, {0xFB13, 0xFB17}, {0xFB1D, 0xFB1D}, {0xFB1F, 0xFB28}, {0xFB2A, 0xFB36}, {0xFB38, 0xFB3C}, {0xFB3E, 0xFB3E}, {0xFB40, 0xFB41}, {0xFB43, 0xFB44}, -{0xFB46, 0xFBB1}, {0xFBD3, 0xFD3D}, {0xFD50, 0xFD8F}, {0xFD92, 0xFDC7}, {0xFDF0, 0xFDFB}, {0xFE70, 0xFE74}, {0xFE76, 0xFEFC}, {0xFF21, 0xFF3A}, {0xFF41, 0xFF5A}, {0xFF66, 0xFFBE}, {0xFFC2, 0xFFC7}, -{0xFFCA, 0xFFCF}, {0xFFD2, 0xFFD7}, {0xFFDA, 0xFFDC}, {0x10000, 0x1000B}, {0x1000D, 0x10026}, {0x10028, 0x1003A}, {0x1003C, 0x1003D}, {0x1003F, 0x1004D}, {0x10050, 0x1005D}, {0x10080, 0x100FA}, -{0x10280, 0x1029C}, {0x102A0, 0x102D0}, {0x10300, 0x1031F}, {0x1032D, 0x10340}, {0x10342, 0x10349}, {0x10350, 0x10375}, {0x10380, 0x1039D}, {0x103A0, 0x103C3}, {0x103C8, 0x103CF}, {0x10400, 0x1049D}, -{0x104B0, 0x104D3}, {0x104D8, 0x104FB}, {0x10500, 0x10527}, {0x10530, 0x10563}, {0x10600, 0x10736}, {0x10740, 0x10755}, {0x10760, 0x10767}, {0x10800, 0x10805}, {0x10808, 0x10808}, {0x1080A, 0x10835}, -{0x10837, 0x10838}, {0x1083C, 0x1083C}, {0x1083F, 0x10855}, {0x10860, 0x10876}, {0x10880, 0x1089E}, {0x108E0, 0x108F2}, {0x108F4, 0x108F5}, {0x10900, 0x10915}, {0x10920, 0x10939}, {0x10980, 0x109B7}, -{0x109BE, 0x109BF}, {0x10A00, 0x10A00}, {0x10A10, 0x10A13}, {0x10A15, 0x10A17}, {0x10A19, 0x10A35}, {0x10A60, 0x10A7C}, {0x10A80, 0x10A9C}, {0x10AC0, 0x10AC7}, {0x10AC9, 0x10AE4}, {0x10B00, 0x10B35}, -{0x10B40, 0x10B55}, {0x10B60, 0x10B72}, {0x10B80, 0x10B91}, {0x10C00, 0x10C48}, {0x10C80, 0x10CB2}, {0x10CC0, 0x10CF2}, {0x10D00, 0x10D23}, {0x10E80, 0x10EA9}, {0x10EB0, 0x10EB1}, {0x10F00, 0x10F1C}, -{0x10F27, 0x10F27}, {0x10F30, 0x10F45}, {0x10FB0, 0x10FC4}, {0x10FE0, 0x10FF6}, {0x11003, 0x11037}, {0x11083, 0x110AF}, {0x110D0, 0x110E8}, {0x11103, 0x11126}, {0x11144, 0x11144}, {0x11147, 0x11147}, -{0x11150, 0x11172}, {0x11176, 0x11176}, {0x11183, 0x111B2}, {0x111C1, 0x111C4}, {0x111DA, 0x111DA}, {0x111DC, 0x111DC}, {0x11200, 0x11211}, {0x11213, 0x1122B}, {0x11280, 0x11286}, {0x11288, 0x11288}, -{0x1128A, 0x1128D}, {0x1128F, 0x1129D}, {0x1129F, 0x112A8}, {0x112B0, 0x112DE}, {0x11305, 0x1130C}, {0x1130F, 0x11310}, {0x11313, 0x11328}, {0x1132A, 0x11330}, {0x11332, 0x11333}, {0x11335, 0x11339}, -{0x1133D, 0x1133D}, {0x11350, 0x11350}, {0x1135D, 0x11361}, {0x11400, 0x11434}, {0x11447, 0x1144A}, {0x1145F, 0x11461}, {0x11480, 0x114AF}, {0x114C4, 0x114C5}, {0x114C7, 0x114C7}, {0x11580, 0x115AE}, -{0x115D8, 0x115DB}, {0x11600, 0x1162F}, {0x11644, 0x11644}, {0x11680, 0x116AA}, {0x116B8, 0x116B8}, {0x11700, 0x1171A}, {0x11800, 0x1182B}, {0x118A0, 0x118DF}, {0x118FF, 0x11906}, {0x11909, 0x11909}, -{0x1190C, 0x11913}, {0x11915, 0x11916}, {0x11918, 0x1192F}, {0x1193F, 0x1193F}, {0x11941, 0x11941}, {0x119A0, 0x119A7}, {0x119AA, 0x119D0}, {0x119E1, 0x119E1}, {0x119E3, 0x119E3}, {0x11A00, 0x11A00}, -{0x11A0B, 0x11A32}, {0x11A3A, 0x11A3A}, {0x11A50, 0x11A50}, {0x11A5C, 0x11A89}, {0x11A9D, 0x11A9D}, {0x11AC0, 0x11AF8}, {0x11C00, 0x11C08}, {0x11C0A, 0x11C2E}, {0x11C40, 0x11C40}, {0x11C72, 0x11C8F}, -{0x11D00, 0x11D06}, {0x11D08, 0x11D09}, {0x11D0B, 0x11D30}, {0x11D46, 0x11D46}, {0x11D60, 0x11D65}, {0x11D67, 0x11D68}, {0x11D6A, 0x11D89}, {0x11D98, 0x11D98}, {0x11EE0, 0x11EF2}, {0x11FB0, 0x11FB0}, -{0x12000, 0x12399}, {0x12480, 0x12543}, {0x13000, 0x1342E}, {0x14400, 0x14646}, {0x16800, 0x16A38}, {0x16A40, 0x16A5E}, {0x16AD0, 0x16AED}, {0x16B00, 0x16B2F}, {0x16B40, 0x16B43}, {0x16B63, 0x16B77}, -{0x16B7D, 0x16B8F}, {0x16E40, 0x16E7F}, {0x16F00, 0x16F4A}, {0x16F50, 0x16F50}, {0x16F93, 0x16F9F}, {0x16FE0, 0x16FE1}, {0x16FE3, 0x16FE3}, {0x17000, 0x187F7}, {0x18800, 0x18CD5}, {0x18D00, 0x18D08}, -{0x1B000, 0x1B11E}, {0x1B150, 0x1B152}, {0x1B164, 0x1B167}, {0x1B170, 0x1B2FB}, {0x1BC00, 0x1BC6A}, {0x1BC70, 0x1BC7C}, {0x1BC80, 0x1BC88}, {0x1BC90, 0x1BC99}, {0x1D400, 0x1D454}, {0x1D456, 0x1D49C}, -{0x1D49E, 0x1D49F}, {0x1D4A2, 0x1D4A2}, {0x1D4A5, 0x1D4A6}, {0x1D4A9, 0x1D4AC}, {0x1D4AE, 0x1D4B9}, {0x1D4BB, 0x1D4BB}, {0x1D4BD, 0x1D4C3}, {0x1D4C5, 0x1D505}, {0x1D507, 0x1D50A}, {0x1D50D, 0x1D514}, -{0x1D516, 0x1D51C}, {0x1D51E, 0x1D539}, {0x1D53B, 0x1D53E}, {0x1D540, 0x1D544}, {0x1D546, 0x1D546}, {0x1D54A, 0x1D550}, {0x1D552, 0x1D6A5}, {0x1D6A8, 0x1D6C0}, {0x1D6C2, 0x1D6DA}, {0x1D6DC, 0x1D6FA}, -{0x1D6FC, 0x1D714}, {0x1D716, 0x1D734}, {0x1D736, 0x1D74E}, {0x1D750, 0x1D76E}, {0x1D770, 0x1D788}, {0x1D78A, 0x1D7A8}, {0x1D7AA, 0x1D7C2}, {0x1D7C4, 0x1D7CB}, {0x1E100, 0x1E12C}, {0x1E137, 0x1E13D}, -{0x1E14E, 0x1E14E}, {0x1E2C0, 0x1E2EB}, {0x1E800, 0x1E8C4}, {0x1E900, 0x1E943}, {0x1E94B, 0x1E94B}, {0x1EE00, 0x1EE03}, {0x1EE05, 0x1EE1F}, {0x1EE21, 0x1EE22}, {0x1EE24, 0x1EE24}, {0x1EE27, 0x1EE27}, -{0x1EE29, 0x1EE32}, {0x1EE34, 0x1EE37}, {0x1EE39, 0x1EE39}, {0x1EE3B, 0x1EE3B}, {0x1EE42, 0x1EE42}, {0x1EE47, 0x1EE47}, {0x1EE49, 0x1EE49}, {0x1EE4B, 0x1EE4B}, {0x1EE4D, 0x1EE4F}, {0x1EE51, 0x1EE52}, -{0x1EE54, 0x1EE54}, {0x1EE57, 0x1EE57}, {0x1EE59, 0x1EE59}, {0x1EE5B, 0x1EE5B}, {0x1EE5D, 0x1EE5D}, {0x1EE5F, 0x1EE5F}, {0x1EE61, 0x1EE62}, {0x1EE64, 0x1EE64}, {0x1EE67, 0x1EE6A}, {0x1EE6C, 0x1EE72}, -{0x1EE74, 0x1EE77}, {0x1EE79, 0x1EE7C}, {0x1EE7E, 0x1EE7E}, {0x1EE80, 0x1EE89}, {0x1EE8B, 0x1EE9B}, {0x1EEA1, 0x1EEA3}, {0x1EEA5, 0x1EEA9}, {0x1EEAB, 0x1EEBB}, {0x20000, 0x2A6DD}, {0x2A700, 0x2B734}, -{0x2B740, 0x2B81D}, {0x2B820, 0x2CEA1}, {0x2CEB0, 0x2EBE0}, {0x2F800, 0x2FA1D}, {0x30000, 0x3134A}, -}; - -static const std::vector> whitespace_ranges = { -{0x9, 0xD}, {0x1C, 0x20}, {0x85, 0x85}, {0xA0, 0xA0}, {0x1680, 0x1680}, {0x2000, 0x200A}, {0x2028, 0x2029}, {0x202F, 0x202F}, {0x205F, 0x205F}, {0x3000, 0x3000}, -}; - -static const std::vector> accent_mark_ranges = { -{0x300, 0x36F}, {0x483, 0x489}, {0x591, 0x5BD}, {0x5BF, 0x5BF}, {0x5C1, 0x5C2}, {0x5C4, 0x5C5}, {0x5C7, 0x5C7}, {0x610, 0x61A}, {0x64B, 0x65F}, {0x670, 0x670}, {0x6D6, 0x6DC}, {0x6DF, 0x6E4}, -{0x6E7, 0x6E8}, {0x6EA, 0x6ED}, {0x711, 0x711}, {0x730, 0x74A}, {0x7A6, 0x7B0}, {0x7EB, 0x7F3}, {0x7FD, 0x7FD}, {0x816, 0x819}, {0x81B, 0x823}, {0x825, 0x827}, {0x829, 0x82D}, {0x859, 0x85B}, -{0x8D3, 0x8E1}, {0x8E3, 0x903}, {0x93A, 0x93C}, {0x93E, 0x94F}, {0x951, 0x957}, {0x962, 0x963}, {0x981, 0x983}, {0x9BC, 0x9BC}, {0x9BE, 0x9C4}, {0x9C7, 0x9C8}, {0x9CB, 0x9CD}, {0x9D7, 0x9D7}, -{0x9E2, 0x9E3}, {0x9FE, 0x9FE}, {0xA01, 0xA03}, {0xA3C, 0xA3C}, {0xA3E, 0xA42}, {0xA47, 0xA48}, {0xA4B, 0xA4D}, {0xA51, 0xA51}, {0xA70, 0xA71}, {0xA75, 0xA75}, {0xA81, 0xA83}, {0xABC, 0xABC}, -{0xABE, 0xAC5}, {0xAC7, 0xAC9}, {0xACB, 0xACD}, {0xAE2, 0xAE3}, {0xAFA, 0xAFF}, {0xB01, 0xB03}, {0xB3C, 0xB3C}, {0xB3E, 0xB44}, {0xB47, 0xB48}, {0xB4B, 0xB4D}, {0xB55, 0xB57}, {0xB62, 0xB63}, -{0xB82, 0xB82}, {0xBBE, 0xBC2}, {0xBC6, 0xBC8}, {0xBCA, 0xBCD}, {0xBD7, 0xBD7}, {0xC00, 0xC04}, {0xC3E, 0xC44}, {0xC46, 0xC48}, {0xC4A, 0xC4D}, {0xC55, 0xC56}, {0xC62, 0xC63}, {0xC81, 0xC83}, -{0xCBC, 0xCBC}, {0xCBE, 0xCC4}, {0xCC6, 0xCC8}, {0xCCA, 0xCCD}, {0xCD5, 0xCD6}, {0xCE2, 0xCE3}, {0xD00, 0xD03}, {0xD3B, 0xD3C}, {0xD3E, 0xD44}, {0xD46, 0xD48}, {0xD4A, 0xD4D}, {0xD57, 0xD57}, -{0xD62, 0xD63}, {0xD81, 0xD83}, {0xDCA, 0xDCA}, {0xDCF, 0xDD4}, {0xDD6, 0xDD6}, {0xDD8, 0xDDF}, {0xDF2, 0xDF3}, {0xE31, 0xE31}, {0xE34, 0xE3A}, {0xE47, 0xE4E}, {0xEB1, 0xEB1}, {0xEB4, 0xEBC}, -{0xEC8, 0xECD}, {0xF18, 0xF19}, {0xF35, 0xF35}, {0xF37, 0xF37}, {0xF39, 0xF39}, {0xF3E, 0xF3F}, {0xF71, 0xF84}, {0xF86, 0xF87}, {0xF8D, 0xF97}, {0xF99, 0xFBC}, {0xFC6, 0xFC6}, {0x102B, 0x103E}, -{0x1056, 0x1059}, {0x105E, 0x1060}, {0x1062, 0x1064}, {0x1067, 0x106D}, {0x1071, 0x1074}, {0x1082, 0x108D}, {0x108F, 0x108F}, {0x109A, 0x109D}, {0x135D, 0x135F}, {0x1712, 0x1714}, {0x1732, 0x1734}, -{0x1752, 0x1753}, {0x1772, 0x1773}, {0x17B4, 0x17D3}, {0x17DD, 0x17DD}, {0x180B, 0x180D}, {0x1885, 0x1886}, {0x18A9, 0x18A9}, {0x1920, 0x192B}, {0x1930, 0x193B}, {0x1A17, 0x1A1B}, {0x1A55, 0x1A5E}, -{0x1A60, 0x1A7C}, {0x1A7F, 0x1A7F}, {0x1AB0, 0x1AC0}, {0x1B00, 0x1B04}, {0x1B34, 0x1B44}, {0x1B6B, 0x1B73}, {0x1B80, 0x1B82}, {0x1BA1, 0x1BAD}, {0x1BE6, 0x1BF3}, {0x1C24, 0x1C37}, {0x1CD0, 0x1CD2}, -{0x1CD4, 0x1CE8}, {0x1CED, 0x1CED}, {0x1CF4, 0x1CF4}, {0x1CF7, 0x1CF9}, {0x1DC0, 0x1DF9}, {0x1DFB, 0x1DFF}, {0x20D0, 0x20F0}, {0x2CEF, 0x2CF1}, {0x2D7F, 0x2D7F}, {0x2DE0, 0x2DFF}, {0x302A, 0x302F}, -{0x3099, 0x309A}, {0xA66F, 0xA672}, {0xA674, 0xA67D}, {0xA69E, 0xA69F}, {0xA6F0, 0xA6F1}, {0xA802, 0xA802}, {0xA806, 0xA806}, {0xA80B, 0xA80B}, {0xA823, 0xA827}, {0xA82C, 0xA82C}, {0xA880, 0xA881}, -{0xA8B4, 0xA8C5}, {0xA8E0, 0xA8F1}, {0xA8FF, 0xA8FF}, {0xA926, 0xA92D}, {0xA947, 0xA953}, {0xA980, 0xA983}, {0xA9B3, 0xA9C0}, {0xA9E5, 0xA9E5}, {0xAA29, 0xAA36}, {0xAA43, 0xAA43}, {0xAA4C, 0xAA4D}, -{0xAA7B, 0xAA7D}, {0xAAB0, 0xAAB0}, {0xAAB2, 0xAAB4}, {0xAAB7, 0xAAB8}, {0xAABE, 0xAABF}, {0xAAC1, 0xAAC1}, {0xAAEB, 0xAAEF}, {0xAAF5, 0xAAF6}, {0xABE3, 0xABEA}, {0xABEC, 0xABED}, {0xFB1E, 0xFB1E}, -{0xFE00, 0xFE0F}, {0xFE20, 0xFE2F}, {0x101FD, 0x101FD}, {0x102E0, 0x102E0}, {0x10376, 0x1037A}, {0x10A01, 0x10A03}, {0x10A05, 0x10A06}, {0x10A0C, 0x10A0F}, {0x10A38, 0x10A3A}, {0x10A3F, 0x10A3F}, -{0x10AE5, 0x10AE6}, {0x10D24, 0x10D27}, {0x10EAB, 0x10EAC}, {0x10F46, 0x10F50}, {0x11000, 0x11002}, {0x11038, 0x11046}, {0x1107F, 0x11082}, {0x110B0, 0x110BA}, {0x11100, 0x11102}, {0x11127, 0x11134}, -{0x11145, 0x11146}, {0x11173, 0x11173}, {0x11180, 0x11182}, {0x111B3, 0x111C0}, {0x111C9, 0x111CC}, {0x111CE, 0x111CF}, {0x1122C, 0x11237}, {0x1123E, 0x1123E}, {0x112DF, 0x112EA}, {0x11300, 0x11303}, -{0x1133B, 0x1133C}, {0x1133E, 0x11344}, {0x11347, 0x11348}, {0x1134B, 0x1134D}, {0x11357, 0x11357}, {0x11362, 0x11363}, {0x11366, 0x1136C}, {0x11370, 0x11374}, {0x11435, 0x11446}, {0x1145E, 0x1145E}, -{0x114B0, 0x114C3}, {0x115AF, 0x115B5}, {0x115B8, 0x115C0}, {0x115DC, 0x115DD}, {0x11630, 0x11640}, {0x116AB, 0x116B7}, {0x1171D, 0x1172B}, {0x1182C, 0x1183A}, {0x11930, 0x11935}, {0x11937, 0x11938}, -{0x1193B, 0x1193E}, {0x11940, 0x11940}, {0x11942, 0x11943}, {0x119D1, 0x119D7}, {0x119DA, 0x119E0}, {0x119E4, 0x119E4}, {0x11A01, 0x11A0A}, {0x11A33, 0x11A39}, {0x11A3B, 0x11A3E}, {0x11A47, 0x11A47}, -{0x11A51, 0x11A5B}, {0x11A8A, 0x11A99}, {0x11C2F, 0x11C36}, {0x11C38, 0x11C3F}, {0x11C92, 0x11CA7}, {0x11CA9, 0x11CB6}, {0x11D31, 0x11D36}, {0x11D3A, 0x11D3A}, {0x11D3C, 0x11D3D}, {0x11D3F, 0x11D45}, -{0x11D47, 0x11D47}, {0x11D8A, 0x11D8E}, {0x11D90, 0x11D91}, {0x11D93, 0x11D97}, {0x11EF3, 0x11EF6}, {0x16AF0, 0x16AF4}, {0x16B30, 0x16B36}, {0x16F4F, 0x16F4F}, {0x16F51, 0x16F87}, {0x16F8F, 0x16F92}, -{0x16FE4, 0x16FE4}, {0x16FF0, 0x16FF1}, {0x1BC9D, 0x1BC9E}, {0x1D165, 0x1D169}, {0x1D16D, 0x1D172}, {0x1D17B, 0x1D182}, {0x1D185, 0x1D18B}, {0x1D1AA, 0x1D1AD}, {0x1D242, 0x1D244}, {0x1DA00, 0x1DA36}, -{0x1DA3B, 0x1DA6C}, {0x1DA75, 0x1DA75}, {0x1DA84, 0x1DA84}, {0x1DA9B, 0x1DA9F}, {0x1DAA1, 0x1DAAF}, {0x1E000, 0x1E006}, {0x1E008, 0x1E018}, {0x1E01B, 0x1E021}, {0x1E023, 0x1E024}, {0x1E026, 0x1E02A}, -{0x1E130, 0x1E136}, {0x1E2EC, 0x1E2EF}, {0x1E8D0, 0x1E8D6}, {0x1E944, 0x1E94A}, {0xE0100, 0xE01EF}, -}; - -static const std::vector> punctuation_ranges = { -{0x21, 0x23}, {0x25, 0x2A}, {0x2C, 0x2F}, {0x3A, 0x3B}, {0x3F, 0x40}, {0x5B, 0x5D}, {0x5F, 0x5F}, {0x7B, 0x7B}, {0x7D, 0x7D}, {0xA1, 0xA1}, {0xA7, 0xA7}, {0xAB, 0xAB}, {0xB6, 0xB7}, {0xBB, 0xBB}, -{0xBF, 0xBF}, {0x37E, 0x37E}, {0x387, 0x387}, {0x55A, 0x55F}, {0x589, 0x58A}, {0x5BE, 0x5BE}, {0x5C0, 0x5C0}, {0x5C3, 0x5C3}, {0x5C6, 0x5C6}, {0x5F3, 0x5F4}, {0x609, 0x60A}, {0x60C, 0x60D}, -{0x61B, 0x61B}, {0x61E, 0x61F}, {0x66A, 0x66D}, {0x6D4, 0x6D4}, {0x700, 0x70D}, {0x7F7, 0x7F9}, {0x830, 0x83E}, {0x85E, 0x85E}, {0x964, 0x965}, {0x970, 0x970}, {0x9FD, 0x9FD}, {0xA76, 0xA76}, -{0xAF0, 0xAF0}, {0xC77, 0xC77}, {0xC84, 0xC84}, {0xDF4, 0xDF4}, {0xE4F, 0xE4F}, {0xE5A, 0xE5B}, {0xF04, 0xF12}, {0xF14, 0xF14}, {0xF3A, 0xF3D}, {0xF85, 0xF85}, {0xFD0, 0xFD4}, {0xFD9, 0xFDA}, -{0x104A, 0x104F}, {0x10FB, 0x10FB}, {0x1360, 0x1368}, {0x1400, 0x1400}, {0x166E, 0x166E}, {0x169B, 0x169C}, {0x16EB, 0x16ED}, {0x1735, 0x1736}, {0x17D4, 0x17D6}, {0x17D8, 0x17DA}, {0x1800, 0x180A}, -{0x1944, 0x1945}, {0x1A1E, 0x1A1F}, {0x1AA0, 0x1AA6}, {0x1AA8, 0x1AAD}, {0x1B5A, 0x1B60}, {0x1BFC, 0x1BFF}, {0x1C3B, 0x1C3F}, {0x1C7E, 0x1C7F}, {0x1CC0, 0x1CC7}, {0x1CD3, 0x1CD3}, {0x2010, 0x2027}, -{0x2030, 0x2043}, {0x2045, 0x2051}, {0x2053, 0x205E}, {0x207D, 0x207E}, {0x208D, 0x208E}, {0x2308, 0x230B}, {0x2329, 0x232A}, {0x2768, 0x2775}, {0x27C5, 0x27C6}, {0x27E6, 0x27EF}, {0x2983, 0x2998}, -{0x29D8, 0x29DB}, {0x29FC, 0x29FD}, {0x2CF9, 0x2CFC}, {0x2CFE, 0x2CFF}, {0x2D70, 0x2D70}, {0x2E00, 0x2E2E}, {0x2E30, 0x2E4F}, {0x2E52, 0x2E52}, {0x3001, 0x3003}, {0x3008, 0x3011}, {0x3014, 0x301F}, -{0x3030, 0x3030}, {0x303D, 0x303D}, {0x30A0, 0x30A0}, {0x30FB, 0x30FB}, {0xA4FE, 0xA4FF}, {0xA60D, 0xA60F}, {0xA673, 0xA673}, {0xA67E, 0xA67E}, {0xA6F2, 0xA6F7}, {0xA874, 0xA877}, {0xA8CE, 0xA8CF}, -{0xA8F8, 0xA8FA}, {0xA8FC, 0xA8FC}, {0xA92E, 0xA92F}, {0xA95F, 0xA95F}, {0xA9C1, 0xA9CD}, {0xA9DE, 0xA9DF}, {0xAA5C, 0xAA5F}, {0xAADE, 0xAADF}, {0xAAF0, 0xAAF1}, {0xABEB, 0xABEB}, {0xFD3E, 0xFD3F}, -{0xFE10, 0xFE19}, {0xFE30, 0xFE52}, {0xFE54, 0xFE61}, {0xFE63, 0xFE63}, {0xFE68, 0xFE68}, {0xFE6A, 0xFE6B}, {0xFF01, 0xFF03}, {0xFF05, 0xFF0A}, {0xFF0C, 0xFF0F}, {0xFF1A, 0xFF1B}, {0xFF1F, 0xFF20}, -{0xFF3B, 0xFF3D}, {0xFF3F, 0xFF3F}, {0xFF5B, 0xFF5B}, {0xFF5D, 0xFF5D}, {0xFF5F, 0xFF65}, {0x10100, 0x10102}, {0x1039F, 0x1039F}, {0x103D0, 0x103D0}, {0x1056F, 0x1056F}, {0x10857, 0x10857}, -{0x1091F, 0x1091F}, {0x1093F, 0x1093F}, {0x10A50, 0x10A58}, {0x10A7F, 0x10A7F}, {0x10AF0, 0x10AF6}, {0x10B39, 0x10B3F}, {0x10B99, 0x10B9C}, {0x10EAD, 0x10EAD}, {0x10F55, 0x10F59}, {0x11047, 0x1104D}, -{0x110BB, 0x110BC}, {0x110BE, 0x110C1}, {0x11140, 0x11143}, {0x11174, 0x11175}, {0x111C5, 0x111C8}, {0x111CD, 0x111CD}, {0x111DB, 0x111DB}, {0x111DD, 0x111DF}, {0x11238, 0x1123D}, {0x112A9, 0x112A9}, -{0x1144B, 0x1144F}, {0x1145A, 0x1145B}, {0x1145D, 0x1145D}, {0x114C6, 0x114C6}, {0x115C1, 0x115D7}, {0x11641, 0x11643}, {0x11660, 0x1166C}, {0x1173C, 0x1173E}, {0x1183B, 0x1183B}, {0x11944, 0x11946}, -{0x119E2, 0x119E2}, {0x11A3F, 0x11A46}, {0x11A9A, 0x11A9C}, {0x11A9E, 0x11AA2}, {0x11C41, 0x11C45}, {0x11C70, 0x11C71}, {0x11EF7, 0x11EF8}, {0x11FFF, 0x11FFF}, {0x12470, 0x12474}, {0x16A6E, 0x16A6F}, -{0x16AF5, 0x16AF5}, {0x16B37, 0x16B3B}, {0x16B44, 0x16B44}, {0x16E97, 0x16E9A}, {0x16FE2, 0x16FE2}, {0x1BC9F, 0x1BC9F}, {0x1DA87, 0x1DA8B}, {0x1E95E, 0x1E95F}, -}; - -static const std::vector> symbol_ranges = { -{0x24, 0x24}, {0x2B, 0x2B}, {0x3C, 0x3E}, {0x5E, 0x5E}, {0x60, 0x60}, {0x7C, 0x7C}, {0x7E, 0x7E}, {0xA2, 0xA6}, {0xA8, 0xA9}, {0xAC, 0xAC}, {0xAE, 0xB1}, {0xB4, 0xB4}, {0xB8, 0xB8}, {0xD7, 0xD7}, -{0xF7, 0xF7}, {0x2C2, 0x2C5}, {0x2D2, 0x2DF}, {0x2E5, 0x2EB}, {0x2ED, 0x2ED}, {0x2EF, 0x2FF}, {0x375, 0x375}, {0x384, 0x385}, {0x3F6, 0x3F6}, {0x482, 0x482}, {0x58D, 0x58F}, {0x606, 0x608}, -{0x60B, 0x60B}, {0x60E, 0x60F}, {0x6DE, 0x6DE}, {0x6E9, 0x6E9}, {0x6FD, 0x6FE}, {0x7F6, 0x7F6}, {0x7FE, 0x7FF}, {0x9F2, 0x9F3}, {0x9FA, 0x9FB}, {0xAF1, 0xAF1}, {0xB70, 0xB70}, {0xBF3, 0xBFA}, -{0xC7F, 0xC7F}, {0xD4F, 0xD4F}, {0xD79, 0xD79}, {0xE3F, 0xE3F}, {0xF01, 0xF03}, {0xF13, 0xF13}, {0xF15, 0xF17}, {0xF1A, 0xF1F}, {0xF34, 0xF34}, {0xF36, 0xF36}, {0xF38, 0xF38}, {0xFBE, 0xFC5}, -{0xFC7, 0xFCC}, {0xFCE, 0xFCF}, {0xFD5, 0xFD8}, {0x109E, 0x109F}, {0x1390, 0x1399}, {0x166D, 0x166D}, {0x17DB, 0x17DB}, {0x1940, 0x1940}, {0x19DE, 0x19FF}, {0x1B61, 0x1B6A}, {0x1B74, 0x1B7C}, -{0x1FBD, 0x1FBD}, {0x1FBF, 0x1FC1}, {0x1FCD, 0x1FCF}, {0x1FDD, 0x1FDF}, {0x1FED, 0x1FEF}, {0x1FFD, 0x1FFE}, {0x2044, 0x2044}, {0x2052, 0x2052}, {0x207A, 0x207C}, {0x208A, 0x208C}, {0x20A0, 0x20BF}, -{0x2100, 0x2101}, {0x2103, 0x2106}, {0x2108, 0x2109}, {0x2114, 0x2114}, {0x2116, 0x2118}, {0x211E, 0x2123}, {0x2125, 0x2125}, {0x2127, 0x2127}, {0x2129, 0x2129}, {0x212E, 0x212E}, {0x213A, 0x213B}, -{0x2140, 0x2144}, {0x214A, 0x214D}, {0x214F, 0x214F}, {0x218A, 0x218B}, {0x2190, 0x2307}, {0x230C, 0x2328}, {0x232B, 0x2426}, {0x2440, 0x244A}, {0x249C, 0x24E9}, {0x2500, 0x2767}, {0x2794, 0x27C4}, -{0x27C7, 0x27E5}, {0x27F0, 0x2982}, {0x2999, 0x29D7}, {0x29DC, 0x29FB}, {0x29FE, 0x2B73}, {0x2B76, 0x2B95}, {0x2B97, 0x2BFF}, {0x2CE5, 0x2CEA}, {0x2E50, 0x2E51}, {0x2E80, 0x2E99}, {0x2E9B, 0x2EF3}, -{0x2F00, 0x2FD5}, {0x2FF0, 0x2FFB}, {0x3004, 0x3004}, {0x3012, 0x3013}, {0x3020, 0x3020}, {0x3036, 0x3037}, {0x303E, 0x303F}, {0x309B, 0x309C}, {0x3190, 0x3191}, {0x3196, 0x319F}, {0x31C0, 0x31E3}, -{0x3200, 0x321E}, {0x322A, 0x3247}, {0x3250, 0x3250}, {0x3260, 0x327F}, {0x328A, 0x32B0}, {0x32C0, 0x33FF}, {0x4DC0, 0x4DFF}, {0xA490, 0xA4C6}, {0xA700, 0xA716}, {0xA720, 0xA721}, {0xA789, 0xA78A}, -{0xA828, 0xA82B}, {0xA836, 0xA839}, {0xAA77, 0xAA79}, {0xAB5B, 0xAB5B}, {0xAB6A, 0xAB6B}, {0xFB29, 0xFB29}, {0xFBB2, 0xFBC1}, {0xFDFC, 0xFDFD}, {0xFE62, 0xFE62}, {0xFE64, 0xFE66}, {0xFE69, 0xFE69}, -{0xFF04, 0xFF04}, {0xFF0B, 0xFF0B}, {0xFF1C, 0xFF1E}, {0xFF3E, 0xFF3E}, {0xFF40, 0xFF40}, {0xFF5C, 0xFF5C}, {0xFF5E, 0xFF5E}, {0xFFE0, 0xFFE6}, {0xFFE8, 0xFFEE}, {0xFFFC, 0xFFFD}, {0x10137, 0x1013F}, -{0x10179, 0x10189}, {0x1018C, 0x1018E}, {0x10190, 0x1019C}, {0x101A0, 0x101A0}, {0x101D0, 0x101FC}, {0x10877, 0x10878}, {0x10AC8, 0x10AC8}, {0x1173F, 0x1173F}, {0x11FD5, 0x11FF1}, {0x16B3C, 0x16B3F}, -{0x16B45, 0x16B45}, {0x1BC9C, 0x1BC9C}, {0x1D000, 0x1D0F5}, {0x1D100, 0x1D126}, {0x1D129, 0x1D164}, {0x1D16A, 0x1D16C}, {0x1D183, 0x1D184}, {0x1D18C, 0x1D1A9}, {0x1D1AE, 0x1D1E8}, {0x1D200, 0x1D241}, -{0x1D245, 0x1D245}, {0x1D300, 0x1D356}, {0x1D6C1, 0x1D6C1}, {0x1D6DB, 0x1D6DB}, {0x1D6FB, 0x1D6FB}, {0x1D715, 0x1D715}, {0x1D735, 0x1D735}, {0x1D74F, 0x1D74F}, {0x1D76F, 0x1D76F}, {0x1D789, 0x1D789}, -{0x1D7A9, 0x1D7A9}, {0x1D7C3, 0x1D7C3}, {0x1D800, 0x1D9FF}, {0x1DA37, 0x1DA3A}, {0x1DA6D, 0x1DA74}, {0x1DA76, 0x1DA83}, {0x1DA85, 0x1DA86}, {0x1E14F, 0x1E14F}, {0x1E2FF, 0x1E2FF}, {0x1ECAC, 0x1ECAC}, -{0x1ECB0, 0x1ECB0}, {0x1ED2E, 0x1ED2E}, {0x1EEF0, 0x1EEF1}, {0x1F000, 0x1F02B}, {0x1F030, 0x1F093}, {0x1F0A0, 0x1F0AE}, {0x1F0B1, 0x1F0BF}, {0x1F0C1, 0x1F0CF}, {0x1F0D1, 0x1F0F5}, {0x1F10D, 0x1F1AD}, -{0x1F1E6, 0x1F202}, {0x1F210, 0x1F23B}, {0x1F240, 0x1F248}, {0x1F250, 0x1F251}, {0x1F260, 0x1F265}, {0x1F300, 0x1F6D7}, {0x1F6E0, 0x1F6EC}, {0x1F6F0, 0x1F6FC}, {0x1F700, 0x1F773}, {0x1F780, 0x1F7D8}, -{0x1F7E0, 0x1F7EB}, {0x1F800, 0x1F80B}, {0x1F810, 0x1F847}, {0x1F850, 0x1F859}, {0x1F860, 0x1F887}, {0x1F890, 0x1F8AD}, {0x1F8B0, 0x1F8B1}, {0x1F900, 0x1F978}, {0x1F97A, 0x1F9CB}, {0x1F9CD, 0x1FA53}, -{0x1FA60, 0x1FA6D}, {0x1FA70, 0x1FA74}, {0x1FA78, 0x1FA7A}, {0x1FA80, 0x1FA86}, {0x1FA90, 0x1FAA8}, {0x1FAB0, 0x1FAB6}, {0x1FAC0, 0x1FAC2}, {0x1FAD0, 0x1FAD6}, {0x1FB00, 0x1FB92}, {0x1FB94, 0x1FBCA}, -}; - -static const std::vector> control_ranges = { -{0x0, 0x8}, {0xE, 0x1B}, {0x7F, 0x84}, {0x86, 0x9F}, {0xAD, 0xAD}, {0x378, 0x379}, {0x380, 0x383}, {0x38B, 0x38B}, {0x38D, 0x38D}, {0x3A2, 0x3A2}, {0x530, 0x530}, {0x557, 0x558}, {0x58B, 0x58C}, -{0x590, 0x590}, {0x5C8, 0x5CF}, {0x5EB, 0x5EE}, {0x5F5, 0x605}, {0x61C, 0x61D}, {0x6DD, 0x6DD}, {0x70E, 0x70F}, {0x74B, 0x74C}, {0x7B2, 0x7BF}, {0x7FB, 0x7FC}, {0x82E, 0x82F}, {0x83F, 0x83F}, -{0x85C, 0x85D}, {0x85F, 0x85F}, {0x86B, 0x89F}, {0x8B5, 0x8B5}, {0x8C8, 0x8D2}, {0x8E2, 0x8E2}, {0x984, 0x984}, {0x98D, 0x98E}, {0x991, 0x992}, {0x9A9, 0x9A9}, {0x9B1, 0x9B1}, {0x9B3, 0x9B5}, -{0x9BA, 0x9BB}, {0x9C5, 0x9C6}, {0x9C9, 0x9CA}, {0x9CF, 0x9D6}, {0x9D8, 0x9DB}, {0x9DE, 0x9DE}, {0x9E4, 0x9E5}, {0x9FF, 0xA00}, {0xA04, 0xA04}, {0xA0B, 0xA0E}, {0xA11, 0xA12}, {0xA29, 0xA29}, -{0xA31, 0xA31}, {0xA34, 0xA34}, {0xA37, 0xA37}, {0xA3A, 0xA3B}, {0xA3D, 0xA3D}, {0xA43, 0xA46}, {0xA49, 0xA4A}, {0xA4E, 0xA50}, {0xA52, 0xA58}, {0xA5D, 0xA5D}, {0xA5F, 0xA65}, {0xA77, 0xA80}, -{0xA84, 0xA84}, {0xA8E, 0xA8E}, {0xA92, 0xA92}, {0xAA9, 0xAA9}, {0xAB1, 0xAB1}, {0xAB4, 0xAB4}, {0xABA, 0xABB}, {0xAC6, 0xAC6}, {0xACA, 0xACA}, {0xACE, 0xACF}, {0xAD1, 0xADF}, {0xAE4, 0xAE5}, -{0xAF2, 0xAF8}, {0xB00, 0xB00}, {0xB04, 0xB04}, {0xB0D, 0xB0E}, {0xB11, 0xB12}, {0xB29, 0xB29}, {0xB31, 0xB31}, {0xB34, 0xB34}, {0xB3A, 0xB3B}, {0xB45, 0xB46}, {0xB49, 0xB4A}, {0xB4E, 0xB54}, -{0xB58, 0xB5B}, {0xB5E, 0xB5E}, {0xB64, 0xB65}, {0xB78, 0xB81}, {0xB84, 0xB84}, {0xB8B, 0xB8D}, {0xB91, 0xB91}, {0xB96, 0xB98}, {0xB9B, 0xB9B}, {0xB9D, 0xB9D}, {0xBA0, 0xBA2}, {0xBA5, 0xBA7}, -{0xBAB, 0xBAD}, {0xBBA, 0xBBD}, {0xBC3, 0xBC5}, {0xBC9, 0xBC9}, {0xBCE, 0xBCF}, {0xBD1, 0xBD6}, {0xBD8, 0xBE5}, {0xBFB, 0xBFF}, {0xC0D, 0xC0D}, {0xC11, 0xC11}, {0xC29, 0xC29}, {0xC3A, 0xC3C}, -{0xC45, 0xC45}, {0xC49, 0xC49}, {0xC4E, 0xC54}, {0xC57, 0xC57}, {0xC5B, 0xC5F}, {0xC64, 0xC65}, {0xC70, 0xC76}, {0xC8D, 0xC8D}, {0xC91, 0xC91}, {0xCA9, 0xCA9}, {0xCB4, 0xCB4}, {0xCBA, 0xCBB}, -{0xCC5, 0xCC5}, {0xCC9, 0xCC9}, {0xCCE, 0xCD4}, {0xCD7, 0xCDD}, {0xCDF, 0xCDF}, {0xCE4, 0xCE5}, {0xCF0, 0xCF0}, {0xCF3, 0xCFF}, {0xD0D, 0xD0D}, {0xD11, 0xD11}, {0xD45, 0xD45}, {0xD49, 0xD49}, -{0xD50, 0xD53}, {0xD64, 0xD65}, {0xD80, 0xD80}, {0xD84, 0xD84}, {0xD97, 0xD99}, {0xDB2, 0xDB2}, {0xDBC, 0xDBC}, {0xDBE, 0xDBF}, {0xDC7, 0xDC9}, {0xDCB, 0xDCE}, {0xDD5, 0xDD5}, {0xDD7, 0xDD7}, -{0xDE0, 0xDE5}, {0xDF0, 0xDF1}, {0xDF5, 0xE00}, {0xE3B, 0xE3E}, {0xE5C, 0xE80}, {0xE83, 0xE83}, {0xE85, 0xE85}, {0xE8B, 0xE8B}, {0xEA4, 0xEA4}, {0xEA6, 0xEA6}, {0xEBE, 0xEBF}, {0xEC5, 0xEC5}, -{0xEC7, 0xEC7}, {0xECE, 0xECF}, {0xEDA, 0xEDB}, {0xEE0, 0xEFF}, {0xF48, 0xF48}, {0xF6D, 0xF70}, {0xF98, 0xF98}, {0xFBD, 0xFBD}, {0xFCD, 0xFCD}, {0xFDB, 0xFFF}, {0x10C6, 0x10C6}, {0x10C8, 0x10CC}, -{0x10CE, 0x10CF}, {0x1249, 0x1249}, {0x124E, 0x124F}, {0x1257, 0x1257}, {0x1259, 0x1259}, {0x125E, 0x125F}, {0x1289, 0x1289}, {0x128E, 0x128F}, {0x12B1, 0x12B1}, {0x12B6, 0x12B7}, {0x12BF, 0x12BF}, -{0x12C1, 0x12C1}, {0x12C6, 0x12C7}, {0x12D7, 0x12D7}, {0x1311, 0x1311}, {0x1316, 0x1317}, {0x135B, 0x135C}, {0x137D, 0x137F}, {0x139A, 0x139F}, {0x13F6, 0x13F7}, {0x13FE, 0x13FF}, {0x169D, 0x169F}, -{0x16F9, 0x16FF}, {0x170D, 0x170D}, {0x1715, 0x171F}, {0x1737, 0x173F}, {0x1754, 0x175F}, {0x176D, 0x176D}, {0x1771, 0x1771}, {0x1774, 0x177F}, {0x17DE, 0x17DF}, {0x17EA, 0x17EF}, {0x17FA, 0x17FF}, -{0x180E, 0x180F}, {0x181A, 0x181F}, {0x1879, 0x187F}, {0x18AB, 0x18AF}, {0x18F6, 0x18FF}, {0x191F, 0x191F}, {0x192C, 0x192F}, {0x193C, 0x193F}, {0x1941, 0x1943}, {0x196E, 0x196F}, {0x1975, 0x197F}, -{0x19AC, 0x19AF}, {0x19CA, 0x19CF}, {0x19DB, 0x19DD}, {0x1A1C, 0x1A1D}, {0x1A5F, 0x1A5F}, {0x1A7D, 0x1A7E}, {0x1A8A, 0x1A8F}, {0x1A9A, 0x1A9F}, {0x1AAE, 0x1AAF}, {0x1AC1, 0x1AFF}, {0x1B4C, 0x1B4F}, -{0x1B7D, 0x1B7F}, {0x1BF4, 0x1BFB}, {0x1C38, 0x1C3A}, {0x1C4A, 0x1C4C}, {0x1C89, 0x1C8F}, {0x1CBB, 0x1CBC}, {0x1CC8, 0x1CCF}, {0x1CFB, 0x1CFF}, {0x1DFA, 0x1DFA}, {0x1F16, 0x1F17}, {0x1F1E, 0x1F1F}, -{0x1F46, 0x1F47}, {0x1F4E, 0x1F4F}, {0x1F58, 0x1F58}, {0x1F5A, 0x1F5A}, {0x1F5C, 0x1F5C}, {0x1F5E, 0x1F5E}, {0x1F7E, 0x1F7F}, {0x1FB5, 0x1FB5}, {0x1FC5, 0x1FC5}, {0x1FD4, 0x1FD5}, {0x1FDC, 0x1FDC}, -{0x1FF0, 0x1FF1}, {0x1FF5, 0x1FF5}, {0x1FFF, 0x1FFF}, {0x200B, 0x200F}, {0x202A, 0x202E}, {0x2060, 0x206F}, {0x2072, 0x2073}, {0x208F, 0x208F}, {0x209D, 0x209F}, {0x20C0, 0x20CF}, {0x20F1, 0x20FF}, -{0x218C, 0x218F}, {0x2427, 0x243F}, {0x244B, 0x245F}, {0x2B74, 0x2B75}, {0x2B96, 0x2B96}, {0x2C2F, 0x2C2F}, {0x2C5F, 0x2C5F}, {0x2CF4, 0x2CF8}, {0x2D26, 0x2D26}, {0x2D28, 0x2D2C}, {0x2D2E, 0x2D2F}, -{0x2D68, 0x2D6E}, {0x2D71, 0x2D7E}, {0x2D97, 0x2D9F}, {0x2DA7, 0x2DA7}, {0x2DAF, 0x2DAF}, {0x2DB7, 0x2DB7}, {0x2DBF, 0x2DBF}, {0x2DC7, 0x2DC7}, {0x2DCF, 0x2DCF}, {0x2DD7, 0x2DD7}, {0x2DDF, 0x2DDF}, -{0x2E53, 0x2E7F}, {0x2E9A, 0x2E9A}, {0x2EF4, 0x2EFF}, {0x2FD6, 0x2FEF}, {0x2FFC, 0x2FFF}, {0x3040, 0x3040}, {0x3097, 0x3098}, {0x3100, 0x3104}, {0x3130, 0x3130}, {0x318F, 0x318F}, {0x31E4, 0x31EF}, -{0x321F, 0x321F}, {0x9FFD, 0x9FFF}, {0xA48D, 0xA48F}, {0xA4C7, 0xA4CF}, {0xA62C, 0xA63F}, {0xA6F8, 0xA6FF}, {0xA7C0, 0xA7C1}, {0xA7CB, 0xA7F4}, {0xA82D, 0xA82F}, {0xA83A, 0xA83F}, {0xA878, 0xA87F}, -{0xA8C6, 0xA8CD}, {0xA8DA, 0xA8DF}, {0xA954, 0xA95E}, {0xA97D, 0xA97F}, {0xA9CE, 0xA9CE}, {0xA9DA, 0xA9DD}, {0xA9FF, 0xA9FF}, {0xAA37, 0xAA3F}, {0xAA4E, 0xAA4F}, {0xAA5A, 0xAA5B}, {0xAAC3, 0xAADA}, -{0xAAF7, 0xAB00}, {0xAB07, 0xAB08}, {0xAB0F, 0xAB10}, {0xAB17, 0xAB1F}, {0xAB27, 0xAB27}, {0xAB2F, 0xAB2F}, {0xAB6C, 0xAB6F}, {0xABEE, 0xABEF}, {0xABFA, 0xABFF}, {0xD7A4, 0xD7AF}, {0xD7C7, 0xD7CA}, -{0xD7FC, 0xF8FF}, {0xFA6E, 0xFA6F}, {0xFADA, 0xFAFF}, {0xFB07, 0xFB12}, {0xFB18, 0xFB1C}, {0xFB37, 0xFB37}, {0xFB3D, 0xFB3D}, {0xFB3F, 0xFB3F}, {0xFB42, 0xFB42}, {0xFB45, 0xFB45}, {0xFBC2, 0xFBD2}, -{0xFD40, 0xFD4F}, {0xFD90, 0xFD91}, {0xFDC8, 0xFDEF}, {0xFDFE, 0xFDFF}, {0xFE1A, 0xFE1F}, {0xFE53, 0xFE53}, {0xFE67, 0xFE67}, {0xFE6C, 0xFE6F}, {0xFE75, 0xFE75}, {0xFEFD, 0xFF00}, {0xFFBF, 0xFFC1}, -{0xFFC8, 0xFFC9}, {0xFFD0, 0xFFD1}, {0xFFD8, 0xFFD9}, {0xFFDD, 0xFFDF}, {0xFFE7, 0xFFE7}, {0xFFEF, 0xFFFB}, {0xFFFE, 0xFFFF}, {0x1000C, 0x1000C}, {0x10027, 0x10027}, {0x1003B, 0x1003B}, -{0x1003E, 0x1003E}, {0x1004E, 0x1004F}, {0x1005E, 0x1007F}, {0x100FB, 0x100FF}, {0x10103, 0x10106}, {0x10134, 0x10136}, {0x1018F, 0x1018F}, {0x1019D, 0x1019F}, {0x101A1, 0x101CF}, {0x101FE, 0x1027F}, -{0x1029D, 0x1029F}, {0x102D1, 0x102DF}, {0x102FC, 0x102FF}, {0x10324, 0x1032C}, {0x1034B, 0x1034F}, {0x1037B, 0x1037F}, {0x1039E, 0x1039E}, {0x103C4, 0x103C7}, {0x103D6, 0x103FF}, {0x1049E, 0x1049F}, -{0x104AA, 0x104AF}, {0x104D4, 0x104D7}, {0x104FC, 0x104FF}, {0x10528, 0x1052F}, {0x10564, 0x1056E}, {0x10570, 0x105FF}, {0x10737, 0x1073F}, {0x10756, 0x1075F}, {0x10768, 0x107FF}, {0x10806, 0x10807}, -{0x10809, 0x10809}, {0x10836, 0x10836}, {0x10839, 0x1083B}, {0x1083D, 0x1083E}, {0x10856, 0x10856}, {0x1089F, 0x108A6}, {0x108B0, 0x108DF}, {0x108F3, 0x108F3}, {0x108F6, 0x108FA}, {0x1091C, 0x1091E}, -{0x1093A, 0x1093E}, {0x10940, 0x1097F}, {0x109B8, 0x109BB}, {0x109D0, 0x109D1}, {0x10A04, 0x10A04}, {0x10A07, 0x10A0B}, {0x10A14, 0x10A14}, {0x10A18, 0x10A18}, {0x10A36, 0x10A37}, {0x10A3B, 0x10A3E}, -{0x10A49, 0x10A4F}, {0x10A59, 0x10A5F}, {0x10AA0, 0x10ABF}, {0x10AE7, 0x10AEA}, {0x10AF7, 0x10AFF}, {0x10B36, 0x10B38}, {0x10B56, 0x10B57}, {0x10B73, 0x10B77}, {0x10B92, 0x10B98}, {0x10B9D, 0x10BA8}, -{0x10BB0, 0x10BFF}, {0x10C49, 0x10C7F}, {0x10CB3, 0x10CBF}, {0x10CF3, 0x10CF9}, {0x10D28, 0x10D2F}, {0x10D3A, 0x10E5F}, {0x10E7F, 0x10E7F}, {0x10EAA, 0x10EAA}, {0x10EAE, 0x10EAF}, {0x10EB2, 0x10EFF}, -{0x10F28, 0x10F2F}, {0x10F5A, 0x10FAF}, {0x10FCC, 0x10FDF}, {0x10FF7, 0x10FFF}, {0x1104E, 0x11051}, {0x11070, 0x1107E}, {0x110BD, 0x110BD}, {0x110C2, 0x110CF}, {0x110E9, 0x110EF}, {0x110FA, 0x110FF}, -{0x11135, 0x11135}, {0x11148, 0x1114F}, {0x11177, 0x1117F}, {0x111E0, 0x111E0}, {0x111F5, 0x111FF}, {0x11212, 0x11212}, {0x1123F, 0x1127F}, {0x11287, 0x11287}, {0x11289, 0x11289}, {0x1128E, 0x1128E}, -{0x1129E, 0x1129E}, {0x112AA, 0x112AF}, {0x112EB, 0x112EF}, {0x112FA, 0x112FF}, {0x11304, 0x11304}, {0x1130D, 0x1130E}, {0x11311, 0x11312}, {0x11329, 0x11329}, {0x11331, 0x11331}, {0x11334, 0x11334}, -{0x1133A, 0x1133A}, {0x11345, 0x11346}, {0x11349, 0x1134A}, {0x1134E, 0x1134F}, {0x11351, 0x11356}, {0x11358, 0x1135C}, {0x11364, 0x11365}, {0x1136D, 0x1136F}, {0x11375, 0x113FF}, {0x1145C, 0x1145C}, -{0x11462, 0x1147F}, {0x114C8, 0x114CF}, {0x114DA, 0x1157F}, {0x115B6, 0x115B7}, {0x115DE, 0x115FF}, {0x11645, 0x1164F}, {0x1165A, 0x1165F}, {0x1166D, 0x1167F}, {0x116B9, 0x116BF}, {0x116CA, 0x116FF}, -{0x1171B, 0x1171C}, {0x1172C, 0x1172F}, {0x11740, 0x117FF}, {0x1183C, 0x1189F}, {0x118F3, 0x118FE}, {0x11907, 0x11908}, {0x1190A, 0x1190B}, {0x11914, 0x11914}, {0x11917, 0x11917}, {0x11936, 0x11936}, -{0x11939, 0x1193A}, {0x11947, 0x1194F}, {0x1195A, 0x1199F}, {0x119A8, 0x119A9}, {0x119D8, 0x119D9}, {0x119E5, 0x119FF}, {0x11A48, 0x11A4F}, {0x11AA3, 0x11ABF}, {0x11AF9, 0x11BFF}, {0x11C09, 0x11C09}, -{0x11C37, 0x11C37}, {0x11C46, 0x11C4F}, {0x11C6D, 0x11C6F}, {0x11C90, 0x11C91}, {0x11CA8, 0x11CA8}, {0x11CB7, 0x11CFF}, {0x11D07, 0x11D07}, {0x11D0A, 0x11D0A}, {0x11D37, 0x11D39}, {0x11D3B, 0x11D3B}, -{0x11D3E, 0x11D3E}, {0x11D48, 0x11D4F}, {0x11D5A, 0x11D5F}, {0x11D66, 0x11D66}, {0x11D69, 0x11D69}, {0x11D8F, 0x11D8F}, {0x11D92, 0x11D92}, {0x11D99, 0x11D9F}, {0x11DAA, 0x11EDF}, {0x11EF9, 0x11FAF}, -{0x11FB1, 0x11FBF}, {0x11FF2, 0x11FFE}, {0x1239A, 0x123FF}, {0x1246F, 0x1246F}, {0x12475, 0x1247F}, {0x12544, 0x12FFF}, {0x1342F, 0x143FF}, {0x14647, 0x167FF}, {0x16A39, 0x16A3F}, {0x16A5F, 0x16A5F}, -{0x16A6A, 0x16A6D}, {0x16A70, 0x16ACF}, {0x16AEE, 0x16AEF}, {0x16AF6, 0x16AFF}, {0x16B46, 0x16B4F}, {0x16B5A, 0x16B5A}, {0x16B62, 0x16B62}, {0x16B78, 0x16B7C}, {0x16B90, 0x16E3F}, {0x16E9B, 0x16EFF}, -{0x16F4B, 0x16F4E}, {0x16F88, 0x16F8E}, {0x16FA0, 0x16FDF}, {0x16FE5, 0x16FEF}, {0x16FF2, 0x16FFF}, {0x187F8, 0x187FF}, {0x18CD6, 0x18CFF}, {0x18D09, 0x1AFFF}, {0x1B11F, 0x1B14F}, {0x1B153, 0x1B163}, -{0x1B168, 0x1B16F}, {0x1B2FC, 0x1BBFF}, {0x1BC6B, 0x1BC6F}, {0x1BC7D, 0x1BC7F}, {0x1BC89, 0x1BC8F}, {0x1BC9A, 0x1BC9B}, {0x1BCA0, 0x1CFFF}, {0x1D0F6, 0x1D0FF}, {0x1D127, 0x1D128}, {0x1D173, 0x1D17A}, -{0x1D1E9, 0x1D1FF}, {0x1D246, 0x1D2DF}, {0x1D2F4, 0x1D2FF}, {0x1D357, 0x1D35F}, {0x1D379, 0x1D3FF}, {0x1D455, 0x1D455}, {0x1D49D, 0x1D49D}, {0x1D4A0, 0x1D4A1}, {0x1D4A3, 0x1D4A4}, {0x1D4A7, 0x1D4A8}, -{0x1D4AD, 0x1D4AD}, {0x1D4BA, 0x1D4BA}, {0x1D4BC, 0x1D4BC}, {0x1D4C4, 0x1D4C4}, {0x1D506, 0x1D506}, {0x1D50B, 0x1D50C}, {0x1D515, 0x1D515}, {0x1D51D, 0x1D51D}, {0x1D53A, 0x1D53A}, {0x1D53F, 0x1D53F}, -{0x1D545, 0x1D545}, {0x1D547, 0x1D549}, {0x1D551, 0x1D551}, {0x1D6A6, 0x1D6A7}, {0x1D7CC, 0x1D7CD}, {0x1DA8C, 0x1DA9A}, {0x1DAA0, 0x1DAA0}, {0x1DAB0, 0x1DFFF}, {0x1E007, 0x1E007}, {0x1E019, 0x1E01A}, -{0x1E022, 0x1E022}, {0x1E025, 0x1E025}, {0x1E02B, 0x1E0FF}, {0x1E12D, 0x1E12F}, {0x1E13E, 0x1E13F}, {0x1E14A, 0x1E14D}, {0x1E150, 0x1E2BF}, {0x1E2FA, 0x1E2FE}, {0x1E300, 0x1E7FF}, {0x1E8C5, 0x1E8C6}, -{0x1E8D7, 0x1E8FF}, {0x1E94C, 0x1E94F}, {0x1E95A, 0x1E95D}, {0x1E960, 0x1EC70}, {0x1ECB5, 0x1ED00}, {0x1ED3E, 0x1EDFF}, {0x1EE04, 0x1EE04}, {0x1EE20, 0x1EE20}, {0x1EE23, 0x1EE23}, {0x1EE25, 0x1EE26}, -{0x1EE28, 0x1EE28}, {0x1EE33, 0x1EE33}, {0x1EE38, 0x1EE38}, {0x1EE3A, 0x1EE3A}, {0x1EE3C, 0x1EE41}, {0x1EE43, 0x1EE46}, {0x1EE48, 0x1EE48}, {0x1EE4A, 0x1EE4A}, {0x1EE4C, 0x1EE4C}, {0x1EE50, 0x1EE50}, -{0x1EE53, 0x1EE53}, {0x1EE55, 0x1EE56}, {0x1EE58, 0x1EE58}, {0x1EE5A, 0x1EE5A}, {0x1EE5C, 0x1EE5C}, {0x1EE5E, 0x1EE5E}, {0x1EE60, 0x1EE60}, {0x1EE63, 0x1EE63}, {0x1EE65, 0x1EE66}, {0x1EE6B, 0x1EE6B}, -{0x1EE73, 0x1EE73}, {0x1EE78, 0x1EE78}, {0x1EE7D, 0x1EE7D}, {0x1EE7F, 0x1EE7F}, {0x1EE8A, 0x1EE8A}, {0x1EE9C, 0x1EEA0}, {0x1EEA4, 0x1EEA4}, {0x1EEAA, 0x1EEAA}, {0x1EEBC, 0x1EEEF}, {0x1EEF2, 0x1EFFF}, -{0x1F02C, 0x1F02F}, {0x1F094, 0x1F09F}, {0x1F0AF, 0x1F0B0}, {0x1F0C0, 0x1F0C0}, {0x1F0D0, 0x1F0D0}, {0x1F0F6, 0x1F0FF}, {0x1F1AE, 0x1F1E5}, {0x1F203, 0x1F20F}, {0x1F23C, 0x1F23F}, {0x1F249, 0x1F24F}, -{0x1F252, 0x1F25F}, {0x1F266, 0x1F2FF}, {0x1F6D8, 0x1F6DF}, {0x1F6ED, 0x1F6EF}, {0x1F6FD, 0x1F6FF}, {0x1F774, 0x1F77F}, {0x1F7D9, 0x1F7DF}, {0x1F7EC, 0x1F7FF}, {0x1F80C, 0x1F80F}, {0x1F848, 0x1F84F}, -{0x1F85A, 0x1F85F}, {0x1F888, 0x1F88F}, {0x1F8AE, 0x1F8AF}, {0x1F8B2, 0x1F8FF}, {0x1F979, 0x1F979}, {0x1F9CC, 0x1F9CC}, {0x1FA54, 0x1FA5F}, {0x1FA6E, 0x1FA6F}, {0x1FA75, 0x1FA77}, {0x1FA7B, 0x1FA7F}, -{0x1FA87, 0x1FA8F}, {0x1FAA9, 0x1FAAF}, {0x1FAB7, 0x1FABF}, {0x1FAC3, 0x1FACF}, {0x1FAD7, 0x1FAFF}, {0x1FB93, 0x1FB93}, {0x1FBCB, 0x1FBEF}, {0x1FBFA, 0x1FFFF}, {0x2A6DE, 0x2A6FF}, {0x2B735, 0x2B73F}, -{0x2B81E, 0x2B81F}, {0x2CEA2, 0x2CEAF}, {0x2EBE1, 0x2F7FF}, {0x2FA1E, 0x2FFFF}, {0x3134B, 0xE00FF}, {0xE01F0, 0x10FFFF}, -}; - -//String -bool CNCTString::operator==(const std::string& other) const { - return str.compare(other) == 0; -} -bool CNCTString::operator==(const char other) const { - return str.compare(std::string(1, other)) == 0; -} -bool CNCTString::operator==(const CNCTString& other) const { - return str.compare(other.str) == 0; -} -// + operators -CNCTString& CNCTString::operator+=(const std::string& other) { - str += other; - int new_len = CNCTUnicode::strlen_utf8(other); - utf8_chars += new_len; - char_type = CNCTUnicode::string_identify(str); - seq_offset_bytes += other.size(); - seq_offset_utf8_chars += new_len; - return *this; -} - -CNCTString& CNCTString::operator+=(const char other) { - std::string str = std::string(1, other); - *this += str; - return *this; -} - -CNCTString& CNCTString::operator+=(const CNCTString& other) { - str += other.str; - utf8_chars += other.utf8_chars; - char_type = CNCTUnicode::string_identify(str); - seq_offset_bytes += other.str.size(); - seq_offset_utf8_chars += other.utf8_chars; - return *this; -} - -struct CRCompare { - bool operator()(const std::pair& p, int i) { - return p.second < i; - } - bool operator()(int i, const std::pair& p) { - return i < p.first; - } -}; - -// binary search for code range -bool CNCTUnicode::check_code_range(int c, const std::vector> &ranges) { - auto it = std::upper_bound(ranges.begin(), ranges.end(), c, CRCompare()); - if (it != ranges.begin()) { - --it; - } - return c >= it->first && c <= it->second; -} - -// these are binary searches, it takes only a few operations -CNCTCharType CNCTUnicode::get_code_type(int c) { - if (check_code_range(c, letter_ranges)) { - return LETTER; - } - if (check_code_range(c, digit_ranges)) { - return DIGIT; - } - if (check_code_range(c, whitespace_ranges)) { - return WHITESPACE; - } - if (check_code_range(c, punctuation_ranges)) { - return PUNCTUATION; - } - if (check_code_range(c, symbol_ranges)) { - return SYMBOL; - } - if (check_code_range(c, accent_mark_ranges)) { - return ACCENT_MARK; - } - if (check_code_range(c, control_ranges)) { - return CONTROL; - } - return UNIDENTIFIED; -} - -static int utf8_to_unicode(const std::string& utf8_char) { - int c = 0; - int len = (int)utf8_char.size(); - if (len == 1) { - c = utf8_char[0]; - } else if (len == 2) { - c = ((utf8_char[0] & 0x1F) << 6) | (utf8_char[1] & 0x3F); - } else if (len == 3) { - c = ((utf8_char[0] & 0x0F) << 12) | ((utf8_char[1] & 0x3F) << 6) | (utf8_char[2] & 0x3F); - } else if (len == 4) { - c = ((utf8_char[0] & 0x07) << 18) | ((utf8_char[1] & 0x3F) << 12) | ((utf8_char[2] & 0x3F) << 6) | (utf8_char[3] & 0x3F); - } - return c; -} - -CNCTCharType CNCTUnicode::get_code_type(const std::string &utf8_char) { - return get_code_type(utf8_to_unicode(utf8_char)); -} - -int CNCTUnicode::utf8_len(const char c) -{ - if ((c & 0x80) == 0) { - return 1; // ASCII character - } - if ((c & 0xE0) == 0xC0) { - return 2; // 2-byte character - } - if ((c & 0xF0) == 0xE0) { - return 3; // 3-byte character - } - if ((c & 0xF0) == 0xF0) { - return 4; // 4-byte character - } - return 1; // not valid utf8 - // static const uint8_t lookup[] = { 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 2, 3, 4 }; - // return lookup[static_cast(c) >> 4]; -} - -int CNCTUnicode::strlen_utf8(const std::string src) { - int len = 0; - for (std::string::const_iterator it = src.begin(); it != src.end(); ++it) { - int char_len = utf8_len(*it); - if (char_len > 1) { - it += char_len - 1; - } - len += 1; - } - return len; -} - -// split a string into unicode strings -std::vector CNCTUnicode::split_utf8(const std::string &src) { - std::vector result; - for (std::string::const_iterator it = src.begin(); it != src.end(); ++it) { - int char_len = utf8_len(*it); - std::string str(it, it + char_len); - result.push_back(str); - if (char_len > 1) { - it += char_len - 1; - } - } - return result; -} - -// split a string into unicode strings (CNCTString) with sequence information -std::vector CNCTUnicode::split_utf8_enhanced(const std::string &src) { - std::vector result; - int seq_offset_bytes=0; - int seq_offset_utf8_chars=0; - for (std::string::const_iterator it = src.begin(); it != src.end(); ++it) { - int char_len = utf8_len(*it); - std::string str(it, it + char_len); - CNCTString cnct_str; - cnct_str.seq_offset_bytes = seq_offset_bytes; - cnct_str.seq_offset_utf8_chars = seq_offset_utf8_chars; - cnct_str.str = str; - cnct_str.utf8_chars = 1; - cnct_str.char_type = get_code_type(str); - #if 0 - switch (cnct_str.char_type) - { - case DIGIT: - printf("%s = DIGIT\n", str.c_str()); - break; - case LETTER: - printf("%s = LETTER\n", str.c_str()); - break; - case WHITESPACE: - printf("%s = WHITESPACE\n", str.c_str()); - break; - case PUNCTUATION: - printf("%s = PUNCTUATION\n", str.c_str()); - break; - case UNIDENTIFIED: - printf("%s = UNIDENTIFIED\n", str.c_str()); - break; - case SYMBOL: - printf("%s = SYMBOL\n", str.c_str()); - break; - case CONTROL: - printf("%s = CONTROL\n", str.c_str()); - break; - } - #endif - - result.push_back(cnct_str); - seq_offset_bytes += char_len; - seq_offset_utf8_chars += 1; - if (char_len > 1) { - it += char_len - 1; - } - - } - return result; -} - -// return the type of the string -CNCTCharType CNCTUnicode::string_identify(const std::string &str) { - CNCTCharType result = UNIDENTIFIED; - std::string::const_iterator it = str.begin(); - while (it != str.end()) { - int len = utf8_len(*it); - int c = 0; - for (int i = 0; i < len && it != str.end(); ++i, ++it) { - c = (c << 8) | static_cast(*it); - } - switch (get_code_type(c)) { - case DIGIT: - if (result == UNIDENTIFIED) { - result = DIGIT; - } else if (result != DIGIT) { - return MIXED; - } - break; - case LETTER: - if (result == UNIDENTIFIED) { - result = LETTER; - } else if (result != LETTER) { - return MIXED; - } - break; - case WHITESPACE: - if (result == UNIDENTIFIED) { - result = WHITESPACE; - } else if (result != WHITESPACE) { - return MIXED; - } - break; - case PUNCTUATION: - if (result == UNIDENTIFIED) { - result = PUNCTUATION; - } else if (result != PUNCTUATION) { - return MIXED; - } - break; - default: - return MIXED; - break; - } - } - return result; -} - -// verify the content of a string -bool CNCTUnicode::string_test(const std::string &str, CNCTCharType chartype) -{ - std::string::const_iterator it = str.begin(); - while (it != str.end()) { - int len = utf8_len(*it); - int c = 0; - for (int i = 0; i < len && it != str.end(); ++i, ++it) { - c = (c << 8) | static_cast(*it); - } - if (get_code_type(c) != chartype) { - return false; - } - } - return true; -} - -//----------------- -// llama.cpp GPT2 vocab (from libfalcon.cpp) -//----------------- - -std::string replaceAll(std::string str, const std::string& from, const std::string& to) { - size_t start_pos = 0; - while((start_pos = str.find(from, start_pos)) != std::string::npos) { - str.replace(start_pos, from.length(), to); - start_pos += to.length(); // Handles case where 'to' is a substring of 'from' - } - return str; -} - -struct TrieNode { - std::map map; - int32_t Id = -1; -}; - -struct Trie { - TrieNode *root; - - Trie() : root(new TrieNode()) {} - - ~Trie() { - if(root) - deleteTrie(root); - } - - // Move constructor - Trie(Trie&& other) noexcept : root(other.root) { - other.root = nullptr; - } - - // Move assignment operator - Trie& operator=(Trie&& other) noexcept { - if (this != &other) { - if(root) - deleteTrie(root); - root = other.root; - other.root = nullptr; - } - return *this; - } - - void insert(const std::string &token, int32_t Id) { - TrieNode* current = root; - for(auto ch : token) { - if(current->map.find(ch) == current->map.end()) { - current->map[ch] = new TrieNode(); - } - current = current->map[ch]; - } - current->Id = Id; - } - - void reset() { - deleteTrie(root); - root = new TrieNode(); - } - -private: - void deleteTrie(TrieNode* node) { - for(auto &it: node->map) { - deleteTrie(it.second); - } - delete node; - } - -}; - -struct gpt2bpe_vocab { - using id = int32_t; - using token = std::string; - - std::map max_token_length; // max length, for each 2byte prefix - std::map, int> bpe_ranks; - std::vector> bpe_merges; - - id special_bos_id = -1; - id special_eos_id = -1; - id special_unk_id = -1; - id special_sep_id = -1; - id special_pad_id = -1; - - id linefeed_id = -1; - - std::unordered_map token_to_id; - std::unordered_map id_to_token; - - Trie trie; // highspeed access to tokens by prefix tree - - // populate trie from map - void populate_trie_from_map() { - trie.reset(); - for (const auto& pair : token_to_id) { - trie.insert(pair.first, pair.second); - if (pair.first.size() >= 2) { - std::string prefix = pair.first.substr(0, 2); - max_token_length[prefix] = std::max(max_token_length[prefix], (uint32_t)pair.first.size()); - } - } - } - // populate token ranks map - int populate_bpe_ranks(std::vector> bpe_merges_) { - for (int i = 0; i < (int)bpe_merges_.size(); i++) { - bpe_ranks.emplace(bpe_merges_[i], i); - } - bpe_merges = bpe_merges_; - return bpe_merges_.size(); - } - - // Trim whitespace characters from the beginning and end of the string - void trim(std::string& str) { - // Remove whitespace characters from the beginning of the string - str.erase(str.begin(), std::find_if(str.begin(), str.end(), [](int ch) { - return !std::isspace(ch); - })); - - // Remove whitespace characters from the end of the string - str.erase(std::find_if(str.rbegin(), str.rend(), [](int ch) { - return !std::isspace(ch); - }).base(), str.end()); - } - - // get max token length available for a prefix of 2 bytes (string at least 2 bytes long) - int get_max_token_length(const std::string& string) const { - if (string.size() < 2) { - return -1; - } - std::string prefix = string.substr(0, 2); - if (max_token_length.find(prefix) == max_token_length.end()) { - return 0; - } - return max_token_length.at(prefix); - } - - // function to find if two tokens match in bpe_rank, return rank or -1 - int find_bpe_rank(const std::string& token1, const std::string& token2) const { - std::string left_token = token1; - std::string right_token = token2; - left_token = replaceAll(left_token, " ", "Ġ"); - left_token = replaceAll(left_token, "\n", "Ċ"); - right_token = replaceAll(right_token, " ", "Ġ"); - right_token = replaceAll(right_token, "\n", "Ċ"); - - auto it = bpe_ranks.find(std::make_pair(left_token, right_token)); - if (it == bpe_ranks.end()) { - return -1; - } - return it->second; - } - - std::pair find_longest_match(const std::string& snippet) const { - TrieNode* current = trie.root; - gpt2bpe_vocab::id last_matched_id = -1; - std::string last_matched_token = ""; - std::string current_token = ""; - for (auto ch : snippet) { - if (current->map.find(ch) == current->map.end()) { - break; - } - current = current->map[ch]; - current_token += ch; - if (current->Id != -1) { - last_matched_id = current->Id; - last_matched_token = current_token; - } - } - return {last_matched_id, last_matched_token}; - } - -}; - - -// -// tokenizer - bpe type, gpt2 tokenization compatible -// - -struct ggllm_bpe_symbol { - using index = int; - index prev; - index next; - const char * text; - size_t n; -}; - -static_assert(std::is_trivially_copyable::value, "ggllm_bpe_symbol is not trivially copyable"); - -struct ggllm_bpe_bigram { - struct comparator { - bool operator()(ggllm_bpe_bigram & l, ggllm_bpe_bigram & r) { - return l.rank > r.rank || (l.rank == r.rank && l.left > r.left); - } - }; - - using queue_storage = std::vector; - using queue = std::priority_queue; - ggllm_bpe_symbol::index left; - ggllm_bpe_symbol::index right; - std::string text; - int rank; - size_t size; -}; - -struct gpt2bpe_tokenizer { - gpt2bpe_tokenizer(const gpt2bpe_vocab & vocab, bool g2ws_): vocab_(vocab) { flag_g2ws = g2ws_; } - - void tokenize(const std::string & text, std::vector & output) { - int final_prev_index = -1; - // auto start = ggml_time_us(); - auto word_collection = bpe_gpt2_preprocess(text); - // auto end = ggml_time_us(); - // fprintf(stderr, "%s: preprocessing took %0.3f ms\n", __func__, (end - start) / 1000.0); - - symbols_final.clear(); - - for (auto & word : word_collection) { - work_queue_ = ggllm_bpe_bigram::queue(); - symbols_.clear(); - - int index = 0; - size_t offset = 0; - - while (offset < word.size()) { - ggllm_bpe_symbol sym; - size_t char_len = std::min(word.size() - offset, (size_t) CNCTUnicode::utf8_len(word[offset])); - sym.text = word.c_str() + offset; - sym.n = 1; - sym.n = char_len; - offset += sym.n; - sym.prev = index - 1; - sym.next = offset == word.size() ? -1 : index + 1; - index++; - symbols_.emplace_back(sym); - } - for (size_t i = 1; i < symbols_.size(); ++i) { - add_new_bigram(i - 1, i); - } - - // build token(s) - while (!work_queue_.empty()) { - auto bigram = work_queue_.top(); - work_queue_.pop(); - - auto & left_symbol = symbols_[bigram.left]; - auto & right_symbol = symbols_[bigram.right]; - - if (left_symbol.n == 0 || right_symbol.n == 0) { - continue; - } - std::string left_token = std::string(left_symbol.text, left_symbol.n); - std::string right_token = std::string(right_symbol.text, right_symbol.n); - if (left_token + right_token != bigram.text) { - continue; // Skip this bigram if it's outdated - } - - // merge the right sym into the left one - left_symbol.n += right_symbol.n; - right_symbol.n = 0; - - // remove the right sym from the chain - left_symbol.next = right_symbol.next; - if (right_symbol.next >= 0) { - symbols_[right_symbol.next].prev = bigram.left; - } - - add_new_bigram(left_symbol.prev, bigram.left); // left side of current symbol - add_new_bigram(bigram.left, left_symbol.next); // right side of current symbol - } - - // add the fnished tokens to the final list keeping correct order for next and prev - for (auto & sym : symbols_) { - if (sym.n > 0) { - sym.prev = final_prev_index; - sym.next = -1; - if (final_prev_index != -1) { - symbols_final[final_prev_index].next = symbols_final.size(); - } - symbols_final.emplace_back(sym); - final_prev_index = symbols_final.size() - 1; - } - } - } - - symbols_ = symbols_final; - if (symbols_.size()) - for (int i = 0; i != -1; i = symbols_[i].next) { - auto & symbol = symbols_[i]; - if (symbol.n == 0) { - continue; - } - std::string str = std::string(symbol.text, symbol.n); - std::string str_decoded = decode_token(str); - auto token = vocab_.token_to_id.find(str_decoded); - - if (token == vocab_.token_to_id.end()) { - for (auto j = str_decoded.begin(); j != str_decoded.end(); ++j) { - std::string byte_str(1, *j); - auto token_multibyte = vocab_.token_to_id.find(byte_str); - if (token_multibyte == vocab_.token_to_id.end()) { - fprintf(stderr,"ERROR: byte not found in vocab: '%s'\n", byte_str.c_str()); - } - output.push_back((*token_multibyte).second); - } - } else { - output.push_back((*token).second); - } - } - } - -private: - void add_new_bigram(int left, int right) { - if (left == -1 || right == -1) return; - - std::string left_token = std::string(symbols_[left].text, symbols_[left].n); - std::string right_token = std::string(symbols_[right].text, symbols_[right].n); - - int rank_found = -1; - rank_found = vocab_.find_bpe_rank(left_token, right_token); - - if (rank_found < 0) { - return; - } - - ggllm_bpe_bigram bigram; - bigram.left = left; - bigram.right = right; - bigram.rank = rank_found; - bigram.size = left_token.size() + right_token.size(); - bigram.text = left_token + right_token; - work_queue_.push(bigram); - } - - std::unordered_map bytes_to_unicode() { - static std::unordered_map hex_map = { - { 0x21, "\x21" }, { 0x22, "\x22" }, { 0x23, "\x23" }, { 0x24, "\x24" }, { 0x25, "\x25" }, { 0x26, "\x26" }, { 0x27, "\x27" }, { 0x28, "\x28" }, { 0x29, "\x29" }, { 0x2A, "\x2A" }, - { 0x2B, "\x2B" }, { 0x2C, "\x2C" }, { 0x2D, "\x2D" }, { 0x2E, "\x2E" }, { 0x2F, "\x2F" }, { 0x30, "\x30" }, { 0x31, "\x31" }, { 0x32, "\x32" }, { 0x33, "\x33" }, { 0x34, "\x34" }, - { 0x35, "\x35" }, { 0x36, "\x36" }, { 0x37, "\x37" }, { 0x38, "\x38" }, { 0x39, "\x39" }, { 0x3A, "\x3A" }, { 0x3B, "\x3B" }, { 0x3C, "\x3C" }, { 0x3D, "\x3D" }, { 0x3E, "\x3E" }, - { 0x3F, "\x3F" }, { 0x40, "\x40" }, { 0x41, "\x41" }, { 0x42, "\x42" }, { 0x43, "\x43" }, { 0x44, "\x44" }, { 0x45, "\x45" }, { 0x46, "\x46" }, { 0x47, "\x47" }, { 0x48, "\x48" }, - { 0x49, "\x49" }, { 0x4A, "\x4A" }, { 0x4B, "\x4B" }, { 0x4C, "\x4C" }, { 0x4D, "\x4D" }, { 0x4E, "\x4E" }, { 0x4F, "\x4F" }, { 0x50, "\x50" }, { 0x51, "\x51" }, { 0x52, "\x52" }, - { 0x53, "\x53" }, { 0x54, "\x54" }, { 0x55, "\x55" }, { 0x56, "\x56" }, { 0x57, "\x57" }, { 0x58, "\x58" }, { 0x59, "\x59" }, { 0x5A, "\x5A" }, { 0x5B, "\x5B" }, { 0x5C, "\x5C" }, - { 0x5D, "\x5D" }, { 0x5E, "\x5E" }, { 0x5F, "\x5F" }, { 0x60, "\x60" }, { 0x61, "\x61" }, { 0x62, "\x62" }, { 0x63, "\x63" }, { 0x64, "\x64" }, { 0x65, "\x65" }, { 0x66, "\x66" }, - { 0x67, "\x67" }, { 0x68, "\x68" }, { 0x69, "\x69" }, { 0x6A, "\x6A" }, { 0x6B, "\x6B" }, { 0x6C, "\x6C" }, { 0x6D, "\x6D" }, { 0x6E, "\x6E" }, { 0x6F, "\x6F" }, { 0x70, "\x70" }, - { 0x71, "\x71" }, { 0x72, "\x72" }, { 0x73, "\x73" }, { 0x74, "\x74" }, { 0x75, "\x75" }, { 0x76, "\x76" }, { 0x77, "\x77" }, { 0x78, "\x78" }, { 0x79, "\x79" }, { 0x7A, "\x7A" }, - { 0x7B, "\x7B" }, { 0x7C, "\x7C" }, { 0x7D, "\x7D" }, { 0x7E, "\x7E" }, { 0xA1, "\xC2\xA1" }, { 0xA2, "\xC2\xA2" }, { 0xA3, "\xC2\xA3" }, { 0xA4, "\xC2\xA4" }, { 0xA5, "\xC2\xA5" }, - { 0xA6, "\xC2\xA6" }, { 0xA7, "\xC2\xA7" }, { 0xA8, "\xC2\xA8" }, { 0xA9, "\xC2\xA9" }, { 0xAA, "\xC2\xAA" }, { 0xAB, "\xC2\xAB" }, { 0xAC, "\xC2\xAC" }, { 0xAE, "\xC2\xAE" }, - { 0xAF, "\xC2\xAF" }, { 0xB0, "\xC2\xB0" }, { 0xB1, "\xC2\xB1" }, { 0xB2, "\xC2\xB2" }, { 0xB3, "\xC2\xB3" }, { 0xB4, "\xC2\xB4" }, { 0xB5, "\xC2\xB5" }, { 0xB6, "\xC2\xB6" }, - { 0xB7, "\xC2\xB7" }, { 0xB8, "\xC2\xB8" }, { 0xB9, "\xC2\xB9" }, { 0xBA, "\xC2\xBA" }, { 0xBB, "\xC2\xBB" }, { 0xBC, "\xC2\xBC" }, { 0xBD, "\xC2\xBD" }, { 0xBE, "\xC2\xBE" }, - { 0xBF, "\xC2\xBF" }, { 0xC0, "\xC3\x80" }, { 0xC1, "\xC3\x81" }, { 0xC2, "\xC3\x82" }, { 0xC3, "\xC3\x83" }, { 0xC4, "\xC3\x84" }, { 0xC5, "\xC3\x85" }, { 0xC6, "\xC3\x86" }, - { 0xC7, "\xC3\x87" }, { 0xC8, "\xC3\x88" }, { 0xC9, "\xC3\x89" }, { 0xCA, "\xC3\x8A" }, { 0xCB, "\xC3\x8B" }, { 0xCC, "\xC3\x8C" }, { 0xCD, "\xC3\x8D" }, { 0xCE, "\xC3\x8E" }, - { 0xCF, "\xC3\x8F" }, { 0xD0, "\xC3\x90" }, { 0xD1, "\xC3\x91" }, { 0xD2, "\xC3\x92" }, { 0xD3, "\xC3\x93" }, { 0xD4, "\xC3\x94" }, { 0xD5, "\xC3\x95" }, { 0xD6, "\xC3\x96" }, - { 0xD7, "\xC3\x97" }, { 0xD8, "\xC3\x98" }, { 0xD9, "\xC3\x99" }, { 0xDA, "\xC3\x9A" }, { 0xDB, "\xC3\x9B" }, { 0xDC, "\xC3\x9C" }, { 0xDD, "\xC3\x9D" }, { 0xDE, "\xC3\x9E" }, - { 0xDF, "\xC3\x9F" }, { 0xE0, "\xC3\xA0" }, { 0xE1, "\xC3\xA1" }, { 0xE2, "\xC3\xA2" }, { 0xE3, "\xC3\xA3" }, { 0xE4, "\xC3\xA4" }, { 0xE5, "\xC3\xA5" }, { 0xE6, "\xC3\xA6" }, - { 0xE7, "\xC3\xA7" }, { 0xE8, "\xC3\xA8" }, { 0xE9, "\xC3\xA9" }, { 0xEA, "\xC3\xAA" }, { 0xEB, "\xC3\xAB" }, { 0xEC, "\xC3\xAC" }, { 0xED, "\xC3\xAD" }, { 0xEE, "\xC3\xAE" }, - { 0xEF, "\xC3\xAF" }, { 0xF0, "\xC3\xB0" }, { 0xF1, "\xC3\xB1" }, { 0xF2, "\xC3\xB2" }, { 0xF3, "\xC3\xB3" }, { 0xF4, "\xC3\xB4" }, { 0xF5, "\xC3\xB5" }, { 0xF6, "\xC3\xB6" }, - { 0xF7, "\xC3\xB7" }, { 0xF8, "\xC3\xB8" }, { 0xF9, "\xC3\xB9" }, { 0xFA, "\xC3\xBA" }, { 0xFB, "\xC3\xBB" }, { 0xFC, "\xC3\xBC" }, { 0xFD, "\xC3\xBD" }, { 0xFE, "\xC3\xBE" }, - { 0xFF, "\xC3\xBF" }, { 0x00, "\xC4\x80" }, { 0x01, "\xC4\x81" }, { 0x02, "\xC4\x82" }, { 0x03, "\xC4\x83" }, { 0x04, "\xC4\x84" }, { 0x05, "\xC4\x85" }, { 0x06, "\xC4\x86" }, - { 0x07, "\xC4\x87" }, { 0x08, "\xC4\x88" }, { 0x09, "\xC4\x89" }, { 0x0A, "\xC4\x8A" }, { 0x0B, "\xC4\x8B" }, { 0x0C, "\xC4\x8C" }, { 0x0D, "\xC4\x8D" }, { 0x0E, "\xC4\x8E" }, - { 0x0F, "\xC4\x8F" }, { 0x10, "\xC4\x90" }, { 0x11, "\xC4\x91" }, { 0x12, "\xC4\x92" }, { 0x13, "\xC4\x93" }, { 0x14, "\xC4\x94" }, { 0x15, "\xC4\x95" }, { 0x16, "\xC4\x96" }, - { 0x17, "\xC4\x97" }, { 0x18, "\xC4\x98" }, { 0x19, "\xC4\x99" }, { 0x1A, "\xC4\x9A" }, { 0x1B, "\xC4\x9B" }, { 0x1C, "\xC4\x9C" }, { 0x1D, "\xC4\x9D" }, { 0x1E, "\xC4\x9E" }, - { 0x1F, "\xC4\x9F" }, { 0x20, "\xC4\xA0" }, { 0x7F, "\xC4\xA1" }, { 0x80, "\xC4\xA2" }, { 0x81, "\xC4\xA3" }, { 0x82, "\xC4\xA4" }, { 0x83, "\xC4\xA5" }, { 0x84, "\xC4\xA6" }, - { 0x85, "\xC4\xA7" }, { 0x86, "\xC4\xA8" }, { 0x87, "\xC4\xA9" }, { 0x88, "\xC4\xAA" }, { 0x89, "\xC4\xAB" }, { 0x8A, "\xC4\xAC" }, { 0x8B, "\xC4\xAD" }, { 0x8C, "\xC4\xAE" }, - { 0x8D, "\xC4\xAF" }, { 0x8E, "\xC4\xB0" }, { 0x8F, "\xC4\xB1" }, { 0x90, "\xC4\xB2" }, { 0x91, "\xC4\xB3" }, { 0x92, "\xC4\xB4" }, { 0x93, "\xC4\xB5" }, { 0x94, "\xC4\xB6" }, - { 0x95, "\xC4\xB7" }, { 0x96, "\xC4\xB8" }, { 0x97, "\xC4\xB9" }, { 0x98, "\xC4\xBA" }, { 0x99, "\xC4\xBB" }, { 0x9A, "\xC4\xBC" }, { 0x9B, "\xC4\xBD" }, { 0x9C, "\xC4\xBE" }, - { 0x9D, "\xC4\xBF" }, { 0x9E, "\xC5\x80" }, { 0x9F, "\xC5\x81" }, { 0xA0, "\xC5\x82" }, { 0xAD, "\xC5\x83" } - }; - return hex_map; - } - - std::unordered_map unicode_to_bytes() { - static std::unordered_map hex_map = { - { "\x21", 0x21 }, { "\x22", 0x22 }, { "\x23", 0x23 }, { "\x24", 0x24 }, { "\x25", 0x25 }, { "\x26", 0x26 }, { "\x27", 0x27 }, { "\x28", 0x28 }, { "\x29", 0x29 }, { "\x2A", 0x2A }, - { "\x2B", 0x2B }, { "\x2C", 0x2C }, { "\x2D", 0x2D }, { "\x2E", 0x2E }, { "\x2F", 0x2F }, { "\x30", 0x30 }, { "\x31", 0x31 }, { "\x32", 0x32 }, { "\x33", 0x33 }, { "\x34", 0x34 }, - { "\x35", 0x35 }, { "\x36", 0x36 }, { "\x37", 0x37 }, { "\x38", 0x38 }, { "\x39", 0x39 }, { "\x3A", 0x3A }, { "\x3B", 0x3B }, { "\x3C", 0x3C }, { "\x3D", 0x3D }, { "\x3E", 0x3E }, - { "\x3F", 0x3F }, { "\x40", 0x40 }, { "\x41", 0x41 }, { "\x42", 0x42 }, { "\x43", 0x43 }, { "\x44", 0x44 }, { "\x45", 0x45 }, { "\x46", 0x46 }, { "\x47", 0x47 }, { "\x48", 0x48 }, - { "\x49", 0x49 }, { "\x4A", 0x4A }, { "\x4B", 0x4B }, { "\x4C", 0x4C }, { "\x4D", 0x4D }, { "\x4E", 0x4E }, { "\x4F", 0x4F }, { "\x50", 0x50 }, { "\x51", 0x51 }, { "\x52", 0x52 }, - { "\x53", 0x53 }, { "\x54", 0x54 }, { "\x55", 0x55 }, { "\x56", 0x56 }, { "\x57", 0x57 }, { "\x58", 0x58 }, { "\x59", 0x59 }, { "\x5A", 0x5A }, { "\x5B", 0x5B }, { "\x5C", 0x5C }, - { "\x5D", 0x5D }, { "\x5E", 0x5E }, { "\x5F", 0x5F }, { "\x60", 0x60 }, { "\x61", 0x61 }, { "\x62", 0x62 }, { "\x63", 0x63 }, { "\x64", 0x64 }, { "\x65", 0x65 }, { "\x66", 0x66 }, - { "\x67", 0x67 }, { "\x68", 0x68 }, { "\x69", 0x69 }, { "\x6A", 0x6A }, { "\x6B", 0x6B }, { "\x6C", 0x6C }, { "\x6D", 0x6D }, { "\x6E", 0x6E }, { "\x6F", 0x6F }, { "\x70", 0x70 }, - { "\x71", 0x71 }, { "\x72", 0x72 }, { "\x73", 0x73 }, { "\x74", 0x74 }, { "\x75", 0x75 }, { "\x76", 0x76 }, { "\x77", 0x77 }, { "\x78", 0x78 }, { "\x79", 0x79 }, { "\x7A", 0x7A }, - { "\x7B", 0x7B }, { "\x7C", 0x7C }, { "\x7D", 0x7D }, { "\x7E", 0x7E }, { "\xC2\xA1", 0xA1 }, { "\xC2\xA2", 0xA2 }, { "\xC2\xA3", 0xA3 }, { "\xC2\xA4", 0xA4 }, { "\xC2\xA5", 0xA5 }, - { "\xC2\xA6", 0xA6 }, { "\xC2\xA7", 0xA7 }, { "\xC2\xA8", 0xA8 }, { "\xC2\xA9", 0xA9 }, { "\xC2\xAA", 0xAA }, { "\xC2\xAB", 0xAB }, { "\xC2\xAC", 0xAC }, { "\xC2\xAE", 0xAE }, - { "\xC2\xAF", 0xAF }, { "\xC2\xB0", 0xB0 }, { "\xC2\xB1", 0xB1 }, { "\xC2\xB2", 0xB2 }, { "\xC2\xB3", 0xB3 }, { "\xC2\xB4", 0xB4 }, { "\xC2\xB5", 0xB5 }, { "\xC2\xB6", 0xB6 }, - { "\xC2\xB7", 0xB7 }, { "\xC2\xB8", 0xB8 }, { "\xC2\xB9", 0xB9 }, { "\xC2\xBA", 0xBA }, { "\xC2\xBB", 0xBB }, { "\xC2\xBC", 0xBC }, { "\xC2\xBD", 0xBD }, { "\xC2\xBE", 0xBE }, - { "\xC2\xBF", 0xBF }, { "\xC3\x80", 0xC0 }, { "\xC3\x81", 0xC1 }, { "\xC3\x82", 0xC2 }, { "\xC3\x83", 0xC3 }, { "\xC3\x84", 0xC4 }, { "\xC3\x85", 0xC5 }, { "\xC3\x86", 0xC6 }, - { "\xC3\x87", 0xC7 }, { "\xC3\x88", 0xC8 }, { "\xC3\x89", 0xC9 }, { "\xC3\x8A", 0xCA }, { "\xC3\x8B", 0xCB }, { "\xC3\x8C", 0xCC }, { "\xC3\x8D", 0xCD }, { "\xC3\x8E", 0xCE }, - { "\xC3\x8F", 0xCF }, { "\xC3\x90", 0xD0 }, { "\xC3\x91", 0xD1 }, { "\xC3\x92", 0xD2 }, { "\xC3\x93", 0xD3 }, { "\xC3\x94", 0xD4 }, { "\xC3\x95", 0xD5 }, { "\xC3\x96", 0xD6 }, - { "\xC3\x97", 0xD7 }, { "\xC3\x98", 0xD8 }, { "\xC3\x99", 0xD9 }, { "\xC3\x9A", 0xDA }, { "\xC3\x9B", 0xDB }, { "\xC3\x9C", 0xDC }, { "\xC3\x9D", 0xDD }, { "\xC3\x9E", 0xDE }, - { "\xC3\x9F", 0xDF }, { "\xC3\xA0", 0xE0 }, { "\xC3\xA1", 0xE1 }, { "\xC3\xA2", 0xE2 }, { "\xC3\xA3", 0xE3 }, { "\xC3\xA4", 0xE4 }, { "\xC3\xA5", 0xE5 }, { "\xC3\xA6", 0xE6 }, - { "\xC3\xA7", 0xE7 }, { "\xC3\xA8", 0xE8 }, { "\xC3\xA9", 0xE9 }, { "\xC3\xAA", 0xEA }, { "\xC3\xAB", 0xEB }, { "\xC3\xAC", 0xEC }, { "\xC3\xAD", 0xED }, { "\xC3\xAE", 0xEE }, - { "\xC3\xAF", 0xEF }, { "\xC3\xB0", 0xF0 }, { "\xC3\xB1", 0xF1 }, { "\xC3\xB2", 0xF2 }, { "\xC3\xB3", 0xF3 }, { "\xC3\xB4", 0xF4 }, { "\xC3\xB5", 0xF5 }, { "\xC3\xB6", 0xF6 }, - { "\xC3\xB7", 0xF7 }, { "\xC3\xB8", 0xF8 }, { "\xC3\xB9", 0xF9 }, { "\xC3\xBA", 0xFA }, { "\xC3\xBB", 0xFB }, { "\xC3\xBC", 0xFC }, { "\xC3\xBD", 0xFD }, { "\xC3\xBE", 0xFE }, - { "\xC3\xBF", 0xFF }, { "\xC4\x80", 0x00 }, { "\xC4\x81", 0x01 }, { "\xC4\x82", 0x02 }, { "\xC4\x83", 0x03 }, { "\xC4\x84", 0x04 }, { "\xC4\x85", 0x05 }, { "\xC4\x86", 0x06 }, - { "\xC4\x87", 0x07 }, { "\xC4\x88", 0x08 }, { "\xC4\x89", 0x09 }, { "\xC4\x8A", 0x0A }, { "\xC4\x8B", 0x0B }, { "\xC4\x8C", 0x0C }, { "\xC4\x8D", 0x0D }, { "\xC4\x8E", 0x0E }, - { "\xC4\x8F", 0x0F }, { "\xC4\x90", 0x10 }, { "\xC4\x91", 0x11 }, { "\xC4\x92", 0x12 }, { "\xC4\x93", 0x13 }, { "\xC4\x94", 0x14 }, { "\xC4\x95", 0x15 }, { "\xC4\x96", 0x16 }, - { "\xC4\x97", 0x17 }, { "\xC4\x98", 0x18 }, { "\xC4\x99", 0x19 }, { "\xC4\x9A", 0x1A }, { "\xC4\x9B", 0x1B }, { "\xC4\x9C", 0x1C }, { "\xC4\x9D", 0x1D }, { "\xC4\x9E", 0x1E }, - { "\xC4\x9F", 0x1F }, { "\xC4\xA0", 0x20 }, { "\xC4\xA1", 0x7F }, { "\xC4\xA2", 0x80 }, { "\xC4\xA3", 0x81 }, { "\xC4\xA4", 0x82 }, { "\xC4\xA5", 0x83 }, { "\xC4\xA6", 0x84 }, - { "\xC4\xA7", 0x85 }, { "\xC4\xA8", 0x86 }, { "\xC4\xA9", 0x87 }, { "\xC4\xAA", 0x88 }, { "\xC4\xAB", 0x89 }, { "\xC4\xAC", 0x8A }, { "\xC4\xAD", 0x8B }, { "\xC4\xAE", 0x8C }, - { "\xC4\xAF", 0x8D }, { "\xC4\xB0", 0x8E }, { "\xC4\xB1", 0x8F }, { "\xC4\xB2", 0x90 }, { "\xC4\xB3", 0x91 }, { "\xC4\xB4", 0x92 }, { "\xC4\xB5", 0x93 }, { "\xC4\xB6", 0x94 }, - { "\xC4\xB7", 0x95 }, { "\xC4\xB8", 0x96 }, { "\xC4\xB9", 0x97 }, { "\xC4\xBA", 0x98 }, { "\xC4\xBB", 0x99 }, { "\xC4\xBC", 0x9A }, { "\xC4\xBD", 0x9B }, { "\xC4\xBE", 0x9C }, - { "\xC4\xBF", 0x9D }, { "\xC5\x80", 0x9E }, { "\xC5\x81", 0x9F }, { "\xC5\x82", 0xA0 }, { "\xC5\x83", 0xAD } - }; - return hex_map; - } - - // len must be available - bool inline str_is_equal(const char* str1, const char* str2, size_t len) { - for (size_t i = 0; i < len; ++i) { - if (str1[i] != str2[i]) { - return false; - } - } - return true; - } - - std::vector bpe_gpt2_preprocess(const std::string& text) { - static std::unordered_map< unsigned char, std::string> byte_encoder = bytes_to_unicode(); - std::vector bpe_words; - std::vector bpe_encoded_words; - - std::string token=""; - const char *raw_text_p = text.c_str(); - // GPT2 system regex: 's|'t|'re|'ve|'m|'ll|'d| ?\p{L}+| ?\p{N}+| ?[^\s\p{L}\p{N}]+|\s+(?!\S)|\s+ - bool collecting_numeric = false; - bool collecting_letter = false; - bool collecting_special = false; - bool collecting_whitespace_lookahead = false; - bool collecting=false; - - std::vector text_utf; - text_utf.reserve(text.size()); - bpe_words.reserve(text.size()); - bpe_encoded_words.reserve(text.size()); - - text_utf = CNCTUnicode::split_utf8_enhanced(text); - - for (int i = 0; i < (int)text_utf.size(); i++) { - const CNCTString &utf_char = text_utf[i]; - bool split_condition = false; - const char *text_pos = raw_text_p + utf_char.seq_offset_bytes; - int bytes_remain = strlen(text_pos); - // forward backward lookups - const CNCTString &utf_char_next = (i+1 < (int)text_utf.size()) ? text_utf[i+1] : CNCTString(); - const CNCTString &utf_char_next_next = (i+2 < (int)text_utf.size()) ? text_utf[i+2] : CNCTString(); - // const CNCTString &utf_char_prev = (i > 0) ? text_utf[i-1] : CNCTString(); - - // handling contractions - if (!split_condition && bytes_remain >= 2) { - // 's|'t|'m|'d - if (utf_char == '\'' && (utf_char_next == 's' || utf_char_next == 't' || utf_char_next == 'm' || utf_char_next == 'd')) { - split_condition = true; - } - if (split_condition) { - if (token.size()) { - bpe_words.emplace_back(token); // push previous content as token - } - token = utf_char.str + utf_char_next.str; - bpe_words.emplace_back(token); - token=""; - i++; - continue; - } - } - if (!split_condition && bytes_remain >= 3) { - // 're|'ve|'ll - if (utf_char == '\'' && ( - (utf_char_next == 'r' || utf_char_next_next == 'e') || - (utf_char_next == 'v' || utf_char_next_next == 'e') || - (utf_char_next == 'l' || utf_char_next_next == 'l')) - ) { - split_condition = true; - } - if (split_condition) { - // current token + next token can be defined - if (token.size()) { - bpe_words.emplace_back(token); // push previous content as token - } - token = utf_char.str + utf_char_next.str + utf_char_next_next.str; - bpe_words.emplace_back(token); // the contraction - token=""; - i+=2; - continue; - } - } - - if (!split_condition && !collecting) { - if (utf_char.char_type == CNCTCharType::LETTER || (!token.size() && utf_char==" " && utf_char_next.char_type == CNCTCharType::LETTER)) { - collecting_letter = true; - collecting = true; - } else if (utf_char.char_type == CNCTCharType::DIGIT || (!token.size() && utf_char==" " && utf_char_next.char_type == CNCTCharType::DIGIT)) { - collecting_numeric = true; - collecting = true; - } else if ( - ((utf_char.char_type != CNCTCharType::LETTER && utf_char.char_type != CNCTCharType::DIGIT) && (utf_char.char_type != CNCTCharType::WHITESPACE)) || - (!token.size() && utf_char==" " && utf_char_next.char_type != CNCTCharType::LETTER && utf_char_next.char_type != CNCTCharType::DIGIT && utf_char_next.char_type != CNCTCharType::WHITESPACE) - ) { - collecting_special = true; - collecting = true; - } else if (utf_char.char_type == CNCTCharType::WHITESPACE && utf_char_next.char_type == CNCTCharType::WHITESPACE) { - collecting_whitespace_lookahead = true; - collecting = true; - } else if (utf_char.char_type == CNCTCharType::WHITESPACE) { - split_condition = true; - } - } else if (!split_condition && collecting) { - if (collecting_letter && utf_char.char_type != CNCTCharType::LETTER) { - split_condition = true; - } else if (collecting_numeric && utf_char.char_type != CNCTCharType::DIGIT) { - split_condition = true; - } else if (collecting_special && (utf_char.char_type == CNCTCharType::LETTER || utf_char.char_type == CNCTCharType::DIGIT || utf_char.char_type == CNCTCharType::WHITESPACE)) { - split_condition = true; - } else if (collecting_whitespace_lookahead && utf_char_next.char_type != CNCTCharType::WHITESPACE) { - split_condition = true; - } - } - - if(utf_char_next.str.size() == 0) { - split_condition = true; // final - token += utf_char.str; - } - - if (split_condition) { - if (token.size()) { - bpe_words.emplace_back(token); - } - token = utf_char.str; - collecting = false; - collecting_letter = false; - collecting_numeric = false; - collecting_special = false; - collecting_whitespace_lookahead = false; - } else { - token += utf_char.str; - } - } - - for (std::string& word : bpe_words) { - std::string encoded_token=""; - for (char& c : word) { - encoded_token += byte_encoder[c]; - } - bpe_encoded_words.emplace_back(encoded_token); - } - - return bpe_encoded_words; - } - - // decoder (for one token) - std::string decode_token(const std::string& token) { - static std::unordered_map< std::string, unsigned char> byte_decoder = unicode_to_bytes(); - std::string decoded_token=""; - auto unicode_seqeunces = CNCTUnicode::split_utf8(token); - for (auto& unicode_sequence : unicode_seqeunces) { - decoded_token += byte_decoder[unicode_sequence]; - } - - return decoded_token; - } - - const gpt2bpe_vocab & vocab_; - std::vector symbols_; - std::vector symbols_final; - ggllm_bpe_bigram::queue work_queue_; - bool flag_g2ws=false; -}; - -static std::vector gpt2bpe_tokenize(const gpt2bpe_vocab & vocab, const std::string & text, bool bos, bool g2ws ) { - gpt2bpe_tokenizer tokenizer(vocab, g2ws); - std::vector output; - - if (text.empty()) { - return output; - } - - if (bos && vocab.special_bos_id != -1) { - output.push_back(vocab.special_bos_id); - } - - tokenizer.tokenize(text, output); - return output; -} - -#endif // CMPNCT_GPT2BPE diff --git a/examples/gptneox-wip/falcon-main.cpp b/examples/gptneox-wip/falcon-main.cpp deleted file mode 100644 index e9197f6b5..000000000 --- a/examples/gptneox-wip/falcon-main.cpp +++ /dev/null @@ -1,1111 +0,0 @@ -#include "ggml.h" -#include "cmpnct_gpt2bpe.hpp" - -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include - -#if defined(_MSC_VER) -#pragma warning(disable: 4244 4267) // possible loss of data -#endif - -// default hparams -struct falcon_hparams { - size_t n_merges = 0; - size_t n_vocab = 0; - uint32_t n_ctx = 0; - uint32_t n_embd = 0; - uint32_t n_head = 0; - uint32_t n_head_kv = 1; // Needs to be 1 for 7B model - uint32_t n_ff = 0; - uint32_t n_block = 0; - float norm_eps = 1e-5; -}; -struct falcon_block { - // normalization - struct ggml_tensor* input_layernorm; - struct ggml_tensor* input_layernorm_b; - struct ggml_tensor* attention_norm; // Falcon-40B only - struct ggml_tensor* attention_norm_b; // Falcon-40B only - - // attention - struct ggml_tensor* query_key_value; - struct ggml_tensor* wo; - - // ff - struct ggml_tensor* ffn_up; - struct ggml_tensor* ffn_down; -}; - -struct falcon_model { - falcon_hparams hparams; - - struct ggml_tensor* tok_embeddings; - struct ggml_tensor* output_norm; - struct ggml_tensor* output_norm_b; - struct ggml_tensor* lm_head; - - std::vector blocks; - - // key + value memory - struct ggml_tensor* memory_k; - struct ggml_tensor* memory_v; - - struct gguf_context * ggufctx; - struct ggml_context * ctx; - struct ggml_context * kvctx; - - std::map tensors; -}; - -struct gpt_params { - int32_t seed = -1; // RNG seed - int32_t n_threads = std::min(4, (int32_t) std::thread::hardware_concurrency()); - uint32_t n_predict = 200; // new tokens to predict - uint32_t n_batch = 512; // batch size for prompt processing - - // sampling parameters - int32_t top_k = 40; - float top_p = 1.0f; - float temp = 0.8f; - int32_t repeat_last_n = 64; - float repeat_penalty = 1.02f; - - std::string model = ""; // model path - std::string prompt = ""; - - std::string token_test = ""; - bool interactive = false; - int32_t interactive_port = -1; - int32_t n_gpu_layers = 0; -}; - -void gpt_print_usage(int /*argc*/, char ** argv, const gpt_params & params) { - fprintf(stderr, "usage: %s [options]\n", argv[0]); - fprintf(stderr, "\n"); - fprintf(stderr, "options:\n"); - fprintf(stderr, " -h, --help show this help message and exit\n"); - fprintf(stderr, " -s SEED, --seed SEED RNG seed (default: -1)\n"); - fprintf(stderr, " -t N, --threads N number of threads to use during computation (default: %d)\n", params.n_threads); - fprintf(stderr, " -ngl N, --gpu-layers N number of layers to offload to GPU on supported models (default: %d)\n", params.n_gpu_layers); - fprintf(stderr, " -p PROMPT, --prompt PROMPT\n"); - fprintf(stderr, " prompt to start generation with (default: random)\n"); - fprintf(stderr, " -f FNAME, --file FNAME\n"); - fprintf(stderr, " load prompt from a file\n"); - fprintf(stderr, " -tt TOKEN_TEST, --token_test TOKEN_TEST\n"); - fprintf(stderr, " test tokenization\n"); - fprintf(stderr, " -n N, --n_predict N number of tokens to predict (default: %d)\n", params.n_predict); - fprintf(stderr, " --top_k N top-k sampling, 0 = n_vocab (default: %d)\n", params.top_k); - fprintf(stderr, " --top_p N top-p sampling (default: %.1f)\n", params.top_p); - fprintf(stderr, " --temp N temperature (default: %.1f)\n", params.temp); - fprintf(stderr, " --repeat-last-n N last n tokens to consider for penalize (default: %d, 0 = disabled)\n", params.repeat_last_n); - fprintf(stderr, " --repeat-penalty N penalize repeat sequence of tokens (default: %.2f, 1.0 = disabled)\n", (double)params.repeat_penalty); - fprintf(stderr, " -b N, --batch_size N batch size for prompt processing (default: %d)\n", params.n_batch); - fprintf(stderr, " -m FNAME, --model FNAME\n"); - fprintf(stderr, " model path (default: %s)\n", params.model.c_str()); - fprintf(stderr, "\n"); -} - -// Function to check if the next argument exists -std::string get_next_arg(int& i, int argc, char** argv, const std::string& flag, gpt_params& params) { - if (i + 1 < argc && argv[i + 1][0] != '-') { - return argv[++i]; - } else { - fprintf(stderr, "error: %s requires one argument.\n", flag.c_str()); - gpt_print_usage(argc, argv, params); - exit(0); - } -} - -bool gpt_params_parse(int argc, char ** argv, gpt_params & params) { - for (int i = 1; i < argc; i++) { - std::string arg = argv[i]; - - if (arg == "-s" || arg == "--seed") { - params.seed = std::stoi(get_next_arg(i, argc, argv, arg, params)); - } else if (arg == "-t" || arg == "--threads") { - params.n_threads = std::stoi(get_next_arg(i, argc, argv, arg, params)); - } else if (arg == "-ngl" || arg == "--gpu-layers" || arg == "--n-gpu-layers") { - params.n_gpu_layers = std::stoi(get_next_arg(i, argc, argv, arg, params)); - } else if (arg == "-p" || arg == "--prompt") { - params.prompt = get_next_arg(i, argc, argv, arg, params); - } else if (arg == "-n" || arg == "--n_predict") { - params.n_predict = std::stoi(get_next_arg(i, argc, argv, arg, params)); - } else if (arg == "--top_k") { - params.top_k = std::stoi(get_next_arg(i, argc, argv, arg, params)); - } else if (arg == "--top_p") { - params.top_p = std::stof(get_next_arg(i, argc, argv, arg, params)); - } else if (arg == "--temp") { - params.temp = std::stof(get_next_arg(i, argc, argv, arg, params)); - } else if (arg == "--repeat-last-n") { - params.repeat_last_n = std::stoi(get_next_arg(i, argc, argv, arg, params)); - } else if (arg == "--repeat-penalty") { - params.repeat_penalty = std::stof(get_next_arg(i, argc, argv, arg, params)); - } else if (arg == "-b" || arg == "--batch_size") { - params.n_batch= std::stoi(get_next_arg(i, argc, argv, arg, params)); - } else if (arg == "-m" || arg == "--model") { - params.model = get_next_arg(i, argc, argv, arg, params); - } else if (arg == "-i" || arg == "--interactive") { - params.interactive = true; - } else if (arg == "-ip" || arg == "--interactive-port") { - params.interactive = true; - params.interactive_port = std::stoi(get_next_arg(i, argc, argv, arg, params)); - } else if (arg == "-h" || arg == "--help") { - gpt_print_usage(argc, argv, params); - exit(0); - } else if (arg == "-f" || arg == "--file") { - get_next_arg(i, argc, argv, arg, params); - std::ifstream file(argv[i]); - if (!file) { - fprintf(stderr, "error: failed to open file '%s'\n", argv[i]); - break; - } - std::copy(std::istreambuf_iterator(file), std::istreambuf_iterator(), back_inserter(params.prompt)); - if (params.prompt.back() == '\n') { - params.prompt.pop_back(); - } - } else if (arg == "-tt" || arg == "--token_test") { - params.token_test = get_next_arg(i, argc, argv, arg, params); - } - else { - fprintf(stderr, "error: unknown argument: %s\n", arg.c_str()); - gpt_print_usage(argc, argv, params); - exit(0); - } - } - - return true; -} - -gpt2bpe_vocab::id sample_top_k_top_p_repeat( - const gpt2bpe_vocab & vocab, - const float * logits, - const int32_t * last_n_tokens_data, - size_t last_n_tokens_data_size, - int top_k, - double top_p, - double temp, - int repeat_last_n, - float repeat_penalty, - std::mt19937 & rng) { - - int n_logits = vocab.id_to_token.size(); - - const auto * plogits = logits; - - const auto last_n_tokens = std::vector(last_n_tokens_data, last_n_tokens_data + last_n_tokens_data_size); - - if (temp <= 0) { - // select the token with the highest logit directly - float max_logit = plogits[0]; - gpt2bpe_vocab::id max_id = 0; - - for (int i = 1; i < n_logits; ++i) { - if (plogits[i] > max_logit) { - max_logit = plogits[i]; - max_id = i; - } - } - return max_id; - } - - - std::vector> logits_id; - logits_id.reserve(n_logits); - - { - const float scale = 1.0f/temp; - for (int i = 0; i < n_logits; ++i) { - // repetition penalty from ctrl paper (https://arxiv.org/abs/1909.05858) - // credit https://github.com/facebookresearch/llama/compare/main...shawwn:llama:main - if (repeat_last_n > 0 && std::find(last_n_tokens.end()-repeat_last_n, last_n_tokens.end(), i) != last_n_tokens.end()) { - // if score < 0 then repetition penalty has to multiplied to reduce the previous token probability - if (plogits[i] < 0.0f) { - logits_id.push_back(std::make_pair(plogits[i]*scale*repeat_penalty, i)); - } else { - logits_id.push_back(std::make_pair(plogits[i]*scale/repeat_penalty, i)); - } - } else { - logits_id.push_back(std::make_pair(plogits[i]*scale, i)); - } - } - } - - // find the top K tokens - std::partial_sort( - logits_id.begin(), - logits_id.begin() + top_k, logits_id.end(), - [](const std::pair & a, const std::pair & b) { - return a.first > b.first; - }); - - logits_id.resize(top_k); - - double maxl = -INFINITY; - for (const auto & kv : logits_id) { - maxl = std::max(maxl, kv.first); - } - - // compute probs for the top K tokens - std::vector probs; - probs.reserve(logits_id.size()); - - double sum = 0.0; - for (const auto & kv : logits_id) { - double p = exp(kv.first - maxl); - probs.push_back(p); - sum += p; - } - - // normalize the probs - for (auto & p : probs) { - p /= sum; - } - - if (top_p < 1.0f) { - double cumsum = 0.0f; - for (int i = 0; i < top_k; i++) { - cumsum += probs[i]; - if (cumsum >= top_p) { - top_k = i + 1; - probs.resize(top_k); - logits_id.resize(top_k); - break; - } - } - - cumsum = 1.0/cumsum; - for (int i = 0; i < (int) probs.size(); i++) { - probs[i] *= cumsum; - } - } - -// printf("\n"); -// for (int i = 0; i < (int) probs.size(); i++) { -// for (int i = 0; i < 10; i++) { -// printf("%d: '%s' %f\n", i, vocab.id_to_token.at(logits_id[i].second).c_str(), probs[i]); -// } - - std::discrete_distribution<> dist(probs.begin(), probs.end()); - int idx = dist(rng); - - return logits_id[idx].second; - -} - -struct ggml_tensor * get_tensor_ex( struct ggml_context * ctx, std::string name){ - - struct ggml_tensor * cur = ggml_get_tensor(ctx, name.c_str()); - if( cur == NULL ) { - printf("%s: tensor '%s' not found!\n", __func__, name.c_str()); - } else { -// printf("%s: n_dims = %d, name = '%s'\n", __func__, cur->n_dims, cur->name); - } - - return cur; -} - -// load the model's weights from a file -bool falcon_model_load(const std::string & fname, falcon_model & model, gpt2bpe_vocab & vocab) { - printf("%s: loading model from '%s'..\n", __func__, fname.c_str()); - - model.ctx = NULL; - - struct gguf_init_params ggufparams = { - /*.no_alloc = */ false, - /*.ctx = */ &model.ctx, - }; - - auto & ggufctx = model.ggufctx; - - ggufctx = gguf_init_from_file(fname.c_str(), ggufparams); - - if (!ggufctx) { - fprintf(stderr, "%s: gguf_init_from_file() failed\n", __func__); - return false; - } - - printf("%s: gguf version = %d\n", __func__, gguf_get_version(ggufctx)); - printf("%s: gguf alignment = %zu\n", __func__, gguf_get_alignment(ggufctx)); - printf("%s: gguf data offset = %zu\n", __func__, gguf_get_data_offset(ggufctx)); - - // print all kv - #if 0 - { - const int n_kv = gguf_get_n_kv(ggufctx); - - printf("%s: n_kv: %d\n", __func__, n_kv); - - for (int i = 0; i < n_kv; ++i) { - const char * key = gguf_get_key(ggufctx, i); - - printf("%s: kv[%d]: key = %s\n", __func__, i, key); - } - } - #endif - - // print some standard metadata - { - int keyidx; - - keyidx = gguf_find_key(ggufctx, "general.name"); - if (keyidx != -1) { printf("%s: model name = %s\n", __func__, gguf_get_val_str(ggufctx, keyidx)); } - keyidx = gguf_find_key(ggufctx, "general.description"); - if (keyidx != -1) { printf("%s: model description = %s\n", __func__, gguf_get_val_str(ggufctx, keyidx)); } - keyidx = gguf_find_key(ggufctx, "general.author"); - if (keyidx != -1) { printf("%s: model author = %s\n", __func__, gguf_get_val_str(ggufctx, keyidx)); } - keyidx = gguf_find_key(ggufctx, "general.license"); - if (keyidx != -1) { printf("%s: model license = %s\n", __func__, gguf_get_val_str(ggufctx, keyidx)); } - keyidx = gguf_find_key(ggufctx, "general.architecture"); - if (keyidx != -1) { printf("%s: model architecture = %s\n", __func__, gguf_get_val_str(ggufctx, keyidx)); } - keyidx = gguf_find_key(ggufctx, "general.file_type"); - if (keyidx != -1) { printf("%s: model file type = %" PRIu32 "\n", __func__, gguf_get_val_u32(ggufctx, keyidx)); } - keyidx = gguf_find_key(ggufctx, "gptneox.tensor_data_layout"); - if (keyidx != -1) { printf("%s: model data layout = %s\n", __func__, gguf_get_val_str(ggufctx, keyidx)); } - keyidx = gguf_find_key(ggufctx, "general.source.huggingface.repository"); - if (keyidx != -1) { printf("%s: model source HF repo = %s\n", __func__, gguf_get_val_str(ggufctx, keyidx)); } - } - - // check required metadata - { - int keyidx; - - // check model architecture kv - keyidx = gguf_find_key(ggufctx, "general.architecture"); - if (keyidx != -1) { - if ( strcmp(gguf_get_val_str(ggufctx, keyidx), "falcon") != 0) { - printf("%s: model architecture not supported!\n", __func__); - return false; - } - } else { - printf("%s: gguf model architecture not found!\n", __func__); - return false; - } - - // check model tensor data layout kv - keyidx = gguf_find_key(ggufctx, "falcon.tensor_data_layout"); - if (keyidx != -1) { - if ( strcmp(gguf_get_val_str(ggufctx, keyidx), "jploski") != 0) { - printf("%s: model tensor data layout not supported!\n", __func__); - return false; - } - } else { - printf("%s: gguf model tensor data layout not found!\n", __func__); - return false; - } - - } - - // load hparams - { - auto & hparams = model.hparams; - - bool ok = true; - int keyidx; - - if (ok) { keyidx = gguf_find_key(ggufctx, "falcon.context_length"); - if (keyidx != -1) { hparams.n_ctx = gguf_get_val_u32(ggufctx, keyidx); } else { ok = false; } } - - if (ok) { keyidx = gguf_find_key(ggufctx, "falcon.embedding_length"); - if (keyidx != -1) { hparams.n_embd = gguf_get_val_u32(ggufctx, keyidx); } else { ok = false; } } - - if (ok) { keyidx = gguf_find_key(ggufctx, "falcon.attention.head_count"); - if (keyidx != -1) { hparams.n_head = gguf_get_val_u32(ggufctx, keyidx); } else { ok = false; } } - - if (ok) { keyidx = gguf_find_key(ggufctx, "falcon.feed_forward_length"); - if (keyidx != -1) { hparams.n_ff = gguf_get_val_u32(ggufctx, keyidx); } else { ok = false; } } - - if (ok) { keyidx = gguf_find_key(ggufctx, "falcon.block_count"); - if (keyidx != -1) { hparams.n_block = gguf_get_val_u32(ggufctx, keyidx); } else { ok = false; } } - - if (ok) { keyidx = gguf_find_key(ggufctx, "falcon.attention.layer_norm_epsilon"); - if (keyidx != -1) { hparams.norm_eps= gguf_get_val_f32(ggufctx, keyidx); } else { ok = false; } } - - if (!ok) { - fprintf(stderr, "%s: required hparam missing!\n", __func__); - return false; - } - - keyidx = gguf_find_key(ggufctx, "falcon.attention.head_count_kv"); - if (keyidx != -1) { hparams.n_head_kv = gguf_get_val_u32(ggufctx, keyidx); } - - - printf("%s: n_ctx = %d\n", __func__, hparams.n_ctx); - printf("%s: n_embd = %d\n", __func__, hparams.n_embd); - printf("%s: n_head = %d\n", __func__, hparams.n_head); - printf("%s: n_head_kv = %d\n", __func__, hparams.n_head_kv); - printf("%s: n_block = %d\n", __func__, hparams.n_block); - printf("%s: norm_eps = %g\n", __func__, hparams.norm_eps); - - } - - // load vocab - { - auto & hparams = model.hparams; - - int keyidx = gguf_find_key(ggufctx, "tokenizer.ggml.model"); - - if (keyidx != -1) { - if ( strcmp(gguf_get_val_str(ggufctx, keyidx), "gpt2") != 0) { - printf("%s: tokenizer model not supported!\n", __func__); - return false; - } - } else { - printf("%s: tokenizer model not found!\n", __func__); - return false; - } - - - int tokens_keyidx = gguf_find_key(ggufctx, "tokenizer.ggml.tokens"); - - if (tokens_keyidx == -1) { - printf("%s: gpt2 tokenizer vocab not found!\n", __func__); - return false; - } - - int merges_keyidx = gguf_find_key(ggufctx, "tokenizer.ggml.merges"); - - if (merges_keyidx == -1) { - printf("%s: gpt2 tokenizer merges not found!\n", __func__); - return false; - } - - hparams.n_vocab = gguf_get_arr_n(ggufctx,tokens_keyidx); - hparams.n_merges = gguf_get_arr_n(ggufctx,merges_keyidx); - - printf("%s: gpt2 tokenizer vocab = %zu\n", __func__, hparams.n_vocab); - printf("%s: gpt2 tokenizer merges = %zu\n", __func__, hparams.n_merges); - - for (size_t i = 0; i < hparams.n_vocab; i++) { - std::string word = gguf_get_arr_str(ggufctx, tokens_keyidx, i); - -// printf("token %d = '%s'\n",i,word.c_str() ); - - vocab.token_to_id[word] = i; - vocab.id_to_token[i] = word; - - if( vocab.id_to_token[i] == "\n" ) { - vocab.linefeed_id = i; - } - } - - std::vector> bpe_merges; - - for (size_t i = 0; i < hparams.n_merges; i++) { - - std::string word = gguf_get_arr_str(ggufctx, merges_keyidx, i); - - // Split the merges - std::string first, second; - size_t pos = word.find(' ', 1); // Start the search from the second character - if (pos != std::string::npos) { - first = word.substr(0, pos); - second = word.substr(pos + 1); - } - - bpe_merges.push_back(std::make_pair(first, second)); - } - - vocab.populate_bpe_ranks(bpe_merges); - - - keyidx = gguf_find_key(ggufctx, "tokenizer.ggml.bos_token_id"); if( keyidx != -1 ) { vocab.special_bos_id = (int32_t)gguf_get_val_u32(ggufctx, keyidx); } - keyidx = gguf_find_key(ggufctx, "tokenizer.ggml.eos_token_id"); if( keyidx != -1 ) { vocab.special_eos_id = (int32_t)gguf_get_val_u32(ggufctx, keyidx); } - keyidx = gguf_find_key(ggufctx, "tokenizer.ggml.unknown_token_id"); if( keyidx != -1 ) { vocab.special_unk_id = (int32_t)gguf_get_val_u32(ggufctx, keyidx); } - keyidx = gguf_find_key(ggufctx, "tokenizer.ggml.separator_token_id"); if( keyidx != -1 ) { vocab.special_sep_id = (int32_t)gguf_get_val_u32(ggufctx, keyidx); } - keyidx = gguf_find_key(ggufctx, "tokenizer.ggml.padding_token_id"); if( keyidx != -1 ) { vocab.special_pad_id = (int32_t)gguf_get_val_u32(ggufctx, keyidx); } - - if( vocab.special_bos_id != -1 ) { printf("%s: BOS token = %d '%s'\n", __func__, vocab.special_bos_id, vocab.id_to_token[vocab.special_bos_id].c_str() ); } - if( vocab.special_eos_id != -1 ) { printf("%s: EOS token = %d '%s'\n", __func__, vocab.special_eos_id, vocab.id_to_token[vocab.special_eos_id].c_str() ); } - if( vocab.special_unk_id != -1 ) { printf("%s: UNK token = %d '%s'\n", __func__, vocab.special_unk_id, vocab.id_to_token[vocab.special_unk_id].c_str() ); } - if( vocab.special_sep_id != -1 ) { printf("%s: SEP token = %d '%s'\n", __func__, vocab.special_sep_id, vocab.id_to_token[vocab.special_sep_id].c_str() ); } - if( vocab.special_pad_id != -1 ) { printf("%s: PAD token = %d '%s'\n", __func__, vocab.special_pad_id, vocab.id_to_token[vocab.special_pad_id].c_str() ); } - if( vocab.linefeed_id != -1 ) { printf("%s: LF token = %d\n", __func__, vocab.linefeed_id ); } - - } - - - auto & ctx = model.ctx; - size_t ctx_size = ggml_get_mem_size(ctx); - - printf("%s: ggml ctx size = %6.2f MB\n", __func__, ctx_size/(1024.0*1024.0)); - - // print tensor info - #if 0 - { - const int n_tensors = gguf_get_n_tensors(ggufctx); - - printf("%s: n_tensors: %d\n", __func__, n_tensors); - - for (int i = 0; i < n_tensors; ++i) { - const char * name = gguf_get_tensor_name (ggufctx, i); - const size_t offset = gguf_get_tensor_offset(ggufctx, i); - - printf("%s: tensor[%d]: name = %s, offset = %zu\n", __func__, i, name, offset); - } - } - #endif - - // prepare memory for the weights - { - - auto & hparams = model.hparams; - - const int n_block = hparams.n_block; - - model.blocks.resize(n_block); - - model.tok_embeddings = ggml_get_tensor(ctx, "token_embd.weight"); - - model.output_norm = ggml_get_tensor(ctx, "output_norm.weight"); - model.output_norm_b = ggml_get_tensor(ctx, "output_norm.bias"); - model.lm_head = ggml_get_tensor(ctx, "output.weight"); - - // map by name - model.tensors["token_embd.weight"] = model.tok_embeddings; - model.tensors["output_norm.weight"] = model.output_norm; - model.tensors["output_norm.bias"] = model.output_norm_b; - model.tensors["output.weight"] = model.lm_head; - - for (int i = 0; i < n_block; ++i) { - - auto& block = model.blocks[i]; - std::string blocknamestart = "blk." + std::to_string(i) + "."; - - block.input_layernorm = get_tensor_ex(ctx, blocknamestart + "attn_norm.weight" ); - block.input_layernorm_b = get_tensor_ex(ctx, blocknamestart + "attn_norm.bias" ); - - if ( hparams.n_head_kv == 8 ) { // Falcon-40B - block.attention_norm = get_tensor_ex(ctx, blocknamestart + "attn_norm_2.weight" ); - block.attention_norm_b = get_tensor_ex(ctx, blocknamestart + "attn_norm_2.bias" ); - } - - // query_key_value shape for config.multi_query == True: - block.query_key_value = get_tensor_ex(ctx, blocknamestart + "attn_qkv.weight" ); - block.wo = get_tensor_ex(ctx, blocknamestart + "attn_output.weight" ); - - block.ffn_up = get_tensor_ex(ctx, blocknamestart + "ffn_up.weight" ); - block.ffn_down = get_tensor_ex(ctx, blocknamestart + "ffn_down.weight" ); - - // map by name - if ( hparams.n_head_kv == 8 ) { // Falcon-40B - // Falcon-40B: - model.tensors[blocknamestart + "attn_norm.weight"] = block.input_layernorm; - model.tensors[blocknamestart + "attn_norm.bias"] = block.input_layernorm_b; - model.tensors[blocknamestart + "attn_norm_2.weight"] = block.attention_norm; - model.tensors[blocknamestart + "attn_norm_2.bias"] = block.attention_norm_b; - } else { - // Falcon-7B: - model.tensors[blocknamestart + "attn_norm.weight"] = block.input_layernorm; - model.tensors[blocknamestart + "attn_norm.bias"] = block.input_layernorm_b; - } - - model.tensors[blocknamestart + "attn_qkv.weight"] = block.query_key_value; - model.tensors[blocknamestart + "attn_output.weight"] = block.wo; - - model.tensors[blocknamestart + "ffn_up.weight"] = block.ffn_up; - model.tensors[blocknamestart + "ffn_down.weight"] = block.ffn_down; - } - } - - // key + value memory - { - const auto & kvctx = model.kvctx; - const auto & hparams = model.hparams; - - const int n_block = hparams.n_block; - const int n_ctx = hparams.n_ctx; - const int n_embd = hparams.n_embd; - - const int64_t n_mem = n_block*n_ctx; - const int64_t n_elements = n_embd*n_mem; - - // create the ggml context - { - struct ggml_init_params params = { - /*.mem_size =*/ size_t(n_elements*4+ggml_tensor_overhead()*2), - /*.mem_buffer =*/ NULL, - /*.no_alloc =*/ false, - }; - - model.kvctx = ggml_init(params); - if (!model.kvctx) { - fprintf(stderr, "%s: kv ggml_init() failed\n", __func__); - return false; - } - - } - - - model.memory_k = ggml_new_tensor_1d(kvctx, GGML_TYPE_F16, n_elements); - model.memory_v = ggml_new_tensor_1d(kvctx, GGML_TYPE_F16, n_elements); - - const size_t memory_size = ggml_nbytes(model.memory_k) + ggml_nbytes(model.memory_v); - - printf("%s: memory_size = %8.2f MB, n_mem = %" PRId64 "\n", __func__, memory_size/1024.0/1024.0, n_mem); - } - - return true; -} - - -// evaluate the transformer -// -// - model: the model -// - n_threads: number of threads to use -// - n_past: the context size so far -// - embd_inp: the embeddings of the tokens in the context -// - embd_w: the predicted logits for the next token -// -bool falcon_eval( - const falcon_model & model, - const int n_threads, - const int n_past, - const std::vector & embd_inp, - std::vector & embd_w, - size_t & mem_per_token) { - - - const int N = embd_inp.size(); - - const auto & hparams = model.hparams; - - const int n_embd = hparams.n_embd; - const int n_block = hparams.n_block; - const int n_ctx = hparams.n_ctx; - const int n_head = hparams.n_head; - const int n_head_kv = hparams.n_head_kv; - const int n_vocab = hparams.n_vocab; - const size_t head_dim = n_embd / n_head; - - static size_t buf_size = 256u*1024*1024; - static void * buf = malloc(buf_size); - - // use 2 scratch buffers - // TODO: very hacky solution - reimplement in a more elegant way - static size_t scr0_size = 256u*1024*1024; - static void * scr0 = malloc(scr0_size); - - static size_t scr1_size = 256u*1024*1024; - static void * scr1 = malloc(scr1_size); - - if (mem_per_token > 0 && mem_per_token*N > buf_size) { - const size_t buf_size_new = 1.1*(mem_per_token*N); // add 10% to account for ggml object overhead - //printf("\n%s: reallocating buffer from %zu to %zu bytes\n", __func__, buf_size, buf_size_new); - - // reallocate - buf_size = buf_size_new; - buf = realloc(buf, buf_size); - if (buf == nullptr) { - fprintf(stderr, "%s: failed to allocate %zu bytes\n", __func__, buf_size); - return false; - } - } - - struct ggml_init_params params = { - /*.mem_size =*/ buf_size, - /*.mem_buffer =*/ buf, - /*.no_alloc =*/ false, - }; - - struct ggml_context * ctx0 = ggml_init(params); - struct ggml_cgraph gf = {}; -// gf.n_threads = n_threads; - - struct ggml_tensor * embd = ggml_new_tensor_1d(ctx0, GGML_TYPE_I32, N); - memcpy(embd->data, embd_inp.data(), N*ggml_element_size(embd)); - - // wte - struct ggml_tensor * inpL = ggml_get_rows(ctx0, model.tok_embeddings, embd); -// struct ggml_tensor* repeat_dummy = ggml_new_tensor_3d(ctx0, inpL->type, head_dim, N + n_past, n_head); - - ggml_type wtype = GGML_TYPE_F32; - const int sizeof_wtype = ggml_type_sizef(wtype); - - for (int il = 0; il < n_block; ++il) { - struct ggml_tensor * cur; - struct ggml_tensor * layernorm_output; - - ggml_set_scratch(ctx0, { 0, scr0_size, scr0, }); - - // self-attention - { - layernorm_output = ggml_norm(ctx0, inpL); - - layernorm_output = ggml_add(ctx0, - ggml_mul(ctx0, - ggml_repeat(ctx0, model.blocks[il].input_layernorm, layernorm_output), - layernorm_output), - ggml_repeat(ctx0, model.blocks[il].input_layernorm_b, layernorm_output)); - - if ( hparams.n_head_kv == 8 ) { // Falcon-40B - cur = ggml_norm(ctx0, inpL); - - cur = ggml_add(ctx0, - ggml_mul(ctx0, - ggml_repeat(ctx0, model.blocks[il].attention_norm, cur), - cur), - ggml_repeat(ctx0, model.blocks[il].attention_norm_b, cur)); - } - else { // Falcon 7B - cur = layernorm_output; - } - - // compute QKV - - cur = ggml_mul_mat(ctx0, model.blocks[il].query_key_value, cur); - - // Note that the strides for Kcur, Vcur are set up so that the - // resulting views are misaligned with the tensor's storage - // (by applying the K/V offset we shift the tensor's original - // view to stick out behind the viewed QKV tensor's allocated - // memory, so to say). This is ok because no actual accesses - // happen to that out-of-range memory, but it can require some - // trickery when trying to accurately dump these views for - // debugging. - - struct ggml_tensor * Qcur = ggml_view_3d( - ctx0, cur, head_dim, n_head, N, - head_dim * sizeof_wtype, - head_dim * (n_head + 2 * n_head_kv) * sizeof_wtype, - 0); - - struct ggml_tensor * Kcur = ggml_view_3d( - ctx0, cur, head_dim, n_head_kv, N, - head_dim * sizeof_wtype, - head_dim * (n_head + 2 * n_head_kv) * sizeof_wtype, - head_dim * n_head * sizeof_wtype); - - struct ggml_tensor * Vcur = ggml_view_3d( - ctx0, cur, head_dim, n_head_kv, N, - head_dim * sizeof_wtype, - head_dim * (n_head + 2 * n_head_kv) * sizeof_wtype, - head_dim * (n_head + n_head_kv) * sizeof_wtype); - - // using mode = 2 for neox mode - Qcur = ggml_rope_inplace(ctx0, Qcur, n_past, head_dim, 2, 0); - Kcur = ggml_rope_inplace(ctx0, Kcur, n_past, head_dim, 2, 0); - - // store key and value to memory - { - struct ggml_tensor* k = ggml_view_1d( - ctx0, model.memory_k, N * n_head_kv * head_dim, - (ggml_element_size(model.memory_k) * n_head_kv * head_dim) * - (il * n_ctx + n_past)); - struct ggml_tensor* v = ggml_view_1d( - ctx0, model.memory_v, N * n_head_kv * head_dim, - (ggml_element_size(model.memory_v) * n_head_kv * head_dim) * - (il * n_ctx + n_past)); - - ggml_build_forward_expand(&gf, ggml_cpy(ctx0, Kcur, k)); - ggml_build_forward_expand(&gf, ggml_cpy(ctx0, Vcur, v)); - } - - struct ggml_tensor * K = ggml_permute( - ctx0, - ggml_reshape_3d( - ctx0, - ggml_view_1d(ctx0, model.memory_k, (n_past + N) * n_head_kv * head_dim, - il * n_ctx * - ggml_element_size(model.memory_k) * - n_head_kv * - head_dim), - head_dim, n_head_kv, n_past + N), - 0, 2, 1, 3); - - // K * Q - -// K = ggml_cont(ctx0, ggml_repeat2(ctx0, K, repeat_dummy)); - - struct ggml_tensor * Q = ggml_permute(ctx0, Qcur, 0, 2, 1, 3); - struct ggml_tensor * KQ = ggml_mul_mat(ctx0, K, Q); - - // KQ_scaled = KQ / sqrt(n_embd/n_head) - struct ggml_tensor * KQ_scaled = - ggml_scale_inplace(ctx0, - KQ, - ggml_new_f32(ctx0, 1.0f/sqrt(float(head_dim))) - ); - - // KQ_masked = mask_past(KQ_scaled) - struct ggml_tensor * KQ_masked = ggml_diag_mask_inf_inplace(ctx0, KQ_scaled, n_past); - - // KQ = soft_max(KQ_masked) - struct ggml_tensor * KQ_soft_max = ggml_soft_max_inplace(ctx0, KQ_masked); - - // V_trans = Vmem.view(n_embd/n_head, n_head, n_past + N).permute(1, 2, 0, 3).contiguous() - struct ggml_tensor* V = ggml_permute( - ctx0, - ggml_reshape_3d( - ctx0, - ggml_view_1d(ctx0, model.memory_v, (n_past + N) * n_head_kv * head_dim, - il * n_ctx * - ggml_element_size(model.memory_v) * - n_head_kv * - head_dim), - head_dim, n_head_kv, n_past + N), - 0, 2, 1, 3); - -// V = ggml_cont(ctx0, ggml_transpose(ctx0, ggml_repeat2(ctx0, V, repeat_dummy))); - V = ggml_cont(ctx0, ggml_transpose(ctx0, V)); - - // KQV = transpose(V) * KQ_soft_max - struct ggml_tensor * KQV = ggml_mul_mat(ctx0, V, KQ_soft_max); - - // KQV_merged = KQV.permute(0, 2, 1, 3) - struct ggml_tensor * KQV_merged = ggml_permute(ctx0, KQV, 0, 2, 1, 3); - - // cur = KQV_merged.contiguous().view(n_embd, N) - cur = ggml_cpy(ctx0, - KQV_merged, - ggml_new_tensor_2d(ctx0, GGML_TYPE_F32, n_embd, N)); - - // projection - { - cur = ggml_mul_mat(ctx0, - model.blocks[il].wo, - cur); - } - } - - ggml_set_scratch(ctx0, { 0, scr1_size, scr1, }); - - struct ggml_tensor* inpFF = layernorm_output; - struct ggml_tensor* attn_out = ggml_cpy( - ctx0, cur, ggml_new_tensor_2d(ctx0, GGML_TYPE_F32, n_embd, N)); - - { - cur = ggml_mul_mat(ctx0, model.blocks[il].ffn_up, inpFF); - cur = ggml_gelu(ctx0, cur); - cur = ggml_mul_mat(ctx0, model.blocks[il].ffn_down, cur); - } - - cur = ggml_add(ctx0, cur, attn_out); - cur = ggml_add(ctx0, cur, inpL); - // input for next layer - inpL = cur; - } - - ggml_set_scratch(ctx0, { 0, scr0_size, scr0, }); - - // norm - { - inpL = ggml_norm(ctx0, inpL); - - // inpL = ln_f_g*inpL + ln_f_b - inpL = ggml_add(ctx0, - ggml_mul(ctx0, - ggml_repeat(ctx0, model.output_norm, inpL), - inpL), - ggml_repeat(ctx0, model.output_norm_b, inpL)); - } - - ggml_set_scratch(ctx0, { 0, 0, nullptr, }); - - // lm_head - { - inpL = ggml_mul_mat(ctx0, model.lm_head, inpL); - - //inpL = ggml_add(ctx0, - // ggml_repeat(ctx0, model.lmh_b, inpL), - // inpL); - } - - // logits -> probs - //inpL = ggml_soft_max_inplace(ctx0, inpL); - - // run the computation - ggml_build_forward_expand(&gf, inpL); -// ggml_graph_compute (ctx0, &gf); - ggml_graph_compute_with_ctx(ctx0, &gf, n_threads); - - //if (n_past%100 == 0) { - // ggml_graph_print (&gf); - // ggml_graph_dump_dot(&gf, NULL, "gpt-2.dot"); - //} - - // return result for just the last token - embd_w.resize(n_vocab); - memcpy(embd_w.data(), (float *)ggml_get_data(inpL) + (n_vocab * (N - 1)), sizeof(float) * n_vocab); - - if (mem_per_token == 0) { - mem_per_token = ggml_used_mem(ctx0)/N; - } - //printf("used_mem = %zu\n", ggml_used_mem(ctx0)); - - ggml_free(ctx0); - - return true; -} - -int main(int argc, char ** argv) { - ggml_time_init(); - - const int64_t t_main_start_us = ggml_time_us(); - - gpt_params params; - - if (!gpt_params_parse(argc, argv, params)) { - return 1; - } - - int64_t t_load_us = 0; - - gpt2bpe_vocab vocab; - falcon_model model; - - // load the model - { - const int64_t t_start_us = ggml_time_us(); - - if (!falcon_model_load(params.model, model, vocab)) { - fprintf(stderr, "%s: failed to load model from '%s'\n", __func__, params.model.c_str()); - return 1; - } - - t_load_us = ggml_time_us() - t_start_us; - - } - - if (params.seed < 0) { - params.seed = time(NULL); - } - - if (params.top_k == 0) { - params.top_k = model.hparams.n_vocab; - } - - printf("%s: seed = %d\n", __func__, params.seed); - printf("%s: temp = %.3f\n", __func__, params.temp); - printf("%s: top_k = %d\n", __func__, params.top_k); - printf("%s: top_p = %.3f\n", __func__, params.top_p); - printf("%s: repeat_last_n = %d\n", __func__, params.repeat_last_n); - printf("%s: repeat_penalty = %.3f\n", __func__, params.repeat_penalty); - - std::mt19937 rng(params.seed); - - if (params.prompt.empty()) { - params.prompt = "Once upon"; - } - - std::vector last_n_tokens(model.hparams.n_ctx); - std::fill(last_n_tokens.begin(), last_n_tokens.end(), 0); - - int n_past = 0; - - int64_t t_sample_us = 0; - int64_t t_predict_us = 0; - - std::vector logits; - - // tokenize the prompt - std::vector embd_inp = gpt2bpe_tokenize(vocab, params.prompt,false, false); - - params.n_predict = std::min(params.n_predict, model.hparams.n_ctx - (int) embd_inp.size()); - - printf("%s: number of tokens in prompt = %zu\n", __func__, embd_inp.size()); -// for (size_t i = 0; i < embd_inp.size(); i++) { -// printf("%s: token[%zu] = %6d, %s\n", __func__, i, embd_inp[i], vocab.id_to_token[embd_inp[i]].c_str()); -// } - - if( model.hparams.n_ctx < params.n_predict+embd_inp.size() ) { - params.n_predict = model.hparams.n_ctx-embd_inp.size(); - } - - printf("%s: n_predict = %d\n", __func__, params.n_predict); - printf("\n"); - - std::vector embd; - - // determine the required inference memory per token: - size_t mem_per_token = 0; - falcon_eval(model, params.n_threads, 0, { 0, 1, 2, 3 }, logits, mem_per_token); - - for (size_t i = embd.size(); i < embd_inp.size() + params.n_predict; i++) { - // predict - if (embd.size() > 0) { - const int64_t t_start_us = ggml_time_us(); - - if (!falcon_eval(model, params.n_threads, n_past, embd, logits, mem_per_token)) { - printf("Failed to predict\n"); - return 1; - } - - t_predict_us += ggml_time_us() - t_start_us; - } - - n_past += embd.size(); - embd.clear(); - - if (i >= embd_inp.size()) { - // sample next token - const int top_k = params.top_k; - const float top_p = params.top_p; - const float temp = params.temp; - const int repeat_last_n = params.repeat_last_n; - const float repeat_penalty = params.repeat_penalty; - - const int n_vocab = model.hparams.n_vocab; - - gpt2bpe_vocab::id id = 0; - - { - const int64_t t_start_sample_us = ggml_time_us(); - - id = sample_top_k_top_p_repeat(vocab, logits.data() + (logits.size() - n_vocab), last_n_tokens.data(), last_n_tokens.size(), top_k, top_p, temp, repeat_last_n, repeat_penalty, rng); - - last_n_tokens.erase(last_n_tokens.begin()); - last_n_tokens.push_back(id); - - t_sample_us += ggml_time_us() - t_start_sample_us; - } - - // add it to the context - embd.push_back(id); - } else { - // if here, it means we are still processing the input prompt - for (size_t k = i; k < embd_inp.size(); k++) { - embd.push_back(embd_inp[k]); - if (embd.size() > params.n_batch) { - break; - } - } - i += embd.size() - 1; - } - - // display text - for (auto id : embd) { - printf("%s", vocab.id_to_token[id].c_str() ); - } - fflush(stdout); - - // end of text token - if (vocab.special_eos_id != -1 && embd.back() == vocab.special_eos_id) { - break; - } - } - - // report timing - { - const int64_t t_main_end_us = ggml_time_us(); - - printf("\n\n"); - printf("%s: mem per token = %8zu bytes\n", __func__, mem_per_token); - printf("%s: load time = %8.2f ms\n", __func__, t_load_us/1000.0f); - printf("%s: sample time = %8.2f ms\n", __func__, t_sample_us/1000.0f); - printf("%s: predict time = %8.2f ms / %.2f ms per token\n", __func__, t_predict_us/1000.0f, t_predict_us/1000.0f/n_past); - printf("%s: total time = %8.2f ms\n", __func__, (t_main_end_us - t_main_start_us)/1000.0f); - } - - ggml_free(model.ctx); - - return 0; -} diff --git a/examples/gptneox-wip/gptneox-main.cpp b/examples/gptneox-wip/gptneox-main.cpp deleted file mode 100644 index b76bafaa8..000000000 --- a/examples/gptneox-wip/gptneox-main.cpp +++ /dev/null @@ -1,1083 +0,0 @@ -#include "ggml.h" -#include "cmpnct_gpt2bpe.hpp" - -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include - -#if defined(_MSC_VER) -#pragma warning(disable: 4244 4267) // possible loss of data -#endif - -// default hparams -struct gpt_neox_hparams { - size_t n_merges = 0; - size_t n_vocab = 0; - uint32_t n_ctx = 0; - uint32_t n_embd = 0; - uint32_t n_head = 0; - uint32_t n_block = 0; - uint32_t n_rot = 0; // rotary_pct * (n_embd / n_head) - bool par_res = true; - float norm_eps = 1e-5; -}; - -struct gpt_neox_block { - // pre normalization - struct ggml_tensor * ln_1_g; - struct ggml_tensor * ln_1_b; - - // attention - struct ggml_tensor * c_attn_attn_w; - struct ggml_tensor * c_attn_attn_b; - - struct ggml_tensor * c_attn_proj_w; - struct ggml_tensor * c_attn_proj_b; - - // post normalization - struct ggml_tensor * ln_2_g; - struct ggml_tensor * ln_2_b; - - // ff - struct ggml_tensor * c_mlp_fc_w; - struct ggml_tensor * c_mlp_fc_b; - - struct ggml_tensor * c_mlp_proj_w; - struct ggml_tensor * c_mlp_proj_b; -}; - -struct gpt_neox_model { - gpt_neox_hparams hparams; - - // normalization - struct ggml_tensor * ln_f_g; - struct ggml_tensor * ln_f_b; - - struct ggml_tensor * wte; // position embedding - - struct ggml_tensor * lmh_g; // language model head - - std::vector blocks; - - // key + value memory - struct ggml_tensor * memory_k; - struct ggml_tensor * memory_v; - - // - struct gguf_context * ggufctx; - struct ggml_context * ctx; - struct ggml_context * kvctx; - - std::map tensors; -}; - -struct gpt_params { - int32_t seed = -1; // RNG seed - int32_t n_threads = std::min(4, (int32_t) std::thread::hardware_concurrency()); - uint32_t n_predict = 200; // new tokens to predict - uint32_t n_batch = 512; // batch size for prompt processing - - // sampling parameters - int32_t top_k = 40; - float top_p = 1.0f; - float temp = 0.8f; - int32_t repeat_last_n = 64; - float repeat_penalty = 1.02f; - - std::string model = ""; // model path - std::string prompt = ""; - - std::string token_test = ""; - bool interactive = false; - int32_t interactive_port = -1; - int32_t n_gpu_layers = 0; -}; - -void gpt_print_usage(int /*argc*/, char ** argv, const gpt_params & params) { - fprintf(stderr, "usage: %s [options]\n", argv[0]); - fprintf(stderr, "\n"); - fprintf(stderr, "options:\n"); - fprintf(stderr, " -h, --help show this help message and exit\n"); - fprintf(stderr, " -s SEED, --seed SEED RNG seed (default: -1)\n"); - fprintf(stderr, " -t N, --threads N number of threads to use during computation (default: %d)\n", params.n_threads); - fprintf(stderr, " -ngl N, --gpu-layers N number of layers to offload to GPU on supported models (default: %d)\n", params.n_gpu_layers); - fprintf(stderr, " -p PROMPT, --prompt PROMPT\n"); - fprintf(stderr, " prompt to start generation with (default: random)\n"); - fprintf(stderr, " -f FNAME, --file FNAME\n"); - fprintf(stderr, " load prompt from a file\n"); - fprintf(stderr, " -tt TOKEN_TEST, --token_test TOKEN_TEST\n"); - fprintf(stderr, " test tokenization\n"); - fprintf(stderr, " -n N, --n_predict N number of tokens to predict (default: %d)\n", params.n_predict); - fprintf(stderr, " --top_k N top-k sampling, 0 = n_vocab (default: %d)\n", params.top_k); - fprintf(stderr, " --top_p N top-p sampling (default: %.1f)\n", params.top_p); - fprintf(stderr, " --temp N temperature (default: %.1f)\n", params.temp); - fprintf(stderr, " --repeat-last-n N last n tokens to consider for penalize (default: %d, 0 = disabled)\n", params.repeat_last_n); - fprintf(stderr, " --repeat-penalty N penalize repeat sequence of tokens (default: %.2f, 1.0 = disabled)\n", (double)params.repeat_penalty); - fprintf(stderr, " -b N, --batch_size N batch size for prompt processing (default: %d)\n", params.n_batch); - fprintf(stderr, " -m FNAME, --model FNAME\n"); - fprintf(stderr, " model path (default: %s)\n", params.model.c_str()); - fprintf(stderr, "\n"); -} - -// Function to check if the next argument exists -std::string get_next_arg(int& i, int argc, char** argv, const std::string& flag, gpt_params& params) { - if (i + 1 < argc && argv[i + 1][0] != '-') { - return argv[++i]; - } else { - fprintf(stderr, "error: %s requires one argument.\n", flag.c_str()); - gpt_print_usage(argc, argv, params); - exit(0); - } -} - -bool gpt_params_parse(int argc, char ** argv, gpt_params & params) { - for (int i = 1; i < argc; i++) { - std::string arg = argv[i]; - - if (arg == "-s" || arg == "--seed") { - params.seed = std::stoi(get_next_arg(i, argc, argv, arg, params)); - } else if (arg == "-t" || arg == "--threads") { - params.n_threads = std::stoi(get_next_arg(i, argc, argv, arg, params)); - } else if (arg == "-ngl" || arg == "--gpu-layers" || arg == "--n-gpu-layers") { - params.n_gpu_layers = std::stoi(get_next_arg(i, argc, argv, arg, params)); - } else if (arg == "-p" || arg == "--prompt") { - params.prompt = get_next_arg(i, argc, argv, arg, params); - } else if (arg == "-n" || arg == "--n_predict") { - params.n_predict = std::stoi(get_next_arg(i, argc, argv, arg, params)); - } else if (arg == "--top_k") { - params.top_k = std::stoi(get_next_arg(i, argc, argv, arg, params)); - } else if (arg == "--top_p") { - params.top_p = std::stof(get_next_arg(i, argc, argv, arg, params)); - } else if (arg == "--temp") { - params.temp = std::stof(get_next_arg(i, argc, argv, arg, params)); - } else if (arg == "--repeat-last-n") { - params.repeat_last_n = std::stoi(get_next_arg(i, argc, argv, arg, params)); - } else if (arg == "--repeat-penalty") { - params.repeat_penalty = std::stof(get_next_arg(i, argc, argv, arg, params)); - } else if (arg == "-b" || arg == "--batch_size") { - params.n_batch= std::stoi(get_next_arg(i, argc, argv, arg, params)); - } else if (arg == "-m" || arg == "--model") { - params.model = get_next_arg(i, argc, argv, arg, params); - } else if (arg == "-i" || arg == "--interactive") { - params.interactive = true; - } else if (arg == "-ip" || arg == "--interactive-port") { - params.interactive = true; - params.interactive_port = std::stoi(get_next_arg(i, argc, argv, arg, params)); - } else if (arg == "-h" || arg == "--help") { - gpt_print_usage(argc, argv, params); - exit(0); - } else if (arg == "-f" || arg == "--file") { - get_next_arg(i, argc, argv, arg, params); - std::ifstream file(argv[i]); - if (!file) { - fprintf(stderr, "error: failed to open file '%s'\n", argv[i]); - break; - } - std::copy(std::istreambuf_iterator(file), std::istreambuf_iterator(), back_inserter(params.prompt)); - if (params.prompt.back() == '\n') { - params.prompt.pop_back(); - } - } else if (arg == "-tt" || arg == "--token_test") { - params.token_test = get_next_arg(i, argc, argv, arg, params); - } - else { - fprintf(stderr, "error: unknown argument: %s\n", arg.c_str()); - gpt_print_usage(argc, argv, params); - exit(0); - } - } - - return true; -} - -gpt2bpe_vocab::id sample_top_k_top_p_repeat( - const gpt2bpe_vocab & vocab, - const float * logits, - const int32_t * last_n_tokens_data, - size_t last_n_tokens_data_size, - int top_k, - double top_p, - double temp, - int repeat_last_n, - float repeat_penalty, - std::mt19937 & rng) { - - int n_logits = vocab.id_to_token.size(); - - const auto * plogits = logits; - - const auto last_n_tokens = std::vector(last_n_tokens_data, last_n_tokens_data + last_n_tokens_data_size); - - if (temp <= 0) { - // select the token with the highest logit directly - float max_logit = plogits[0]; - gpt2bpe_vocab::id max_id = 0; - - for (int i = 1; i < n_logits; ++i) { - if (plogits[i] > max_logit) { - max_logit = plogits[i]; - max_id = i; - } - } - return max_id; - } - - - std::vector> logits_id; - logits_id.reserve(n_logits); - - { - const float scale = 1.0f/temp; - for (int i = 0; i < n_logits; ++i) { - // repetition penalty from ctrl paper (https://arxiv.org/abs/1909.05858) - // credit https://github.com/facebookresearch/llama/compare/main...shawwn:llama:main - if (repeat_last_n > 0 && std::find(last_n_tokens.end()-repeat_last_n, last_n_tokens.end(), i) != last_n_tokens.end()) { - // if score < 0 then repetition penalty has to multiplied to reduce the previous token probability - if (plogits[i] < 0.0f) { - logits_id.push_back(std::make_pair(plogits[i]*scale*repeat_penalty, i)); - } else { - logits_id.push_back(std::make_pair(plogits[i]*scale/repeat_penalty, i)); - } - } else { - logits_id.push_back(std::make_pair(plogits[i]*scale, i)); - } - } - } - - // find the top K tokens - std::partial_sort( - logits_id.begin(), - logits_id.begin() + top_k, logits_id.end(), - [](const std::pair & a, const std::pair & b) { - return a.first > b.first; - }); - - logits_id.resize(top_k); - - double maxl = -INFINITY; - for (const auto & kv : logits_id) { - maxl = std::max(maxl, kv.first); - } - - // compute probs for the top K tokens - std::vector probs; - probs.reserve(logits_id.size()); - - double sum = 0.0; - for (const auto & kv : logits_id) { - double p = exp(kv.first - maxl); - probs.push_back(p); - sum += p; - } - - // normalize the probs - for (auto & p : probs) { - p /= sum; - } - - if (top_p < 1.0f) { - double cumsum = 0.0f; - for (int i = 0; i < top_k; i++) { - cumsum += probs[i]; - if (cumsum >= top_p) { - top_k = i + 1; - probs.resize(top_k); - logits_id.resize(top_k); - break; - } - } - - cumsum = 1.0/cumsum; - for (int i = 0; i < (int) probs.size(); i++) { - probs[i] *= cumsum; - } - } - -// printf("\n"); -// for (int i = 0; i < (int) probs.size(); i++) { -// for (int i = 0; i < 10; i++) { -// printf("%d: '%s' %f\n", i, vocab.id_to_token.at(logits_id[i].second).c_str(), probs[i]); -// } - - std::discrete_distribution<> dist(probs.begin(), probs.end()); - int idx = dist(rng); - - return logits_id[idx].second; - -} - -struct ggml_tensor * get_tensor_ex( struct ggml_context * ctx, std::string name){ - - struct ggml_tensor * cur = ggml_get_tensor(ctx, name.c_str()); - if( cur == NULL ) { - printf("%s: tensor '%s' not found!\n", __func__, name.c_str()); - } else { -// printf("%s: n_dims = %d, name = '%s'\n", __func__, cur->n_dims, cur->name); - } - - return cur; -} - -// load the model's weights from a file -bool gpt_neox_model_load(const std::string & fname, gpt_neox_model & model, gpt2bpe_vocab & vocab) { - printf("%s: loading model from '%s'..\n", __func__, fname.c_str()); - - model.ctx = NULL; - - struct gguf_init_params ggufparams = { - /*.no_alloc = */ false, - /*.ctx = */ &model.ctx, - }; - - auto & ggufctx = model.ggufctx; - - ggufctx = gguf_init_from_file(fname.c_str(), ggufparams); - - if (!ggufctx) { - fprintf(stderr, "%s: gguf_init_from_file() failed\n", __func__); - return false; - } - - printf("%s: gguf version = %d\n", __func__, gguf_get_version(ggufctx)); - printf("%s: gguf alignment = %zu\n", __func__, gguf_get_alignment(ggufctx)); - printf("%s: gguf data offset = %zu\n", __func__, gguf_get_data_offset(ggufctx)); - - // print all kv - #if 0 - { - const int n_kv = gguf_get_n_kv(ggufctx); - - printf("%s: n_kv: %d\n", __func__, n_kv); - - for (int i = 0; i < n_kv; ++i) { - const char * key = gguf_get_key(ggufctx, i); - - printf("%s: kv[%d]: key = %s\n", __func__, i, key); - } - } - #endif - - // print some standard metadata - { - int keyidx; - - keyidx = gguf_find_key(ggufctx, "general.name"); - if (keyidx != -1) { printf("%s: model name = %s\n", __func__, gguf_get_val_str(ggufctx, keyidx)); } - keyidx = gguf_find_key(ggufctx, "general.description"); - if (keyidx != -1) { printf("%s: model description = %s\n", __func__, gguf_get_val_str(ggufctx, keyidx)); } - keyidx = gguf_find_key(ggufctx, "general.author"); - if (keyidx != -1) { printf("%s: model author = %s\n", __func__, gguf_get_val_str(ggufctx, keyidx)); } - keyidx = gguf_find_key(ggufctx, "general.license"); - if (keyidx != -1) { printf("%s: model license = %s\n", __func__, gguf_get_val_str(ggufctx, keyidx)); } - keyidx = gguf_find_key(ggufctx, "general.architecture"); - if (keyidx != -1) { printf("%s: model architecture = %s\n", __func__, gguf_get_val_str(ggufctx, keyidx)); } - keyidx = gguf_find_key(ggufctx, "general.file_type"); - if (keyidx != -1) { printf("%s: model file type = %" PRIu32 "\n", __func__, gguf_get_val_u32(ggufctx, keyidx)); } - keyidx = gguf_find_key(ggufctx, "gptneox.tensor_data_layout"); - if (keyidx != -1) { printf("%s: model data layout = %s\n", __func__, gguf_get_val_str(ggufctx, keyidx)); } - keyidx = gguf_find_key(ggufctx, "general.source.huggingface.repository"); - if (keyidx != -1) { printf("%s: model source HF repo = %s\n", __func__, gguf_get_val_str(ggufctx, keyidx)); } - } - - // check required metadata - { - int keyidx; - - // check model architecture kv - keyidx = gguf_find_key(ggufctx, "general.architecture"); - if (keyidx != -1) { - if ( strcmp(gguf_get_val_str(ggufctx, keyidx), "gptneox") != 0) { - printf("%s: model architecture not supported!\n", __func__); - return false; - } - } else { - printf("%s: gguf model architecture not found!\n", __func__); - return false; - } - - } - - // load hparams - { - auto & hparams = model.hparams; - - bool ok = true; - int keyidx; - - if (ok) { keyidx = gguf_find_key(ggufctx, "gptneox.context_length"); - if (keyidx != -1) { hparams.n_ctx = gguf_get_val_u32(ggufctx, keyidx); } else { ok = false; } } - - if (ok) { keyidx = gguf_find_key(ggufctx, "gptneox.embedding_length"); - if (keyidx != -1) { hparams.n_embd = gguf_get_val_u32(ggufctx, keyidx); } else { ok = false; } } - - if (ok) { keyidx = gguf_find_key(ggufctx, "gptneox.attention.head_count"); - if (keyidx != -1) { hparams.n_head = gguf_get_val_u32(ggufctx, keyidx); } else { ok = false; } } - - if (ok) { keyidx = gguf_find_key(ggufctx, "gptneox.block_count"); - if (keyidx != -1) { hparams.n_block = gguf_get_val_u32(ggufctx, keyidx); } else { ok = false; } } - - if (ok) { keyidx = gguf_find_key(ggufctx, "gptneox.rope.dimension_count"); - if (keyidx != -1) { hparams.n_rot = gguf_get_val_u32(ggufctx, keyidx); } else { ok = false; } } - - if (ok) { keyidx = gguf_find_key(ggufctx, "gptneox.use_parallel_residual"); - if (keyidx != -1) { hparams.par_res = gguf_get_val_bool(ggufctx, keyidx); } else { ok = false; } } - - if (ok) { keyidx = gguf_find_key(ggufctx, "gptneox.attention.layer_norm_epsilon"); - if (keyidx != -1) { hparams.norm_eps= gguf_get_val_f32(ggufctx, keyidx); } else { ok = false; } } - - if (!ok) { - fprintf(stderr, "%s: required hparam missing!\n", __func__); - return false; - } - - printf("%s: n_ctx = %d\n", __func__, hparams.n_ctx); - printf("%s: n_embd = %d\n", __func__, hparams.n_embd); - printf("%s: n_head = %d\n", __func__, hparams.n_head); - printf("%s: n_block = %d\n", __func__, hparams.n_block); - printf("%s: n_rot = %d\n", __func__, hparams.n_rot); - printf("%s: par_res = %d\n", __func__, hparams.par_res); - printf("%s: norm_eps = %g\n", __func__, hparams.norm_eps); - - } - - // load vocab - { - auto & hparams = model.hparams; - - int keyidx = gguf_find_key(ggufctx, "tokenizer.ggml.model"); - - if (keyidx != -1) { - if ( strcmp(gguf_get_val_str(ggufctx, keyidx), "gpt2") != 0) { - printf("%s: tokenizer model not supported!\n", __func__); - return false; - } - } else { - printf("%s: tokenizer model not found!\n", __func__); - return false; - } - - - int tokens_keyidx = gguf_find_key(ggufctx, "tokenizer.ggml.tokens"); - - if (tokens_keyidx == -1) { - printf("%s: gpt2 tokenizer vocab not found!\n", __func__); - return false; - } - - int merges_keyidx = gguf_find_key(ggufctx, "tokenizer.ggml.merges"); - - if (merges_keyidx == -1) { - printf("%s: gpt2 tokenizer merges not found!\n", __func__); - return false; - } - - hparams.n_vocab = gguf_get_arr_n(ggufctx,tokens_keyidx); - hparams.n_merges = gguf_get_arr_n(ggufctx,merges_keyidx); - - printf("%s: gpt2 tokenizer vocab = %zu\n", __func__, hparams.n_vocab); - printf("%s: gpt2 tokenizer merges = %zu\n", __func__, hparams.n_merges); - - for (size_t i = 0; i < hparams.n_vocab; i++) { - std::string word = gguf_get_arr_str(ggufctx, tokens_keyidx, i); - -// printf("token %d = '%s'\n",i,word.c_str() ); - - vocab.token_to_id[word] = i; - vocab.id_to_token[i] = word; - - if( vocab.id_to_token[i] == "\n" ) { - vocab.linefeed_id = i; - } - } - - std::vector> bpe_merges; - - for (size_t i = 0; i < hparams.n_merges; i++) { - - std::string word = gguf_get_arr_str(ggufctx, merges_keyidx, i); - - // Split the merges - std::string first, second; - size_t pos = word.find(' ', 1); // Start the search from the second character - if (pos != std::string::npos) { - first = word.substr(0, pos); - second = word.substr(pos + 1); - } - - bpe_merges.push_back(std::make_pair(first, second)); - } - - vocab.populate_bpe_ranks(bpe_merges); - - - keyidx = gguf_find_key(ggufctx, "tokenizer.ggml.bos_token_id"); if( keyidx != -1 ) { vocab.special_bos_id = (int32_t)gguf_get_val_u32(ggufctx, keyidx); } - keyidx = gguf_find_key(ggufctx, "tokenizer.ggml.eos_token_id"); if( keyidx != -1 ) { vocab.special_eos_id = (int32_t)gguf_get_val_u32(ggufctx, keyidx); } - keyidx = gguf_find_key(ggufctx, "tokenizer.ggml.unknown_token_id"); if( keyidx != -1 ) { vocab.special_unk_id = (int32_t)gguf_get_val_u32(ggufctx, keyidx); } - keyidx = gguf_find_key(ggufctx, "tokenizer.ggml.separator_token_id"); if( keyidx != -1 ) { vocab.special_sep_id = (int32_t)gguf_get_val_u32(ggufctx, keyidx); } - keyidx = gguf_find_key(ggufctx, "tokenizer.ggml.padding_token_id"); if( keyidx != -1 ) { vocab.special_pad_id = (int32_t)gguf_get_val_u32(ggufctx, keyidx); } - - if( vocab.special_bos_id != -1 ) { printf("%s: BOS token = %d '%s'\n", __func__, vocab.special_bos_id, vocab.id_to_token[vocab.special_bos_id].c_str() ); } - if( vocab.special_eos_id != -1 ) { printf("%s: EOS token = %d '%s'\n", __func__, vocab.special_eos_id, vocab.id_to_token[vocab.special_eos_id].c_str() ); } - if( vocab.special_unk_id != -1 ) { printf("%s: UNK token = %d '%s'\n", __func__, vocab.special_unk_id, vocab.id_to_token[vocab.special_unk_id].c_str() ); } - if( vocab.special_sep_id != -1 ) { printf("%s: SEP token = %d '%s'\n", __func__, vocab.special_sep_id, vocab.id_to_token[vocab.special_sep_id].c_str() ); } - if( vocab.special_pad_id != -1 ) { printf("%s: PAD token = %d '%s'\n", __func__, vocab.special_pad_id, vocab.id_to_token[vocab.special_pad_id].c_str() ); } - if( vocab.linefeed_id != -1 ) { printf("%s: LF token = %d\n", __func__, vocab.linefeed_id ); } - } - - - auto & ctx = model.ctx; - size_t ctx_size = ggml_get_mem_size(ctx); - - printf("%s: ggml ctx size = %6.2f MB\n", __func__, ctx_size/(1024.0*1024.0)); - - // print tensor info - #if 0 - { - const int n_tensors = gguf_get_n_tensors(ggufctx); - - printf("%s: n_tensors: %d\n", __func__, n_tensors); - - for (int i = 0; i < n_tensors; ++i) { - const char * name = gguf_get_tensor_name (ggufctx, i); - const size_t offset = gguf_get_tensor_offset(ggufctx, i); - - printf("%s: tensor[%d]: name = %s, offset = %zu\n", __func__, i, name, offset); - } - } - #endif - - // prepare memory for the weights - { - const int n_block = model.hparams.n_block; - - model.blocks.resize(n_block); - - model.wte = ggml_get_tensor(ctx, "token_embd.weight"); - model.ln_f_g = ggml_get_tensor(ctx, "output_norm.weight"); - model.ln_f_b = ggml_get_tensor(ctx, "output_norm.bias"); - model.lmh_g = ggml_get_tensor(ctx, "output.weight"); - - // map by name - model.tensors["token_embd.weight"] = model.wte; - model.tensors["output_norm.weight"] = model.ln_f_g; - model.tensors["output_norm.bias"] = model.ln_f_b; - model.tensors["output.weight"] = model.lmh_g; - - for (int i = 0; i < n_block; ++i) { - auto & block = model.blocks[i]; - - std::string blocknamestart = "blk." + std::to_string(i) + "."; - - block.ln_1_g = get_tensor_ex(ctx, blocknamestart + "attn_norm.weight" ); - block.ln_1_b = get_tensor_ex(ctx, blocknamestart + "attn_norm.bias" ); - - block.c_attn_attn_w = get_tensor_ex(ctx, blocknamestart + "attn_qkv.weight" ); - block.c_attn_attn_b = get_tensor_ex(ctx ,blocknamestart + "attn_qkv.bias" ); - - block.c_attn_proj_w = get_tensor_ex(ctx, blocknamestart + "attn_output.weight" ); - block.c_attn_proj_b = get_tensor_ex(ctx, blocknamestart + "attn_output.bias" ); - - block.ln_2_g = get_tensor_ex(ctx, blocknamestart + "ffn_norm.weight" ); - block.ln_2_b = get_tensor_ex(ctx, blocknamestart + "ffn_norm.bias"); - - block.c_mlp_fc_w = get_tensor_ex(ctx, blocknamestart + "ffn_up.weight" ); - block.c_mlp_fc_b = get_tensor_ex(ctx, blocknamestart + "ffn_up.bias" ); - - block.c_mlp_proj_w = get_tensor_ex(ctx, blocknamestart + "ffn_down.weight" ); - block.c_mlp_proj_b = get_tensor_ex(ctx, blocknamestart + "ffn_down.bias" ); - - // map by name - model.tensors[blocknamestart + "attn_norm.weight"] = block.ln_1_g; - model.tensors[blocknamestart + "attn_norm.bias"] = block.ln_1_b; - - model.tensors[blocknamestart + "attn_qkv.weight"] = block.c_attn_attn_w; - model.tensors[blocknamestart + "attn_qkv.bias"] = block.c_attn_attn_b; - - model.tensors[blocknamestart + "attn_output.weight"] = block.c_attn_proj_w; - model.tensors[blocknamestart + "attn_output.bias"] = block.c_attn_proj_b; - - model.tensors[blocknamestart + "ffn_norm.weight"] = block.ln_2_g; - model.tensors[blocknamestart + "ffn_norm.bias"] = block.ln_2_b; - - model.tensors[blocknamestart + "ffn_up.weight"] = block.c_mlp_fc_w; - model.tensors[blocknamestart + "ffn_up.bias"] = block.c_mlp_fc_b; - - model.tensors[blocknamestart + "ffn_down.weight"] = block.c_mlp_proj_w; - model.tensors[blocknamestart + "ffn_down.bias"] = block.c_mlp_proj_b; - } - } - - // key + value memory - { - const auto & kvctx = model.kvctx; - const auto & hparams = model.hparams; - - const int n_embd = hparams.n_embd; - const int n_block = hparams.n_block; - const int n_ctx = hparams.n_ctx; - - const int64_t n_mem = n_block*n_ctx; - const int64_t n_elements = n_embd*n_mem; - - // create the ggml context - { - struct ggml_init_params params = { - /*.mem_size =*/ size_t(n_elements*4+ggml_tensor_overhead()*2), - /*.mem_buffer =*/ NULL, - /*.no_alloc =*/ false, - }; - - model.kvctx = ggml_init(params); - if (!model.kvctx) { - fprintf(stderr, "%s: kv ggml_init() failed\n", __func__); - return false; - } - - } - - - model.memory_k = ggml_new_tensor_1d(kvctx, GGML_TYPE_F16, n_elements); - model.memory_v = ggml_new_tensor_1d(kvctx, GGML_TYPE_F16, n_elements); - - const size_t memory_size = ggml_nbytes(model.memory_k) + ggml_nbytes(model.memory_v); - - printf("%s: memory_size = %8.2f MB, n_mem = %" PRId64 "\n", __func__, memory_size/1024.0/1024.0, n_mem); - } - - return true; -} - - -// feed-forward network -ggml_tensor * gpt_neox_ff( - const gpt_neox_block &block, - ggml_context * ctx0, - ggml_tensor * inp, - const gpt_neox_hparams &hparams) { - - ggml_tensor * cur = ggml_norm(ctx0, inp, hparams.norm_eps); - - cur = ggml_add(ctx0, ggml_mul(ctx0, ggml_repeat(ctx0, block.ln_2_g, cur), cur), ggml_repeat(ctx0, block.ln_2_b, cur)); - cur = ggml_mul_mat(ctx0, block.c_mlp_fc_w, cur); - cur = ggml_add(ctx0, ggml_repeat(ctx0, block.c_mlp_fc_b, cur), cur); - - // GELU activation - cur = ggml_gelu(ctx0, cur); - - // projection - // cur = proj_w*cur + proj_b - cur = ggml_mul_mat(ctx0, block.c_mlp_proj_w, cur); - - cur = ggml_add(ctx0, ggml_repeat(ctx0, block.c_mlp_proj_b, cur), cur); - return cur; -} - -// evaluate the transformer -// -// - model: the model -// - n_threads: number of threads to use -// - n_past: the context size so far -// - embd_inp: the embeddings of the tokens in the context -// - embd_w: the predicted logits for the next token -// -bool gpt_neox_eval( - const gpt_neox_model & model, - const int n_threads, - const int n_past, - const std::vector & embd_inp, - std::vector & embd_w, - size_t & mem_per_token) { - const int N = embd_inp.size(); - - const auto & hparams = model.hparams; - - const int n_embd = hparams.n_embd; - const int n_block = hparams.n_block; - const int n_ctx = hparams.n_ctx; - const int n_head = hparams.n_head; - const int n_vocab = hparams.n_vocab; - const int n_rot = hparams.n_rot; - - static size_t buf_size = 256u*1024*1024; - static void * buf = malloc(buf_size); - - // use 2 scratch buffers - // TODO: very hacky solution - reimplement in a more elegant way - static size_t scr0_size = 256u*1024*1024; - static void * scr0 = malloc(scr0_size); - - static size_t scr1_size = 256u*1024*1024; - static void * scr1 = malloc(scr1_size); - - if (mem_per_token > 0 && mem_per_token*N > buf_size) { - const size_t buf_size_new = 1.1*(mem_per_token*N); // add 10% to account for ggml object overhead - //printf("\n%s: reallocating buffer from %zu to %zu bytes\n", __func__, buf_size, buf_size_new); - - // reallocate - buf_size = buf_size_new; - buf = realloc(buf, buf_size); - if (buf == nullptr) { - fprintf(stderr, "%s: failed to allocate %zu bytes\n", __func__, buf_size); - return false; - } - } - - struct ggml_init_params params = { - /*.mem_size =*/ buf_size, - /*.mem_buffer =*/ buf, - /*.no_alloc =*/ false, - }; - - struct ggml_context * ctx0 = ggml_init(params); - struct ggml_cgraph gf = {}; - - struct ggml_tensor * embd = ggml_new_tensor_1d(ctx0, GGML_TYPE_I32, N); - memcpy(embd->data, embd_inp.data(), N*ggml_element_size(embd)); - - - // wte - struct ggml_tensor * inpL = ggml_get_rows(ctx0, model.wte, embd); - - for (int il = 0; il < n_block; ++il) { - struct ggml_tensor * cur; - - ggml_set_scratch(ctx0, { 0, scr0_size, scr0, }); - - // self-attention - { - { - cur = ggml_norm(ctx0, inpL, hparams.norm_eps); - - cur = ggml_add(ctx0, - ggml_mul(ctx0, ggml_repeat(ctx0, model.blocks[il].ln_1_g, cur), cur), - ggml_repeat(ctx0, model.blocks[il].ln_1_b, cur)); - } - - // compute QKV - { - - cur = ggml_mul_mat(ctx0, model.blocks[il].c_attn_attn_w, cur); - cur = ggml_add(ctx0, ggml_repeat(ctx0, model.blocks[il].c_attn_attn_b, cur), cur); - } - - struct ggml_tensor * Qcur = ggml_cont(ctx0, ggml_view_3d(ctx0, cur, n_embd/n_head, n_head, N, cur->nb[1]/n_head, cur->nb[1], 0*sizeof(float)*n_embd/n_head)); - struct ggml_tensor * Kcur = ggml_cont(ctx0, ggml_view_3d(ctx0, cur, n_embd/n_head, n_head, N, cur->nb[1]/n_head, cur->nb[1], 1*sizeof(float)*n_embd/n_head)); - struct ggml_tensor * Vcur = ggml_cont(ctx0, ggml_view_3d(ctx0, cur, n_embd/n_head, n_head, N, cur->nb[1]/n_head, cur->nb[1], 2*sizeof(float)*n_embd/n_head)); - - // using mode = 2 for GPT-NeoX mode - Qcur = ggml_rope_inplace(ctx0, Qcur, n_past, n_rot, 2, 0); - Kcur = ggml_rope_inplace(ctx0, Kcur, n_past, n_rot, 2, 0); - - // store key and value to memory - { - Vcur = ggml_transpose(ctx0, ggml_reshape_2d(ctx0, Vcur, n_embd, N)); - - struct ggml_tensor * k = ggml_view_1d(ctx0, model.memory_k, N*n_embd, (ggml_element_size(model.memory_k)*n_embd)*(il*n_ctx + n_past)); - struct ggml_tensor * v = ggml_view_2d(ctx0, model.memory_v, N, n_embd, - ( n_ctx)*ggml_element_size(model.memory_v), - (il*n_ctx)*ggml_element_size(model.memory_v)*n_embd + n_past*ggml_element_size(model.memory_v)); - - ggml_build_forward_expand(&gf, ggml_cpy(ctx0, Kcur, k)); - ggml_build_forward_expand(&gf, ggml_cpy(ctx0, Vcur, v)); - } - - // Q = Qcur.contiguous().view(n_embd/n_head, n_head, N).permute(0, 2, 1, 3) - struct ggml_tensor * Q = ggml_permute(ctx0, Qcur, 0, 2, 1, 3); - - // K = Kmem.view(n_embd/n_head, n_head, n_past + N).permute(0, 2, 1, 3) - struct ggml_tensor * K = - ggml_permute(ctx0, - ggml_reshape_3d(ctx0, - ggml_view_1d(ctx0, model.memory_k, (n_past + N)*n_embd, il*n_ctx*ggml_element_size(model.memory_k)*n_embd), - n_embd/n_head, n_head, n_past + N), - 0, 2, 1, 3); - - // K * Q - struct ggml_tensor * KQ = ggml_mul_mat(ctx0, K, Q); - - // KQ_scaled = KQ / sqrt(n_embd/n_head) - struct ggml_tensor * KQ_scaled = - ggml_scale_inplace(ctx0, - KQ, - ggml_new_f32(ctx0, 1.0f/sqrt(float(n_embd)/n_head)) - ); - - // KQ_masked = mask_past(KQ_scaled) - struct ggml_tensor * KQ_masked = ggml_diag_mask_inf_inplace(ctx0, KQ_scaled, n_past); - - // KQ = soft_max(KQ_masked) - struct ggml_tensor * KQ_soft_max = ggml_soft_max_inplace(ctx0, KQ_masked); - - // V_trans = Vmem.view(n_embd/n_head, n_head, n_past + N).permute(1, 2, 0, 3).contiguous() - struct ggml_tensor * V = - ggml_view_3d(ctx0, model.memory_v, - n_past + N, n_embd/n_head, n_head, - n_ctx*ggml_element_size(model.memory_v), - n_ctx*ggml_element_size(model.memory_v)*n_embd/n_head, - il*n_ctx*ggml_element_size(model.memory_v)*n_embd); - - // KQV = transpose(V) * KQ_soft_max - struct ggml_tensor * KQV = ggml_mul_mat(ctx0, V, KQ_soft_max); - - // KQV_merged = KQV.permute(0, 2, 1, 3) - struct ggml_tensor * KQV_merged = ggml_permute(ctx0, KQV, 0, 2, 1, 3); - - // cur = KQV_merged.contiguous().view(n_embd, N) - cur = ggml_cpy(ctx0, KQV_merged, ggml_new_tensor_2d(ctx0, GGML_TYPE_F32, n_embd, N)); - - // projection - { - cur = ggml_mul_mat(ctx0, model.blocks[il].c_attn_proj_w, cur); - cur = ggml_add(ctx0, ggml_repeat(ctx0, model.blocks[il].c_attn_proj_b, cur), cur); - } - } - - ggml_set_scratch(ctx0, { 0, scr1_size, scr1, }); - - if (hparams.par_res == 0) { - struct ggml_tensor * inpFF = ggml_add(ctx0, cur, inpL); - - cur = gpt_neox_ff(model.blocks[il], ctx0, inpFF, hparams); - - // input for next layer - inpL = ggml_add(ctx0, cur, inpFF); - } else { - struct ggml_tensor * inpFF = cur; - - // this is independent of the self-attention result, so it could be done in parallel to the self-attention - // note here we pass inpL instead of cur - cur = gpt_neox_ff(model.blocks[il], ctx0, inpL, hparams); - - // layer input + FF - cur = ggml_add(ctx0, cur, inpFF); - - // input for next layer - inpL = ggml_add(ctx0, cur, inpL); - } - } - - ggml_set_scratch(ctx0, { 0, scr0_size, scr0, }); - - // norm - { - inpL = ggml_norm(ctx0, inpL, hparams.norm_eps); - - // inpL = ln_f_g*inpL + ln_f_b - inpL = ggml_add(ctx0, - ggml_mul(ctx0, - ggml_repeat(ctx0, model.ln_f_g, inpL), - inpL), - ggml_repeat(ctx0, model.ln_f_b, inpL)); - } - - ggml_set_scratch(ctx0, { 0, 0, nullptr, }); - - // lm_head - { - inpL = ggml_mul_mat(ctx0, model.lmh_g, inpL); - - //inpL = ggml_add(ctx0, - // ggml_repeat(ctx0, model.lmh_b, inpL), - // inpL); - } - - // logits -> probs - //inpL = ggml_soft_max_inplace(ctx0, inpL); - - // run the computation - ggml_build_forward_expand(&gf, inpL); - ggml_graph_compute_with_ctx(ctx0, &gf, n_threads); - - //if (n_past%100 == 0) { - // ggml_graph_print (&gf); - // ggml_graph_dump_dot(&gf, NULL, "gpt-2.dot"); - //} - - //embd_w.resize(n_vocab*N); - //memcpy(embd_w.data(), ggml_get_data(inpL), sizeof(float)*n_vocab*N); - - // return result for just the last token - embd_w.resize(n_vocab); - memcpy(embd_w.data(), (float *) ggml_get_data(inpL) + (n_vocab*(N-1)), sizeof(float)*n_vocab); - - if (mem_per_token == 0) { - mem_per_token = ggml_used_mem(ctx0)/N; - } - //printf("used_mem = %zu\n", ggml_used_mem(ctx0)); - - ggml_free(ctx0); - - return true; -} - -int main(int argc, char ** argv) { - ggml_time_init(); - - const int64_t t_main_start_us = ggml_time_us(); - - gpt_params params; - - if (!gpt_params_parse(argc, argv, params)) { - return 1; - } - - int64_t t_load_us = 0; - - gpt2bpe_vocab vocab; - gpt_neox_model model; - - // load the model - { - const int64_t t_start_us = ggml_time_us(); - - if (!gpt_neox_model_load(params.model, model, vocab)) { - fprintf(stderr, "%s: failed to load model from '%s'\n", __func__, params.model.c_str()); - return 1; - } - - t_load_us = ggml_time_us() - t_start_us; - - } - - if (params.seed < 0) { - params.seed = time(NULL); - } - - if (params.top_k == 0) { - params.top_k = model.hparams.n_vocab; - } - - printf("%s: seed = %d\n", __func__, params.seed); - printf("%s: temp = %.3f\n", __func__, params.temp); - printf("%s: top_k = %d\n", __func__, params.top_k); - printf("%s: top_p = %.3f\n", __func__, params.top_p); - printf("%s: repeat_last_n = %d\n", __func__, params.repeat_last_n); - printf("%s: repeat_penalty = %.3f\n", __func__, params.repeat_penalty); - - std::mt19937 rng(params.seed); - - if (params.prompt.empty()) { - params.prompt = "Once upon"; - } - - std::vector last_n_tokens(model.hparams.n_ctx); - std::fill(last_n_tokens.begin(), last_n_tokens.end(), 0); - - int n_past = 0; - - int64_t t_sample_us = 0; - int64_t t_predict_us = 0; - - std::vector logits; - - // tokenize the prompt - std::vector embd_inp = gpt2bpe_tokenize(vocab, params.prompt,false, false); - - params.n_predict = std::min(params.n_predict, model.hparams.n_ctx - (int) embd_inp.size()); - - printf("%s: number of tokens in prompt = %zu\n", __func__, embd_inp.size()); -// for (size_t i = 0; i < embd_inp.size(); i++) { -// printf("%s: token[%zu] = %6d, %s\n", __func__, i, embd_inp[i], vocab.id_to_token[embd_inp[i]].c_str()); -// } - - if( model.hparams.n_ctx < params.n_predict+embd_inp.size() ) { - params.n_predict = model.hparams.n_ctx-embd_inp.size(); - } - - printf("%s: n_predict = %d\n", __func__, params.n_predict); - printf("\n"); - - std::vector embd; - - // determine the required inference memory per token: - size_t mem_per_token = 0; - gpt_neox_eval(model, params.n_threads, 0, { 0, 1, 2, 3 }, logits, mem_per_token); - - for (size_t i = embd.size(); i < embd_inp.size() + params.n_predict; i++) { - // predict - if (embd.size() > 0) { - const int64_t t_start_us = ggml_time_us(); - - if (!gpt_neox_eval(model, params.n_threads, n_past, embd, logits, mem_per_token)) { - printf("Failed to predict\n"); - return 1; - } - - t_predict_us += ggml_time_us() - t_start_us; - } - - n_past += embd.size(); - embd.clear(); - - if (i >= embd_inp.size()) { - // sample next token - const int top_k = params.top_k; - const float top_p = params.top_p; - const float temp = params.temp; - const int repeat_last_n = params.repeat_last_n; - const float repeat_penalty = params.repeat_penalty; - - const int n_vocab = model.hparams.n_vocab; - - gpt2bpe_vocab::id id = 0; - - { - const int64_t t_start_sample_us = ggml_time_us(); - - id = sample_top_k_top_p_repeat(vocab, logits.data() + (logits.size() - n_vocab), last_n_tokens.data(), last_n_tokens.size(), top_k, top_p, temp, repeat_last_n, repeat_penalty, rng); - - last_n_tokens.erase(last_n_tokens.begin()); - last_n_tokens.push_back(id); - - t_sample_us += ggml_time_us() - t_start_sample_us; - } - - // add it to the context - embd.push_back(id); - } else { - // if here, it means we are still processing the input prompt - for (size_t k = i; k < embd_inp.size(); k++) { - embd.push_back(embd_inp[k]); - if (embd.size() > params.n_batch) { - break; - } - } - i += embd.size() - 1; - } - - // display text - for (auto id : embd) { - printf("%s", vocab.id_to_token[id].c_str() ); - } - fflush(stdout); - - // end of text token - if (vocab.special_eos_id != -1 && embd.back() == vocab.special_eos_id) { - break; - } - } - - // report timing - { - const int64_t t_main_end_us = ggml_time_us(); - - printf("\n\n"); - printf("%s: mem per token = %8zu bytes\n", __func__, mem_per_token); - printf("%s: load time = %8.2f ms\n", __func__, t_load_us/1000.0f); - printf("%s: sample time = %8.2f ms\n", __func__, t_sample_us/1000.0f); - printf("%s: predict time = %8.2f ms / %.2f ms per token\n", __func__, t_predict_us/1000.0f, t_predict_us/1000.0f/n_past); - printf("%s: total time = %8.2f ms\n", __func__, (t_main_end_us - t_main_start_us)/1000.0f); - } - - ggml_free(model.ctx); - - return 0; -} diff --git a/examples/infill/CMakeLists.txt b/examples/infill/CMakeLists.txt index 046f9b1e7..57d01cb0b 100644 --- a/examples/infill/CMakeLists.txt +++ b/examples/infill/CMakeLists.txt @@ -4,5 +4,5 @@ install(TARGETS ${TARGET} RUNTIME) target_link_libraries(${TARGET} PRIVATE common llama ${CMAKE_THREAD_LIBS_INIT}) target_compile_features(${TARGET} PRIVATE cxx_std_11) if(TARGET BUILD_INFO) - add_dependencies(${TARGET} BUILD_INFO) + add_dependencies(${TARGET} BUILD_INFO) endif() diff --git a/examples/infill/infill.cpp b/examples/infill/infill.cpp index 128d67080..6331335e3 100644 --- a/examples/infill/infill.cpp +++ b/examples/infill/infill.cpp @@ -39,8 +39,8 @@ static gpt_params * g_params; static std::vector * g_input_tokens; static std::ostringstream * g_output_ss; static std::vector * g_output_tokens; -static bool is_interacting = false; +static bool is_interacting = false; static void write_logfile( const llama_context * ctx, const gpt_params & params, const llama_model * model, @@ -104,7 +104,7 @@ static void sigint_handler(int signo) { int main(int argc, char ** argv) { gpt_params params; - llama_sampling_params & sparams = params.sampling_params; + llama_sampling_params & sparams = params.sparams; g_params = ¶ms; if (!gpt_params_parse(argc, argv, params)) { @@ -358,36 +358,10 @@ int main(int argc, char ** argv) { LOG_TEE("Input suffix: '%s'\n", params.input_suffix.c_str()); } } - LOG_TEE("sampling: repeat_last_n = %d, repeat_penalty = %f, presence_penalty = %f, frequency_penalty = %f, top_k = %d, tfs_z = %f, top_p = %f, typical_p = %f, temp = %f, mirostat = %d, mirostat_lr = %f, mirostat_ent = %f\n", - sparams.repeat_last_n, sparams.repeat_penalty, sparams.presence_penalty, sparams.frequency_penalty, sparams.top_k, sparams.tfs_z, sparams.top_p, sparams.typical_p, sparams.temp, sparams.mirostat, sparams.mirostat_eta, sparams.mirostat_tau); + LOG_TEE("sampling: \n%s\n", llama_sampling_print(sparams).c_str()); LOG_TEE("generate: n_ctx = %d, n_batch = %d, n_predict = %d, n_keep = %d\n", n_ctx, params.n_batch, params.n_predict, params.n_keep); LOG_TEE("\n\n"); - struct llama_grammar * grammar = NULL; - grammar_parser::parse_state parsed_grammar; - - if (!params.grammar.empty()) { - parsed_grammar = grammar_parser::parse(params.grammar.c_str()); - // will be empty (default) if there are parse errors - if (parsed_grammar.rules.empty()) { - return 1; - } - LOG_TEE("%s: grammar:\n", __func__); - grammar_parser::print_grammar(stderr, parsed_grammar); - LOG_TEE("\n"); - - { - auto it = sparams.logit_bias.find(llama_token_eos(ctx)); - if (it != sparams.logit_bias.end() && it->second == -INFINITY) { - LOG_TEE("%s: warning: EOS token is disabled, which will cause most grammars to fail\n", __func__); - } - } - - std::vector grammar_rules(parsed_grammar.c_rules()); - grammar = llama_grammar_init( - grammar_rules.data(), grammar_rules.size(), parsed_grammar.symbol_ids.at("root")); - } - LOG_TEE("\n##### Infill mode #####\n\n"); if (params.infill) { printf("\n************\n"); @@ -430,7 +404,7 @@ int main(int argc, char ** argv) { std::vector embd; std::vector embd_guidance; - struct llama_sampling_context * ctx_sampling = llama_sampling_init(params); + struct llama_sampling_context * ctx_sampling = llama_sampling_init(sparams); while (n_remain != 0 || params.interactive) { // predict @@ -549,7 +523,7 @@ int main(int argc, char ** argv) { const llama_token id = llama_sampling_sample(ctx_sampling, ctx, ctx_guidance); - llama_sampling_accept(ctx_sampling, ctx, id); + llama_sampling_accept(ctx_sampling, ctx, id, true); LOG("last: %s\n", LOG_TOKENS_TOSTR_PRETTY(ctx, ctx_sampling->prev).c_str()); @@ -567,8 +541,11 @@ int main(int argc, char ** argv) { LOG("embd_inp.size(): %d, n_consumed: %d\n", (int) embd_inp.size(), n_consumed); while ((int) embd_inp.size() > n_consumed) { embd.push_back(embd_inp[n_consumed]); - ctx_sampling->prev.erase(ctx_sampling->prev.begin()); - ctx_sampling->prev.push_back(embd_inp[n_consumed]); + + // push the prompt in the sampling context in order to apply repetition penalties later + // for the prompt, we don't apply grammar rules + llama_sampling_accept(ctx_sampling, ctx, embd_inp[n_consumed], false); + ++n_consumed; if ((int) embd.size() >= params.n_batch) { break; @@ -600,7 +577,7 @@ int main(int argc, char ** argv) { if ((int) embd_inp.size() <= n_consumed) { // deal with eot token in infill mode - if ((ctx_sampling->prev.back() == llama_token_eot(ctx) || is_interacting) && params.interactive){ + if ((llama_sampling_last(ctx_sampling) == llama_token_eot(ctx) || is_interacting) && params.interactive){ if(is_interacting && !params.interactive_first) { // print an eot token printf("%s", llama_token_to_piece(ctx, llama_token_eot(ctx)).c_str()); @@ -617,7 +594,7 @@ int main(int argc, char ** argv) { buffer += line; } while (another_line); // check if we got an empty line, if so we use the old input - if(!buffer.empty() && !(buffer.length() == 1 && buffer[0] == '\n')) { + if (!buffer.empty() && !(buffer.length() == 1 && buffer[0] == '\n')) { params.input_prefix = buffer; } buffer.clear(); @@ -627,7 +604,7 @@ int main(int argc, char ** argv) { buffer += line; } while (another_line); // check if we got an empty line - if(!buffer.empty() && !(buffer.length() == 1 && buffer[0] == '\n')) { + if (!buffer.empty() && !(buffer.length() == 1 && buffer[0] == '\n')) { params.input_suffix = buffer; } buffer.clear(); @@ -640,7 +617,7 @@ int main(int argc, char ** argv) { process_escapes(params.input_suffix); } suff_rm_leading_spc = params.escape; - if (suff_rm_leading_spc && params.input_suffix.find_first_of(" ") == 0 && params.input_suffix.size() > 1) { + if (suff_rm_leading_spc && params.input_suffix.find_first_of(' ') == 0 && params.input_suffix.size() > 1) { params.input_suffix.erase(0, 1); suff_rm_leading_spc = false; } @@ -667,7 +644,7 @@ int main(int argc, char ** argv) { is_interacting = false; } // deal with end of text token in interactive mode - else if (ctx_sampling->prev.back() == llama_token_eos(ctx)) { + else if (llama_sampling_last(ctx_sampling) == llama_token_eos(ctx)) { LOG("found EOS token\n"); if (params.interactive) { @@ -740,15 +717,7 @@ int main(int argc, char ** argv) { if (n_past > 0) { if (is_interacting) { - // reset grammar state if we're restarting generation - if (grammar != NULL) { - llama_grammar_free(grammar); - - std::vector grammar_rules(parsed_grammar.c_rules()); - grammar = llama_grammar_init( - grammar_rules.data(), grammar_rules.size(), - parsed_grammar.symbol_ids.at("root")); - } + llama_sampling_reset(ctx_sampling); } is_interacting = false; } @@ -778,9 +747,7 @@ int main(int argc, char ** argv) { llama_free(ctx); llama_free_model(model); - if (grammar != NULL) { - llama_grammar_free(grammar); - } + llama_sampling_free(ctx_sampling); llama_backend_free(); #ifndef LOG_DISABLE_LOGS diff --git a/examples/llava/llava-utils.h b/examples/llava/llava-utils.h index e050b59be..45b2b1ad3 100644 --- a/examples/llava/llava-utils.h +++ b/examples/llava/llava-utils.h @@ -58,28 +58,30 @@ inline bool eval_string(struct llama_context * ctx_llama, const char* str, int n // TODO: use common/sampling.h inline llama_token sample_id(llama_context * ctx_llama, gpt_params & params) { - // out of user input, sample next token - const float temp = params.sampling_params.temp; - const int32_t top_k = params.sampling_params.top_k <= 0 ? llama_n_vocab(llama_get_model(ctx_llama)) : params.sampling_params.top_k; - const float top_p = params.sampling_params.top_p; - const float tfs_z = params.sampling_params.tfs_z; - const float typical_p = params.sampling_params.typical_p; - // const int32_t repeat_last_n = params.sampling_params.repeat_last_n < 0 ? n_ctx : params.sampling_params.repeat_last_n; - // const float repeat_penalty = params.sampling_params.repeat_penalty; - // const float alpha_presence = params.sampling_params.presence_penalty; - // const float alpha_frequency = params.sampling_params.frequency_penalty; - const int mirostat = params.sampling_params.mirostat; - const float mirostat_tau = params.sampling_params.mirostat_tau; - const float mirostat_eta = params.sampling_params.mirostat_eta; - // const bool penalize_nl = params.sampling_params.penalize_nl; + auto & sparams = params.sparams; + + // out of user input, sample next token + const float temp = sparams.temp; + const int32_t top_k = sparams.top_k <= 0 ? llama_n_vocab(llama_get_model(ctx_llama)) : sparams.top_k; + const float top_p = sparams.top_p; + const float tfs_z = sparams.tfs_z; + const float typical_p = sparams.typical_p; + // const int32_t repeat_last_n = sparams.repeat_last_n < 0 ? n_ctx : sparams.repeat_last_n; + // const float repeat_penalty = sparams.repeat_penalty; + // const float alpha_presence = sparams.presence_penalty; + // const float alpha_frequency = sparams.frequency_penalty; + const int mirostat = sparams.mirostat; + const float mirostat_tau = sparams.mirostat_tau; + const float mirostat_eta = sparams.mirostat_eta; + // const bool penalize_nl = sparams.penalize_nl; llama_token id = 0; { auto logits = llama_get_logits(ctx_llama); auto n_vocab = llama_n_vocab(llama_get_model(ctx_llama)); - // Apply params.logit_bias map - for (auto it = params.sampling_params.logit_bias.begin(); it != params.sampling_params.logit_bias.end(); it++) { + // Apply params.logit_bias map + for (auto it = sparams.logit_bias.begin(); it != sparams.logit_bias.end(); it++) { logits[it->first] += it->second; } @@ -91,18 +93,18 @@ inline llama_token sample_id(llama_context * ctx_llama, gpt_params & params) { llama_token_data_array candidates_p = { candidates.data(), candidates.size(), false }; - // TODO: Apply penalties - // float nl_logit = logits[llama_token_nl(ctx)]; - // auto last_n_repeat = std::min(std::min((int)last_n_tokens.size(), repeat_last_n), n_ctx); - // llama_sample_repetition_penalty(ctx, &candidates_p, - // last_n_tokens.data() + last_n_tokens.size() - last_n_repeat, - // last_n_repeat, repeat_penalty); - // llama_sample_frequency_and_presence_penalties(ctx, &candidates_p, - // last_n_tokens.data() + last_n_tokens.size() - last_n_repeat, - // last_n_repeat, alpha_frequency, alpha_presence); - // if (!penalize_nl) { - // logits[llama_token_nl(ctx)] = nl_logit; - // } + // TODO: Apply penalties + // float nl_logit = logits[llama_token_nl(ctx)]; + // auto last_n_repeat = std::min(std::min((int)last_n_tokens.size(), repeat_last_n), n_ctx); + // llama_sample_repetition_penalty(ctx, &candidates_p, + // last_n_tokens.data() + last_n_tokens.size() - last_n_repeat, + // last_n_repeat, repeat_penalty); + // llama_sample_frequency_and_presence_penalties(ctx, &candidates_p, + // last_n_tokens.data() + last_n_tokens.size() - last_n_repeat, + // last_n_repeat, alpha_frequency, alpha_presence); + // if (!penalize_nl) { + // logits[llama_token_nl(ctx)] = nl_logit; + // } if (temp <= 0) { // Greedy sampling diff --git a/examples/main/main.cpp b/examples/main/main.cpp index 1a5911c56..db5309afe 100644 --- a/examples/main/main.cpp +++ b/examples/main/main.cpp @@ -108,7 +108,7 @@ int main(int argc, char ** argv) { if (!gpt_params_parse(argc, argv, params)) { return 1; } - llama_sampling_params & sparams = params.sampling_params; + llama_sampling_params & sparams = params.sparams; #ifndef LOG_DISABLE_LOGS log_set_target(log_filename_generator("main", "log")); @@ -415,8 +415,7 @@ int main(int argc, char ** argv) { } } } - LOG_TEE("sampling: repeat_last_n = %d, repeat_penalty = %f, presence_penalty = %f, frequency_penalty = %f, top_k = %d, tfs_z = %f, top_p = %f, typical_p = %f, temp = %f, mirostat = %d, mirostat_lr = %f, mirostat_ent = %f\n", - sparams.repeat_last_n, sparams.repeat_penalty, sparams.presence_penalty, sparams.frequency_penalty, sparams.top_k, sparams.tfs_z, sparams.top_p, sparams.typical_p, sparams.temp, sparams.mirostat, sparams.mirostat_eta, sparams.mirostat_tau); + LOG_TEE("sampling: \n%s\n", llama_sampling_print(sparams).c_str()); LOG_TEE("generate: n_ctx = %d, n_batch = %d, n_predict = %d, n_keep = %d\n", n_ctx, params.n_batch, params.n_predict, params.n_keep); LOG_TEE("\n\n"); @@ -459,7 +458,7 @@ int main(int argc, char ** argv) { std::vector embd; std::vector embd_guidance; - struct llama_sampling_context * ctx_sampling = llama_sampling_init(params); + struct llama_sampling_context * ctx_sampling = llama_sampling_init(sparams); while ((n_remain != 0 && !is_antiprompt) || params.interactive) { // predict @@ -612,7 +611,7 @@ int main(int argc, char ** argv) { const llama_token id = llama_sampling_sample(ctx_sampling, ctx, ctx_guidance); - llama_sampling_accept(ctx_sampling, ctx, id); + llama_sampling_accept(ctx_sampling, ctx, id, true); LOG("last: %s\n", LOG_TOKENS_TOSTR_PRETTY(ctx, ctx_sampling->prev).c_str()); @@ -631,12 +630,9 @@ int main(int argc, char ** argv) { while ((int) embd_inp.size() > n_consumed) { embd.push_back(embd_inp[n_consumed]); - // GG: I'm not sure it's a good idea to push the prompt tokens into the sampling context - // Most likely will remove this in the future to avoid exposing "prev" - // Same thing is done in "server". If we stop pushing the prompt tokens, then the repetition - // penalty will be applied only based on the tokens generated by the model. - ctx_sampling->prev.erase(ctx_sampling->prev.begin()); - ctx_sampling->prev.push_back(embd_inp[n_consumed]); + // push the prompt in the sampling context in order to apply repetition penalties later + // for the prompt, we don't apply grammar rules + llama_sampling_accept(ctx_sampling, ctx, embd_inp[n_consumed], false); ++n_consumed; if ((int) embd.size() >= params.n_batch) { @@ -667,12 +663,10 @@ int main(int argc, char ** argv) { // if not currently processing queued inputs; if ((int) embd_inp.size() <= n_consumed) { - // check for reverse prompt + // check for reverse prompt in the last n_prev tokens if (!params.antiprompt.empty()) { - std::string last_output; - for (auto id : ctx_sampling->prev) { - last_output += llama_token_to_piece(ctx, id); - } + const int n_prev = 32; + const std::string last_output = llama_sampling_prev_str(ctx_sampling, ctx, n_prev); is_antiprompt = false; // Check if each of the reverse prompts appears at the end of the output. @@ -699,7 +693,7 @@ int main(int argc, char ** argv) { } // deal with end of text token in interactive mode - if (ctx_sampling->prev.back() == llama_token_eos(ctx)) { + if (llama_sampling_last(ctx_sampling) == llama_token_eos(ctx)) { LOG("found EOS token\n"); if (params.interactive) { diff --git a/examples/parallel/parallel.cpp b/examples/parallel/parallel.cpp index 69f9526a4..eb64adef8 100644 --- a/examples/parallel/parallel.cpp +++ b/examples/parallel/parallel.cpp @@ -157,7 +157,7 @@ int main(int argc, char ** argv) { for (size_t i = 0; i < clients.size(); ++i) { auto & client = clients[i]; client.id = i; - client.ctx_sampling = llama_sampling_init(params); + client.ctx_sampling = llama_sampling_init(params.sparams); } std::vector tokens_system; @@ -330,7 +330,7 @@ int main(int argc, char ** argv) { const llama_token id = llama_sampling_sample(client.ctx_sampling, ctx, NULL, client.i_batch - i); - llama_sampling_accept(client.ctx_sampling, ctx, id); + llama_sampling_accept(client.ctx_sampling, ctx, id, true); if (client.n_decoded == 1) { // start measuring generation time after the first token to make sure all concurrent clients diff --git a/examples/server/server.cpp b/examples/server/server.cpp index 0471528a3..b5ad3cc99 100644 --- a/examples/server/server.cpp +++ b/examples/server/server.cpp @@ -195,10 +195,12 @@ struct llama_server_context json prompt; std::vector embd; + gpt_params params; + llama_model *model = nullptr; llama_context *ctx = nullptr; - gpt_params params; llama_sampling_context *ctx_sampling = nullptr; + int n_ctx; bool truncated = false; @@ -232,7 +234,7 @@ struct llama_server_context void rewind() { params.antiprompt.clear(); - params.grammar.clear(); + params.sparams.grammar.clear(); num_prompt_tokens = 0; num_tokens_predicted = 0; generated_text = ""; @@ -246,11 +248,14 @@ struct llama_server_context multibyte_pending = 0; n_remain = 0; n_past = 0; + params.sparams.n_prev = n_ctx; + } + void initSampling() { if (ctx_sampling != nullptr) { llama_sampling_free(ctx_sampling); } - ctx_sampling = llama_sampling_init(params); + ctx_sampling = llama_sampling_init(params.sparams); } bool loadModel(const gpt_params ¶ms_) @@ -311,16 +316,32 @@ struct llama_server_context return prompt_tokens; } - bool loadGrammar() - { - ctx_sampling = llama_sampling_init(params); - return true; + void truncatePrompt(std::vector &prompt_tokens) { + const int n_left = n_ctx - params.n_keep; + const int n_block_size = n_left / 2; + const int erased_blocks = (prompt_tokens.size() - params.n_keep - n_block_size) / n_block_size; + + // Keep n_keep tokens at start of prompt (at most n_ctx - 4) + std::vector new_tokens(prompt_tokens.begin(), prompt_tokens.begin() + params.n_keep); + + new_tokens.insert(new_tokens.end(), prompt_tokens.begin() + params.n_keep + erased_blocks * n_block_size, prompt_tokens.end()); + + LOG_VERBOSE("input truncated", { + {"n_ctx", n_ctx}, + {"n_keep", params.n_keep}, + {"n_left", n_left}, + {"new_tokens", tokens_to_str(ctx, new_tokens.cbegin(), new_tokens.cend())}, + {"num_prompt_tokens", new_tokens.size()} + }); + + truncated = true; + prompt_tokens = new_tokens; } void loadInfill() { bool suff_rm_leading_spc = true; - if (params.input_suffix.find_first_of(" ") == 0 && params.input_suffix.size() > 1) { + if (params.input_suffix.find_first_of(' ') == 0 && params.input_suffix.size() > 1) { params.input_suffix.erase(0, 1); suff_rm_leading_spc = false; } @@ -336,6 +357,7 @@ struct llama_server_context prefix_tokens.insert(prefix_tokens.end(), llama_token_suffix(ctx)); prefix_tokens.insert(prefix_tokens.end(), suffix_tokens.begin(), suffix_tokens.end()); prefix_tokens.push_back(llama_token_middle(ctx)); + auto prompt_tokens = prefix_tokens; num_prompt_tokens = prompt_tokens.size(); @@ -347,31 +369,18 @@ struct llama_server_context params.n_keep = std::min(params.n_ctx - 4, params.n_keep); // if input prompt is too big, truncate like normal - if (num_prompt_tokens >= (size_t)params.n_ctx) + if (num_prompt_tokens >= (size_t) n_ctx) { - printf("Input prompt is too big, truncating. Can only take %d tokens but got %zu\n", params.n_ctx, num_prompt_tokens); - // todo we probably want to cut from both sides - const int n_left = (params.n_ctx - params.n_keep) / 2; - std::vector new_tokens(prompt_tokens.begin(), prompt_tokens.begin() + params.n_keep); - const int erased_blocks = (num_prompt_tokens - params.n_keep - n_left - 1) / n_left; - new_tokens.insert(new_tokens.end(), prompt_tokens.begin() + params.n_keep + erased_blocks * n_left, prompt_tokens.end()); - std::copy(prompt_tokens.end() - params.n_ctx, prompt_tokens.end(), ctx_sampling->prev.begin()); + truncatePrompt(prompt_tokens); + num_prompt_tokens = prompt_tokens.size(); - LOG_VERBOSE("input truncated", { - {"n_ctx", params.n_ctx}, - {"n_keep", params.n_keep}, - {"n_left", n_left}, - {"new_tokens", tokens_to_str(ctx, new_tokens.cbegin(), new_tokens.cend())}, - }); - - truncated = true; - prompt_tokens = new_tokens; + GGML_ASSERT(num_prompt_tokens < (size_t)n_ctx); } - else + + // push the prompt into the sampling context (do not apply grammar) + for (auto & token : prompt_tokens) { - const size_t ps = num_prompt_tokens; - std::fill(ctx_sampling->prev.begin(), ctx_sampling->prev.end() - ps, 0); - std::copy(prompt_tokens.begin(), prompt_tokens.end(), ctx_sampling->prev.end() - ps); + llama_sampling_accept(ctx_sampling, ctx, token, false); } // compare the evaluated prompt with the new prompt @@ -409,29 +418,18 @@ struct llama_server_context params.n_keep = std::min(n_ctx - 4, params.n_keep); // if input prompt is too big, truncate like normal - if (num_prompt_tokens >= (size_t)n_ctx) + if (num_prompt_tokens >= (size_t) n_ctx) { - const int n_left = (n_ctx - params.n_keep) / 2; - std::vector new_tokens(prompt_tokens.begin(), prompt_tokens.begin() + params.n_keep); - const int erased_blocks = (num_prompt_tokens - params.n_keep - n_left - 1) / n_left; - new_tokens.insert(new_tokens.end(), prompt_tokens.begin() + params.n_keep + erased_blocks * n_left, prompt_tokens.end()); - std::copy(prompt_tokens.end() - n_ctx, prompt_tokens.end(), ctx_sampling->prev.begin()); + truncatePrompt(prompt_tokens); + num_prompt_tokens = prompt_tokens.size(); - LOG_VERBOSE("input truncated", { - {"n_ctx", n_ctx}, - {"n_keep", params.n_keep}, - {"n_left", n_left}, - {"new_tokens", tokens_to_str(ctx, new_tokens.cbegin(), new_tokens.cend())}, - }); - - truncated = true; - prompt_tokens = new_tokens; + GGML_ASSERT(num_prompt_tokens < (size_t)n_ctx); } - else + + // push the prompt into the sampling context (do not apply grammar) + for (auto & token : prompt_tokens) { - const size_t ps = num_prompt_tokens; - std::fill(ctx_sampling->prev.begin(), ctx_sampling->prev.end() - ps, 0); - std::copy(prompt_tokens.begin(), prompt_tokens.end(), ctx_sampling->prev.end() - ps); + llama_sampling_accept(ctx_sampling, ctx, token, false); } // compare the evaluated prompt with the new prompt @@ -530,8 +528,8 @@ struct llama_server_context llama_token_data_array cur_p = { ctx_sampling->cur.data(), ctx_sampling->cur.size(), false }; - const int32_t n_probs = params.sampling_params.n_probs; - if (params.sampling_params.temp <= 0 && n_probs > 0) + const int32_t n_probs = params.sparams.n_probs; + if (params.sparams.temp <= 0 && n_probs > 0) { // For llama_sample_token_greedy we need to sort candidates llama_sample_softmax(ctx, &cur_p); @@ -542,7 +540,7 @@ struct llama_server_context result.probs.push_back({cur_p.data[i].id, cur_p.data[i].p}); } - llama_sampling_accept(ctx_sampling, ctx, result.tok); + llama_sampling_accept(ctx_sampling, ctx, result.tok, true); if (tg) { num_tokens_predicted++; @@ -606,7 +604,7 @@ struct llama_server_context const std::string token_text = token_with_probs.tok == -1 ? "" : llama_token_to_piece(ctx, token_with_probs.tok); generated_text += token_text; - if (params.sampling_params.n_probs > 0) + if (params.sparams.n_probs > 0) { generated_token_probs.push_back(token_with_probs); } @@ -1004,36 +1002,36 @@ static void server_params_parse(int argc, char **argv, server_params &sparams, static json format_generation_settings(llama_server_context &llama) { - const auto & sparams = llama.params.sampling_params; + const auto & sparams = llama.params.sparams; const auto eos_bias = sparams.logit_bias.find(llama_token_eos(llama.ctx)); const bool ignore_eos = eos_bias != sparams.logit_bias.end() && eos_bias->second < 0.0f && std::isinf(eos_bias->second); return json{ - {"n_ctx", llama.n_ctx}, - {"model", llama.params.model_alias}, - {"seed", llama.params.seed}, - {"temp", sparams.temp}, - {"top_k", sparams.top_k}, - {"top_p", sparams.top_p}, - {"tfs_z", sparams.tfs_z}, - {"typical_p", sparams.typical_p}, - {"repeat_last_n", sparams.repeat_last_n}, - {"repeat_penalty", sparams.repeat_penalty}, - {"presence_penalty", sparams.presence_penalty}, - {"frequency_penalty", sparams.frequency_penalty}, - {"mirostat", sparams.mirostat}, - {"mirostat_tau", sparams.mirostat_tau}, - {"mirostat_eta", sparams.mirostat_eta}, - {"penalize_nl", sparams.penalize_nl}, - {"stop", llama.params.antiprompt}, - {"n_predict", llama.params.n_predict}, - {"n_keep", llama.params.n_keep}, - {"ignore_eos", ignore_eos}, - {"stream", llama.stream}, - {"logit_bias", sparams.logit_bias}, - {"n_probs", sparams.n_probs}, - {"grammar", llama.params.grammar}, + {"n_ctx", llama.n_ctx}, + {"model", llama.params.model_alias}, + {"seed", llama.params.seed}, + {"temp", sparams.temp}, + {"top_k", sparams.top_k}, + {"top_p", sparams.top_p}, + {"tfs_z", sparams.tfs_z}, + {"typical_p", sparams.typical_p}, + {"repeat_last_n", sparams.penalty_last_n}, + {"repeat_penalty", sparams.penalty_repeat}, + {"frequency_penalty", sparams.penalty_freq}, + {"presence_penalty", sparams.penalty_present}, + {"mirostat", sparams.mirostat}, + {"mirostat_tau", sparams.mirostat_tau}, + {"mirostat_eta", sparams.mirostat_eta}, + {"penalize_nl", sparams.penalize_nl}, + {"stop", llama.params.antiprompt}, + {"n_predict", llama.params.n_predict}, + {"n_keep", llama.params.n_keep}, + {"ignore_eos", ignore_eos}, + {"stream", llama.stream}, + {"logit_bias", sparams.logit_bias}, + {"n_probs", sparams.n_probs}, + {"grammar", llama.params.sparams.grammar}, }; } @@ -1081,7 +1079,7 @@ static json format_final_response(llama_server_context &llama, const std::string {"timings", format_timings(llama)}, }; - if (llama.params.sampling_params.n_probs > 0) + if (llama.params.sparams.n_probs > 0) { res["completion_probabilities"] = probs_vector_to_json(llama.ctx, probs); } @@ -1097,7 +1095,7 @@ static json format_partial_response( {"stop", false}, }; - if (llama.params.sampling_params.n_probs > 0) + if (llama.params.sparams.n_probs > 0) { res["completion_probabilities"] = probs_vector_to_json(llama.ctx, probs); } @@ -1129,28 +1127,30 @@ static T json_value(const json &body, const std::string &key, const T &default_v static void parse_options_completion(const json &body, llama_server_context &llama) { gpt_params default_params; - const auto & default_sparams = default_params.sampling_params; - auto & sparams = llama.params.sampling_params; + const auto & default_sparams = default_params.sparams; - llama.stream = json_value(body, "stream", false); - llama.params.n_predict = json_value(body, "n_predict", default_params.n_predict); - sparams.top_k = json_value(body, "top_k", default_sparams.top_k); - sparams.top_p = json_value(body, "top_p", default_sparams.top_p); - sparams.tfs_z = json_value(body, "tfs_z", default_sparams.tfs_z); - sparams.typical_p = json_value(body, "typical_p", default_sparams.typical_p); - sparams.repeat_last_n = json_value(body, "repeat_last_n", default_sparams.repeat_last_n); - sparams.temp = json_value(body, "temperature", default_sparams.temp); - sparams.repeat_penalty = json_value(body, "repeat_penalty", default_sparams.repeat_penalty); - sparams.presence_penalty = json_value(body, "presence_penalty", default_sparams.presence_penalty); - sparams.frequency_penalty = json_value(body, "frequency_penalty", default_sparams.frequency_penalty); - sparams.mirostat = json_value(body, "mirostat", default_sparams.mirostat); - sparams.mirostat_tau = json_value(body, "mirostat_tau", default_sparams.mirostat_tau); - sparams.mirostat_eta = json_value(body, "mirostat_eta", default_sparams.mirostat_eta); - sparams.penalize_nl = json_value(body, "penalize_nl", default_sparams.penalize_nl); - llama.params.n_keep = json_value(body, "n_keep", default_params.n_keep); - llama.params.seed = json_value(body, "seed", default_params.seed); - llama.params.grammar = json_value(body, "grammar", default_params.grammar); - sparams.n_probs = json_value(body, "n_probs", default_sparams.n_probs); + auto & params = llama.params; + auto & sparams = llama.params.sparams; + + llama.stream = json_value(body, "stream", false); + params.n_predict = json_value(body, "n_predict", default_params.n_predict); + sparams.top_k = json_value(body, "top_k", default_sparams.top_k); + sparams.top_p = json_value(body, "top_p", default_sparams.top_p); + sparams.tfs_z = json_value(body, "tfs_z", default_sparams.tfs_z); + sparams.typical_p = json_value(body, "typical_p", default_sparams.typical_p); + sparams.temp = json_value(body, "temperature", default_sparams.temp); + sparams.penalty_last_n = json_value(body, "repeat_last_n", default_sparams.penalty_last_n); + sparams.penalty_repeat = json_value(body, "repeat_penalty", default_sparams.penalty_repeat); + sparams.penalty_freq = json_value(body, "frequency_penalty", default_sparams.penalty_freq); + sparams.penalty_present = json_value(body, "presence_penalty", default_sparams.penalty_present); + sparams.mirostat = json_value(body, "mirostat", default_sparams.mirostat); + sparams.mirostat_tau = json_value(body, "mirostat_tau", default_sparams.mirostat_tau); + sparams.mirostat_eta = json_value(body, "mirostat_eta", default_sparams.mirostat_eta); + sparams.penalize_nl = json_value(body, "penalize_nl", default_sparams.penalize_nl); + params.n_keep = json_value(body, "n_keep", default_params.n_keep); + params.seed = json_value(body, "seed", default_params.seed); + sparams.grammar = json_value(body, "grammar", default_sparams.grammar); + sparams.n_probs = json_value(body, "n_probs", default_sparams.n_probs); if (body.count("prompt") != 0) { @@ -1204,8 +1204,6 @@ static void parse_options_completion(const json &body, llama_server_context &lla } } - llama.ctx_sampling = llama_sampling_init(llama.params); - LOG_VERBOSE("completion parameters parsed", format_generation_settings(llama)); } @@ -1374,15 +1372,9 @@ int main(int argc, char **argv) llama.rewind(); llama_reset_timings(llama.ctx); - parse_options_completion(json::parse(req.body), llama); - if (!llama.loadGrammar()) - { - res.status = 400; - return; - } - + llama.initSampling(); llama.loadPrompt(); llama.beginCompletion(); @@ -1414,7 +1406,7 @@ int main(int argc, char **argv) } auto probs = llama.generated_token_probs; - if (llama.params.sampling_params.n_probs > 0 && llama.stopped_word) { + if (llama.params.sparams.n_probs > 0 && llama.stopped_word) { const std::vector stop_word_toks = llama_tokenize(llama.ctx, llama.stopping_word, false); probs = std::vector(llama.generated_token_probs.begin(), llama.generated_token_probs.end() - stop_word_toks.size()); } @@ -1466,7 +1458,7 @@ int main(int argc, char **argv) std::vector probs_output = {}; - if (llama.params.sampling_params.n_probs > 0) { + if (llama.params.sparams.n_probs > 0) { const std::vector to_send_toks = llama_tokenize(llama.ctx, to_send, false); size_t probs_pos = std::min(sent_token_probs_index, llama.generated_token_probs.size()); size_t probs_stop_pos = std::min(sent_token_probs_index + to_send_toks.size(), llama.generated_token_probs.size()); @@ -1537,14 +1529,9 @@ int main(int argc, char **argv) llama.rewind(); llama_reset_timings(llama.ctx); - parse_options_infill(json::parse(req.body), llama); - if (!llama.loadGrammar()) - { - res.status = 400; - return; - } + llama.initSampling(); llama.loadInfill(); llama.beginCompletion(); const auto chunked_content_provider = [&](size_t, DataSink & sink) { @@ -1587,7 +1574,7 @@ int main(int argc, char **argv) std::vector probs_output = {}; - if (llama.params.sampling_params.n_probs > 0) { + if (llama.params.sparams.n_probs > 0) { const std::vector to_send_toks = llama_tokenize(llama.ctx, to_send, false); size_t probs_pos = std::min(sent_token_probs_index, llama.generated_token_probs.size()); size_t probs_stop_pos = std::min(sent_token_probs_index + to_send_toks.size(), llama.generated_token_probs.size()); @@ -1694,7 +1681,9 @@ int main(int argc, char **argv) const json body = json::parse(req.body); llama.rewind(); + llama_reset_timings(llama.ctx); + if (body.count("content") != 0) { llama.prompt = body["content"]; @@ -1704,6 +1693,8 @@ int main(int argc, char **argv) llama.prompt = ""; } llama.params.n_predict = 0; + + llama.initSampling(); llama.loadPrompt(); llama.beginCompletion(); llama.doCompletion(); diff --git a/examples/speculative/speculative.cpp b/examples/speculative/speculative.cpp index 24f49012a..894321ce9 100644 --- a/examples/speculative/speculative.cpp +++ b/examples/speculative/speculative.cpp @@ -112,16 +112,16 @@ int main(int argc, char ** argv) { bool has_eos = false; // target model sampling context - struct llama_sampling_context * ctx_sampling = llama_sampling_init(params); + struct llama_sampling_context * ctx_sampling = llama_sampling_init(params.sparams); // draft sequence data std::vector drafts(n_seq_dft); - params.grammar.clear(); // the draft samplers will copy the target sampler's grammar - params.sampling_params.temp = std::max(0.01f, params.sampling_params.temp); + params.sparams.grammar.clear(); // the draft samplers will copy the target sampler's grammar + params.sparams.temp = std::max(0.01f, params.sparams.temp); for (int s = 0; s < n_seq_dft; ++s) { - drafts[s].ctx_sampling = llama_sampling_init(params); + drafts[s].ctx_sampling = llama_sampling_init(params.sparams); } llama_batch batch_dft = llama_batch_init(params.n_ctx, 0, 1); @@ -154,7 +154,7 @@ int main(int argc, char ** argv) { // sample from the target model llama_token id = llama_sampling_sample(ctx_sampling, ctx_tgt, NULL, drafts[s_keep].i_batch_tgt[i_dft]); - llama_sampling_accept(ctx_sampling, ctx_tgt, id); + llama_sampling_accept(ctx_sampling, ctx_tgt, id, true); //LOG("last: %s\n", LOG_TOKENS_TOSTR_PRETTY(ctx_tgt, ctx_sampling->prev).c_str()); @@ -328,7 +328,7 @@ int main(int argc, char ** argv) { const int s = sa[is]; - llama_sampling_accept(drafts[s].ctx_sampling, ctx_dft, id); + llama_sampling_accept(drafts[s].ctx_sampling, ctx_dft, id, true); drafts[s].tokens.push_back(id); diff --git a/llama.cpp b/llama.cpp index ec8ffad33..365349335 100644 --- a/llama.cpp +++ b/llama.cpp @@ -1018,8 +1018,8 @@ enum e_model { }; static const size_t kB = 1024; -static const size_t MB = kB*kB; -static const size_t GB = kB*kB*kB; +static const size_t MB = 1024*kB; +static const size_t GB = 1024*MB; struct llama_hparams { bool vocab_only; @@ -1042,21 +1042,21 @@ struct llama_hparams { float f_max_alibi_bias; bool operator!=(const llama_hparams & other) const { - if (this->vocab_only != other.vocab_only) return true; - if (this->n_vocab != other.n_vocab) return true; + if (this->vocab_only != other.vocab_only) return true; + if (this->n_vocab != other.n_vocab) return true; if (this->n_ctx_train != other.n_ctx_train) return true; - if (this->n_embd != other.n_embd) return true; - if (this->n_head != other.n_head) return true; - if (this->n_head_kv != other.n_head_kv) return true; - if (this->n_layer != other.n_layer) return true; - if (this->n_rot != other.n_rot) return true; - if (this->n_ff != other.n_ff) return true; + if (this->n_embd != other.n_embd) return true; + if (this->n_head != other.n_head) return true; + if (this->n_head_kv != other.n_head_kv) return true; + if (this->n_layer != other.n_layer) return true; + if (this->n_rot != other.n_rot) return true; + if (this->n_ff != other.n_ff) return true; const float EPSILON = 1e-9; - if (!is_float_close(this->f_norm_eps, other.f_norm_eps, EPSILON)) return true; - if (!is_float_close(this->f_norm_rms_eps, other.f_norm_rms_eps, EPSILON)) return true; - if (!is_float_close(this->rope_freq_base_train, other.rope_freq_base_train, EPSILON)) return true; + if (!is_float_close(this->f_norm_eps, other.f_norm_eps, EPSILON)) return true; + if (!is_float_close(this->f_norm_rms_eps, other.f_norm_rms_eps, EPSILON)) return true; + if (!is_float_close(this->rope_freq_base_train, other.rope_freq_base_train, EPSILON)) return true; if (!is_float_close(this->rope_freq_scale_train, other.rope_freq_scale_train, EPSILON)) return true; return false; @@ -1195,11 +1195,11 @@ struct llama_vocab { id special_sep_id = -1; id special_pad_id = -1; - id linefeed_id = 13; + id linefeed_id = 13; id special_prefix_id = 32007; id special_middle_id = 32009; id special_suffix_id = 32008; - id special_eot_id = 32010; + id special_eot_id = 32010; int find_bpe_rank(std::string token_left, std::string token_right) const { replace_all(token_left, " ", "\u0120"); @@ -1359,10 +1359,7 @@ static bool llama_kv_cache_init( cache.cells.clear(); cache.cells.resize(n_ctx); - // TODO: this should be: - // cache.buf.resize(2u*n_elements*ggml_type_size(wtype) + 2u*ggml_tensor_overhead()); - // change it and test that it works - cache.buf.resize(2u*n_elements*ggml_type_size(wtype) + 2u*MB); + cache.buf.resize(2u*n_elements*ggml_type_size(wtype) + 2u*ggml_tensor_overhead()); memset(cache.buf.data, 0, cache.buf.size); struct ggml_init_params params; @@ -7417,37 +7414,15 @@ void llama_sample_temperature(struct llama_context * ctx, llama_token_data_array llama_sample_temp(ctx, candidates_p, temp); } -void llama_sample_repetition_penalty(struct llama_context * ctx, llama_token_data_array * candidates, const llama_token * last_tokens, size_t last_tokens_size, float penalty) { - if (last_tokens_size == 0 || penalty == 1.0f) { - return; - } - - const int64_t t_start_sample_us = ggml_time_us(); - - for (size_t i = 0; i < candidates->size; ++i) { - const auto * token_iter = std::find(last_tokens, last_tokens + last_tokens_size, candidates->data[i].id); - if (token_iter == last_tokens + last_tokens_size) { - continue; - } - - // The academic publication that described this technique actually just only divided, but that would cause tokens with negative logits to become more likely, which is obviously wrong. - // This is common fix for this problem, which is to multiply by the penalty instead of dividing. - if (candidates->data[i].logit <= 0) { - candidates->data[i].logit *= penalty; - } else { - candidates->data[i].logit /= penalty; - } - } - - candidates->sorted = false; - - if (ctx) { - ctx->t_sample_us += ggml_time_us() - t_start_sample_us; - } -} - -void llama_sample_frequency_and_presence_penalties(struct llama_context * ctx, llama_token_data_array * candidates, const llama_token * last_tokens_p, size_t last_tokens_size, float alpha_frequency, float alpha_presence) { - if (last_tokens_size == 0 || (alpha_frequency == 0.0f && alpha_presence == 0.0f)) { +void llama_sample_repetition_penalties( + struct llama_context * ctx, + llama_token_data_array * candidates, + const llama_token * last_tokens, + size_t penalty_last_n, + float penalty_repeat, + float penalty_freq, + float penalty_present) { + if (penalty_last_n == 0 || (penalty_repeat == 1.0f && penalty_freq == 0.0f && penalty_present == 0.0f)) { return; } @@ -7455,19 +7430,28 @@ void llama_sample_frequency_and_presence_penalties(struct llama_context * ctx, l // Create a frequency map to count occurrences of each token in last_tokens std::unordered_map token_count; - for (size_t i = 0; i < last_tokens_size; ++i) { - token_count[last_tokens_p[i]]++; + for (size_t i = 0; i < penalty_last_n; ++i) { + token_count[last_tokens[i]]++; } // Apply frequency and presence penalties to the candidates for (size_t i = 0; i < candidates->size; ++i) { - auto token_iter = token_count.find(candidates->data[i].id); + const auto token_iter = token_count.find(candidates->data[i].id); if (token_iter == token_count.end()) { continue; } - int count = token_iter->second; - candidates->data[i].logit -= float(count) * alpha_frequency + float(count > 0) * alpha_presence; + const int count = token_iter->second; + + // The academic publication that described this technique actually just only divided, but that would cause tokens with negative logits to become more likely, which is obviously wrong. + // This is common fix for this problem, which is to multiply by the penalty instead of dividing. + if (candidates->data[i].logit <= 0) { + candidates->data[i].logit *= penalty_repeat; + } else { + candidates->data[i].logit /= penalty_repeat; + } + + candidates->data[i].logit -= float(count) * penalty_freq + float(count > 0) * penalty_present; } candidates->sorted = false; diff --git a/llama.h b/llama.h index 51010e037..306f5b383 100644 --- a/llama.h +++ b/llama.h @@ -560,21 +560,15 @@ extern "C" { LLAMA_API void llama_set_rng_seed(struct llama_context * ctx, uint32_t seed); /// @details Repetition penalty described in CTRL academic paper https://arxiv.org/abs/1909.05858, with negative logit fix. - LLAMA_API void llama_sample_repetition_penalty( - struct llama_context * ctx, - llama_token_data_array * candidates, - const llama_token * last_tokens, - size_t last_tokens_size, - float penalty); - /// @details Frequency and presence penalties described in OpenAI API https://platform.openai.com/docs/api-reference/parameter-details. - LLAMA_API void llama_sample_frequency_and_presence_penalties( + LLAMA_API void llama_sample_repetition_penalties( struct llama_context * ctx, llama_token_data_array * candidates, const llama_token * last_tokens, - size_t last_tokens_size, - float alpha_frequency, - float alpha_presence); + size_t penalty_last_n, + float penalty_repeat, + float penalty_freq, + float penalty_present); /// @details Apply classifier-free guidance to the logits as described in academic paper "Stay on topic with Classifier-Free Guidance" https://arxiv.org/abs/2306.17806 /// @param candidates A vector of `llama_token_data` containing the candidate tokens, the logits must be directly extracted from the original generation context without being sorted. diff --git a/tests/test-sampling.cpp b/tests/test-sampling.cpp index 019c0d462..32e58941c 100644 --- a/tests/test-sampling.cpp +++ b/tests/test-sampling.cpp @@ -8,11 +8,9 @@ #include #include #include -#include #include #include - static void dump(const llama_token_data_array * candidates) { for (size_t i = 0; i < candidates->size; i++) { printf("%d: %f (%f)\n", candidates->data[i].id, candidates->data[i].p, candidates->data[i].logit); @@ -21,7 +19,6 @@ static void dump(const llama_token_data_array * candidates) { #define DUMP(__candidates) do { printf("%s:%d (%s)\n", __FILE__, __LINE__, __func__); dump((__candidates)); printf("-\n"); } while(0) - static void test_top_k(const std::vector & probs, const std::vector & expected_probs, int k) { size_t n_vocab = probs.size(); std::vector candidates; @@ -37,13 +34,12 @@ static void test_top_k(const std::vector & probs, const std::vector & probs, const std::vector & expected_probs, float p) { size_t n_vocab = probs.size(); std::vector candidates; @@ -59,13 +55,12 @@ static void test_top_p(const std::vector & probs, const std::vector & probs, const std::vector & expected_probs, float z) { size_t n_vocab = probs.size(); std::vector candidates; @@ -80,13 +75,12 @@ static void test_tfs(const std::vector & probs, const std::vector llama_sample_tail_free(nullptr, &candidates_p, z, 1); DUMP(&candidates_p); - assert(candidates_p.size == expected_probs.size()); + GGML_ASSERT(candidates_p.size == expected_probs.size()); for (size_t i = 0; i < candidates_p.size; i++) { - assert(fabs(candidates_p.data[i].p - expected_probs[i]) < 1e-3); + GGML_ASSERT(fabs(candidates_p.data[i].p - expected_probs[i]) < 1e-3); } } - static void test_typical(const std::vector & probs, const std::vector & expected_probs, float p) { size_t n_vocab = probs.size(); std::vector candidates; @@ -101,18 +95,17 @@ static void test_typical(const std::vector & probs, const std::vector & probs, const std::vector & last_tokens, - const std::vector & expected_probs, float penalty + const std::vector & expected_probs, float repeat_penalty, float alpha_frequency, float alpha_presence ) { - assert(probs.size() == expected_probs.size()); + GGML_ASSERT(probs.size() == expected_probs.size()); size_t n_vocab = probs.size(); std::vector candidates; @@ -125,41 +118,13 @@ static void test_repetition_penalty( llama_token_data_array candidates_p = { candidates.data(), candidates.size(), false }; llama_sample_softmax(nullptr, &candidates_p); DUMP(&candidates_p); - llama_sample_repetition_penalty(nullptr, &candidates_p, (const llama_token *) last_tokens.data(), last_tokens.size(), penalty); + llama_sample_repetition_penalties(nullptr, &candidates_p, (const llama_token *) last_tokens.data(), last_tokens.size(), repeat_penalty, alpha_frequency, alpha_presence); llama_sample_softmax(nullptr, &candidates_p); DUMP(&candidates_p); - assert(candidates_p.size == expected_probs.size()); + GGML_ASSERT(candidates_p.size == expected_probs.size()); for (size_t i = 0; i < candidates_p.size; i++) { - assert(fabs(candidates_p.data[i].p - expected_probs[i]) < 1e-6); - } -} - - -static void test_frequency_presence_penalty( - const std::vector & probs, const std::vector & last_tokens, - const std::vector & expected_probs, float alpha_frequency, float alpha_presence -) { - assert(probs.size() == expected_probs.size()); - - size_t n_vocab = probs.size(); - std::vector candidates; - candidates.reserve(n_vocab); - for (llama_token token_id = 0; token_id < (llama_token)n_vocab; token_id++) { - float logit = log(probs[token_id]); - candidates.emplace_back(llama_token_data{token_id, logit, 0.0f}); - } - - llama_token_data_array candidates_p = { candidates.data(), candidates.size(), false }; - llama_sample_softmax(nullptr, &candidates_p); - // DUMP(&candidates_p); - llama_sample_frequency_and_presence_penalties(nullptr, &candidates_p, (const llama_token *) last_tokens.data(), last_tokens.size(), alpha_frequency, alpha_presence); - llama_sample_softmax(nullptr, &candidates_p); - // DUMP(&candidates_p); - - assert(candidates_p.size == expected_probs.size()); - for (size_t i = 0; i < candidates_p.size; i++) { - assert(fabs(candidates_p.data[i].p - expected_probs[i]) < 1e-3); + GGML_ASSERT(fabs(candidates_p.data[i].p - expected_probs[i]) < 1e-3); } } @@ -181,13 +146,13 @@ int main(void) { test_typical({0.97f, 0.01f, 0.01f, 0.01f}, {0.97f}, 0.5f); test_typical({0.4f, 0.2f, 0.2f, 0.2f}, {0.2f, 0.2f, 0.2f}, 0.5f); - test_repetition_penalty({0.2f, 0.2f, 0.2f, 0.2f, 0.2f}, {0}, {0.25f, 0.25f, 0.25f, 0.25f, 0}, 50.0f); - test_repetition_penalty({0.2f, 0.2f, 0.2f, 0.2f, 0.2f}, {0, 1, 2}, {0.5f, 0.5f, 0, 0, 0}, 50.0f); - test_repetition_penalty({0.2f, 0.2f, 0.2f, 0.2f, 0.2f}, {0, 1, 2, 0, 0}, {0.5f, 0.5f, 0, 0, 0}, 50.0f); + test_repetition_penalties({0.2f, 0.2f, 0.2f, 0.2f, 0.2f}, {0}, {0.25f, 0.25f, 0.25f, 0.25f, 0}, 50.0f, 0.0f, 0.0f); + test_repetition_penalties({0.2f, 0.2f, 0.2f, 0.2f, 0.2f}, {0, 1, 2}, {0.5f, 0.5f, 0, 0, 0}, 50.0f, 0.0f, 0.0f); + test_repetition_penalties({0.2f, 0.2f, 0.2f, 0.2f, 0.2f}, {0, 1, 2, 0, 0}, {0.5f, 0.5f, 0, 0, 0}, 50.0f, 0.0f, 0.0f); - test_frequency_presence_penalty({0.2f, 0.2f, 0.2f, 0.2f, 0.2f}, {0}, {0.249997f, 0.249997f, 0.249997f, 0.249997f, 0.000011f}, 5.0f, 5.0f); - test_frequency_presence_penalty({0.2f, 0.2f, 0.2f, 0.2f, 0.2f}, {0, 1, 2}, {0.499966f, 0.499966f, 0.000023f, 0.000023f, 0.000023f}, 5.0f, 5.0f); - test_frequency_presence_penalty({0.2f, 0.2f, 0.2f, 0.2f, 0.2f}, {0, 1, 2, 0, 0}, {0.499977f, 0.499977f, 0.000023f, 0.000023f, 0.000000f}, 5.0f, 5.0f); + test_repetition_penalties({0.2f, 0.2f, 0.2f, 0.2f, 0.2f}, {0}, {0.249997f, 0.249997f, 0.249997f, 0.249997f, 0.000011f}, 1.0f, 5.0f, 5.0f); + test_repetition_penalties({0.2f, 0.2f, 0.2f, 0.2f, 0.2f}, {0, 1, 2}, {0.499966f, 0.499966f, 0.000023f, 0.000023f, 0.000023f}, 1.0f, 5.0f, 5.0f); + test_repetition_penalties({0.2f, 0.2f, 0.2f, 0.2f, 0.2f}, {0, 1, 2, 0, 0}, {0.499977f, 0.499977f, 0.000023f, 0.000023f, 0.000000f}, 1.0f, 5.0f, 5.0f); printf("OK\n"); From 465219b9143ac01db0990bbcb0a081ef72ec2008 Mon Sep 17 00:00:00 2001 From: shibe2 Date: Thu, 12 Oct 2023 16:01:23 +0400 Subject: [PATCH 27/48] CLBlast: Add outer loops over src0 for broadcasting in mulmat Reduce repeated dequantization of the same data. --- ggml-opencl.cpp | 332 +++++++++++++++++++++++------------------------- 1 file changed, 162 insertions(+), 170 deletions(-) diff --git a/ggml-opencl.cpp b/ggml-opencl.cpp index 67ac20eac..202bcb485 100644 --- a/ggml-opencl.cpp +++ b/ggml-opencl.cpp @@ -1489,46 +1489,45 @@ static void ggml_cl_mul_mat_f32(const ggml_tensor * src0, const ggml_tensor * sr cl_mem d_D = ggml_cl_pool_malloc(sizeof(float) * d_ne, &d_size); size_t x_offset = 0; - int64_t pi02 = -1; - int64_t pi03 = -1; - for (int64_t i13 = 0; i13 < ne13; i13++) { - int64_t i03 = i13 / r3; + for (int64_t i03 = 0; i03 < ne03; i03++) { + // TODO: copy src0 here when r3>1 + for (int64_t i13 = i03 * r3, e13 = i13 + r3; i13 < e13; i13++) { + for (int64_t i02 = 0; i02 < ne02; i02++) { + if (src0->backend == GGML_BACKEND_GPU) { + x_offset = (i03 * ne02 + i02) * x_ne; + } else { + // copy src0 to device + CL_CHECK(ggml_cl_h2d_tensor_2d(queue, d_X, 0, src0, i03, i02, NULL)); + } - for (int64_t i12 = 0; i12 < ne12; i12++) { - int64_t i02 = i12 / r2; + for (int64_t i12 = i02 * r2, e12 = i12 + r2; i12 < e12; i12++) { + // copy src1 to device + CL_CHECK(ggml_cl_h2d_tensor_2d(queue, d_Y, 0, src1, i13, i12, NULL)); - // copy data to device - if (src0->backend == GGML_BACKEND_GPU) { - x_offset = (i03 * ne02 + i02) * x_ne; - } else if (i02 != pi02 || i03 != pi03) { - CL_CHECK(ggml_cl_h2d_tensor_2d(queue, d_X, 0, src0, i03, i02, NULL)); - pi02 = i02; - pi03 = i03; + CL_CHECK(clFinish(queue)); + + // compute + cl_event ev_sgemm; + clblast::StatusCode status = clblast::Gemm(clblast::Layout::kColMajor, + clblast::Transpose::kYes, clblast::Transpose::kNo, + ne01, ne11, ne10, + alpha, + d_X, x_offset, ne00, + d_Y, 0, ne10, + beta, + d_D, 0, ne01, + &queue, &ev_sgemm); + + if (status != clblast::StatusCode::kSuccess) { + GGML_ASSERT(false); + } + + // copy dst to host + float * d = (float *) ((char *) dst->data + i12*nb2 + i13*nb3); + CL_CHECK(clEnqueueReadBuffer(queue, d_D, true, 0, sizeof(float) * d_ne, d, 1, &ev_sgemm, NULL)); + } } - CL_CHECK(ggml_cl_h2d_tensor_2d(queue, d_Y, 0, src1, i13, i12, NULL)); - - CL_CHECK(clFinish(queue)); - - // compute - cl_event ev_sgemm; - clblast::StatusCode status = clblast::Gemm(clblast::Layout::kColMajor, - clblast::Transpose::kYes, clblast::Transpose::kNo, - ne01, ne11, ne10, - alpha, - d_X, x_offset, ne00, - d_Y, 0, ne10, - beta, - d_D, 0, ne01, - &queue, &ev_sgemm); - - if (status != clblast::StatusCode::kSuccess) { - GGML_ASSERT(false); - } - - // copy dst to host - float * d = (float *) ((char *) dst->data + i12*nb2 + i13*nb3); - CL_CHECK(clEnqueueReadBuffer(queue, d_D, true, 0, sizeof(float) * d_ne, d, 1, &ev_sgemm, NULL)); } } @@ -1589,73 +1588,70 @@ static void ggml_cl_mul_mat_f16(const ggml_tensor * src0, const ggml_tensor * sr bool src1_cont_cols = (size_t)nb11 == ne11*sizeof(float); size_t x_offset = 0; - int64_t pi02 = -1; - int64_t pi03 = -1; - for (int64_t i13 = 0; i13 < ne13; i13++) { - int64_t i03 = i13 / r3; - - for (int64_t i12 = 0; i12 < ne12; i12++) { - int64_t i02 = i12 / r2; - - // copy src0 to device - if (src0->backend == GGML_BACKEND_GPU) { - x_offset = (i03 * ne02 + i02) * x_ne; - } else if (i02 != pi02 || i03 != pi03) { - CL_CHECK(ggml_cl_h2d_tensor_2d(queue, d_X, 0, src0, i03, i02, NULL)); - pi02 = i02; - pi03 = i03; - } - - // convert src1 to fp16 - // TODO: use multiple threads - char * src1i = (char *) src1->data + i13*nb13 + i12*nb12; - if (src1_cont_rows) { - if (src1_cont_cols) { - ggml_fp32_to_fp16_row((float *) src1i, tmp, ne10*ne11); + for (int64_t i03 = 0; i03 < ne03; i03++) { + // TODO: copy src0 here when r3>1 + for (int64_t i13 = i03 * r3, e13 = i13 + r3; i13 < e13; i13++) { + for (int64_t i02 = 0; i02 < ne02; i02++) { + if (src0->backend == GGML_BACKEND_GPU) { + x_offset = (i03 * ne02 + i02) * x_ne; + } else { + // copy src0 to device + CL_CHECK(ggml_cl_h2d_tensor_2d(queue, d_X, 0, src0, i03, i02, NULL)); } - else { - for (int64_t i11 = 0; i11 < ne11; i11++) { - ggml_fp32_to_fp16_row((float *) (src1i + i11*nb11), tmp + i11*ne10, ne10); + + for (int64_t i12 = i02 * r2, e12 = i12 + r2; i12 < e12; i12++) { + // convert src1 to fp16 + // TODO: use multiple threads + char * src1i = (char *) src1->data + i13*nb13 + i12*nb12; + if (src1_cont_rows) { + if (src1_cont_cols) { + ggml_fp32_to_fp16_row((float *) src1i, tmp, ne10*ne11); + } + else { + for (int64_t i11 = 0; i11 < ne11; i11++) { + ggml_fp32_to_fp16_row((float *) (src1i + i11*nb11), tmp + i11*ne10, ne10); + } + } } - } - } - else { - for (int64_t i11 = 0; i11 < ne11; i11++) { - for (int64_t i10 = 0; i10 < ne10; i10++) { - // very slow due to no inlining - tmp[i11*ne10 + i10] = ggml_fp32_to_fp16(*(float *) (src1i + i11*nb11 + i10*nb10)); + else { + for (int64_t i11 = 0; i11 < ne11; i11++) { + for (int64_t i10 = 0; i10 < ne10; i10++) { + // very slow due to no inlining + tmp[i11*ne10 + i10] = ggml_fp32_to_fp16(*(float *) (src1i + i11*nb11 + i10*nb10)); + } + } } + + // copy src1 to device + CL_CHECK(clEnqueueWriteBuffer(queue, d_Y, false, 0, sizeof(ggml_fp16_t) * y_ne, tmp, 0, NULL, NULL)); + + CL_CHECK(clFinish(queue)); + + // compute + cl_event ev_sgemm; + clblast::StatusCode status = clblast::Gemm(clblast::Layout::kColMajor, + clblast::Transpose::kYes, clblast::Transpose::kNo, + ne01, ne11, ne10, + alpha, + d_X, x_offset, ne00, + d_Y, 0, ne10, + beta, + d_D, 0, ne01, + &queue, &ev_sgemm); + + if (status != clblast::StatusCode::kSuccess) { + GGML_ASSERT(false); + } + + // copy dst to host, then convert to float + CL_CHECK(clEnqueueReadBuffer(queue, d_D, true, 0, sizeof(ggml_fp16_t) * d_ne, tmp, 1, &ev_sgemm, NULL)); + + float * d = (float *) ((char *) dst->data + i12*nb2 + i13*nb3); + + ggml_fp16_to_fp32_row(tmp, d, d_ne); } } - - // copy src1 to device - CL_CHECK(clEnqueueWriteBuffer(queue, d_Y, false, 0, sizeof(ggml_fp16_t) * y_ne, tmp, 0, NULL, NULL)); - - CL_CHECK(clFinish(queue)); - - // compute - cl_event ev_sgemm; - clblast::StatusCode status = clblast::Gemm(clblast::Layout::kColMajor, - clblast::Transpose::kYes, clblast::Transpose::kNo, - ne01, ne11, ne10, - alpha, - d_X, x_offset, ne00, - d_Y, 0, ne10, - beta, - d_D, 0, ne01, - &queue, &ev_sgemm); - - if (status != clblast::StatusCode::kSuccess) { - GGML_ASSERT(false); - } - - // copy dst to host, then convert to float - CL_CHECK(clEnqueueReadBuffer(queue, d_D, true, 0, sizeof(ggml_fp16_t) * d_ne, tmp, 1, &ev_sgemm, NULL)); - - float * d = (float *) ((char *) dst->data + i12*nb2 + i13*nb3); - - ggml_fp16_to_fp32_row(tmp, d, d_ne); } } @@ -1718,85 +1714,81 @@ static void ggml_cl_mul_mat_q_f32(const ggml_tensor * src0, const ggml_tensor * size_t ev_idx = 0; std::vector events; - int64_t pi02 = -1; - int64_t pi03 = -1; - - for (int64_t i13 = 0; i13 < ne13; i13++) { - int64_t i03 = i13 / r3; - - for (int64_t i12 = 0; i12 < ne12; i12++) { - int64_t i02 = i12 / r2; - - // copy src0 to device if necessary - if (src0->backend == GGML_BACKEND_CPU) { - if (i02 != pi02 || i03 != pi03) { + for (int64_t i03 = 0; i03 < ne03; i03++) { + // TODO: copy and dequantize src0 here when r3>1 + for (int64_t i13 = i03 * r3, e13 = i13 + r3; i13 < e13; i13++) { + for (int64_t i02 = 0; i02 < ne02; i02++) { + // copy src0 to device if necessary + if (src0->backend == GGML_BACKEND_CPU) { events.emplace_back(); CL_CHECK(ggml_cl_h2d_tensor_2d(queue, d_Q, 0, src0, i03, i02, events.data() + ev_idx++)); - pi02 = i02; - pi03 = i03; - } - } else if (src0->backend == GGML_BACKEND_GPU) { - d_Q = (cl_mem) src0->extra; - } else { - GGML_ASSERT(false); - } - if (mul_mat_vec) { // specialized dequantize_mul_mat_vec kernel - // copy src1 to device - events.emplace_back(); - CL_CHECK(ggml_cl_h2d_tensor_2d(queue, d_Y, 0, src1, i13, i12, events.data() + ev_idx++)); - - // compute - const size_t global = ne01 * local; - const size_t offset = src0->backend == GGML_BACKEND_GPU ? (i03 * ne02 + i02) * x_bps : 0; - const cl_int ncols = ne00; - events.emplace_back(); - CL_CHECK(clSetKernelArg(*dmmv, 0, sizeof(cl_mem), &d_Q)); - CL_CHECK(clSetKernelArg(*dmmv, 1, sizeof(float) * local, NULL)); - CL_CHECK(clSetKernelArg(*dmmv, 2, sizeof(cl_mem), &d_Y)); - CL_CHECK(clSetKernelArg(*dmmv, 3, sizeof(cl_mem), &d_D)); - CL_CHECK(clSetKernelArg(*dmmv, 4, sizeof(cl_int), &ncols)); - CL_CHECK(clEnqueueNDRangeKernel(queue, *dmmv, 1, &offset, &global, &local, events.size() - 1, events.data(), events.data() + ev_idx++)); - } else { // general dequantization kernel + CLBlast matrix matrix multiplication - // convert src0 to fp32 on device - const size_t global = x_ne / global_denom; - const size_t offset = src0->backend == GGML_BACKEND_GPU ? (i03 * ne02 + i02) * x_bps : 0; - CL_CHECK(clSetKernelArg(*to_fp32_cl, 0, sizeof(cl_mem), &d_Q)); - CL_CHECK(clSetKernelArg(*to_fp32_cl, 1, sizeof(cl_mem), &d_X)); - CL_CHECK(clEnqueueNDRangeKernel(queue, *to_fp32_cl, 1, offset > 0 ? &offset : NULL, &global, local > 0 ? &local : NULL, events.size(), !events.empty() ? events.data() : NULL, NULL)); - - // copy src1 to device - CL_CHECK(ggml_cl_h2d_tensor_2d(queue, d_Y, 0, src1, i13, i12, NULL)); - - events.emplace_back(); - - // wait for conversion - CL_CHECK(clFinish(queue)); - - // compute - clblast::StatusCode status = clblast::Gemm(clblast::Layout::kColMajor, - clblast::Transpose::kYes, clblast::Transpose::kNo, - ne01, ne11, ne10, - alpha, - d_X, 0, ne00, - d_Y, 0, ne10, - beta, - d_D, 0, ne01, - &queue, events.data() + ev_idx++); - - if (status != clblast::StatusCode::kSuccess) { + } else if (src0->backend == GGML_BACKEND_GPU) { + d_Q = (cl_mem) src0->extra; + } else { GGML_ASSERT(false); } - } - // copy dst to host - float * d = (float *) ((char *) dst->data + i12*nb2 + i13*nb3); - CL_CHECK(clEnqueueReadBuffer(queue, d_D, true, 0, sizeof(float) * d_ne, d, 1, &events[events.size() - 1], NULL)); - for (auto *event : events) { - clReleaseEvent(event); - } + if (!mul_mat_vec) { + // convert src0 to fp32 on device + const size_t global = x_ne / global_denom; + const size_t offset = src0->backend == GGML_BACKEND_GPU ? (i03 * ne02 + i02) * x_bps : 0; + CL_CHECK(clSetKernelArg(*to_fp32_cl, 0, sizeof(cl_mem), &d_Q)); + CL_CHECK(clSetKernelArg(*to_fp32_cl, 1, sizeof(cl_mem), &d_X)); + CL_CHECK(clEnqueueNDRangeKernel(queue, *to_fp32_cl, 1, &offset, &global, local > 0 ? &local : NULL, events.size(), !events.empty() ? events.data() : NULL, NULL)); + } - ev_idx = 0; - events.clear(); + for (int64_t i12 = i02 * r2, e12 = i12 + r2; i12 < e12; i12++) { + if (mul_mat_vec) { // specialized dequantize_mul_mat_vec kernel + // copy src1 to device + events.emplace_back(); + CL_CHECK(ggml_cl_h2d_tensor_2d(queue, d_Y, 0, src1, i13, i12, events.data() + ev_idx++)); + + // compute + const size_t global = ne01 * local; + const size_t offset = src0->backend == GGML_BACKEND_GPU ? (i03 * ne02 + i02) * x_bps : 0; + const cl_int ncols = ne00; + events.emplace_back(); + CL_CHECK(clSetKernelArg(*dmmv, 0, sizeof(cl_mem), &d_Q)); + CL_CHECK(clSetKernelArg(*dmmv, 1, sizeof(float) * local, NULL)); + CL_CHECK(clSetKernelArg(*dmmv, 2, sizeof(cl_mem), &d_Y)); + CL_CHECK(clSetKernelArg(*dmmv, 3, sizeof(cl_mem), &d_D)); + CL_CHECK(clSetKernelArg(*dmmv, 4, sizeof(cl_int), &ncols)); + CL_CHECK(clEnqueueNDRangeKernel(queue, *dmmv, 1, &offset, &global, &local, events.size() - 1, events.data(), events.data() + ev_idx++)); + } else { // CLBlast matrix matrix multiplication + // copy src1 to device + CL_CHECK(ggml_cl_h2d_tensor_2d(queue, d_Y, 0, src1, i13, i12, NULL)); + + // wait for conversion + CL_CHECK(clFinish(queue)); + + // compute + events.emplace_back(); + clblast::StatusCode status = clblast::Gemm(clblast::Layout::kColMajor, + clblast::Transpose::kYes, clblast::Transpose::kNo, + ne01, ne11, ne10, + alpha, + d_X, 0, ne00, + d_Y, 0, ne10, + beta, + d_D, 0, ne01, + &queue, events.data() + ev_idx++); + + if (status != clblast::StatusCode::kSuccess) { + GGML_ASSERT(false); + } + } + + // copy dst to host + float * d = (float *) ((char *) dst->data + i12*nb2 + i13*nb3); + CL_CHECK(clEnqueueReadBuffer(queue, d_D, true, 0, sizeof(float) * d_ne, d, 1, &events[events.size() - 1], NULL)); + for (auto *event : events) { + clReleaseEvent(event); + } + + ev_idx = 0; + events.clear(); + } + } } } From 22c69a27945e7acf9690dd3210d316f22182751c Mon Sep 17 00:00:00 2001 From: Georgi Gerganov Date: Sun, 22 Oct 2023 08:37:20 +0300 Subject: [PATCH 28/48] batched : add len CLI argument --- examples/batched/batched.cpp | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) diff --git a/examples/batched/batched.cpp b/examples/batched/batched.cpp index 155212165..2797329b4 100644 --- a/examples/batched/batched.cpp +++ b/examples/batched/batched.cpp @@ -11,12 +11,16 @@ int main(int argc, char ** argv) { gpt_params params; if (argc == 1 || argv[1][0] == '-') { - printf("usage: %s MODEL_PATH [PROMPT] [PARALLEL]\n" , argv[0]); + printf("usage: %s MODEL_PATH [PROMPT] [PARALLEL] [LEN]\n" , argv[0]); return 1 ; } + // number of parallel batches int n_parallel = 1; + // total length of the sequences including the prompt + int n_len = 32; + if (argc >= 2) { params.model = argv[1]; } @@ -29,13 +33,14 @@ int main(int argc, char ** argv) { n_parallel = std::atoi(argv[3]); } + if (argc >= 5) { + n_len = std::atoi(argv[4]); + } + if (params.prompt.empty()) { params.prompt = "Hello my name is"; } - // total length of the sequences including the prompt - const int n_len = 32; - // init LLM llama_backend_init(params.numa); From d3956aea53369455008159cc405ed4c496976692 Mon Sep 17 00:00:00 2001 From: vvhg1 <94630311+vvhg1@users.noreply.github.com> Date: Sun, 22 Oct 2023 20:09:51 +0200 Subject: [PATCH 29/48] main : escape prompt for cfg_negative_prompt and consecutive inputs in main with interactive (#3623) * infill tokens correction * serverinfill tokens correction * removing any leading whitespace from infill suffix and removing leeading space token from suffix when params.escape * removing any leading whitespace from infill suffix and removing leeading space token from suffix when params.escape * only rm when params.escape, rm space if possible which is added back or rm added space token * only rm when params.escape, rm space if possible which is added back or rm added space token * Revert "only rm when params.escape, rm space if possible which is added back or rm added space token" This reverts commit 63ba0b621f21077c0e3bc6ba6a327534123cb738. * fix interactive prompt escaping and fix server infill leading space handling * rm unnecessary bool check * process escapes for neg prompt and interactive consec prompts * removed unneccessary static string escape --- common/common.cpp | 1 + examples/main/main.cpp | 3 +++ 2 files changed, 4 insertions(+) diff --git a/common/common.cpp b/common/common.cpp index 2ef902bd5..bbd1518ca 100644 --- a/common/common.cpp +++ b/common/common.cpp @@ -632,6 +632,7 @@ bool gpt_params_parse(int argc, char ** argv, gpt_params & params) { process_escapes(params.prompt); process_escapes(params.input_prefix); process_escapes(params.input_suffix); + process_escapes(sparams.cfg_negative_prompt); for (auto & antiprompt : params.antiprompt) { process_escapes(antiprompt); } diff --git a/examples/main/main.cpp b/examples/main/main.cpp index db5309afe..2621bd539 100644 --- a/examples/main/main.cpp +++ b/examples/main/main.cpp @@ -761,6 +761,9 @@ int main(int argc, char ** argv) { n_consumed = embd_inp.size(); embd_inp.insert(embd_inp.end(), inp_pfx.begin(), inp_pfx.end()); } + if (params.escape) { + process_escapes(buffer); + } const auto line_pfx = ::llama_tokenize(ctx, params.input_prefix, false, true); const auto line_inp = ::llama_tokenize(ctx, buffer, false, false); From a5e7dbd6141128bfa3c40a19c2945a181df625d3 Mon Sep 17 00:00:00 2001 From: Kerfuffle <44031344+KerfuffleV2@users.noreply.github.com> Date: Sun, 22 Oct 2023 12:14:56 -0600 Subject: [PATCH 30/48] llama : validate special token ids are in range when loading GGUF model (#3635) * Add validation for special token ids to llama.cpp Small optimization for llama_byte_to_token SPM mode * Fix BPE newline check, only I could break something so simple * Killll meeeeee * Account for GGUF_KEY_KEY only setting when the key exists * Minor code cleanups. * Fix convert.py error msg when added tokens are out of range * Make gguf SpecialVocab vocab size-aware Update conversion scripts accordingly * Avoid a string copy Co-authored-by: Georgi Gerganov --------- Co-authored-by: Georgi Gerganov --- convert-baichuan-hf-to-gguf.py | 2 +- convert-bloom-hf-to-gguf.py | 2 +- convert-falcon-hf-to-gguf.py | 2 +- convert-gptneox-hf-to-gguf.py | 2 +- convert-llama-ggml-to-gguf.py | 4 +++- convert-mpt-hf-to-gguf.py | 2 +- convert-refact-hf-to-gguf.py | 2 +- convert-starcoder-hf-to-gguf.py | 2 +- convert.py | 13 ++++++++---- gguf-py/gguf/gguf.py | 36 ++++++++++++++++++++++---------- llama.cpp | 37 +++++++++++++++++++++++++-------- 11 files changed, 72 insertions(+), 32 deletions(-) diff --git a/convert-baichuan-hf-to-gguf.py b/convert-baichuan-hf-to-gguf.py index a1783f71f..3b64ecb88 100755 --- a/convert-baichuan-hf-to-gguf.py +++ b/convert-baichuan-hf-to-gguf.py @@ -230,7 +230,7 @@ gguf_writer.add_token_list(tokens) gguf_writer.add_token_scores(scores) gguf_writer.add_token_types(toktypes) -special_vocab = gguf.SpecialVocab(dir_model) +special_vocab = gguf.SpecialVocab(dir_model, n_vocab = len(tokens)) special_vocab.add_to_gguf(gguf_writer) # TENSORS diff --git a/convert-bloom-hf-to-gguf.py b/convert-bloom-hf-to-gguf.py index 7bfc95ec1..14dbd793c 100755 --- a/convert-bloom-hf-to-gguf.py +++ b/convert-bloom-hf-to-gguf.py @@ -129,7 +129,7 @@ gguf_writer.add_token_list(tokens) gguf_writer.add_token_scores(scores) gguf_writer.add_token_types(toktypes) -special_vocab = gguf.SpecialVocab(dir_model, load_merges=True) +special_vocab = gguf.SpecialVocab(dir_model, load_merges=True, n_vocab = len(tokens)) special_vocab.add_to_gguf(gguf_writer) # TENSORS diff --git a/convert-falcon-hf-to-gguf.py b/convert-falcon-hf-to-gguf.py index 1d98c51ad..8e8f3c3f8 100755 --- a/convert-falcon-hf-to-gguf.py +++ b/convert-falcon-hf-to-gguf.py @@ -152,7 +152,7 @@ gguf_writer.add_token_list(tokens) gguf_writer.add_token_scores(scores) gguf_writer.add_token_types(toktypes) -special_vocab = gguf.SpecialVocab(dir_model, load_merges = True) +special_vocab = gguf.SpecialVocab(dir_model, load_merges = True, n_vocab = len(tokens)) special_vocab.add_to_gguf(gguf_writer) # TENSORS diff --git a/convert-gptneox-hf-to-gguf.py b/convert-gptneox-hf-to-gguf.py index d4e85f518..f1599b0c4 100755 --- a/convert-gptneox-hf-to-gguf.py +++ b/convert-gptneox-hf-to-gguf.py @@ -134,7 +134,7 @@ gguf_writer.add_token_list(tokens) gguf_writer.add_token_scores(scores) gguf_writer.add_token_types(toktypes) -special_vocab = gguf.SpecialVocab(dir_model, load_merges = True) +special_vocab = gguf.SpecialVocab(dir_model, load_merges = True, n_vocab = len(tokens)) special_vocab.add_to_gguf(gguf_writer) # TENSORS diff --git a/convert-llama-ggml-to-gguf.py b/convert-llama-ggml-to-gguf.py index b5d3e0b3c..871add64d 100755 --- a/convert-llama-ggml-to-gguf.py +++ b/convert-llama-ggml-to-gguf.py @@ -388,7 +388,9 @@ def handle_metadata(cfg, hp): cfg.vocab_dir if cfg.vocab_dir is not None else cfg.model_metadata_dir, cfg.vocabtype ) # FIXME: Respect cfg.vocab_dir? - svocab = gguf.SpecialVocab(cfg.model_metadata_dir) + svocab = gguf.SpecialVocab(cfg.model_metadata_dir, + load_merges = cfg.vocabtype == 'bpe', + n_vocab = vocab.vocab_size) convert.check_vocab_size(params, vocab) return (params, vocab, svocab) diff --git a/convert-mpt-hf-to-gguf.py b/convert-mpt-hf-to-gguf.py index 19a66820d..21b9fd507 100755 --- a/convert-mpt-hf-to-gguf.py +++ b/convert-mpt-hf-to-gguf.py @@ -139,7 +139,7 @@ gguf_writer.add_token_list(tokens) gguf_writer.add_token_scores(scores) gguf_writer.add_token_types(toktypes) -special_vocab = gguf.SpecialVocab(dir_model, load_merges = True) +special_vocab = gguf.SpecialVocab(dir_model, load_merges = True, n_vocab = len(tokens)) special_vocab.add_to_gguf(gguf_writer) # TENSORS diff --git a/convert-refact-hf-to-gguf.py b/convert-refact-hf-to-gguf.py index bfeabc082..934f3852b 100755 --- a/convert-refact-hf-to-gguf.py +++ b/convert-refact-hf-to-gguf.py @@ -150,7 +150,7 @@ gguf_writer.add_token_list(tokens) gguf_writer.add_token_scores(scores) gguf_writer.add_token_types(toktypes) -special_vocab = gguf.SpecialVocab(dir_model, load_merges=True) +special_vocab = gguf.SpecialVocab(dir_model, load_merges=True, n_vocab = len(tokens)) special_vocab.add_to_gguf(gguf_writer) # TENSORS diff --git a/convert-starcoder-hf-to-gguf.py b/convert-starcoder-hf-to-gguf.py index 90fa0c32f..fe8815cbf 100755 --- a/convert-starcoder-hf-to-gguf.py +++ b/convert-starcoder-hf-to-gguf.py @@ -122,7 +122,7 @@ gguf_writer.add_token_list(tokens) gguf_writer.add_token_scores(scores) gguf_writer.add_token_types(toktypes) -special_vocab = gguf.SpecialVocab(dir_model, load_merges = True) +special_vocab = gguf.SpecialVocab(dir_model, load_merges = True, n_vocab = len(tokens)) special_vocab.add_to_gguf(gguf_writer) # TENSORS diff --git a/convert.py b/convert.py index 24da25efc..0680f71ea 100755 --- a/convert.py +++ b/convert.py @@ -369,7 +369,7 @@ class SentencePieceVocab: expected_ids = list(range(vocab_size, vocab_size + len(added_tokens))) actual_ids = sorted(added_tokens.values()) if expected_ids != actual_ids: - raise Exception(f"Expected added token IDs to be sequential and start at {len(added_tokens)}; got {actual_ids}") + raise Exception(f"Expected added token IDs to be sequential and start at {vocab_size}; got {actual_ids}") items = sorted(added_tokens.items(), key=lambda text_idx: text_idx[1]) self.added_tokens_list = [text for (text, idx) in items] @@ -1163,10 +1163,13 @@ def main(args_in: list[str] | None = None) -> None: vocab: Vocab if args.vocab_only: - assert args.outfile, "need --outfile if using --vocab-only" + if not args.outfile: + raise ValueError("need --outfile if using --vocab-only") # FIXME: Try to respect vocab_dir somehow? vocab = load_vocab(args.vocab_dir or args.model, args.vocabtype) - special_vocab = gguf.SpecialVocab(model_plus.paths[0].parent, load_merges = args.vocabtype == 'bpe') + special_vocab = gguf.SpecialVocab(model_plus.paths[0].parent, + load_merges = args.vocabtype == 'bpe', + n_vocab = vocab.vocab_size) outfile = args.outfile OutputFile.write_vocab_only(outfile, params, vocab, special_vocab) print(f"Wrote {outfile}") @@ -1178,7 +1181,9 @@ def main(args_in: list[str] | None = None) -> None: vocab_dir = args.vocab_dir if args.vocab_dir else model_plus.paths[0].parent vocab = load_vocab(vocab_dir, args.vocabtype) # FIXME: Try to respect vocab_dir somehow? - special_vocab = gguf.SpecialVocab(model_plus.paths[0].parent, load_merges = args.vocabtype == 'bpe') + special_vocab = gguf.SpecialVocab(model_plus.paths[0].parent, + load_merges = args.vocabtype == 'bpe', + n_vocab = vocab.vocab_size) model = model_plus.model model = convert_model_names(model, params) diff --git a/gguf-py/gguf/gguf.py b/gguf-py/gguf/gguf.py index 072c839c4..6b7d65429 100644 --- a/gguf-py/gguf/gguf.py +++ b/gguf-py/gguf/gguf.py @@ -987,12 +987,15 @@ class SpecialVocab: merges: list[str] = [] special_token_types: tuple[str, ...] = ('bos', 'eos', 'unk', 'sep', 'pad') special_token_ids: dict[str, int] = {} + n_vocab: int | None = None def __init__( self, path: str | os.PathLike[str], load_merges: bool = False, special_token_types: tuple[str, ...] | None = None, + n_vocab: int | None = None, ): self.special_token_ids = {} + self.n_vocab = n_vocab self.load_merges = load_merges if special_token_types is not None: self.special_token_types = special_token_types @@ -1002,6 +1005,16 @@ class SpecialVocab: if not self._try_load_from_tokenizer_json(path): self._try_load_from_config_json(path) + def _set_special_token(self, typ: str, tid: Any): + if not isinstance(tid, int) or tid < 0: + return + if self.n_vocab is None or tid < self.n_vocab: + self.special_token_ids[typ] = tid + return + print(f'gguf: WARNING: Special token type {typ}, id {tid} out of range, must be under {self.n_vocab} - skipping', + file = sys.stderr) + + def _try_load_from_tokenizer_json(self, path: Path) -> bool: tokenizer_file = path / 'tokenizer.json' if not tokenizer_file.is_file(): @@ -1029,10 +1042,11 @@ class SpecialVocab: tc_content = entry_content else: continue - for maybe_token_id in (atok.get('id') for atok in added_tokens if atok.get('content') == tc_content): - if isinstance(maybe_token_id, int) and maybe_token_id >= 0: - self.special_token_ids[typ] = maybe_token_id - break + # We only need the first match here. + maybe_token_id = next(( + atok.get('id') for atok in added_tokens + if atok.get('content') == tc_content), None) + self._set_special_token(typ, maybe_token_id) return True def _try_load_from_config_json(self, path: Path) -> bool: @@ -1042,21 +1056,21 @@ class SpecialVocab: with open(config_file, encoding = 'utf-8') as f: config = json.load(f) for typ in self.special_token_types: - maybe_token_id = config.get(f'{typ}_token_id') - if isinstance(maybe_token_id, int) and maybe_token_id >= 0: - self.special_token_ids[typ] = maybe_token_id + self._set_special_token(typ, config.get(f'{typ}_token_id')) return True - def add_to_gguf(self, gw: GGUFWriter) -> None: + def add_to_gguf(self, gw: GGUFWriter, quiet: bool = False) -> None: if len(self.merges) > 0: - print(f'gguf: Adding {len(self.merges)} merge(s).') + if not quiet: + print(f'gguf: Adding {len(self.merges)} merge(s).') gw.add_token_merges(self.merges) for typ, tokid in self.special_token_ids.items(): handler: Callable[[int], None] | None = getattr(gw, f'add_{typ}_token_id', None) if handler is None: - print(f'gguf: WARNING: No handler for special token type {typ} with id {tokid} - skipping') + print(f'gguf: WARNING: No handler for special token type {typ} with id {tokid} - skipping', file = sys.stderr) continue - print(f'gguf: Setting special token type {typ} to {tokid}') + if not quiet: + print(f'gguf: Setting special token type {typ} to {tokid}') handler(tokid) def __repr__(self) -> str: diff --git a/llama.cpp b/llama.cpp index 365349335..8d52eaf62 100644 --- a/llama.cpp +++ b/llama.cpp @@ -2238,15 +2238,35 @@ static void llm_load_vocab( if (vocab.type == LLAMA_VOCAB_TYPE_SPM) { vocab.linefeed_id = llama_byte_to_token(vocab, '\n'); } else { - vocab.linefeed_id = llama_tokenize_internal(vocab, "\u010A", false)[0]; + const std::vector ids = llama_tokenize_internal(vocab, "\u010A", false); + GGML_ASSERT(!ids.empty() && "model vocab missing newline token"); + vocab.linefeed_id = ids[0]; } // special tokens - GGUF_GET_KEY(ctx, vocab.special_bos_id, gguf_get_val_u32, GGUF_TYPE_UINT32, false, kv(LLM_KV_TOKENIZER_BOS_ID)); - GGUF_GET_KEY(ctx, vocab.special_eos_id, gguf_get_val_u32, GGUF_TYPE_UINT32, false, kv(LLM_KV_TOKENIZER_EOS_ID)); - GGUF_GET_KEY(ctx, vocab.special_unk_id, gguf_get_val_u32, GGUF_TYPE_UINT32, false, kv(LLM_KV_TOKENIZER_UNK_ID)); - GGUF_GET_KEY(ctx, vocab.special_sep_id, gguf_get_val_u32, GGUF_TYPE_UINT32, false, kv(LLM_KV_TOKENIZER_SEP_ID)); - GGUF_GET_KEY(ctx, vocab.special_pad_id, gguf_get_val_u32, GGUF_TYPE_UINT32, false, kv(LLM_KV_TOKENIZER_PAD_ID)); + { + const std::vector> special_token_types = { + { LLM_KV_TOKENIZER_BOS_ID, vocab.special_bos_id }, + { LLM_KV_TOKENIZER_EOS_ID, vocab.special_eos_id }, + { LLM_KV_TOKENIZER_UNK_ID, vocab.special_unk_id }, + { LLM_KV_TOKENIZER_SEP_ID, vocab.special_sep_id }, + { LLM_KV_TOKENIZER_PAD_ID, vocab.special_pad_id }, + }; + for (const auto & it : special_token_types) { + const std::string & key = kv(std::get<0>(it)); + int32_t & id = std::get<1>(it), old_id = id; + + GGUF_GET_KEY(ctx, id, gguf_get_val_u32, GGUF_TYPE_UINT32, false, key); + // Must be >= -1 and < vocab size. Since the key is unsigned, -1 + // can only come from the default value, so there's no point in + // validating that. + if (size_t(id + 1) > vocab.id_to_token.size()) { + LLAMA_LOG_WARN("%s: bad special token: '%s' = %d, using default id %d\n", + __func__, key.c_str(), id, old_id); + id = old_id; + } + } + } // build special tokens cache { @@ -6103,11 +6123,10 @@ static uint8_t llama_token_to_byte(const llama_vocab& vocab, llama_token id) { } static llama_token llama_byte_to_token(const llama_vocab & vocab, uint8_t ch) { + static const char * hex = "0123456789ABCDEF"; switch (llama_vocab_get_type(vocab)) { case LLAMA_VOCAB_TYPE_SPM: { - char buf[7]; - int result = snprintf(buf, sizeof(buf), "<0x%02X>", ch); - GGML_ASSERT(0 <= result && result < 7); + const char buf[7] = { '<', '0', 'x', hex[ch >> 4], hex[ch & 15], '>', 0 }; return vocab.token_to_id.at(buf); } case LLAMA_VOCAB_TYPE_BPE: { From 5a42a5f8e8a86da9ac88008d748cf232a83aa0e1 Mon Sep 17 00:00:00 2001 From: Ian Scrivener Date: Mon, 23 Oct 2023 05:16:43 +1100 Subject: [PATCH 31/48] readme : remove unsupported node.js library (#3703) - https://github.com/Atome-FE/llama-node is quite out of date - doesn't support recent/current llama.cpp functionality --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 49bb556a8..b56ecaec7 100644 --- a/README.md +++ b/README.md @@ -101,7 +101,7 @@ as the main playground for developing new features for the [ggml](https://github - Python: [abetlen/llama-cpp-python](https://github.com/abetlen/llama-cpp-python) - Go: [go-skynet/go-llama.cpp](https://github.com/go-skynet/go-llama.cpp) -- Node.js: [withcatai/node-llama-cpp](https://github.com/withcatai/node-llama-cpp), [hlhr202/llama-node](https://github.com/hlhr202/llama-node) +- Node.js: [withcatai/node-llama-cpp](https://github.com/withcatai/node-llama-cpp) - Ruby: [yoshoku/llama_cpp.rb](https://github.com/yoshoku/llama_cpp.rb) - Rust: [mdrokz/rust-llama.cpp](https://github.com/mdrokz/rust-llama.cpp) - C#/.NET: [SciSharp/LLamaSharp](https://github.com/SciSharp/LLamaSharp) From 9e70cc03229df19ca2d28ce23cc817198f897278 Mon Sep 17 00:00:00 2001 From: goerch Date: Sun, 22 Oct 2023 21:21:42 +0200 Subject: [PATCH 32/48] Add test for MPT tokenization (#3728) * Add test for MPT tokenization * Revert code motion * Remove unnecessary restriction in test case * Clarify logic in conversion --- convert-mpt-hf-to-gguf.py | 15 +++++++++++---- llama.cpp | 17 +++++++++-------- models/ggml-vocab-mpt.gguf | Bin 0 -> 1771406 bytes tests/CMakeLists.txt | 1 + 4 files changed, 21 insertions(+), 12 deletions(-) create mode 100644 models/ggml-vocab-mpt.gguf diff --git a/convert-mpt-hf-to-gguf.py b/convert-mpt-hf-to-gguf.py index 21b9fd507..2d2fa2329 100755 --- a/convert-mpt-hf-to-gguf.py +++ b/convert-mpt-hf-to-gguf.py @@ -128,15 +128,22 @@ vocab_size = hparams["vocab_size"] # ref: https://github.com/cmp-nct/ggllm.cpp/blob/master/falcon_convert.py tokenizer = AutoTokenizer.from_pretrained(dir_model) +added_vocab = tokenizer.get_added_vocab() reverse_vocab = {id: encoded_tok for encoded_tok, id in tokenizer.vocab.items()} for i in range(vocab_size): - tokens.append(reverse_vocab[i] if i in reverse_vocab else f"[PAD{i}]") - scores.append(0.0) # dummy - toktypes.append(gguf.TokenType.NORMAL) + if i not in reverse_vocab: + tokens.append(f"[PAD{i}]") + toktypes.append(gguf.TokenType.USER_DEFINED) + elif reverse_vocab[i] in added_vocab: + # NOTE: wouldn't we like to distinguish CONTROL tokens here? + tokens.append(reverse_vocab[i]) + toktypes.append(gguf.TokenType.USER_DEFINED) + else: + tokens.append(reverse_vocab[i]) + toktypes.append(gguf.TokenType.NORMAL) gguf_writer.add_token_list(tokens) -gguf_writer.add_token_scores(scores) gguf_writer.add_token_types(toktypes) special_vocab = gguf.SpecialVocab(dir_model, load_merges = True, n_vocab = len(tokens)) diff --git a/llama.cpp b/llama.cpp index 8d52eaf62..c63e6251c 100644 --- a/llama.cpp +++ b/llama.cpp @@ -975,14 +975,15 @@ static void llama_nop(struct ggml_tensor * tensor) { // don't offload by default (void) tensor; } -static std::string llama_token_to_str(const struct llama_context * ctx, llama_token token) { +static std::string llama_token_to_piece(const struct llama_context * ctx, llama_token token) { std::vector result(8, 0); const int n_tokens = llama_token_to_piece(llama_get_model(ctx), token, result.data(), result.size()); if (n_tokens < 0) { result.resize(-n_tokens); int check = llama_token_to_piece(llama_get_model(ctx), token, result.data(), result.size()); GGML_ASSERT(check == -n_tokens); - } else { + } + else { result.resize(n_tokens); } @@ -1202,10 +1203,10 @@ struct llama_vocab { id special_eot_id = 32010; int find_bpe_rank(std::string token_left, std::string token_right) const { - replace_all(token_left, " ", "\u0120"); - replace_all(token_left, "\n", "\u010A"); - replace_all(token_right, " ", "\u0120"); - replace_all(token_right, "\n", "\u010A"); + GGML_ASSERT(token_left.find(" ") == std::string::npos); + GGML_ASSERT(token_left.find("\n") == std::string::npos); + GGML_ASSERT(token_right.find(" ") == std::string::npos); + GGML_ASSERT(token_right.find("\n") == std::string::npos); auto it = bpe_ranks.find(std::make_pair(token_left, token_right)); if (it == bpe_ranks.end()) { @@ -7499,7 +7500,7 @@ void llama_sample_grammar(struct llama_context * ctx, llama_token_data_array * c for (size_t i = 0; i < candidates->size; ++i) { const llama_token id = candidates->data[i].id; - const std::string piece = llama_token_to_str(ctx, id); + const std::string piece = llama_token_to_piece(ctx, id); if (id == eos) { if (!allow_eos) { candidates->data[i].logit = -INFINITY; @@ -7711,7 +7712,7 @@ void llama_grammar_accept_token(struct llama_context * ctx, struct llama_grammar GGML_ASSERT(false); } - const std::string piece = llama_token_to_str(ctx, token); + const std::string piece = llama_token_to_piece(ctx, token); // Note terminating 0 in decoded string const auto decoded = decode_utf8(piece.c_str(), grammar->partial_utf8); diff --git a/models/ggml-vocab-mpt.gguf b/models/ggml-vocab-mpt.gguf new file mode 100644 index 0000000000000000000000000000000000000000..6affa34bdd5e377bf3982f8708b89b1fdf728334 GIT binary patch literal 1771406 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¬aM;89Bv1FQ=b-*9Q0)xXGaO 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%0A%iio{X_s6n@3 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 `E)5mZaHa?v;Db3g4w7+4s> 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

VR@%Ue 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𝔠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 )_1KFpyCH6V?!-(N9kv?Ibx=xTi9XY~gZo-n1Wt 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

@@ -540,7 +583,7 @@ data; message = html`<${Markdownish} text=${template(text)} />` } - if(user) { + if (user) { return html`

${template(user)}: ${message}

` } else { return html`

${message}

` @@ -549,6 +592,7 @@ return html`
+ ${messages.flatMap(chatLine)}
`; }; @@ -567,7 +611,7 @@ const converter = new SchemaConverter( grammarJsonSchemaPropOrder.value .split(',') - .reduce((acc, cur, i) => ({...acc, [cur.trim()]: i}), {}) + .reduce((acc, cur, i) => ({ ...acc, [cur.trim()]: i }), {}) ) converter.visit(schema, '') params.value = { @@ -579,7 +623,7 @@ } } - const FloatField = ({label, max, min, name, step, value}) => { + const FloatField = ({ label, max, min, name, step, value }) => { return html`
@@ -589,7 +633,7 @@ ` }; - const IntField = ({label, max, min, name, value}) => { + const IntField = ({ label, max, min, name, value }) => { return html`
@@ -672,7 +716,7 @@ ${GrammarControl()} ` - ); + ); const CompletionConfigForm = () => ( html` @@ -694,20 +738,20 @@ ${session.value.type === 'chat' ? ChatConfigForm() : CompletionConfigForm()}
- ${IntField({label: "Predictions", max: 2048, min: -1, name: "n_predict", value: params.value.n_predict})} - ${FloatField({label: "Temperature", max: 1.5, min: 0.0, name: "temperature", step: 0.01, value: params.value.temperature})} - ${FloatField({label: "Penalize repeat sequence", max: 2.0, min: 0.0, name: "repeat_penalty", step: 0.01, value: params.value.repeat_penalty})} - ${IntField({label: "Consider N tokens for penalize", max: 2048, min: 0, name: "repeat_last_n", value: params.value.repeat_last_n})} - ${IntField({label: "Top-K sampling", max: 100, min: -1, name: "top_k", value: params.value.top_k})} - ${FloatField({label: "Top-P sampling", max: 1.0, min: 0.0, name: "top_p", step: 0.01, value: params.value.top_p})} + ${IntField({ label: "Predictions", max: 2048, min: -1, name: "n_predict", value: params.value.n_predict })} + ${FloatField({ label: "Temperature", max: 1.5, min: 0.0, name: "temperature", step: 0.01, value: params.value.temperature })} + ${FloatField({ label: "Penalize repeat sequence", max: 2.0, min: 0.0, name: "repeat_penalty", step: 0.01, value: params.value.repeat_penalty })} + ${IntField({ label: "Consider N tokens for penalize", max: 2048, min: 0, name: "repeat_last_n", value: params.value.repeat_last_n })} + ${IntField({ label: "Top-K sampling", max: 100, min: -1, name: "top_k", value: params.value.top_k })} + ${FloatField({ label: "Top-P sampling", max: 1.0, min: 0.0, name: "top_p", step: 0.01, value: params.value.top_p })}
More options
- ${FloatField({label: "TFS-Z", max: 1.0, min: 0.0, name: "tfs_z", step: 0.01, value: params.value.tfs_z})} - ${FloatField({label: "Typical P", max: 1.0, min: 0.0, name: "typical_p", step: 0.01, value: params.value.typical_p})} - ${FloatField({label: "Presence penalty", max: 1.0, min: 0.0, name: "presence_penalty", step: 0.01, value: params.value.presence_penalty})} - ${FloatField({label: "Frequency penalty", max: 1.0, min: 0.0, name: "frequency_penalty", step: 0.01, value: params.value.frequency_penalty})} + ${FloatField({ label: "TFS-Z", max: 1.0, min: 0.0, name: "tfs_z", step: 0.01, value: params.value.tfs_z })} + ${FloatField({ label: "Typical P", max: 1.0, min: 0.0, name: "typical_p", step: 0.01, value: params.value.typical_p })} + ${FloatField({ label: "Presence penalty", max: 1.0, min: 0.0, name: "presence_penalty", step: 0.01, value: params.value.presence_penalty })} + ${FloatField({ label: "Frequency penalty", max: 1.0, min: 0.0, name: "frequency_penalty", step: 0.01, value: params.value.frequency_penalty })}

@@ -716,11 +760,11 @@
- ${FloatField({label: "Mirostat tau", max: 10.0, min: 0.0, name: "mirostat_tau", step: 0.01, value: params.value.mirostat_tau})} - ${FloatField({label: "Mirostat eta", max: 1.0, min: 0.0, name: "mirostat_eta", step: 0.01, value: params.value.mirostat_eta})} + ${FloatField({ label: "Mirostat tau", max: 10.0, min: 0.0, name: "mirostat_tau", step: 0.01, value: params.value.mirostat_tau })} + ${FloatField({ label: "Mirostat eta", max: 1.0, min: 0.0, name: "mirostat_eta", step: 0.01, value: params.value.mirostat_eta })}
- ${IntField({label: "Show Probabilities", max: 10, min: 0, name: "n_probs", value: params.value.n_probs})} + ${IntField({ label: "Show Probabilities", max: 10, min: 0, name: "n_probs", value: params.value.n_probs })}
@@ -759,20 +803,20 @@ const popoverChildren = html`
${probs.map((p, index) => { - return html` + return html`
${p.tok_str}: ${Math.floor(p.prob * 100)}%
` - })} + })}
` @@ -851,9 +895,9 @@ ref=${popoverRef} class="popover-content" style=${{ - top: position.value.top, - left: position.value.left, - }} + top: position.value.top, + left: position.value.left, + }} > ${props.popoverChildren}
@@ -952,8 +996,11 @@ -
+
+ +
+ diff --git a/examples/server/server.cpp b/examples/server/server.cpp index b5ad3cc99..c3279dbc9 100644 --- a/examples/server/server.cpp +++ b/examples/server/server.cpp @@ -1,6 +1,11 @@ #include "common.h" #include "llama.h" #include "build-info.h" +#include "grammar-parser.h" + +#include "../llava/clip.h" + +#include "stb_image.h" #ifndef NDEBUG // crash the server in debug mode, otherwise send an http 500 error @@ -17,12 +22,14 @@ #include "json-schema-to-grammar.mjs.hpp" #include +#include +#include +#include #ifndef SERVER_VERBOSE #define SERVER_VERBOSE 1 #endif -using namespace httplib; using json = nlohmann::json; struct server_params @@ -34,6 +41,165 @@ struct server_params int32_t write_timeout = 600; }; +static bool server_verbose = false; + +#if SERVER_VERBOSE != 1 +#define LOG_VERBOSE(MSG, ...) +#else +#define LOG_VERBOSE(MSG, ...) \ + do \ + { \ + if (server_verbose) \ + { \ + server_log("VERBOSE", __func__, __LINE__, MSG, __VA_ARGS__); \ + } \ + } while (0) +#endif + +#define LOG_ERROR( MSG, ...) server_log("ERROR", __func__, __LINE__, MSG, __VA_ARGS__) +#define LOG_WARNING(MSG, ...) server_log("WARNING", __func__, __LINE__, MSG, __VA_ARGS__) +#define LOG_INFO( MSG, ...) server_log("INFO", __func__, __LINE__, MSG, __VA_ARGS__) + +// +// base64 utils (TODO: move to common in the future) +// + +static const std::string base64_chars = + "ABCDEFGHIJKLMNOPQRSTUVWXYZ" + "abcdefghijklmnopqrstuvwxyz" + "0123456789+/"; + +static inline bool is_base64(uint8_t c) +{ + return (isalnum(c) || (c == '+') || (c == '/')); +} + +static std::vector base64_decode(std::string const &encoded_string) +{ + int i = 0; + int j = 0; + int in_ = 0; + + int in_len = encoded_string.size(); + + uint8_t char_array_4[4]; + uint8_t char_array_3[3]; + + std::vector ret; + + while (in_len-- && (encoded_string[in_] != '=') && is_base64(encoded_string[in_])) + { + char_array_4[i++] = encoded_string[in_]; in_++; + if (i == 4) + { + for (i = 0; i <4; i++) + { + char_array_4[i] = base64_chars.find(char_array_4[i]); + } + + char_array_3[0] = ((char_array_4[0] ) << 2) + ((char_array_4[1] & 0x30) >> 4); + char_array_3[1] = ((char_array_4[1] & 0xf) << 4) + ((char_array_4[2] & 0x3c) >> 2); + char_array_3[2] = ((char_array_4[2] & 0x3) << 6) + char_array_4[3]; + + for (i = 0; (i < 3); i++) + { + ret.push_back(char_array_3[i]); + } + i = 0; + } + } + + if (i) + { + for (j = i; j <4; j++) + { + char_array_4[j] = 0; + } + + for (j = 0; j <4; j++) + { + char_array_4[j] = base64_chars.find(char_array_4[j]); + } + + char_array_3[0] = ((char_array_4[0] ) << 2) + ((char_array_4[1] & 0x30) >> 4); + char_array_3[1] = ((char_array_4[1] & 0xf) << 4) + ((char_array_4[2] & 0x3c) >> 2); + char_array_3[2] = ((char_array_4[2] & 0x3) << 6) + char_array_4[3]; + + for (j = 0; (j < i - 1); j++) + { + ret.push_back(char_array_3[j]); + } + } + + return ret; +} + +// +// parallel +// + +enum task_type { + COMPLETION_TASK, + CANCEL_TASK +}; + +struct task_server { + int id; + int target_id; + task_type type; + json data; + bool infill_mode = false; +}; + +struct task_result { + int id; + bool stop; + bool error; + json result_json; +}; + +// TODO: can become bool if we can't find use of more states +enum slot_state +{ + IDLE, + PROCESSING, +}; + +enum slot_command +{ + NONE, + LOAD_PROMPT, + RELEASE, +}; + +struct slot_params +{ + bool stream = true; + bool cache_prompt = false; // remember the prompt to avoid reprocessing all prompt + + uint32_t seed = -1; // RNG seed + int32_t n_keep = 0; // number of tokens to keep from initial prompt + int32_t n_predict = -1; // new tokens to predict + + std::vector antiprompt; + + json input_prefix; + json input_suffix; +}; + +struct slot_image +{ + int32_t id; + + bool request_encode_image = false; + float* image_embedding = nullptr; + int32_t image_tokens = 0; + + clip_image_u8 img_data; + + std::string prefix_prompt; // before of this image +}; + // completion token output with probabilities struct completion_token_output { @@ -45,6 +211,7 @@ struct completion_token_output std::vector probs; llama_token tok; + std::string text_to_send; }; static size_t common_part(const std::vector &a, const std::vector &b) @@ -89,6 +256,7 @@ static size_t find_partial_stop_string(const std::string &stop, return std::string::npos; } +// TODO: reuse llama_detokenize template static std::string tokens_to_str(llama_context *ctx, Iter begin, Iter end) { @@ -103,12 +271,13 @@ static std::string tokens_to_str(llama_context *ctx, Iter begin, Iter end) static void server_log(const char *level, const char *function, int line, const char *message, const nlohmann::ordered_json &extra) { - nlohmann::ordered_json log{ + nlohmann::ordered_json log + { {"timestamp", time(nullptr)}, - {"level", level}, - {"function", function}, - {"line", line}, - {"message", message}, + {"level", level}, + {"function", function}, + {"line", line}, + {"message", message}, }; if (!extra.empty()) @@ -138,7 +307,7 @@ static std::string tokens_to_output_formatted_string(const llama_context *ctx, c } // convert a vector of completion_token_output to json -static json probs_vector_to_json(const llama_context *ctx, const std::vector & probs) +static json probs_vector_to_json(const llama_context *ctx, const std::vector &probs) { json out = json::array(); for (const auto &prob : probs) @@ -147,76 +316,211 @@ static json probs_vector_to_json(const llama_context *ctx, const std::vector +static T json_value(const json &body, const std::string &key, const T &default_value) { - bool stream = false; - bool has_next_token = false; - std::string generated_text; - std::vector generated_token_probs; + // Fallback null to default value + return body.contains(key) && !body.at(key).is_null() + ? body.value(key, default_value) + : default_value; +} - size_t num_prompt_tokens = 0; - size_t num_tokens_predicted = 0; - size_t n_past = 0; - size_t n_remain = 0; +struct llama_client_slot +{ + int id; + int task_id = -1; + + struct slot_params params; + + slot_state state = IDLE; + slot_command command = NONE; + + // used to determine the slot that has been used the longest + int64_t t_last_used = -1; + + // generation props + int32_t n_ctx = 0; // context size per slot + int32_t n_past = 0; + int32_t n_decoded = 0; + int32_t n_remaining = -1; + int32_t i_batch = -1; + + int32_t num_prompt_tokens = 0; + int32_t num_prompt_tokens_processed = 0; + int32_t multibyte_pending = 0; json prompt; - std::vector embd; - - gpt_params params; - - llama_model *model = nullptr; - llama_context *ctx = nullptr; - llama_sampling_context *ctx_sampling = nullptr; - - int n_ctx; + std::string generated_text; + llama_token sampled; + std::vector cache_tokens; + std::vector generated_token_probs; + bool infill = false; + bool has_next_token = true; bool truncated = false; bool stopped_eos = false; bool stopped_word = false; bool stopped_limit = false; + std::string stopping_word; - int32_t multibyte_pending = 0; - std::mutex mutex; + // sampling + struct llama_sampling_params sparams; + llama_sampling_context *ctx_sampling = nullptr; - std::unique_lock lock() - { - return std::unique_lock(mutex); + // multimodal + std::vector images; + + // stats + size_t sent_count = 0; + size_t sent_token_probs_index = 0; + + int64_t t_start_process_prompt; + int64_t t_start_genereration; + + double t_prompt_processing; // ms + double t_token_generation; // ms + + void reset() { + num_prompt_tokens = 0; + generated_text = ""; + truncated = false; + stopped_eos = false; + stopped_word = false; + stopped_limit = false; + stopping_word = ""; + multibyte_pending = 0; + n_past = 0; + sent_count = 0; + sent_token_probs_index = 0; + infill = false; + + generated_token_probs.clear(); + + for (slot_image &img : images) + { + free(img.image_embedding); + delete[] img.img_data.data; + img.prefix_prompt = ""; + } + + images.clear(); + // llama_set_rng_seed(ctx, params.seed); in batched the seed matter??????? } + bool has_budget(gpt_params &global_params) { + n_remaining = -1; + if(params.n_predict != -1) + { + n_remaining = params.n_predict - n_decoded; + } + else if (global_params.n_predict != -1) + { + n_remaining = global_params.n_predict - n_decoded; + } + return n_remaining > 0 || n_remaining == -1; // no budget || limitless + } + + bool available() const { + return state == IDLE && command == NONE; + } + + bool is_processing() const { + return (state == IDLE && command == LOAD_PROMPT) || state == PROCESSING; + } + + void add_token_string(const completion_token_output &token) { + if (command == RELEASE) + { + return; + } + cache_tokens.push_back(token.tok); + generated_token_probs.push_back(token); + } + + void release() { + if (state == PROCESSING) + { + t_token_generation = (ggml_time_us() - t_start_genereration) / 1e3; + command = RELEASE; + } + } + + json get_formated_timings() { + return json + { + {"prompt_n", num_prompt_tokens_processed}, + {"prompt_ms", t_prompt_processing}, + {"prompt_per_token_ms", t_prompt_processing / num_prompt_tokens_processed}, + {"prompt_per_second", 1e3 / t_prompt_processing * num_prompt_tokens_processed}, + + {"predicted_n", n_decoded}, + {"predicted_ms", t_token_generation}, + {"predicted_per_token_ms", t_token_generation / n_decoded}, + {"predicted_per_second", 1e3 / t_token_generation * n_decoded}, + }; + } + + void print_timings() { + LOG_TEE("\n"); + LOG_TEE("%s: prompt eval time = %10.2f ms / %5d tokens (%8.2f ms per token, %8.2f tokens per second)\n", + __func__, t_prompt_processing, num_prompt_tokens_processed, t_prompt_processing / num_prompt_tokens_processed, 1e3 / t_prompt_processing * num_prompt_tokens_processed); + LOG_TEE("%s: eval time = %10.2f ms / %5d runs (%8.2f ms per token, %8.2f tokens per second)\n", + __func__, t_token_generation, n_decoded,t_token_generation / n_decoded, 1e3 / t_token_generation * n_decoded); + LOG_TEE("%s: total time = %10.2f ms\n", __func__, t_prompt_processing + t_token_generation); + } +}; + +struct llama_server_context +{ + llama_model *model = nullptr; + llama_context *ctx = nullptr; + + clip_ctx *clp_ctx = nullptr; + + gpt_params params; + + llama_batch batch; + + bool multimodal = false; + bool clean_kv_cache = true; + bool all_slots_are_idle = false; + + int32_t id_gen; + int32_t n_ctx; // total context for all clients / slots + + // system prompt + bool system_need_update = false; + + std::string system_prompt; + std::vector system_tokens; + + std::string name_user; // this should be the antiprompt + std::string name_assistant; + + // slots / clients + std::vector slots; + + std::vector queue_tasks; + std::vector queue_results; + std::mutex mutex_tasks; + std::mutex mutex_results; + ~llama_server_context() { if (ctx) @@ -231,46 +535,74 @@ struct llama_server_context } } - void rewind() - { - params.antiprompt.clear(); - params.sparams.grammar.clear(); - num_prompt_tokens = 0; - num_tokens_predicted = 0; - generated_text = ""; - generated_text.reserve(n_ctx); - generated_token_probs.clear(); - truncated = false; - stopped_eos = false; - stopped_word = false; - stopped_limit = false; - stopping_word = ""; - multibyte_pending = 0; - n_remain = 0; - n_past = 0; - params.sparams.n_prev = n_ctx; - } - - void initSampling() { - if (ctx_sampling != nullptr) { - llama_sampling_free(ctx_sampling); - } - ctx_sampling = llama_sampling_init(params.sparams); - } - - bool loadModel(const gpt_params ¶ms_) + bool load_model(const gpt_params ¶ms_) { params = params_; + if (!params.mmproj.empty()) { + multimodal = true; + LOG_TEE("Multi Modal Mode Enabled"); + clp_ctx = clip_model_load(params.mmproj.c_str(), /*verbosity=*/ 1); + if(clp_ctx == nullptr) { + LOG_ERROR("unable to load clip model", {{"model", params.mmproj}}); + return false; + } + + if (params.n_ctx < 2048) { // request larger context for the image embedding + params.n_ctx = 2048; + } + } + std::tie(model, ctx) = llama_init_from_gpt_params(params); if (model == nullptr) { - LOG_ERROR("unable to load model", {{"model", params_.model}}); + LOG_ERROR("unable to load model", {{"model", params.model}}); return false; } + + if (multimodal) { + const int n_embd_clip = clip_n_mmproj_embd(clp_ctx); + const int n_embd_llm = llama_n_embd(model); + if (n_embd_clip != n_embd_llm) { + LOG_TEE("%s: embedding dim of the multimodal projector (%d) is not equal to that of LLaMA (%d). Make sure that you use the correct mmproj file.\n", __func__, n_embd_clip, n_embd_llm); + llama_free(ctx); + llama_free_model(model); + return false; + } + } + n_ctx = llama_n_ctx(ctx); + return true; } + void initialize() { + id_gen = 0; + + // create slots + all_slots_are_idle = true; + + const int32_t n_ctx_slot = n_ctx / params.n_parallel; + + LOG_TEE("Available slots:\n"); + for (int i = 0; i < params.n_parallel; i++) + { + llama_client_slot slot; + + slot.id = i; + slot.n_ctx = n_ctx_slot; + slot.reset(); + + LOG_TEE(" -> Slot %i - max context: %i\n", slot.id, n_ctx_slot); + slots.push_back(slot); + } + + batch = llama_batch_init(n_ctx, 0, params.n_parallel); + + // empty system prompt + system_prompt = ""; + system_tokens.clear(); + } + std::vector tokenize(const json & json_prompt, bool add_bos) const { // If `add_bos` is true, we only add BOS, when json_prompt is a string, @@ -316,260 +648,301 @@ struct llama_server_context return prompt_tokens; } - void truncatePrompt(std::vector &prompt_tokens) { - const int n_left = n_ctx - params.n_keep; - const int n_block_size = n_left / 2; - const int erased_blocks = (prompt_tokens.size() - params.n_keep - n_block_size) / n_block_size; + llama_client_slot* get_slot(int id) { + int64_t t_last = ggml_time_us(); + llama_client_slot *last_used = nullptr; - // Keep n_keep tokens at start of prompt (at most n_ctx - 4) - std::vector new_tokens(prompt_tokens.begin(), prompt_tokens.begin() + params.n_keep); + for (llama_client_slot & slot : slots) + { + if (slot.id == id && slot.available()) + { + return &slot; + } - new_tokens.insert(new_tokens.end(), prompt_tokens.begin() + params.n_keep + erased_blocks * n_block_size, prompt_tokens.end()); + if (slot.available() && slot.t_last_used < t_last) + { + last_used = &slot; + t_last = slot.t_last_used; + } + } - LOG_VERBOSE("input truncated", { - {"n_ctx", n_ctx}, - {"n_keep", params.n_keep}, - {"n_left", n_left}, - {"new_tokens", tokens_to_str(ctx, new_tokens.cbegin(), new_tokens.cend())}, - {"num_prompt_tokens", new_tokens.size()} - }); - - truncated = true; - prompt_tokens = new_tokens; + return last_used; } - void loadInfill() - { - bool suff_rm_leading_spc = true; - if (params.input_suffix.find_first_of(' ') == 0 && params.input_suffix.size() > 1) { - params.input_suffix.erase(0, 1); - suff_rm_leading_spc = false; - } + bool launch_slot_with_data(llama_client_slot* &slot, json data) { + slot_params default_params; + llama_sampling_params default_sparams; - auto prefix_tokens = tokenize(params.input_prefix, false); - auto suffix_tokens = tokenize(params.input_suffix, false); - const int space_token = 29871; - if (suff_rm_leading_spc && suffix_tokens[0] == space_token) { - suffix_tokens.erase(suffix_tokens.begin()); - } - prefix_tokens.insert(prefix_tokens.begin(), llama_token_prefix(ctx)); - prefix_tokens.insert(prefix_tokens.begin(), llama_token_bos(ctx)); // always add BOS - prefix_tokens.insert(prefix_tokens.end(), llama_token_suffix(ctx)); - prefix_tokens.insert(prefix_tokens.end(), suffix_tokens.begin(), suffix_tokens.end()); - prefix_tokens.push_back(llama_token_middle(ctx)); + slot->params.stream = json_value(data, "stream", false); + slot->params.cache_prompt = json_value(data, "cache_prompt", false); + slot->params.n_predict = json_value(data, "n_predict", default_params.n_predict); + slot->sparams.top_k = json_value(data, "top_k", default_sparams.top_k); + slot->sparams.top_p = json_value(data, "top_p", default_sparams.top_p); + slot->sparams.tfs_z = json_value(data, "tfs_z", default_sparams.tfs_z); + slot->sparams.typical_p = json_value(data, "typical_p", default_sparams.typical_p); + slot->sparams.temp = json_value(data, "temperature", default_sparams.temp); + slot->sparams.penalty_last_n = json_value(data, "repeat_last_n", default_sparams.penalty_last_n); + slot->sparams.penalty_repeat = json_value(data, "repeat_penalty", default_sparams.penalty_repeat); + slot->sparams.penalty_freq = json_value(data, "frequency_penalty", default_sparams.penalty_freq); + slot->sparams.penalty_present = json_value(data, "presence_penalty", default_sparams.penalty_present); + slot->sparams.mirostat = json_value(data, "mirostat", default_sparams.mirostat); + slot->sparams.mirostat_tau = json_value(data, "mirostat_tau", default_sparams.mirostat_tau); + slot->sparams.mirostat_eta = json_value(data, "mirostat_eta", default_sparams.mirostat_eta); + slot->sparams.penalize_nl = json_value(data, "penalize_nl", default_sparams.penalize_nl); + slot->params.n_keep = json_value(data, "n_keep", slot->params.n_keep); + slot->params.seed = json_value(data, "seed", default_params.seed); + slot->sparams.grammar = json_value(data, "grammar", default_sparams.grammar); + slot->sparams.n_probs = json_value(data, "n_probs", default_sparams.n_probs); - auto prompt_tokens = prefix_tokens; - - num_prompt_tokens = prompt_tokens.size(); - - if (params.n_keep < 0) + // infill + if (data.count("input_prefix") != 0) { - params.n_keep = (int)num_prompt_tokens; + slot->params.input_prefix = data["input_prefix"]; } - params.n_keep = std::min(params.n_ctx - 4, params.n_keep); - - // if input prompt is too big, truncate like normal - if (num_prompt_tokens >= (size_t) n_ctx) + else { - truncatePrompt(prompt_tokens); - num_prompt_tokens = prompt_tokens.size(); - - GGML_ASSERT(num_prompt_tokens < (size_t)n_ctx); + slot->params.input_prefix = ""; } - // push the prompt into the sampling context (do not apply grammar) - for (auto & token : prompt_tokens) + if (data.count("input_suffix") != 0) { - llama_sampling_accept(ctx_sampling, ctx, token, false); + slot->params.input_suffix = data["input_suffix"]; } - - // compare the evaluated prompt with the new prompt - n_past = common_part(embd, prompt_tokens); - embd = prompt_tokens; - - if (n_past == num_prompt_tokens) + else { - // we have to evaluate at least 1 token to generate logits. - printf("we have to evaluate at least 1 token to generate logits\n"); - n_past--; + slot->params.input_suffix = ""; } - // since #3228 we now have to manually manage the KV cache - llama_kv_cache_seq_rm(ctx, 0, n_past, -1); - - LOG_VERBOSE("prompt ingested", { - {"n_past", n_past}, - {"cached", tokens_to_str(ctx, embd.cbegin(), embd.cbegin() + n_past)}, - {"to_eval", tokens_to_str(ctx, embd.cbegin() + n_past, embd.cend())}, - }); - - has_next_token = true; - } - void loadPrompt() - { - auto prompt_tokens = tokenize(prompt, true); // always add BOS - - num_prompt_tokens = prompt_tokens.size(); - - if (params.n_keep < 0) + if (data.count("prompt") != 0) { - params.n_keep = (int)num_prompt_tokens; + slot->prompt = data["prompt"]; } - params.n_keep = std::min(n_ctx - 4, params.n_keep); - - // if input prompt is too big, truncate like normal - if (num_prompt_tokens >= (size_t) n_ctx) + else { - truncatePrompt(prompt_tokens); - num_prompt_tokens = prompt_tokens.size(); - - GGML_ASSERT(num_prompt_tokens < (size_t)n_ctx); + slot->prompt = ""; } - // push the prompt into the sampling context (do not apply grammar) - for (auto & token : prompt_tokens) + slot->sparams.logit_bias.clear(); + + if (json_value(data, "ignore_eos", false)) { - llama_sampling_accept(ctx_sampling, ctx, token, false); + slot->sparams.logit_bias[llama_token_eos(ctx)] = -INFINITY; } - // compare the evaluated prompt with the new prompt - n_past = common_part(embd, prompt_tokens); - - embd = prompt_tokens; - if (n_past == num_prompt_tokens) + const auto &logit_bias = data.find("logit_bias"); + if (logit_bias != data.end() && logit_bias->is_array()) { - // we have to evaluate at least 1 token to generate logits. - n_past--; + const int n_vocab = llama_n_vocab(model); + for (const auto &el : *logit_bias) + { + if (el.is_array() && el.size() == 2 && el[0].is_number_integer()) + { + llama_token tok = el[0].get(); + if (tok >= 0 && tok < n_vocab) + { + if (el[1].is_number()) + { + slot->sparams.logit_bias[tok] = el[1].get(); + } + else if (el[1].is_boolean() && !el[1].get()) + { + slot->sparams.logit_bias[tok] = -INFINITY; + } + } + } + } } - // since #3228 we now have to manually manage the KV cache - llama_kv_cache_seq_rm(ctx, 0, n_past, -1); + slot->params.antiprompt.clear(); + const auto &stop = data.find("stop"); + if (stop != data.end() && stop->is_array()) + { + for (const auto &word : *stop) + { + if (!word.empty()) + { + slot->params.antiprompt.push_back(word); + } + } + } - LOG_VERBOSE("prompt ingested", { - {"n_past", n_past}, - {"cached", tokens_to_str(ctx, embd.cbegin(), embd.cbegin() + n_past)}, - {"to_eval", tokens_to_str(ctx, embd.cbegin() + n_past, embd.cend())}, - }); + if (multimodal) + { + const auto &images_data = data.find("image_data"); + if (images_data != data.end() && images_data->is_array()) + { + for (const auto &img : *images_data) + { + std::string data_b64 = img["data"].get(); + slot_image img_sl; + img_sl.id = img.count("id") != 0 ? img["id"].get() : slot->images.size(); + int width, height, channels; + std::vector image_buffer = base64_decode(data_b64); + data_b64.clear(); + auto data = stbi_load_from_memory(image_buffer.data(), image_buffer.size(), &width, &height, &channels, 3); + if (!data) { + LOG_TEE("slot %i - failed to load image [id: %i]\n", slot->id, img_sl.id); + return false; + } + LOG_TEE("slot %i - image loaded [id: %i] resolution (%i x %i)\n", slot->id, img_sl.id, width, height); + img_sl.img_data.nx = width; + img_sl.img_data.ny = height; + img_sl.img_data.size = width * height * 3; + img_sl.img_data.data = new uint8_t[width * height * 3](); + memcpy(img_sl.img_data.data, data, width * height * 3); + stbi_image_free(data); + img_sl.request_encode_image = true; + slot->images.push_back(img_sl); + } + // process prompt + // example: system prompt [img-102] user [img-103] describe [img-134] -> [{id: 102, prefix: 'system prompt '}, {id: 103, prefix: ' user '}, {id: 134, prefix: ' describe '}]} + if (slot->images.size() > 0 && !slot->prompt.is_array()) + { + std::string prompt = slot->prompt.get(); + size_t pos = 0, begin_prefix = 0; + std::string pattern = "[img-"; + while ((pos = prompt.find(pattern, pos)) != std::string::npos) { + size_t end_prefix = pos; + pos += pattern.length(); + size_t end_pos = prompt.find("]", pos); + if (end_pos != std::string::npos) + { + std::string image_id = prompt.substr(pos, end_pos - pos); + try + { + int img_id = std::stoi(image_id); + bool found = false; + for (slot_image &img : slot->images) + { + if (img.id == img_id) { + found = true; + img.prefix_prompt = prompt.substr(begin_prefix, end_prefix - begin_prefix); + begin_prefix = end_pos + 1; + break; + } + } + if (!found) { + LOG_TEE("ERROR: Image with id: %i, not found.\n", img_id); + slot->images.clear(); + return false; + } + } catch (const std::invalid_argument& e) { + LOG_TEE("Invalid image number id in prompt\n"); + slot->images.clear(); + return false; + } + } + } + slot->prompt = ""; + slot->params.input_suffix = prompt.substr(begin_prefix); + slot->params.cache_prompt = false; // multimodal doesn't support cache prompt + } + } + } - has_next_token = true; + if (slot->ctx_sampling != nullptr) + { + llama_sampling_free(slot->ctx_sampling); + } + slot->ctx_sampling = llama_sampling_init(slot->sparams); + slot->command = LOAD_PROMPT; + + all_slots_are_idle = false; + + LOG_TEE("slot %i is processing [task id: %i]\n", slot->id, slot->task_id); + + return true; } - void beginCompletion() - { - // number of tokens to keep when resetting context - n_remain = params.n_predict; - llama_set_rng_seed(ctx, params.seed); + void kv_cache_clear() { + // clear the entire KV cache + llama_kv_cache_tokens_rm(ctx, -1, -1); + clean_kv_cache = false; } - completion_token_output nextToken() - { - completion_token_output result; - result.tok = -1; + void update_system_prompt() { + system_tokens = ::llama_tokenize(ctx, system_prompt, true); - if (embd.size() >= (size_t)n_ctx) + llama_batch_clear(batch); + + kv_cache_clear(); + + for (int32_t i = 0; i < batch.n_tokens; ++i) { - // Shift context - - const int n_left = n_past - params.n_keep - 1; - const int n_discard = n_left/2; - - llama_kv_cache_seq_rm (ctx, 0, params.n_keep + 1 , params.n_keep + n_discard + 1); - llama_kv_cache_seq_shift(ctx, 0, params.n_keep + 1 + n_discard, n_past, -n_discard); - - for (size_t i = params.n_keep + 1 + n_discard; i < embd.size(); i++) - { - embd[i - n_discard] = embd[i]; - } - embd.resize(embd.size() - n_discard); - - n_past -= n_discard; - - truncated = true; - LOG_VERBOSE("input truncated", { - {"n_ctx", n_ctx}, - {"n_keep", params.n_keep}, - {"n_left", n_left}, - }); + llama_batch_add(batch, system_tokens[i], i, { 0 }, false); } - bool tg = true; - while (n_past < embd.size()) + if (llama_decode(ctx, batch) != 0) { - int n_eval = (int)embd.size() - n_past; - tg = n_eval == 1; - if (n_eval > params.n_batch) - { - n_eval = params.n_batch; - } - - if (llama_decode(ctx, llama_batch_get_one(&embd[n_past], n_eval, n_past, 0))) - { - LOG_ERROR("failed to eval", { - {"n_eval", n_eval}, - {"n_past", n_past}, - {"embd", tokens_to_str(ctx, embd.cbegin() + n_past, embd.cend())}, - }); - has_next_token = false; - return result; - } - n_past += n_eval; + LOG_TEE("%s: llama_decode() failed\n", __func__); + return; } - if (params.n_predict == 0) + // assign the system KV cache to all parallel sequences + for (int32_t i = 1; i < params.n_parallel; ++i) { - has_next_token = false; - result.tok = llama_token_eos(ctx); - return result; + llama_kv_cache_seq_cp(ctx, 0, i, 0, system_tokens.size()); } - { - // out of user input, sample next token - result.tok = llama_sampling_sample(ctx_sampling, ctx, NULL); - - llama_token_data_array cur_p = { ctx_sampling->cur.data(), ctx_sampling->cur.size(), false }; - - const int32_t n_probs = params.sparams.n_probs; - if (params.sparams.temp <= 0 && n_probs > 0) - { - // For llama_sample_token_greedy we need to sort candidates - llama_sample_softmax(ctx, &cur_p); - } - - for (size_t i = 0; i < std::min(cur_p.size, (size_t)n_probs); ++i) - { - result.probs.push_back({cur_p.data[i].id, cur_p.data[i].p}); - } - - llama_sampling_accept(ctx_sampling, ctx, result.tok, true); - - if (tg) { - num_tokens_predicted++; - } - } - - // add it to the context - embd.push_back(result.tok); - // decrement remaining sampling budget - --n_remain; - - if (!embd.empty() && embd.back() == llama_token_eos(ctx)) - { - // stopping_word = llama_token_to_piece(ctx, embd.back()); - has_next_token = false; - stopped_eos = true; - LOG_VERBOSE("eos token found", {}); - return result; - } - - has_next_token = params.n_predict == -1 || n_remain != 0; - return result; + LOG_TEE("system prompt updated\n"); + system_need_update = false; } - size_t findStoppingStrings(const std::string &text, const size_t last_token_size, - const stop_type type) + void notify_system_prompt_changed() { + // release all slots + for (llama_client_slot &slot : slots) + { + slot.release(); + } + wait_all_are_idle(); + all_slots_are_idle = true; + + // wait until system prompt load + system_need_update = true; + while (system_need_update) + { + std::this_thread::sleep_for(std::chrono::milliseconds(5)); + } + // system prompt loaded, continue + } + + void process_system_prompt_data(const json &sys_props) { + system_prompt = sys_props.value("prompt", ""); + name_user = sys_props.value("anti_prompt", ""); + name_assistant = sys_props.value("assistant_name", ""); + + if (slots.size() > 0) + { + notify_system_prompt_changed(); + } + else + { + system_need_update = true; + } + } + + void wait_all_are_idle() { + bool wait = true; + while (wait) + { + wait = false; + for (auto &slot : slots) + { + if (!slot.available()) + { + wait = true; + break; + } + } + } + } + + static size_t find_stopping_strings(const std::string &text, const size_t last_token_size, + const stop_type type, llama_client_slot &slot) { size_t stop_pos = std::string::npos; - for (const std::string &word : params.antiprompt) + + for (const std::string &word : slot.params.antiprompt) { size_t pos; if (type == STOP_FULL) @@ -587,95 +960,803 @@ struct llama_server_context { if (type == STOP_FULL) { - stopping_word = word; - stopped_word = true; - has_next_token = false; + slot.stopped_word = true; + slot.stopping_word = word; + slot.has_next_token = false; } stop_pos = pos; + } } + return stop_pos; } - completion_token_output doCompletion() - { - auto token_with_probs = nextToken(); + bool process_token(completion_token_output &result, llama_client_slot &slot) { + // remember which tokens were sampled - used for repetition penalties during sampling + const std::string token_str = llama_token_to_piece(ctx, result.tok); + slot.sampled = result.tok; - const std::string token_text = token_with_probs.tok == -1 ? "" : llama_token_to_piece(ctx, token_with_probs.tok); - generated_text += token_text; + // search stop word and delete it + slot.generated_text += token_str; + slot.has_next_token = true; - if (params.sparams.n_probs > 0) + if (slot.multibyte_pending > 0) { - generated_token_probs.push_back(token_with_probs); + slot.multibyte_pending -= token_str.size(); } - - if (multibyte_pending > 0) + else if (token_str.size() == 1) { - multibyte_pending -= token_text.size(); - } - else if (token_text.size() == 1) - { - const char c = token_text[0]; + const char c = token_str[0]; // 2-byte characters: 110xxxxx 10xxxxxx if ((c & 0xE0) == 0xC0) { - multibyte_pending = 1; + slot.multibyte_pending = 1; // 3-byte characters: 1110xxxx 10xxxxxx 10xxxxxx } else if ((c & 0xF0) == 0xE0) { - multibyte_pending = 2; + slot.multibyte_pending = 2; // 4-byte characters: 11110xxx 10xxxxxx 10xxxxxx 10xxxxxx } else if ((c & 0xF8) == 0xF0) { - multibyte_pending = 3; + slot.multibyte_pending = 3; } else { - multibyte_pending = 0; + slot.multibyte_pending = 0; } } - if (multibyte_pending > 0 && !has_next_token) + if (slot.multibyte_pending == 0) { - has_next_token = true; - n_remain++; + size_t pos = std::min(slot.sent_count, slot.generated_text.size()); + const std::string str_test = slot.generated_text.substr(pos); + bool is_stop_full = false; + size_t stop_pos = find_stopping_strings(str_test, token_str.size(), STOP_FULL, slot); + if (stop_pos != std::string::npos) + { + is_stop_full = true; + slot.generated_text.erase( + slot.generated_text.begin() + pos + stop_pos, + slot.generated_text.end()); + pos = std::min(slot.sent_count, slot.generated_text.size()); + } + else + { + is_stop_full = false; + stop_pos = find_stopping_strings(str_test, token_str.size(), STOP_PARTIAL, slot); + } + + // check if there is any token to predict + if (stop_pos == std::string::npos || (!slot.has_next_token && !is_stop_full && stop_pos > 0)) + { + // no send the stop word in the response + result.text_to_send = slot.generated_text.substr(pos, std::string::npos); + slot.sent_count += result.text_to_send.size(); + // add the token to slot queue and cache + } + slot.add_token_string(result); + if (slot.params.stream) + { + send_partial_response(slot, result); + } } - if (!has_next_token && n_remain == 0) + if (slot.multibyte_pending > 0 && !slot.has_next_token) { - stopped_limit = true; + slot.has_next_token = true; + } + + // check the limits + if (slot.n_decoded > 2 && slot.has_next_token && !slot.has_budget(params)) + { + slot.stopped_limit = true; + slot.has_next_token = false; + } + + if (!slot.cache_tokens.empty() && result.tok == llama_token_eos(ctx)) + { + slot.stopped_eos = true; + slot.has_next_token = false; + LOG_VERBOSE("eos token found", {}); } LOG_VERBOSE("next token", { - {"token", token_with_probs.tok}, - {"token_text", tokens_to_output_formatted_string(ctx, token_with_probs.tok)}, - {"has_next_token", has_next_token}, - {"n_remain", n_remain}, - {"num_tokens_predicted", num_tokens_predicted}, - {"stopped_eos", stopped_eos}, - {"stopped_word", stopped_word}, - {"stopped_limit", stopped_limit}, - {"stopping_word", stopping_word}, + {"token", result.tok}, + {"token_text", tokens_to_output_formatted_string(ctx, result.tok)}, + {"has_next_token", slot.has_next_token}, + {"n_remain", slot.n_remaining}, + {"num_tokens_predicted", slot.n_decoded}, + {"stopped_eos", slot.stopped_eos}, + {"stopped_word", slot.stopped_word}, + {"stopped_limit", slot.stopped_limit}, + {"stopping_word", slot.stopping_word}, }); - return token_with_probs; + return slot.has_next_token; // continue } - std::vector getEmbedding() + bool process_images(llama_client_slot &slot) const { - static const int n_embd = llama_n_embd(model); + for (slot_image &img : slot.images) + { + if (!img.request_encode_image) + { + continue; + } + clip_image_f32 img_res; + if (!clip_image_preprocess(clp_ctx, &img.img_data, &img_res, /*pad2square =*/ true)) + { + LOG_TEE("Error processing the given image"); + clip_free(clp_ctx); + return false; + } + img.image_tokens = clip_n_patches(clp_ctx); + img.image_embedding = (float *)malloc(clip_embd_nbytes(clp_ctx)); + if (!img.image_embedding) + { + LOG_TEE("Unable to allocate memory for image embeddings\n"); + clip_free(clp_ctx); + return false; + } + LOG_TEE("slot %i - encoding image [id: %i]\n", slot.id, img.id); + if (!clip_image_encode(clp_ctx, params.n_threads, &img_res, img.image_embedding)) + { + LOG_TEE("Unable to encode image\n"); + return false; + } + img.request_encode_image = false; + } + + return slot.images.size() > 0; + } + + void send_error(int id, std::string error) + { + std::lock_guard lock(mutex_results); + task_result res; + res.id = id; + res.error = true; + res.result_json = { { "content", error } }; + queue_results.push_back(res); + } + + json get_model_props() + { + return get_formated_generation(slots[0]); + } + + json get_formated_generation(llama_client_slot &slot) + { + const auto eos_bias = slot.sparams.logit_bias.find(llama_token_eos(ctx)); + const bool ignore_eos = eos_bias != slot.sparams.logit_bias.end() && + eos_bias->second < 0.0f && std::isinf(eos_bias->second); + return json { + {"n_ctx", slot.n_ctx}, + {"model", params.model_alias}, + {"seed", slot.params.seed}, + {"temp", slot.sparams.temp}, + {"top_k", slot.sparams.top_k}, + {"top_p", slot.sparams.top_p}, + {"tfs_z", slot.sparams.tfs_z}, + {"typical_p", slot.sparams.typical_p}, + {"repeat_last_n", slot.sparams.penalty_last_n}, + {"repeat_penalty", slot.sparams.penalty_repeat}, + {"presence_penalty", slot.sparams.penalty_present}, + {"frequency_penalty", slot.sparams.penalty_freq}, + {"mirostat", slot.sparams.mirostat}, + {"mirostat_tau", slot.sparams.mirostat_tau}, + {"mirostat_eta", slot.sparams.mirostat_eta}, + {"penalize_nl", slot.sparams.penalize_nl}, + {"stop", slot.params.antiprompt}, + {"n_predict", slot.params.n_predict}, + {"n_keep", params.n_keep}, + {"ignore_eos", ignore_eos}, + {"stream", slot.params.stream}, + {"logit_bias", slot.sparams.logit_bias}, + {"n_probs", slot.sparams.n_probs}, + {"grammar", slot.sparams.grammar}, + }; + } + + void send_partial_response(llama_client_slot &slot, completion_token_output tkn) + { + std::lock_guard lock(mutex_results); + task_result res; + res.id = slot.task_id; + res.error = false; + res.stop = false; + + res.result_json = json + { + {"content", tkn.text_to_send}, + {"stop", false}, + {"slot_id", slot.id}, + {"multimodal", multimodal} + }; + + if (slot.sparams.n_probs > 0) + { + std::vector probs_output = {}; + const std::vector to_send_toks = llama_tokenize(ctx, tkn.text_to_send, false); + size_t probs_pos = std::min(slot.sent_token_probs_index, slot.generated_token_probs.size()); + size_t probs_stop_pos = std::min(slot.sent_token_probs_index + to_send_toks.size(), slot.generated_token_probs.size()); + if (probs_pos < probs_stop_pos) + { + probs_output = std::vector(slot.generated_token_probs.begin() + probs_pos, slot.generated_token_probs.begin() + probs_stop_pos); + } + slot.sent_token_probs_index = probs_stop_pos; + res.result_json["completion_probabilities"] = probs_vector_to_json(ctx, probs_output); + } + + queue_results.push_back(res); + } + + void send_final_response(llama_client_slot &slot) + { + std::lock_guard lock(mutex_results); + task_result res; + res.id = slot.task_id; + res.error = false; + res.stop = true; + + res.result_json = json + { + {"content", !slot.params.stream ? slot.generated_text : ""}, + {"slot_id", slot.id}, + {"stop", true}, + {"model", params.model_alias}, + {"tokens_predicted", slot.n_decoded}, + {"tokens_evaluated", slot.num_prompt_tokens}, + {"generation_settings", get_formated_generation(slot)}, + {"prompt", slot.prompt}, + {"truncated", slot.truncated}, + {"stopped_eos", slot.stopped_eos}, + {"stopped_word", slot.stopped_word}, + {"stopped_limit", slot.stopped_limit}, + {"stopping_word", slot.stopping_word}, + {"tokens_cached", slot.n_past}, + {"timings", slot.get_formated_timings()} + }; + + if (slot.sparams.n_probs > 0) + { + std::vector probs = {}; + if (!slot.params.stream && slot.stopped_word) + { + const std::vector stop_word_toks = llama_tokenize(ctx, slot.stopping_word, false); + probs = std::vector(slot.generated_token_probs.begin(), slot.generated_token_probs.end() - stop_word_toks.size()); + } + else + { + probs = std::vector( + slot.generated_token_probs.begin(), + slot.generated_token_probs.begin() + slot.sent_token_probs_index); + } + res.result_json["completion_probabilities"] = probs_vector_to_json(ctx, probs); + } + + queue_results.push_back(res); + } + + void send_embedding(llama_client_slot &slot) + { + std::lock_guard lock(mutex_results); + task_result res; + res.id = slot.task_id; + res.error = false; + res.stop = true; + + const int n_embd = llama_n_embd(model); if (!params.embedding) { LOG_WARNING("embedding disabled", { {"params.embedding", params.embedding}, }); - return std::vector(n_embd, 0.0f); + res.result_json = json + { + {"embedding", std::vector(n_embd, 0.0f)}, + }; } - const float *data = llama_get_embeddings(ctx); - std::vector embedding(data, data + n_embd); - return embedding; + else + { + const float *data = llama_get_embeddings(ctx); + std::vector embedding(data, data + n_embd); + res.result_json = json + { + {"embedding", embedding }, + }; + } + queue_results.push_back(res); + } + + int request_completion(json data, bool infill) + { + std::lock_guard lock(mutex_tasks); + task_server task; + task.id = id_gen++; + task.data = data; + task.infill_mode = infill; + task.type = COMPLETION_TASK; + queue_tasks.push_back(task); + return task.id; + } + + task_result next_result(int task_id) + { + while (true) + { + std::this_thread::sleep_for(std::chrono::microseconds(5)); + std::lock_guard lock(mutex_results); + + if (queue_results.empty()) + { + continue; + } + + for (int i = 0; i < (int) queue_results.size(); i++) + { + if (queue_results[i].id == task_id) + { + task_result res = queue_results[i]; + queue_results.erase(queue_results.begin() + i); + return res; + } + } + } + + // never reached + //return task_result{-1, false, false, {}}; + } + + // for multiple images processing + bool ingest_images(llama_client_slot &slot, int n_batch) + { + int image_idx = 0; + + while (image_idx < (int) slot.images.size()) + { + slot_image &img = slot.images[image_idx]; + + // process prefix prompt + for (int32_t i = 0; i < (int32_t) batch.n_tokens; i += n_batch) + { + const int32_t n_tokens = std::min(n_batch, (int32_t) (batch.n_tokens - i)); + llama_batch batch_view = { + n_tokens, + batch.token + i, + nullptr, + batch.pos + i, + batch.n_seq_id + i, + batch.seq_id + i, + batch.logits + i, + 0, 0, 0, // unused + }; + if (llama_decode(ctx, batch_view)) + { + LOG_TEE("%s : failed to eval\n", __func__); + return false; + } + } + + // process image with llm + for (int i = 0; i < img.image_tokens; i += n_batch) + { + int n_eval = img.image_tokens - i; + if (n_eval > n_batch) + { + n_eval = n_batch; + } + + const int n_embd = llama_n_embd(model); + llama_batch batch_img = { n_eval, nullptr, (img.image_embedding + i * n_embd), nullptr, nullptr, nullptr, nullptr, slot.n_past, 1, 0, }; + if (llama_decode(ctx, batch_img)) + { + LOG_TEE("%s : failed to eval image\n", __func__); + return false; + } + slot.n_past += n_eval; + } + image_idx++; + + llama_batch_clear(batch); + + // append prefix of next image + const auto json_prompt = (image_idx >= (int) slot.images.size()) ? + slot.params.input_suffix : // no more images, then process suffix prompt + (json)(slot.images[image_idx].prefix_prompt); + + std::vector append_tokens = tokenize(json_prompt, false); // has next image + for (int i = 0; i < (int) append_tokens.size(); ++i) + { + llama_batch_add(batch, append_tokens[i], slot.n_past, { slot.id }, true); + slot.n_past += 1; + } + } + + return true; + } + + void request_cancel(int task_id) + { + std::lock_guard lock(mutex_tasks); + task_server task; + task.id = id_gen++; + task.type = CANCEL_TASK; + task.target_id = task_id; + queue_tasks.push_back(task); + } + + void process_tasks() + { + std::lock_guard lock(mutex_tasks); + while (!queue_tasks.empty()) + { + task_server task = queue_tasks.front(); + queue_tasks.erase(queue_tasks.begin()); + switch (task.type) + { + case COMPLETION_TASK: { + llama_client_slot *slot = get_slot(json_value(task.data, "slot_id", -1)); + if (slot == nullptr) + { + LOG_TEE("slot unavailable\n"); + // send error result + send_error(task.id, "slot unavaliable"); + return; + } + + if (task.data.contains("system_prompt")) + { + process_system_prompt_data(task.data["system_prompt"]); + } + + slot->reset(); + + slot->infill = task.infill_mode; + slot->task_id = task.id; + + if (!launch_slot_with_data(slot, task.data)) + { + // send error result + send_error(task.id, "internal_error"); + break; + } + } break; + case CANCEL_TASK: { // release slot linked with the task id + for (auto & slot : slots) + { + if (slot.task_id == task.target_id) + { + slot.release(); + break; + } + } + } break; + } + } + } + + bool update_slots() { + // attend tasks + process_tasks(); + + // update the system prompt wait until all slots are idle state + if (system_need_update) + { + LOG_TEE("updating system prompt\n"); + update_system_prompt(); + } + + llama_batch_clear(batch); + + if (all_slots_are_idle) + { + if (system_prompt.empty() && clean_kv_cache) + { + LOG_TEE("all slots are idle and system prompt is empty, clear the KV cache\n"); + kv_cache_clear(); + } + // avoid 100% usage of cpu all time + std::this_thread::sleep_for(std::chrono::milliseconds(5)); + } + + for (llama_client_slot &slot : slots) + { + if (slot.is_processing() && slot.cache_tokens.size() >= (size_t) slot.n_ctx) + { + // Shift context + const int n_left = slot.n_past - slot.params.n_keep - 1; + const int n_discard = n_left / 2; + + LOG_TEE("slot %d: context shift - n_keep = %d, n_left = %d, n_discard = %d\n", slot.id, slot.params.n_keep, n_left, n_discard); + llama_kv_cache_seq_rm (ctx, slot.id, slot.params.n_keep + 1 , slot.params.n_keep + n_discard + 1); + llama_kv_cache_seq_shift(ctx, slot.id, slot.params.n_keep + 1 + n_discard, slot.n_past, -n_discard); + + for (size_t i = slot.params.n_keep + 1 + n_discard; i < slot.cache_tokens.size(); i++) + { + slot.cache_tokens[i - n_discard] = slot.cache_tokens[i]; + } + + slot.cache_tokens.resize(slot.cache_tokens.size() - n_discard); + + slot.n_past -= n_discard; + + slot.truncated = true; + + LOG_VERBOSE("context shift", { + {"n_ctx", n_ctx}, + {"n_keep", params.n_keep}, + {"n_left", n_left}, + }); + } + } + + // decode any currently ongoing sequences + for (auto & slot : slots) + { + // release the slot + if (slot.state == PROCESSING && slot.command == RELEASE) + { + slot.state = IDLE; + slot.command = NONE; + slot.t_last_used = ggml_time_us(); + + LOG_TEE("slot %d released (%d tokens in cache)\n", slot.id, (int) slot.cache_tokens.size()); + + continue; + } + + if (slot.state == IDLE || slot.command == RELEASE) + { + continue; + } + + slot.i_batch = batch.n_tokens; + + llama_batch_add(batch, slot.sampled, system_tokens.size() + slot.n_past, { slot.id }, true); + + slot.n_decoded += 1; + slot.n_past += 1; + } + + // process in chunks of params.n_batch + int32_t n_batch = params.n_batch; + + // assign workload to the slots + if (params.cont_batching || batch.n_tokens == 0) + { + for (auto & slot : slots) + { + // need process the prompt + if (slot.state == IDLE && slot.command == LOAD_PROMPT) + { + slot.state = PROCESSING; + slot.command = NONE; + std::vector prompt_tokens; + slot.t_start_process_prompt = ggml_time_us(); + slot.t_start_genereration = 0; + + if (slot.infill) + { + bool suff_rm_leading_spc = true; + if (params.input_suffix.find_first_of(' ') == 0 && params.input_suffix.size() > 1) + { + params.input_suffix.erase(0, 1); + suff_rm_leading_spc = false; + } + auto prefix_tokens = tokenize(slot.params.input_prefix, false); + auto suffix_tokens = tokenize(slot.params.input_suffix, false); + + const int space_token = 29871; // TODO: this should not be hardcoded + if (suff_rm_leading_spc && !suffix_tokens.empty() && suffix_tokens[0] == space_token) { + suffix_tokens.erase(suffix_tokens.begin()); + } + + prefix_tokens.insert(prefix_tokens.begin(), llama_token_prefix(ctx)); + prefix_tokens.insert(prefix_tokens.begin(), llama_token_bos(ctx)); // always add BOS + prefix_tokens.insert(prefix_tokens.end(), llama_token_suffix(ctx)); + prefix_tokens.insert(prefix_tokens.end(), suffix_tokens.begin(), suffix_tokens.end()); + prefix_tokens.push_back(llama_token_middle(ctx)); + prompt_tokens = prefix_tokens; + } + else + { + prompt_tokens = tokenize(slot.prompt, system_prompt.empty()); // add BOS if there isn't system prompt + } + + slot.num_prompt_tokens = prompt_tokens.size(); + + if (!slot.params.cache_prompt) + { + llama_sampling_reset(slot.ctx_sampling); + + slot.n_past = 0; + slot.num_prompt_tokens_processed = slot.num_prompt_tokens; + } + else + { + if (slot.params.n_keep < 0) + { + slot.params.n_keep = slot.num_prompt_tokens; + } + slot.params.n_keep = std::min(slot.n_ctx - 4, slot.params.n_keep); + + // if input prompt is too big, truncate it + if (slot.num_prompt_tokens >= slot.n_ctx) + { + const int n_left = slot.n_ctx - slot.params.n_keep; + const int n_block_size = n_left / 2; + const int erased_blocks = (slot.num_prompt_tokens - slot.params.n_keep - n_block_size) / n_block_size; + + std::vector new_tokens(prompt_tokens.begin(), prompt_tokens.begin() + slot.params.n_keep); + new_tokens.insert(new_tokens.end(), prompt_tokens.begin() + slot.params.n_keep + erased_blocks * n_block_size, prompt_tokens.end()); + + LOG_VERBOSE("input truncated", { + {"n_ctx", slot.n_ctx}, + {"n_keep", slot.params.n_keep}, + {"n_left", n_left}, + {"new_tokens", tokens_to_str(ctx, new_tokens.cbegin(), new_tokens.cend())}, + }); + slot.truncated = true; + prompt_tokens = new_tokens; + + slot.num_prompt_tokens = prompt_tokens.size(); + GGML_ASSERT(slot.num_prompt_tokens < slot.n_ctx); + } + + // push the prompt into the sampling context (do not apply grammar) + for (auto &token : prompt_tokens) + { + llama_sampling_accept(slot.ctx_sampling, ctx, token, false); + } + + slot.n_past = common_part(slot.cache_tokens, prompt_tokens); + slot.num_prompt_tokens_processed = slot.num_prompt_tokens - slot.n_past; + + LOG_TEE("slot %d : in cache: %i tokens | to process: %i tokens\n", slot.id, slot.n_past, slot.num_prompt_tokens_processed); + } + + LOG_TEE("slot %d : kv cache rm - [%d, end)\n", slot.id, (int) system_tokens.size() + slot.n_past); + + llama_kv_cache_seq_rm(ctx, slot.id, system_tokens.size() + slot.n_past, -1); + + slot.cache_tokens = prompt_tokens; + + if (slot.n_past == slot.num_prompt_tokens) + { + // we have to evaluate at least 1 token to generate logits. + LOG_TEE("slot %d : we have to evaluate at least 1 token to generate logits\n", slot.id); + slot.n_past--; + } + + LOG_VERBOSE("prompt ingested", { + {"n_past", slot.n_past}, + {"cached", tokens_to_str(ctx, slot.cache_tokens.cbegin(), slot.cache_tokens.cbegin() + slot.n_past)}, + {"to_eval", tokens_to_str(ctx, slot.cache_tokens.cbegin() + slot.n_past, slot.cache_tokens.cend())}, + }); + + const bool has_images = process_images(slot); + + // process the prefix of first image + std::vector prefix_tokens = has_images ? tokenize(slot.images[0].prefix_prompt, true) : prompt_tokens; + for (; slot.n_past < (int) prefix_tokens.size(); ++slot.n_past) + { + llama_batch_add(batch, prefix_tokens[slot.n_past], system_tokens.size() + slot.n_past, { slot.id }, false); + } + + if (has_images && !ingest_images(slot, n_batch)) + { + LOG_TEE("failed processing images\n"); + return false; + } + + // extract the logits only for the last token + if (batch.n_tokens > 0) + { + batch.logits[batch.n_tokens - 1] = true; + } + + slot.n_decoded = 0; + slot.i_batch = batch.n_tokens - 1; + } + } + } + + if (batch.n_tokens == 0) + { + all_slots_are_idle = true; + return true; + } + + for (int32_t i = 0; i < (int32_t) batch.n_tokens; i += n_batch) + { + const int32_t n_tokens = std::min(n_batch, (int32_t) (batch.n_tokens - i)); + llama_batch batch_view = + { + n_tokens, + batch.token + i, + nullptr, + batch.pos + i, + batch.n_seq_id + i, + batch.seq_id + i, + batch.logits + i, + 0, 0, 0, // unused + }; + + const int ret = llama_decode(ctx, batch_view); + if (ret != 0) + { + if (n_batch == 1 || ret < 0) + { + // if you get here, it means the KV cache is full - try increasing it via the context size + LOG_TEE("%s : failed to decode the batch, n_batch = %d, ret = %d\n", __func__, n_batch, ret); + return false; + } + + LOG_TEE("%s : failed to find free space in the KV cache, retrying with smaller n_batch = %d\n", __func__, n_batch / 2); + + // retry with half the batch size to try to find a free slot in the KV cache + n_batch /= 2; + i -= n_batch; + continue; + } + + for (auto & slot : slots) + { + if (slot.i_batch < (int) i || slot.i_batch >= (int) (i + n_tokens)) + { + continue; + } + + // prompt evaluated for embedding + if (params.embedding) + { + send_embedding(slot); + slot.release(); + slot.i_batch = -1; + return true; + } + + completion_token_output result; + const llama_token id = llama_sampling_sample(slot.ctx_sampling, ctx, NULL, slot.i_batch - i); + + llama_sampling_accept(slot.ctx_sampling, ctx, id, true); + + if (slot.n_decoded == 1) + { + slot.t_start_genereration = ggml_time_us(); + slot.t_prompt_processing = (slot.t_start_genereration - slot.t_start_process_prompt) / 1e3; + } + + llama_token_data_array cur_p = { slot.ctx_sampling->cur.data(), slot.ctx_sampling->cur.size(), false }; + result.tok = id; + + const int32_t n_probs = slot.sparams.n_probs; + if (slot.sparams.temp <= 0 && n_probs > 0) + { + // for llama_sample_token_greedy we need to sort candidates + llama_sample_softmax(ctx, &cur_p); + } + + for (size_t i = 0; i < std::min(cur_p.size, (size_t)n_probs); ++i) + { + result.probs.push_back({cur_p.data[i].id, cur_p.data[i].p}); + } + + if (!process_token(result, slot)) + { + slot.release(); + send_final_response(slot); + slot.print_timings(); + } + + slot.i_batch = -1; + } + } + return true; } }; @@ -685,16 +1766,15 @@ static void server_print_usage(const char *argv0, const gpt_params ¶ms, printf("usage: %s [options]\n", argv0); printf("\n"); printf("options:\n"); - printf(" -h, --help show this help message and exit\n"); - printf(" -v, --verbose verbose output (default: %s)\n", server_verbose ? "enabled" : "disabled"); - printf(" -t N, --threads N number of threads to use during computation (default: %d)\n", params.n_threads); - printf(" -tb N, --threads-batch N number of threads to use during batch and prompt processing (default: same as --threads)\n"); - printf(" -c N, --ctx-size N size of the prompt context (default: %d)\n", params.n_ctx); - printf(" --rope-freq-base N RoPE base frequency (default: loaded from model)\n"); - printf(" --rope-freq-scale N RoPE frequency scaling factor (default: loaded from model)\n"); - printf(" -b N, --batch-size N batch size for prompt processing (default: %d)\n", params.n_batch); - printf(" --memory-f32 use f32 instead of f16 for memory key+value (default: disabled)\n"); - printf(" not recommended: doubles context memory required and no measurable increase in quality\n"); + printf(" -h, --help show this help message and exit\n"); + printf(" -v, --verbose verbose output (default: %s)\n", server_verbose ? "enabled" : "disabled"); + printf(" -t N, --threads N number of threads to use during computation (default: %d)\n", params.n_threads); + printf(" -c N, --ctx-size N size of the prompt context (default: %d)\n", params.n_ctx); + printf(" --rope-freq-base N RoPE base frequency (default: loaded from model)\n"); + printf(" --rope-freq-scale N RoPE frequency scaling factor (default: loaded from model)\n"); + printf(" -b N, --batch-size N batch size for prompt processing (default: %d)\n", params.n_batch); + printf(" --memory-f32 use f32 instead of f16 for memory key+value (default: disabled)\n"); + printf(" not recommended: doubles context memory required and no measurable increase in quality\n"); if (llama_mlock_supported()) { printf(" --mlock force system to keep model in RAM rather than swapping or compressing\n"); @@ -725,11 +1805,16 @@ static void server_print_usage(const char *argv0, const gpt_params ¶ms, printf(" --path PUBLIC_PATH path from which to serve static files (default %s)\n", sparams.public_path.c_str()); printf(" -to N, --timeout N server read/write timeout in seconds (default: %d)\n", sparams.read_timeout); printf(" --embedding enable embedding vector output (default: %s)\n", params.embedding ? "enabled" : "disabled"); + printf(" -np N, --parallel N number of slots for process requests (default: %d)\n", params.n_parallel); + printf(" -cb, --cont-batching enable continuous batching (a.k.a dynamic batching) (default: disabled)\n"); + printf(" -spf FNAME, --system-prompt-file FNAME\n"); + printf(" Set a file to load a system prompt (initial prompt of all slots), this is useful for chat applications.\n"); + printf(" --mmproj MMPROJ_FILE path to a multimodal projector file for LLaVA.\n"); printf("\n"); } static void server_params_parse(int argc, char **argv, server_params &sparams, - gpt_params ¶ms) + gpt_params ¶ms, llama_server_context& llama) { gpt_params default_params; server_params default_sparams; @@ -839,15 +1924,6 @@ static void server_params_parse(int argc, char **argv, server_params &sparams, } params.n_threads = std::stoi(argv[i]); } - else if (arg == "--threads-batch" || arg == "-tb") - { - if (++i >= argc) - { - invalid_param = true; - break; - } - params.n_threads_batch = std::stoi(argv[i]); - } else if (arg == "-b" || arg == "--batch-size") { if (++i >= argc) @@ -984,6 +2060,56 @@ static void server_params_parse(int argc, char **argv, server_params &sparams, { params.embedding = true; } + else if (arg == "-cb" || arg == "--cont-batching") + { + params.cont_batching = true; + } + else if (arg == "-np" || arg == "--parallel") + { + if (++i >= argc) + { + invalid_param = true; + break; + } + params.n_parallel = std::stoi(argv[i]); + } else if (arg == "-n" || arg == "--n-predict") + { + if (++i >= argc) + { + invalid_param = true; + break; + } + params.n_predict = std::stoi(argv[i]); + } else if (arg == "-spf" || arg == "--system-prompt-file") + { + if (++i >= argc) + { + invalid_param = true; + break; + } + std::ifstream file(argv[i]); + if (!file) { + fprintf(stderr, "error: failed to open file '%s'\n", argv[i]); + invalid_param = true; + break; + } + std::string systm_content; + std::copy( + std::istreambuf_iterator(file), + std::istreambuf_iterator(), + std::back_inserter(systm_content) + ); + llama.process_system_prompt_data(json::parse(systm_content)); + } + else if(arg == "--mmproj") + { + if (++i >= argc) + { + invalid_param = true; + break; + } + params.mmproj = argv[i]; + } else { fprintf(stderr, "error: unknown argument: %s\n", arg.c_str()); @@ -1000,102 +2126,18 @@ static void server_params_parse(int argc, char **argv, server_params &sparams, } } -static json format_generation_settings(llama_server_context &llama) -{ - const auto & sparams = llama.params.sparams; - const auto eos_bias = sparams.logit_bias.find(llama_token_eos(llama.ctx)); - const bool ignore_eos = eos_bias != sparams.logit_bias.end() && - eos_bias->second < 0.0f && std::isinf(eos_bias->second); - - return json{ - {"n_ctx", llama.n_ctx}, - {"model", llama.params.model_alias}, - {"seed", llama.params.seed}, - {"temp", sparams.temp}, - {"top_k", sparams.top_k}, - {"top_p", sparams.top_p}, - {"tfs_z", sparams.tfs_z}, - {"typical_p", sparams.typical_p}, - {"repeat_last_n", sparams.penalty_last_n}, - {"repeat_penalty", sparams.penalty_repeat}, - {"frequency_penalty", sparams.penalty_freq}, - {"presence_penalty", sparams.penalty_present}, - {"mirostat", sparams.mirostat}, - {"mirostat_tau", sparams.mirostat_tau}, - {"mirostat_eta", sparams.mirostat_eta}, - {"penalize_nl", sparams.penalize_nl}, - {"stop", llama.params.antiprompt}, - {"n_predict", llama.params.n_predict}, - {"n_keep", llama.params.n_keep}, - {"ignore_eos", ignore_eos}, - {"stream", llama.stream}, - {"logit_bias", sparams.logit_bias}, - {"n_probs", sparams.n_probs}, - {"grammar", llama.params.sparams.grammar}, - }; -} - -static json format_embedding_response(llama_server_context &llama) -{ - return json{ - {"embedding", llama.getEmbedding()}, - }; -} - -static json format_timings(llama_server_context &llama) -{ - const auto timings = llama_get_timings(llama.ctx); - - return json{ - {"prompt_n", timings.n_p_eval}, - {"prompt_ms", timings.t_p_eval_ms}, - {"prompt_per_token_ms", timings.t_p_eval_ms / timings.n_p_eval}, - {"prompt_per_second", 1e3 / timings.t_p_eval_ms * timings.n_p_eval}, - - {"predicted_n", timings.n_eval}, - {"predicted_ms", timings.t_eval_ms}, - {"predicted_per_token_ms", timings.t_eval_ms / timings.n_eval}, - {"predicted_per_second", 1e3 / timings.t_eval_ms * timings.n_eval}, - }; -} - -static json format_final_response(llama_server_context &llama, const std::string &content, const std::vector &probs) -{ - - json res = json{ - {"content", content}, - {"stop", true}, - {"model", llama.params.model_alias}, - {"tokens_predicted", llama.num_tokens_predicted}, - {"tokens_evaluated", llama.num_prompt_tokens}, - {"generation_settings", format_generation_settings(llama)}, - {"prompt", llama.prompt}, - {"truncated", llama.truncated}, - {"stopped_eos", llama.stopped_eos}, - {"stopped_word", llama.stopped_word}, - {"stopped_limit", llama.stopped_limit}, - {"stopping_word", llama.stopping_word}, - {"tokens_cached", llama.n_past}, - {"timings", format_timings(llama)}, - }; - - if (llama.params.sparams.n_probs > 0) - { - res["completion_probabilities"] = probs_vector_to_json(llama.ctx, probs); - } - - return res; -} - static json format_partial_response( - llama_server_context &llama, const std::string &content, const std::vector &probs + llama_server_context &llama, llama_client_slot *slot, const std::string &content, const std::vector &probs ) { - json res = json{ - {"content", content}, - {"stop", false}, + json res = json + { + {"content", content }, + {"stop", false}, + {"slot_id", slot->id }, + {"multimodal", llama.multimodal } }; - if (llama.params.sparams.n_probs > 0) + if (slot->sparams.n_probs > 0) { res["completion_probabilities"] = probs_vector_to_json(llama.ctx, probs); } @@ -1115,120 +2157,8 @@ static json format_detokenized_response(std::string content) {"content", content}}; } -template -static T json_value(const json &body, const std::string &key, const T &default_value) -{ - // Fallback null to default value - return body.contains(key) && !body.at(key).is_null() - ? body.value(key, default_value) - : default_value; -} -static void parse_options_completion(const json &body, llama_server_context &llama) -{ - gpt_params default_params; - const auto & default_sparams = default_params.sparams; - - auto & params = llama.params; - auto & sparams = llama.params.sparams; - - llama.stream = json_value(body, "stream", false); - params.n_predict = json_value(body, "n_predict", default_params.n_predict); - sparams.top_k = json_value(body, "top_k", default_sparams.top_k); - sparams.top_p = json_value(body, "top_p", default_sparams.top_p); - sparams.tfs_z = json_value(body, "tfs_z", default_sparams.tfs_z); - sparams.typical_p = json_value(body, "typical_p", default_sparams.typical_p); - sparams.temp = json_value(body, "temperature", default_sparams.temp); - sparams.penalty_last_n = json_value(body, "repeat_last_n", default_sparams.penalty_last_n); - sparams.penalty_repeat = json_value(body, "repeat_penalty", default_sparams.penalty_repeat); - sparams.penalty_freq = json_value(body, "frequency_penalty", default_sparams.penalty_freq); - sparams.penalty_present = json_value(body, "presence_penalty", default_sparams.penalty_present); - sparams.mirostat = json_value(body, "mirostat", default_sparams.mirostat); - sparams.mirostat_tau = json_value(body, "mirostat_tau", default_sparams.mirostat_tau); - sparams.mirostat_eta = json_value(body, "mirostat_eta", default_sparams.mirostat_eta); - sparams.penalize_nl = json_value(body, "penalize_nl", default_sparams.penalize_nl); - params.n_keep = json_value(body, "n_keep", default_params.n_keep); - params.seed = json_value(body, "seed", default_params.seed); - sparams.grammar = json_value(body, "grammar", default_sparams.grammar); - sparams.n_probs = json_value(body, "n_probs", default_sparams.n_probs); - - if (body.count("prompt") != 0) - { - llama.prompt = body["prompt"]; - } - else - { - llama.prompt = ""; - } - - sparams.logit_bias.clear(); - if (json_value(body, "ignore_eos", false)) - { - sparams.logit_bias[llama_token_eos(llama.ctx)] = -INFINITY; - } - - const auto &logit_bias = body.find("logit_bias"); - if (logit_bias != body.end() && logit_bias->is_array()) - { - const int n_vocab = llama_n_vocab(llama.model); - for (const auto &el : *logit_bias) - { - if (el.is_array() && el.size() == 2 && el[0].is_number_integer()) - { - llama_token tok = el[0].get(); - if (tok >= 0 && tok < n_vocab) - { - if (el[1].is_number()) - { - sparams.logit_bias[tok] = el[1].get(); - } - else if (el[1].is_boolean() && !el[1].get()) - { - sparams.logit_bias[tok] = -INFINITY; - } - } - } - } - } - - llama.params.antiprompt.clear(); - const auto &stop = body.find("stop"); - if (stop != body.end() && stop->is_array()) - { - for (const auto &word : *stop) - { - if (!word.empty()) - { - llama.params.antiprompt.push_back(word); - } - } - } - - LOG_VERBOSE("completion parameters parsed", format_generation_settings(llama)); -} - -static void parse_options_infill(const json &body, llama_server_context &llama) -{ - if (body.count("input_prefix") != 0) - { - llama.params.input_prefix = body["input_prefix"]; - } - else - { - llama.params.input_prefix = ""; - } - if (body.count("input_suffix") != 0) - { - llama.params.input_suffix = body["input_suffix"]; - } - else - { - llama.params.input_suffix = ""; - } - parse_options_completion(body, llama); -} - -static void log_server_request(const Request &req, const Response &res) +static void log_server_request(const httplib::Request &req, const httplib::Response &res) { LOG_INFO("request", { {"remote_addr", req.remote_addr}, @@ -1245,60 +2175,26 @@ static void log_server_request(const Request &req, const Response &res) }); } -static bool is_at_eob(llama_server_context &server_context, const llama_token *tokens, const size_t n_tokens) { - return n_tokens && tokens[n_tokens-1] == llama_token_eos(server_context.ctx); -} - -// Function matching type llama_beam_search_callback_fn_t. -// Custom callback example is called each time the beams lengths increase: -// * Show progress by printing ',' following by number of convergent beam tokens if any. -// * When all beams converge to a common prefix, they are made available in beams_state.beams[0]. -// This is also called when the stop condition is met. -// Collect tokens into std::vector response which is pointed to by callback_data. -static void beam_search_callback(void *callback_data, llama_beams_state beams_state) { - auto & llama = *static_cast(callback_data); - // Mark beams as EOS as needed. - for (size_t i = 0 ; i < beams_state.n_beams ; ++i) { - llama_beam_view& beam_view = beams_state.beam_views[i]; - if (!beam_view.eob && is_at_eob(llama, beam_view.tokens, beam_view.n_tokens)) { - beam_view.eob = true; - } - } - printf(","); // Show progress - if (const size_t n = beams_state.common_prefix_length) { - llama.generated_token_probs.resize(llama.generated_token_probs.size() + n); - assert(0u < beams_state.n_beams); - const llama_token * tokens = beams_state.beam_views[0].tokens; - const auto map = [](llama_token tok) { return completion_token_output{{},tok}; }; - std::transform(tokens, tokens + n, llama.generated_token_probs.end() - n, map); - printf("%zu", n); - } - fflush(stdout); -#if 0 // DEBUG: print current beams for this iteration - std::cout << "\n\nCurrent beams:\n"; - for (size_t i=0 ; i < beams_state.n_beams ; ++i) { - std::cout << "beams["<generated_token_probs; auto translator = token_translator{llama.ctx}; auto add_strlen = [=](size_t sum, const completion_token_output & cto) { return sum + translator(cto).size(); }; const size_t len = std::accumulate(gtps.begin(), gtps.end(), size_t(0), add_strlen); - if (llama.generated_text.capacity() < llama.generated_text.size() + len) { - llama.generated_text.reserve(llama.generated_text.size() + len); + if (slot->generated_text.capacity() < slot->generated_text.size() + len) + { + slot->generated_text.reserve(slot->generated_text.size() + len); } - for (const completion_token_output & cto : gtps) { - llama.generated_text += translator(cto); + for (const completion_token_output & cto : gtps) + { + slot->generated_text += translator(cto); } } @@ -1311,7 +2207,7 @@ int main(int argc, char **argv) // struct that contains llama context and inference llama_server_context llama; - server_params_parse(argc, argv, sparams, params); + server_params_parse(argc, argv, sparams, params, llama); if (params.model_alias == "unknown") { @@ -1322,6 +2218,7 @@ int main(int argc, char **argv) LOG_INFO("build info", {{"build", BUILD_NUMBER}, {"commit", BUILD_COMMIT}}); + LOG_INFO("system info", { {"n_threads", params.n_threads}, {"n_threads_batch", params.n_threads_batch}, @@ -1330,405 +2227,261 @@ int main(int argc, char **argv) }); // load the model - if (!llama.loadModel(params)) + if (!llama.load_model(params)) { return 1; } - Server svr; + llama.initialize(); + + httplib::Server svr; svr.set_default_headers({{"Server", "llama.cpp"}, {"Access-Control-Allow-Origin", "*"}, {"Access-Control-Allow-Headers", "content-type"}}); // this is only called if no index.html is found in the public --path - svr.Get("/", [](const Request &, Response &res) + svr.Get("/", [](const httplib::Request &, httplib::Response &res) { - res.set_content(reinterpret_cast(&index_html), index_html_len, "text/html"); - return false; }); + res.set_content(reinterpret_cast(&index_html), index_html_len, "text/html"); + return false; + }); // this is only called if no index.js is found in the public --path - svr.Get("/index.js", [](const Request &, Response &res) + svr.Get("/index.js", [](const httplib::Request &, httplib::Response &res) { - res.set_content(reinterpret_cast(&index_js), index_js_len, "text/javascript"); - return false; }); + res.set_content(reinterpret_cast(&index_js), index_js_len, "text/javascript"); + return false; + }); // this is only called if no index.html is found in the public --path - svr.Get("/completion.js", [](const Request &, Response &res) + svr.Get("/completion.js", [](const httplib::Request &, httplib::Response &res) { - res.set_content(reinterpret_cast(&completion_js), completion_js_len, "application/javascript"); - return false; }); + res.set_content(reinterpret_cast(&completion_js), completion_js_len, "application/javascript"); + return false; + }); // this is only called if no index.html is found in the public --path - svr.Get("/json-schema-to-grammar.mjs", [](const Request &, Response &res) + svr.Get("/json-schema-to-grammar.mjs", [](const httplib::Request &, httplib::Response &res) { - res.set_content(reinterpret_cast(&json_schema_to_grammar_mjs), json_schema_to_grammar_mjs_len, "application/javascript"); - return false; }); + res.set_content(reinterpret_cast(&json_schema_to_grammar_mjs), json_schema_to_grammar_mjs_len, "application/javascript"); + return false; + }); - svr.Post("/completion", [&llama](const Request &req, Response &res) - { - auto lock = llama.lock(); + svr.Get("/props", [&llama](const httplib::Request & /*req*/, httplib::Response &res) + { + res.set_header("Access-Control-Allow-Origin", "*"); + json data = { + { "user_name", llama.name_user.c_str() }, + { "assistant_name", llama.name_assistant.c_str() } + }; + res.set_content(data.dump(), "application/json"); + }); - llama.rewind(); - - llama_reset_timings(llama.ctx); - parse_options_completion(json::parse(req.body), llama); - - llama.initSampling(); - llama.loadPrompt(); - llama.beginCompletion(); - - if (!llama.stream) { - if (llama.params.n_beams) { - // Fill llama.generated_token_probs vector with final beam. - llama_beam_search(llama.ctx, beam_search_callback, &llama, llama.params.n_beams, - llama.n_past, llama.n_remain); - // Translate llama.generated_token_probs to llama.generated_text. - append_to_generated_text_from_generated_token_probs(llama); - } else { - size_t stop_pos = std::string::npos; - - while (llama.has_next_token) { - const completion_token_output token_with_probs = llama.doCompletion(); - const std::string token_text = token_with_probs.tok == -1 ? "" : llama_token_to_piece(llama.ctx, token_with_probs.tok); - - stop_pos = llama.findStoppingStrings(llama.generated_text, - token_text.size(), STOP_FULL); - } - - if (stop_pos == std::string::npos) { - stop_pos = llama.findStoppingStrings(llama.generated_text, 0, STOP_PARTIAL); - } - if (stop_pos != std::string::npos) { - llama.generated_text.erase(llama.generated_text.begin() + stop_pos, - llama.generated_text.end()); - } - } - - auto probs = llama.generated_token_probs; - if (llama.params.sparams.n_probs > 0 && llama.stopped_word) { - const std::vector stop_word_toks = llama_tokenize(llama.ctx, llama.stopping_word, false); - probs = std::vector(llama.generated_token_probs.begin(), llama.generated_token_probs.end() - stop_word_toks.size()); - } - - const json data = format_final_response(llama, llama.generated_text, probs); - - llama_print_timings(llama.ctx); - - res.set_content(data.dump(-1, ' ', false, json::error_handler_t::replace), - "application/json"); - } else { - const auto chunked_content_provider = [&](size_t, DataSink & sink) { - size_t sent_count = 0; - size_t sent_token_probs_index = 0; - - while (llama.has_next_token) { - const completion_token_output token_with_probs = llama.doCompletion(); - if (token_with_probs.tok == -1 || llama.multibyte_pending > 0) { - continue; + svr.Post("/completion", [&llama](const httplib::Request &req, httplib::Response &res) + { + json data = json::parse(req.body); + const int task_id = llama.request_completion(data, false); + if (!json_value(data, "stream", false)) { + std::string completion_text; + task_result result = llama.next_result(task_id); + if(!result.error && result.stop) { + res.set_content(result.result_json.dump(-1, ' ', false, json::error_handler_t::replace), "application/json"); } - const std::string token_text = llama_token_to_piece(llama.ctx, token_with_probs.tok); - - size_t pos = std::min(sent_count, llama.generated_text.size()); - - const std::string str_test = llama.generated_text.substr(pos); - bool is_stop_full = false; - size_t stop_pos = - llama.findStoppingStrings(str_test, token_text.size(), STOP_FULL); - if (stop_pos != std::string::npos) { - is_stop_full = true; - llama.generated_text.erase( - llama.generated_text.begin() + pos + stop_pos, - llama.generated_text.end()); - pos = std::min(sent_count, llama.generated_text.size()); - } else { - is_stop_full = false; - stop_pos = llama.findStoppingStrings(str_test, token_text.size(), - STOP_PARTIAL); + else + { + res.status = 404; + res.set_content(result.result_json["content"], "text/plain"); + return; } - - if ( - stop_pos == std::string::npos || - // Send rest of the text if we are at the end of the generation - (!llama.has_next_token && !is_stop_full && stop_pos > 0) - ) { - const std::string to_send = llama.generated_text.substr(pos, std::string::npos); - - sent_count += to_send.size(); - - std::vector probs_output = {}; - - if (llama.params.sparams.n_probs > 0) { - const std::vector to_send_toks = llama_tokenize(llama.ctx, to_send, false); - size_t probs_pos = std::min(sent_token_probs_index, llama.generated_token_probs.size()); - size_t probs_stop_pos = std::min(sent_token_probs_index + to_send_toks.size(), llama.generated_token_probs.size()); - if (probs_pos < probs_stop_pos) { - probs_output = std::vector(llama.generated_token_probs.begin() + probs_pos, llama.generated_token_probs.begin() + probs_stop_pos); - } - sent_token_probs_index = probs_stop_pos; - } - - const json data = format_partial_response(llama, to_send, probs_output); - - const std::string str = - "data: " + - data.dump(-1, ' ', false, json::error_handler_t::replace) + - "\n\n"; - - LOG_VERBOSE("data stream", { - { "to_send", str } - }); - - if (!sink.write(str.data(), str.size())) { - LOG_VERBOSE("stream closed", {}); - llama_print_timings(llama.ctx); - return false; - } - } - - if (!llama.has_next_token) { - // Generation is done, send extra information. - const json data = format_final_response( - llama, - "", - std::vector(llama.generated_token_probs.begin(), llama.generated_token_probs.begin() + sent_token_probs_index) - ); - - const std::string str = - "data: " + - data.dump(-1, ' ', false, json::error_handler_t::replace) + - "\n\n"; - - LOG_VERBOSE("data stream", { - { "to_send", str } - }); - - if (!sink.write(str.data(), str.size())) { - LOG_VERBOSE("stream closed", {}); - llama_print_timings(llama.ctx); - return false; - } - } - } - - llama_print_timings(llama.ctx); - sink.done(); - return true; - }; - const auto on_complete = [&](bool) { - llama.mutex.unlock(); - }; - lock.release(); - res.set_chunked_content_provider("text/event-stream", chunked_content_provider, on_complete); - } }); - - svr.Post("/infill", [&llama](const Request &req, Response &res) - { - auto lock = llama.lock(); - - llama.rewind(); - - llama_reset_timings(llama.ctx); - parse_options_infill(json::parse(req.body), llama); - - llama.initSampling(); - llama.loadInfill(); - llama.beginCompletion(); - const auto chunked_content_provider = [&](size_t, DataSink & sink) { - size_t sent_count = 0; - size_t sent_token_probs_index = 0; - - while (llama.has_next_token) { - const completion_token_output token_with_probs = llama.doCompletion(); - if (token_with_probs.tok == -1 || llama.multibyte_pending > 0) { - continue; - } - const std::string token_text = llama_token_to_piece(llama.ctx, token_with_probs.tok); - - size_t pos = std::min(sent_count, llama.generated_text.size()); - - const std::string str_test = llama.generated_text.substr(pos); - bool is_stop_full = false; - size_t stop_pos = - llama.findStoppingStrings(str_test, token_text.size(), STOP_FULL); - if (stop_pos != std::string::npos) { - is_stop_full = true; - llama.generated_text.erase( - llama.generated_text.begin() + pos + stop_pos, - llama.generated_text.end()); - pos = std::min(sent_count, llama.generated_text.size()); } else { - is_stop_full = false; - stop_pos = llama.findStoppingStrings(str_test, token_text.size(), - STOP_PARTIAL); - } - - if ( - stop_pos == std::string::npos || - // Send rest of the text if we are at the end of the generation - (!llama.has_next_token && !is_stop_full && stop_pos > 0) - ) { - const std::string to_send = llama.generated_text.substr(pos, std::string::npos); - - sent_count += to_send.size(); - - std::vector probs_output = {}; - - if (llama.params.sparams.n_probs > 0) { - const std::vector to_send_toks = llama_tokenize(llama.ctx, to_send, false); - size_t probs_pos = std::min(sent_token_probs_index, llama.generated_token_probs.size()); - size_t probs_stop_pos = std::min(sent_token_probs_index + to_send_toks.size(), llama.generated_token_probs.size()); - if (probs_pos < probs_stop_pos) { - probs_output = std::vector(llama.generated_token_probs.begin() + probs_pos, llama.generated_token_probs.begin() + probs_stop_pos); + const auto chunked_content_provider = [task_id, &llama](size_t, httplib::DataSink & sink) + { + while (true) + { + task_result result = llama.next_result(task_id); + if (!result.error) { + const std::string str = + "data: " + + result.result_json.dump(-1, ' ', false, json::error_handler_t::replace) + + "\n\n"; + LOG_VERBOSE("data stream", { + { "to_send", str } + }); + if (!sink.write(str.c_str(), str.size())) + { + return false; + } + if(result.stop) { + break; + } + } else { + break; + } } - sent_token_probs_index = probs_stop_pos; - } + sink.done(); + return true; + }; - const json data = format_partial_response(llama, to_send, probs_output); + auto on_complete = [task_id, &llama] (bool) + { + // cancel + llama.request_cancel(task_id); + }; - const std::string str = - "data: " + - data.dump(-1, ' ', false, json::error_handler_t::replace) + - "\n\n"; - - LOG_VERBOSE("data stream", { - { "to_send", str } - }); - - if (!sink.write(str.data(), str.size())) { - LOG_VERBOSE("stream closed", {}); - llama_print_timings(llama.ctx); - return false; - } + res.set_chunked_content_provider("text/event-stream", chunked_content_provider, on_complete); } + }); - if (!llama.has_next_token) { - // Generation is done, send extra information. - const json data = format_final_response( - llama, - "", - std::vector(llama.generated_token_probs.begin(), llama.generated_token_probs.begin() + sent_token_probs_index) - ); - - const std::string str = - "data: " + - data.dump(-1, ' ', false, json::error_handler_t::replace) + - "\n\n"; - - LOG_VERBOSE("data stream", { - { "to_send", str } - }); - - if (!sink.write(str.data(), str.size())) { - LOG_VERBOSE("stream closed", {}); - llama_print_timings(llama.ctx); - return false; - } - } - } - - llama_print_timings(llama.ctx); - sink.done(); - return true; - }; - const auto on_complete = [&](bool) { - llama.mutex.unlock(); - }; - lock.release(); - res.set_chunked_content_provider("text/event-stream", chunked_content_provider, on_complete); - }); - - svr.Get("/model.json", [&llama](const Request &, Response &res) + svr.Post("/infill", [&llama](const httplib::Request &req, httplib::Response &res) { - const json data = format_generation_settings(llama); - return res.set_content(data.dump(), "application/json"); }); + json data = json::parse(req.body); + const int task_id = llama.request_completion(data, true); + if (!json_value(data, "stream", false)) { + std::string completion_text; + task_result result = llama.next_result(task_id); + if (!result.error && result.stop) + { + res.set_content(result.result_json.dump(-1, ' ', false, json::error_handler_t::replace), "application/json"); + } + else + { + res.status = 404; + res.set_content(result.result_json["content"], "text/plain"); + return; + } + } else { + const auto chunked_content_provider = [task_id, &llama](size_t, httplib::DataSink & sink) { + while (true) + { + task_result result = llama.next_result(task_id); + if (!result.error) { + const std::string str = + "data: " + + result.result_json.dump(-1, ' ', false, json::error_handler_t::replace) + + "\n\n"; + LOG_VERBOSE("data stream", { + { "to_send", str } + }); + if (!sink.write(str.c_str(), str.size())) + { + return false; + } + if (result.stop) + { + break; + } + } + else + { + break; + } + } - svr.Options(R"(/.*)", [](const Request &, Response &res) + sink.done(); + + return true; + }; + + auto on_complete = [task_id, &llama] (bool) + { + // cancel + llama.request_cancel(task_id); + }; + + res.set_chunked_content_provider("text/event-stream", chunked_content_provider, on_complete); + } + }); + + svr.Get("/model.json", [&llama](const httplib::Request &, httplib::Response &res) + { + const json data = llama.get_model_props(); + return res.set_content(data.dump(), "application/json"); + }); + + svr.Options(R"(/.*)", [](const httplib::Request &, httplib::Response &res) { return res.set_content("", "application/json"); }); - svr.Post("/tokenize", [&llama](const Request &req, Response &res) - { - auto lock = llama.lock(); + svr.Post("/tokenize", [&llama](const httplib::Request &req, httplib::Response &res) + { + const json body = json::parse(req.body); + std::vector tokens; + if (body.count("content") != 0) + { + tokens = llama.tokenize(body["content"], false); + } + const json data = format_tokenizer_response(tokens); + return res.set_content(data.dump(), "application/json"); + }); - const json body = json::parse(req.body); - std::vector tokens; - if (body.count("content") != 0) - { - tokens = llama.tokenize(body["content"], false); - } - const json data = format_tokenizer_response(tokens); - return res.set_content(data.dump(), "application/json"); }); + svr.Post("/detokenize", [&llama](const httplib::Request &req, httplib::Response &res) + { + const json body = json::parse(req.body); + std::string content; + if (body.count("tokens") != 0) + { + const std::vector tokens = body["tokens"]; + content = tokens_to_str(llama.ctx, tokens.cbegin(), tokens.cend()); + } - svr.Post("/detokenize", [&llama](const Request &req, Response &res) - { - auto lock = llama.lock(); + const json data = format_detokenized_response(content); + return res.set_content(data.dump(), "application/json"); + }); - const json body = json::parse(req.body); - std::string content; - if (body.count("tokens") != 0) - { - const std::vector tokens = body["tokens"]; - content = tokens_to_str(llama.ctx, tokens.cbegin(), tokens.cend()); - } - - const json data = format_detokenized_response(content); - return res.set_content(data.dump(), "application/json"); }); - - svr.Post("/embedding", [&llama](const Request &req, Response &res) - { - auto lock = llama.lock(); - - const json body = json::parse(req.body); - - llama.rewind(); - - llama_reset_timings(llama.ctx); - - if (body.count("content") != 0) - { - llama.prompt = body["content"]; - } - else - { - llama.prompt = ""; - } - llama.params.n_predict = 0; - - llama.initSampling(); - llama.loadPrompt(); - llama.beginCompletion(); - llama.doCompletion(); - - const json data = format_embedding_response(llama); - return res.set_content(data.dump(), "application/json"); }); + svr.Post("/embedding", [&llama](const httplib::Request &req, httplib::Response &res) + { + const json body = json::parse(req.body); + json prompt; + if (body.count("content") != 0) + { + prompt = body["content"]; + } + else + { + prompt = ""; + } + const int task_id = llama.request_completion({ {"prompt", prompt}, { "n_predict", 0} }, false); + task_result result = llama.next_result(task_id); + return res.set_content(result.result_json.dump(), "application/json"); + }); svr.set_logger(log_server_request); - svr.set_exception_handler([](const Request &, Response &res, std::exception_ptr ep) - { - const char fmt[] = "500 Internal Server Error\n%s"; - char buf[BUFSIZ]; - try { - std::rethrow_exception(std::move(ep)); - } catch (std::exception & e) { - snprintf(buf, sizeof(buf), fmt, e.what()); - } catch (...) { - snprintf(buf, sizeof(buf), fmt, "Unknown Exception"); - } - res.set_content(buf, "text/plain"); - res.status = 500; }); + svr.set_exception_handler([](const httplib::Request &, httplib::Response &res, std::exception_ptr ep) + { + const char fmt[] = "500 Internal Server Error\n%s"; + char buf[BUFSIZ]; + try + { + std::rethrow_exception(std::move(ep)); + } + catch (std::exception &e) + { + snprintf(buf, sizeof(buf), fmt, e.what()); + } + catch (...) + { + snprintf(buf, sizeof(buf), fmt, "Unknown Exception"); + } + res.set_content(buf, "text/plain"); + res.status = 500; + }); - svr.set_error_handler([](const Request &, Response &res) - { - if (res.status == 400) { - res.set_content("Invalid request", "text/plain"); - } else if (res.status != 500) { - res.set_content("File Not Found", "text/plain"); - res.status = 404; - } }); + svr.set_error_handler([](const httplib::Request &, httplib::Response &res) + { + if (res.status == 400) + { + res.set_content("Invalid request", "text/plain"); + } + else if (res.status != 500) + { + res.set_content("File Not Found", "text/plain"); + res.status = 404; + } + }); // set timeouts and change hostname and port - svr.set_read_timeout(sparams.read_timeout); + svr.set_read_timeout (sparams.read_timeout); svr.set_write_timeout(sparams.write_timeout); if (!svr.bind_to_port(sparams.hostname, sparams.port)) @@ -1741,20 +2494,38 @@ int main(int argc, char **argv) svr.set_base_dir(sparams.public_path); // to make it ctrl+clickable: - printf("\nllama server listening at http://%s:%d\n\n", sparams.hostname.c_str(), sparams.port); + LOG_TEE("\nllama server listening at http://%s:%d\n\n", sparams.hostname.c_str(), sparams.port); LOG_INFO("HTTP server listening", { {"hostname", sparams.hostname}, {"port", sparams.port}, }); - if (!svr.listen_after_bind()) + // run the HTTP server in a thread - see comment below + std::thread t([&]() + { + if (!svr.listen_after_bind()) + { + return 1; + } + + return 0; + }); + + // GG: if I put the main loop inside a thread, it crashes on the first request when build in Debug!? + // "Bus error: 10" - this is on macOS, it does not crash on Linux + //std::thread t2([&]() { - return 1; + bool running = true; + while (running) + { + running = llama.update_slots(); + } } + //); + + t.join(); - llama_sampling_free(llama.ctx_sampling); llama_backend_free(); - return 0; } From 96981f37b1e3f450d9e63e571514217bf60f0a7f Mon Sep 17 00:00:00 2001 From: Alex Date: Sun, 22 Oct 2023 15:56:53 -0400 Subject: [PATCH 34/48] make : add optional CUDA_NATIVE_ARCH (#2482) Use the environment variable `CUDA_NATIVE_ARCH` if present to set NVCC arch. Otherwise, use `native`. --- Makefile | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/Makefile b/Makefile index 80179631f..705c4acb4 100644 --- a/Makefile +++ b/Makefile @@ -391,9 +391,12 @@ else endif #LLAMA_CUDA_NVCC ifdef CUDA_DOCKER_ARCH NVCCFLAGS += -Wno-deprecated-gpu-targets -arch=$(CUDA_DOCKER_ARCH) +endif # CUDA_DOCKER_ARCH +ifdef CUDA_NATIVE_ARCH + NVCCFLAGS += -arch=$(CUDA_NATIVE_ARCH) else NVCCFLAGS += -arch=native -endif # CUDA_DOCKER_ARCH +endif # CUDA_NATIVE_ARCH ifdef LLAMA_CUDA_FORCE_DMMV NVCCFLAGS += -DGGML_CUDA_FORCE_DMMV endif # LLAMA_CUDA_FORCE_DMMV From 6336701c9378c23c85d1c0e464b663ca2bbb8e60 Mon Sep 17 00:00:00 2001 From: Galunid Date: Mon, 23 Oct 2023 17:47:03 +0200 Subject: [PATCH 35/48] Fix baichuan convert script not detecing model (#3739) It seems nobody objects. --- convert-baichuan-hf-to-gguf.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/convert-baichuan-hf-to-gguf.py b/convert-baichuan-hf-to-gguf.py index 3b64ecb88..5ee99be73 100755 --- a/convert-baichuan-hf-to-gguf.py +++ b/convert-baichuan-hf-to-gguf.py @@ -110,7 +110,7 @@ print("gguf: loading model "+dir_model.name) with open(dir_model / "config.json", "r", encoding="utf-8") as f: hparams = json.load(f) print("hello print: ",hparams["architectures"][0]) -if hparams["architectures"][0] != "BaichuanForCausalLM": +if hparams["architectures"][0] != "BaichuanForCausalLM" and hparams["architectures"][0] != "BaiChuanForCausalLM": print("Model architecture not supported: " + hparams["architectures"][0]) sys.exit() From 5be6c803fa5378f62a1590f3ad8c6b64c7c0c2ce Mon Sep 17 00:00:00 2001 From: Marcus Dunn <51931484+MarcusDunn@users.noreply.github.com> Date: Mon, 23 Oct 2023 12:40:03 -0700 Subject: [PATCH 36/48] llama : remove token functions with `context` args in favor of `model` (#3720) * added `llama_model_token_*` variants to all the `llama_token_*` functions. * added `LLAMA_API` * formatting Co-authored-by: Georgi Gerganov * removed old `llama_token` functions * changed 3 more functions to take in model - `llama_token_get_text` - `llama_token_get_score` - `llama_token_get_type` * added back docs * fixed main.cpp * changed token functions to use new model variants * changed token functions to use new model variants --------- Co-authored-by: Georgi Gerganov --- common/common.cpp | 8 ++--- common/sampling.cpp | 4 +-- common/train.cpp | 6 ++-- examples/batched/batched.cpp | 2 +- examples/beam-search/beam-search.cpp | 2 +- examples/infill/infill.cpp | 30 ++++++++--------- examples/llama-bench/llama-bench.cpp | 4 +-- examples/llava/llava-utils.h | 2 +- examples/main/main.cpp | 8 ++--- examples/parallel/parallel.cpp | 2 +- examples/perplexity/perplexity.cpp | 4 +-- examples/server/server.cpp | 14 ++++---- examples/simple/simple.cpp | 2 +- examples/speculative/speculative.cpp | 2 +- llama.cpp | 49 ++++++++++++++-------------- llama.h | 21 ++++++------ 16 files changed, 81 insertions(+), 79 deletions(-) diff --git a/common/common.cpp b/common/common.cpp index bbd1518ca..44bb76618 100644 --- a/common/common.cpp +++ b/common/common.cpp @@ -880,13 +880,13 @@ std::tuple llama_init_from_gpt_par } if (params.ignore_eos) { - params.sparams.logit_bias[llama_token_eos(lctx)] = -INFINITY; + params.sparams.logit_bias[llama_token_eos(model)] = -INFINITY; } { LOG("warming up the model with an empty run\n"); - std::vector tmp = { llama_token_bos(lctx), llama_token_eos(lctx), }; + std::vector tmp = { llama_token_bos(model), llama_token_eos(model), }; llama_decode(lctx, llama_batch_get_one(tmp.data(), std::min(tmp.size(), (size_t) params.n_batch), 0, 0)); llama_kv_cache_tokens_rm(lctx, -1, -1); llama_reset_timings(lctx); @@ -941,7 +941,7 @@ std::string llama_token_to_piece(const struct llama_context * ctx, llama_token t } std::string llama_detokenize_spm(llama_context * ctx, const std::vector & tokens) { - const llama_token bos_id = llama_token_bos(ctx); + const llama_token bos_id = llama_token_bos(llama_get_model(ctx)); std::string piece; std::string result; @@ -1186,7 +1186,7 @@ void dump_non_result_info_yaml(FILE * stream, const gpt_params & params, const l fprintf(stream, "hellaswag: %s # default: false\n", params.hellaswag ? "true" : "false"); fprintf(stream, "hellaswag_tasks: %zu # default: 400\n", params.hellaswag_tasks); - const auto logit_bias_eos = sparams.logit_bias.find(llama_token_eos(lctx)); + const auto logit_bias_eos = sparams.logit_bias.find(llama_token_eos(llama_get_model(lctx))); const bool ignore_eos = logit_bias_eos != sparams.logit_bias.end() && logit_bias_eos->second == -INFINITY; fprintf(stream, "ignore_eos: %s # default: false\n", ignore_eos ? "true" : "false"); diff --git a/common/sampling.cpp b/common/sampling.cpp index 6f0af3c4a..5258d4e82 100644 --- a/common/sampling.cpp +++ b/common/sampling.cpp @@ -147,7 +147,7 @@ llama_token llama_sampling_sample( // apply penalties if (!prev.empty()) { - const float nl_logit = logits[llama_token_nl(ctx_main)]; + const float nl_logit = logits[llama_token_nl(llama_get_model(ctx_main))]; llama_sample_repetition_penalties(ctx_main, &cur_p, prev.data() + prev.size() - penalty_last_n, @@ -155,7 +155,7 @@ llama_token llama_sampling_sample( if (!penalize_nl) { for (size_t idx = 0; idx < cur_p.size; idx++) { - if (cur_p.data[idx].id == llama_token_nl(ctx_main)) { + if (cur_p.data[idx].id == llama_token_nl(llama_get_model(ctx_main))) { cur_p.data[idx].logit = nl_logit; break; } diff --git a/common/train.cpp b/common/train.cpp index 154ca56e5..3cce5da26 100644 --- a/common/train.cpp +++ b/common/train.cpp @@ -236,8 +236,8 @@ int64_t get_example_targets_batch( int64_t used_samples = 0; ggml_set_f32(target_probs, 0.0f); - llama_token bos = llama_token_bos(lctx); - llama_token eos = llama_token_eos(lctx); + llama_token bos = llama_token_bos(llama_get_model(lctx)); + llama_token eos = llama_token_eos(llama_get_model(lctx)); // printf("%s: example_id=%d n_batch=%d n_train_samples=%zu\n", __func__, example_id, n_batch, n_train_samples); for (int k=0; k mark the stream as finished - if (new_token_id == llama_token_eos(ctx) || n_cur == n_len) { + if (new_token_id == llama_token_eos(model) || n_cur == n_len) { i_batch[i] = -1; LOG_TEE("\n"); if (n_parallel > 1) { diff --git a/examples/beam-search/beam-search.cpp b/examples/beam-search/beam-search.cpp index f078ab8a8..679b382e1 100644 --- a/examples/beam-search/beam-search.cpp +++ b/examples/beam-search/beam-search.cpp @@ -47,7 +47,7 @@ struct beam_search_callback_data { // In this case, end-of-beam (eob) is equivalent to end-of-sentence (eos) but this need not always be the same. // For example, eob can be flagged due to maximum token length, stop words, etc. static bool is_at_eob(const beam_search_callback_data & callback_data, const llama_token * tokens, size_t n_tokens) { - return n_tokens && tokens[n_tokens-1] == llama_token_eos(callback_data.ctx); + return n_tokens && tokens[n_tokens-1] == llama_token_eos(llama_get_model(callback_data.ctx)); } // Function matching type llama_beam_search_callback_fn_t. diff --git a/examples/infill/infill.cpp b/examples/infill/infill.cpp index 6331335e3..9c52b7bba 100644 --- a/examples/infill/infill.cpp +++ b/examples/infill/infill.cpp @@ -246,14 +246,14 @@ int main(int argc, char ** argv) { if (suff_rm_leading_spc && inp_sfx[0] == space_token) { inp_sfx.erase(inp_sfx.begin()); } - inp_pfx.insert(inp_pfx.begin(), llama_token_prefix(ctx)); + inp_pfx.insert(inp_pfx.begin(), llama_token_prefix(model)); if (add_bos) { - inp_pfx.insert(inp_pfx.begin(), llama_token_bos(ctx)); + inp_pfx.insert(inp_pfx.begin(), llama_token_bos(model)); } - inp_sfx.insert(inp_sfx.begin(), llama_token_suffix(ctx)); + inp_sfx.insert(inp_sfx.begin(), llama_token_suffix(model)); embd_inp = inp_pfx; embd_inp.insert(embd_inp.end(), inp_sfx.begin(), inp_sfx.end()); - embd_inp.push_back(llama_token_middle(ctx)); + embd_inp.push_back(llama_token_middle(model)); LOG("prefix: \"%s\"\n", log_tostr(params.input_prefix)); LOG("suffix: \"%s\"\n", log_tostr(params.input_suffix)); @@ -261,7 +261,7 @@ int main(int argc, char ** argv) { // Should not run without any tokens if (embd_inp.empty()) { - embd_inp.push_back(llama_token_bos(ctx)); + embd_inp.push_back(llama_token_bos(model)); LOG("embd_inp was considered empty and bos was added: %s\n", LOG_TOKENS_TOSTR_PRETTY(ctx, embd_inp).c_str()); } @@ -577,10 +577,10 @@ int main(int argc, char ** argv) { if ((int) embd_inp.size() <= n_consumed) { // deal with eot token in infill mode - if ((llama_sampling_last(ctx_sampling) == llama_token_eot(ctx) || is_interacting) && params.interactive){ + if ((llama_sampling_last(ctx_sampling) == llama_token_eot(model) || is_interacting) && params.interactive){ if(is_interacting && !params.interactive_first) { // print an eot token - printf("%s", llama_token_to_piece(ctx, llama_token_eot(ctx)).c_str()); + printf("%s", llama_token_to_piece(ctx, llama_token_eot(model)).c_str()); } fflush(stdout); printf("\n"); @@ -627,14 +627,14 @@ int main(int argc, char ** argv) { if (suff_rm_leading_spc && inp_sfx[0] == space_token) { inp_sfx.erase(inp_sfx.begin()); } - inp_pfx.insert(inp_pfx.begin(), llama_token_prefix(ctx)); + inp_pfx.insert(inp_pfx.begin(), llama_token_prefix(model)); if (add_bos) { - inp_pfx.insert(inp_pfx.begin(), llama_token_bos(ctx)); + inp_pfx.insert(inp_pfx.begin(), llama_token_bos(model)); } - inp_sfx.insert(inp_sfx.begin(), llama_token_suffix(ctx)); + inp_sfx.insert(inp_sfx.begin(), llama_token_suffix(model)); embd_inp = inp_pfx; embd_inp.insert(embd_inp.end(), inp_sfx.begin(), inp_sfx.end()); - embd_inp.push_back(llama_token_middle(ctx)); + embd_inp.push_back(llama_token_middle(model)); embd.clear(); embd_guidance.clear(); n_remain = params.n_predict; @@ -644,7 +644,7 @@ int main(int argc, char ** argv) { is_interacting = false; } // deal with end of text token in interactive mode - else if (llama_sampling_last(ctx_sampling) == llama_token_eos(ctx)) { + else if (llama_sampling_last(ctx_sampling) == llama_token_eos(model)) { LOG("found EOS token\n"); if (params.interactive) { @@ -661,7 +661,7 @@ int main(int argc, char ** argv) { if (params.input_prefix_bos) { LOG("adding input prefix BOS token\n"); - embd_inp.push_back(llama_token_bos(ctx)); + embd_inp.push_back(llama_token_bos(model)); } std::string buffer; @@ -724,7 +724,7 @@ int main(int argc, char ** argv) { } // end of text token - if (!embd.empty() && embd.back() == llama_token_eos(ctx) && !params.interactive) { + if (!embd.empty() && embd.back() == llama_token_eos(model) && !params.interactive) { break; } @@ -736,7 +736,7 @@ int main(int argc, char ** argv) { } } if (!params.interactive && n_remain <= 0) { - printf("%s", llama_token_to_piece(ctx, llama_token_eot(ctx)).c_str()); + printf("%s", llama_token_to_piece(ctx, llama_token_eot(model)).c_str()); fflush(stdout); } diff --git a/examples/llama-bench/llama-bench.cpp b/examples/llama-bench/llama-bench.cpp index a04115c96..20767d555 100644 --- a/examples/llama-bench/llama-bench.cpp +++ b/examples/llama-bench/llama-bench.cpp @@ -933,7 +933,7 @@ struct sql_printer : public printer { }; static void test_prompt(llama_context * ctx, int n_prompt, int n_past, int n_batch, int n_threads) { - std::vector tokens(n_batch, llama_token_bos(ctx)); + std::vector tokens(n_batch, llama_token_bos(llama_get_model(ctx))); int n_processed = 0; llama_set_n_threads(ctx, n_threads, n_threads); @@ -946,7 +946,7 @@ static void test_prompt(llama_context * ctx, int n_prompt, int n_past, int n_bat } static void test_gen(llama_context * ctx, int n_gen, int n_past, int n_threads) { - llama_token token = llama_token_bos(ctx); + llama_token token = llama_token_bos(llama_get_model(ctx)); llama_set_n_threads(ctx, n_threads, n_threads); diff --git a/examples/llava/llava-utils.h b/examples/llava/llava-utils.h index 45b2b1ad3..320c71967 100644 --- a/examples/llava/llava-utils.h +++ b/examples/llava/llava-utils.h @@ -137,7 +137,7 @@ inline llama_token sample_id(llama_context * ctx_llama, gpt_params & params) { inline const char * sample(struct llama_context * ctx_llama, gpt_params & params, int * n_past) { int id = sample_id(ctx_llama, params); static std::string ret; - if (id == llama_token_eos(ctx_llama)) { + if (id == llama_token_eos(llama_get_model(ctx_llama))) { ret = ""; } else { ret = llama_token_to_piece(ctx_llama, id); diff --git a/examples/main/main.cpp b/examples/main/main.cpp index 2621bd539..3d9f670b9 100644 --- a/examples/main/main.cpp +++ b/examples/main/main.cpp @@ -248,7 +248,7 @@ int main(int argc, char ** argv) { // Should not run without any tokens if (embd_inp.empty()) { - embd_inp.push_back(llama_token_bos(ctx)); + embd_inp.push_back(llama_token_bos(model)); LOG("embd_inp was considered empty and bos was added: %s\n", LOG_TOKENS_TOSTR_PRETTY(ctx, embd_inp).c_str()); } @@ -693,7 +693,7 @@ int main(int argc, char ** argv) { } // deal with end of text token in interactive mode - if (llama_sampling_last(ctx_sampling) == llama_token_eos(ctx)) { + if (llama_sampling_last(ctx_sampling) == llama_token_eos(model)) { LOG("found EOS token\n"); if (params.interactive) { @@ -720,7 +720,7 @@ int main(int argc, char ** argv) { if (params.input_prefix_bos) { LOG("adding input prefix BOS token\n"); - embd_inp.push_back(llama_token_bos(ctx)); + embd_inp.push_back(llama_token_bos(model)); } std::string buffer; @@ -804,7 +804,7 @@ int main(int argc, char ** argv) { } // end of text token - if (!embd.empty() && embd.back() == llama_token_eos(ctx) && !(params.instruct || params.interactive)) { + if (!embd.empty() && embd.back() == llama_token_eos(model) && !(params.instruct || params.interactive)) { LOG_TEE(" [end of text]\n"); break; } diff --git a/examples/parallel/parallel.cpp b/examples/parallel/parallel.cpp index eb64adef8..9a0b9c183 100644 --- a/examples/parallel/parallel.cpp +++ b/examples/parallel/parallel.cpp @@ -347,7 +347,7 @@ int main(int argc, char ** argv) { // client.id, client.seq_id, id, client.n_decoded, client.i_batch, token_str.c_str()); if (client.n_decoded > 2 && - (id == llama_token_eos(ctx) || + (id == llama_token_eos(model) || (params.n_predict > 0 && client.n_decoded + client.n_prompt >= params.n_predict) || client.response.find("User:") != std::string::npos || client.response.find('\n') != std::string::npos)) { diff --git a/examples/perplexity/perplexity.cpp b/examples/perplexity/perplexity.cpp index 7d0038bd4..3c2542e8c 100644 --- a/examples/perplexity/perplexity.cpp +++ b/examples/perplexity/perplexity.cpp @@ -227,7 +227,7 @@ static results_perplexity perplexity_v2(llama_context * ctx, const gpt_params & // add BOS token for the first batch of each chunk if (add_bos && j == 0) { - tokens[batch_start] = llama_token_bos(ctx); + tokens[batch_start] = llama_token_bos(llama_get_model(ctx)); } const auto batch_logits = llama_get_logits(ctx); @@ -350,7 +350,7 @@ static results_perplexity perplexity(llama_context * ctx, const gpt_params & par // add BOS token for the first batch of each chunk if (add_bos && j == 0) { - tokens[batch_start] = llama_token_bos(ctx); + tokens[batch_start] = llama_token_bos(llama_get_model(ctx)); } if (llama_decode(ctx, llama_batch_get_one(tokens.data() + batch_start, batch_size, j * n_batch, 0))) { diff --git a/examples/server/server.cpp b/examples/server/server.cpp index c3279dbc9..693f9b773 100644 --- a/examples/server/server.cpp +++ b/examples/server/server.cpp @@ -726,7 +726,7 @@ struct llama_server_context if (json_value(data, "ignore_eos", false)) { - slot->sparams.logit_bias[llama_token_eos(ctx)] = -INFINITY; + slot->sparams.logit_bias[llama_token_eos(model)] = -INFINITY; } const auto &logit_bias = data.find("logit_bias"); @@ -1056,7 +1056,7 @@ struct llama_server_context slot.has_next_token = false; } - if (!slot.cache_tokens.empty() && result.tok == llama_token_eos(ctx)) + if (!slot.cache_tokens.empty() && result.tok == llama_token_eos(model)) { slot.stopped_eos = true; slot.has_next_token = false; @@ -1130,7 +1130,7 @@ struct llama_server_context json get_formated_generation(llama_client_slot &slot) { - const auto eos_bias = slot.sparams.logit_bias.find(llama_token_eos(ctx)); + const auto eos_bias = slot.sparams.logit_bias.find(llama_token_eos(model)); const bool ignore_eos = eos_bias != slot.sparams.logit_bias.end() && eos_bias->second < 0.0f && std::isinf(eos_bias->second); return json { @@ -1555,11 +1555,11 @@ struct llama_server_context suffix_tokens.erase(suffix_tokens.begin()); } - prefix_tokens.insert(prefix_tokens.begin(), llama_token_prefix(ctx)); - prefix_tokens.insert(prefix_tokens.begin(), llama_token_bos(ctx)); // always add BOS - prefix_tokens.insert(prefix_tokens.end(), llama_token_suffix(ctx)); + prefix_tokens.insert(prefix_tokens.begin(), llama_token_prefix(model)); + prefix_tokens.insert(prefix_tokens.begin(), llama_token_bos(model)); // always add BOS + prefix_tokens.insert(prefix_tokens.end(), llama_token_suffix(model)); prefix_tokens.insert(prefix_tokens.end(), suffix_tokens.begin(), suffix_tokens.end()); - prefix_tokens.push_back(llama_token_middle(ctx)); + prefix_tokens.push_back(llama_token_middle(model)); prompt_tokens = prefix_tokens; } else diff --git a/examples/simple/simple.cpp b/examples/simple/simple.cpp index 55385f566..f376c0509 100644 --- a/examples/simple/simple.cpp +++ b/examples/simple/simple.cpp @@ -138,7 +138,7 @@ int main(int argc, char ** argv) { const llama_token new_token_id = llama_sample_token_greedy(ctx, &candidates_p); // is it an end of stream? - if (new_token_id == llama_token_eos(ctx) || n_cur == n_len) { + if (new_token_id == llama_token_eos(model) || n_cur == n_len) { LOG_TEE("\n"); break; diff --git a/examples/speculative/speculative.cpp b/examples/speculative/speculative.cpp index 894321ce9..92ad27e8e 100644 --- a/examples/speculative/speculative.cpp +++ b/examples/speculative/speculative.cpp @@ -163,7 +163,7 @@ int main(int argc, char ** argv) { printf("%s", token_str.c_str()); fflush(stdout); - if (id == llama_token_eos(ctx_tgt)) { + if (id == llama_token_eos(model_tgt)) { has_eos = true; } diff --git a/llama.cpp b/llama.cpp index c63e6251c..61f30c398 100644 --- a/llama.cpp +++ b/llama.cpp @@ -7493,7 +7493,7 @@ void llama_sample_grammar(struct llama_context * ctx, llama_token_data_array * c } } - const llama_token eos = llama_token_eos(ctx); + const llama_token eos = llama_token_eos(&ctx->model); std::vector, llama_partial_utf8>> candidates_decoded; std::vector candidates_grammar; @@ -7703,7 +7703,7 @@ llama_token llama_sample_token(struct llama_context * ctx, llama_token_data_arra void llama_grammar_accept_token(struct llama_context * ctx, struct llama_grammar * grammar, llama_token token) { const int64_t t_start_sample_us = ggml_time_us(); - if (token == llama_token_eos(ctx)) { + if (token == llama_token_eos(&ctx->model)) { for (const auto & stack : grammar->stacks) { if (stack.empty()) { return; @@ -8912,7 +8912,7 @@ struct llama_context * llama_new_context_with_model( // build worst-case graph int n_tokens = (int)std::min(cparams.n_ctx, cparams.n_batch); int n_past = cparams.n_ctx - n_tokens; - llama_token token = llama_token_bos(ctx); // not actually used by llama_build_graph, but required to choose between token and embedding inputs graph + llama_token token = llama_token_bos(&ctx->model); // not actually used by llama_build_graph, but required to choose between token and embedding inputs graph ggml_cgraph * gf = llama_build_graph(*ctx, llama_batch_get_one(&token, n_tokens, n_past, 0)); #ifdef GGML_USE_METAL @@ -9673,43 +9673,44 @@ float * llama_get_embeddings(struct llama_context * ctx) { return ctx->embedding.data(); } -const char * llama_token_get_text(const struct llama_context * ctx, llama_token token) { - return ctx->model.vocab.id_to_token[token].text.c_str(); +const char * llama_token_get_text(const struct llama_model * model, llama_token token) { + return model->vocab.id_to_token[token].text.c_str(); } -float llama_token_get_score(const struct llama_context * ctx, llama_token token) { - return ctx->model.vocab.id_to_token[token].score; +float llama_token_get_score(const struct llama_model * model, llama_token token) { + return model->vocab.id_to_token[token].score; } -llama_token_type llama_token_get_type(const struct llama_context * ctx, llama_token token) { - return ctx->model.vocab.id_to_token[token].type; +llama_token_type llama_token_get_type(const struct llama_model * model, llama_token token) { + return model->vocab.id_to_token[token].type; } -llama_token llama_token_bos(const struct llama_context * ctx) { - return ctx->model.vocab.special_bos_id; +llama_token llama_token_bos(const struct llama_model * model) { + return model->vocab.special_bos_id; } -llama_token llama_token_eos(const struct llama_context * ctx) { - return ctx->model.vocab.special_eos_id; +llama_token llama_token_eos(const struct llama_model * model) { + return model->vocab.special_eos_id; } -llama_token llama_token_nl(const struct llama_context * ctx) { - return ctx->model.vocab.linefeed_id; -} -llama_token llama_token_prefix(const struct llama_context * ctx) { - return ctx->model.vocab.special_prefix_id; +llama_token llama_token_nl(const struct llama_model * model) { + return model->vocab.linefeed_id; } -llama_token llama_token_middle(const struct llama_context * ctx) { - return ctx->model.vocab.special_middle_id; +llama_token llama_token_prefix(const struct llama_model * model) { + return model->vocab.special_prefix_id; } -llama_token llama_token_suffix(const struct llama_context * ctx) { - return ctx->model.vocab.special_suffix_id; +llama_token llama_token_middle(const struct llama_model * model) { + return model->vocab.special_middle_id; } -llama_token llama_token_eot(const struct llama_context * ctx) { - return ctx->model.vocab.special_eot_id; +llama_token llama_token_suffix(const struct llama_model * model) { + return model->vocab.special_suffix_id; +} + +llama_token llama_token_eot(const struct llama_model * model) { + return model->vocab.special_eot_id; } int llama_tokenize( diff --git a/llama.h b/llama.h index 306f5b383..2f2fee0e2 100644 --- a/llama.h +++ b/llama.h @@ -494,21 +494,22 @@ extern "C" { // Vocab // - LLAMA_API const char * llama_token_get_text(const struct llama_context * ctx, llama_token token); + LLAMA_API const char * llama_token_get_text(const struct llama_model * model, llama_token token); - LLAMA_API float llama_token_get_score(const struct llama_context * ctx, llama_token token); + LLAMA_API float llama_token_get_score(const struct llama_model * model, llama_token token); - LLAMA_API enum llama_token_type llama_token_get_type(const struct llama_context * ctx, llama_token token); + LLAMA_API enum llama_token_type llama_token_get_type(const struct llama_model * model, llama_token token); // Special tokens - LLAMA_API llama_token llama_token_bos(const struct llama_context * ctx); // beginning-of-sentence - LLAMA_API llama_token llama_token_eos(const struct llama_context * ctx); // end-of-sentence - LLAMA_API llama_token llama_token_nl (const struct llama_context * ctx); // next-line + LLAMA_API llama_token llama_token_bos(const struct llama_model * model); // beginning-of-sentence + LLAMA_API llama_token llama_token_eos(const struct llama_model * model); // end-of-sentence + LLAMA_API llama_token llama_token_nl (const struct llama_model * model); // next-line + // codellama infill tokens - LLAMA_API llama_token llama_token_prefix(const struct llama_context * ctx); // Beginning of infill prefix - LLAMA_API llama_token llama_token_middle(const struct llama_context * ctx); // Beginning of infill middle - LLAMA_API llama_token llama_token_suffix(const struct llama_context * ctx); // Beginning of infill suffix - LLAMA_API llama_token llama_token_eot (const struct llama_context * ctx); // End of infill middle + LLAMA_API llama_token llama_token_prefix(const struct llama_model * model); // Beginning of infill prefix + LLAMA_API llama_token llama_token_middle(const struct llama_model * model); // Beginning of infill middle + LLAMA_API llama_token llama_token_suffix(const struct llama_model * model); // Beginning of infill suffix + LLAMA_API llama_token llama_token_eot (const struct llama_model * model); // End of infill middle // // Tokenization From 69a6735087c3634963c642fd69f0851ac479cd78 Mon Sep 17 00:00:00 2001 From: Galunid Date: Mon, 23 Oct 2023 21:46:00 +0200 Subject: [PATCH 37/48] Update special token handling in conversion scripts for gpt2 derived tokenizers (#3746) We still have the heads up in `README.md` regarding `bpe` tokenizers and this patch is needed for - a couple of tokenizer tests - some more `special` and `non-special` added tokens handling (as far as I understand it) * Update special token handling * Add mpt --- convert-bloom-hf-to-gguf.py | 17 +++++++++++++---- convert-gptneox-hf-to-gguf.py | 17 +++++++++++++---- convert-mpt-hf-to-gguf.py | 6 ++++-- convert-refact-hf-to-gguf.py | 17 +++++++++++++---- convert-starcoder-hf-to-gguf.py | 18 +++++++++++++----- 5 files changed, 56 insertions(+), 19 deletions(-) diff --git a/convert-bloom-hf-to-gguf.py b/convert-bloom-hf-to-gguf.py index 14dbd793c..6e866d943 100755 --- a/convert-bloom-hf-to-gguf.py +++ b/convert-bloom-hf-to-gguf.py @@ -118,15 +118,24 @@ tokenizer = AutoTokenizer.from_pretrained(dir_model) vocab_size = hparams.get("vocab_size", len(tokenizer.vocab)) assert max(tokenizer.vocab.values()) < vocab_size +added_vocab = tokenizer.get_added_vocab() reverse_vocab = {id: encoded_tok for encoded_tok, id in tokenizer.vocab.items()} for i in range(vocab_size): - tokens.append(reverse_vocab[i] if i in reverse_vocab else f"[PAD{i}]") - scores.append(0.0) # dummy - toktypes.append(gguf.TokenType.NORMAL) + if i not in reverse_vocab: + tokens.append(f"[PAD{i}]") + toktypes.append(gguf.TokenType.USER_DEFINED) + elif reverse_vocab[i] in added_vocab: + tokens.append(reverse_vocab[i]) + if tokenizer.added_tokens_decoder[i].special: + toktypes.append(gguf.TokenType.CONTROL) + else: + toktypes.append(gguf.TokenType.USER_DEFINED) + else: + tokens.append(reverse_vocab[i]) + toktypes.append(gguf.TokenType.NORMAL) gguf_writer.add_token_list(tokens) -gguf_writer.add_token_scores(scores) gguf_writer.add_token_types(toktypes) special_vocab = gguf.SpecialVocab(dir_model, load_merges=True, n_vocab = len(tokens)) diff --git a/convert-gptneox-hf-to-gguf.py b/convert-gptneox-hf-to-gguf.py index f1599b0c4..02d1fdf16 100755 --- a/convert-gptneox-hf-to-gguf.py +++ b/convert-gptneox-hf-to-gguf.py @@ -123,15 +123,24 @@ tokenizer = AutoTokenizer.from_pretrained(dir_model) vocab_size = hparams.get("vocab_size", len(tokenizer.vocab)) assert max(tokenizer.vocab.values()) < vocab_size +added_vocab = tokenizer.get_added_vocab() reverse_vocab = {id: encoded_tok for encoded_tok, id in tokenizer.vocab.items()} for i in range(vocab_size): - tokens.append(reverse_vocab[i] if i in reverse_vocab else f"[PAD{i}]") - scores.append(0.0) # dummy - toktypes.append(gguf.TokenType.NORMAL) + if i not in reverse_vocab: + tokens.append(f"[PAD{i}]") + toktypes.append(gguf.TokenType.USER_DEFINED) + elif reverse_vocab[i] in added_vocab: + tokens.append(reverse_vocab[i]) + if tokenizer.added_tokens_decoder[i].special: + toktypes.append(gguf.TokenType.CONTROL) + else: + toktypes.append(gguf.TokenType.USER_DEFINED) + else: + tokens.append(reverse_vocab[i]) + toktypes.append(gguf.TokenType.NORMAL) gguf_writer.add_token_list(tokens) -gguf_writer.add_token_scores(scores) gguf_writer.add_token_types(toktypes) special_vocab = gguf.SpecialVocab(dir_model, load_merges = True, n_vocab = len(tokens)) diff --git a/convert-mpt-hf-to-gguf.py b/convert-mpt-hf-to-gguf.py index 2d2fa2329..70d154b3f 100755 --- a/convert-mpt-hf-to-gguf.py +++ b/convert-mpt-hf-to-gguf.py @@ -136,9 +136,11 @@ for i in range(vocab_size): tokens.append(f"[PAD{i}]") toktypes.append(gguf.TokenType.USER_DEFINED) elif reverse_vocab[i] in added_vocab: - # NOTE: wouldn't we like to distinguish CONTROL tokens here? tokens.append(reverse_vocab[i]) - toktypes.append(gguf.TokenType.USER_DEFINED) + if tokenizer.added_tokens_decoder[i].special: + toktypes.append(gguf.TokenType.CONTROL) + else: + toktypes.append(gguf.TokenType.USER_DEFINED) else: tokens.append(reverse_vocab[i]) toktypes.append(gguf.TokenType.NORMAL) diff --git a/convert-refact-hf-to-gguf.py b/convert-refact-hf-to-gguf.py index 934f3852b..f0cfe84d8 100755 --- a/convert-refact-hf-to-gguf.py +++ b/convert-refact-hf-to-gguf.py @@ -139,15 +139,24 @@ tokenizer = AutoTokenizer.from_pretrained(dir_model) vocab_size = hparams.get("vocab_size", len(tokenizer.vocab)) assert max(tokenizer.vocab.values()) < vocab_size +added_vocab = tokenizer.get_added_vocab() reverse_vocab = {id: encoded_tok for encoded_tok, id in tokenizer.vocab.items()} for i in range(vocab_size): - tokens.append(reverse_vocab[i] if i in reverse_vocab else f"[PAD{i}]") - scores.append(0.0) # dummy - toktypes.append(gguf.TokenType.NORMAL) + if i not in reverse_vocab: + tokens.append(f"[PAD{i}]") + toktypes.append(gguf.TokenType.USER_DEFINED) + elif reverse_vocab[i] in added_vocab: + tokens.append(reverse_vocab[i]) + if tokenizer.added_tokens_decoder[i].special: + toktypes.append(gguf.TokenType.CONTROL) + else: + toktypes.append(gguf.TokenType.USER_DEFINED) + else: + tokens.append(reverse_vocab[i]) + toktypes.append(gguf.TokenType.NORMAL) gguf_writer.add_token_list(tokens) -gguf_writer.add_token_scores(scores) gguf_writer.add_token_types(toktypes) special_vocab = gguf.SpecialVocab(dir_model, load_merges=True, n_vocab = len(tokens)) diff --git a/convert-starcoder-hf-to-gguf.py b/convert-starcoder-hf-to-gguf.py index fe8815cbf..a9bfed85e 100755 --- a/convert-starcoder-hf-to-gguf.py +++ b/convert-starcoder-hf-to-gguf.py @@ -111,17 +111,25 @@ tokenizer = AutoTokenizer.from_pretrained(dir_model) vocab_size = hparams.get("vocab_size", len(tokenizer.vocab)) assert max(tokenizer.vocab.values()) < vocab_size +added_vocab = tokenizer.get_added_vocab() reverse_vocab = {id: encoded_tok for encoded_tok, id in tokenizer.vocab.items()} for i in range(vocab_size): - tokens.append(reverse_vocab[i] if i in reverse_vocab else f"[PAD{i}]") - scores.append(0.0) # dummy - toktypes.append(gguf.TokenType.NORMAL) + if i not in reverse_vocab: + tokens.append(f"[PAD{i}]") + toktypes.append(gguf.TokenType.USER_DEFINED) + elif reverse_vocab[i] in added_vocab: + tokens.append(reverse_vocab[i]) + if tokenizer.added_tokens_decoder[i].special: + toktypes.append(gguf.TokenType.CONTROL) + else: + toktypes.append(gguf.TokenType.USER_DEFINED) + else: + tokens.append(reverse_vocab[i]) + toktypes.append(gguf.TokenType.NORMAL) gguf_writer.add_token_list(tokens) -gguf_writer.add_token_scores(scores) gguf_writer.add_token_types(toktypes) - special_vocab = gguf.SpecialVocab(dir_model, load_merges = True, n_vocab = len(tokens)) special_vocab.add_to_gguf(gguf_writer) From 9d02956443e5c1ded29b7b5ed8a21bc01ba6f563 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?M=2E=20Yusuf=20Sar=C4=B1g=C3=B6z?= Date: Mon, 23 Oct 2023 22:57:16 +0300 Subject: [PATCH 38/48] issues : separate bug and enhancement template + no default title (#3748) --- .github/ISSUE_TEMPLATE/{custom.md => bug.md} | 9 +++---- .github/ISSUE_TEMPLATE/enhancement.md | 28 ++++++++++++++++++++ 2 files changed, 32 insertions(+), 5 deletions(-) rename .github/ISSUE_TEMPLATE/{custom.md => bug.md} (96%) create mode 100644 .github/ISSUE_TEMPLATE/enhancement.md diff --git a/.github/ISSUE_TEMPLATE/custom.md b/.github/ISSUE_TEMPLATE/bug.md similarity index 96% rename from .github/ISSUE_TEMPLATE/custom.md rename to .github/ISSUE_TEMPLATE/bug.md index 8fd955356..d7879b232 100644 --- a/.github/ISSUE_TEMPLATE/custom.md +++ b/.github/ISSUE_TEMPLATE/bug.md @@ -1,8 +1,7 @@ --- -name: Issue and enhancement template -about: Used to report issues and request enhancements for llama.cpp -title: "[User] Insert summary of your issue or enhancement.." -labels: '' +name: Bug template +about: Used to report bugs in llama.cpp +labels: ["bug"] assignees: '' --- @@ -46,7 +45,7 @@ $ g++ --version # Failure Information (for bugs) -Please help provide information about the failure if this is a bug. If it is not a bug, please remove the rest of this template. +Please help provide information about the failure / bug. # Steps to Reproduce diff --git a/.github/ISSUE_TEMPLATE/enhancement.md b/.github/ISSUE_TEMPLATE/enhancement.md new file mode 100644 index 000000000..dcffda750 --- /dev/null +++ b/.github/ISSUE_TEMPLATE/enhancement.md @@ -0,0 +1,28 @@ +--- +name: Enhancement template +about: Used to request enhancements for llama.cpp +labels: ["enhancement"] +assignees: '' + +--- + +# Prerequisites + +Please answer the following questions for yourself before submitting an issue. + +- [ ] I am running the latest code. Development is very rapid so there are no tagged versions as of now. +- [ ] I carefully followed the [README.md](https://github.com/ggerganov/llama.cpp/blob/master/README.md). +- [ ] I [searched using keywords relevant to my issue](https://docs.github.com/en/issues/tracking-your-work-with-issues/filtering-and-searching-issues-and-pull-requests) to make sure that I am creating a new issue that is not already open (or closed). +- [ ] I reviewed the [Discussions](https://github.com/ggerganov/llama.cpp/discussions), and have a new bug or useful enhancement to share. + +# Feature Description + +Please provide a detailed written description of what you were trying to do, and what you expected `llama.cpp` to do as an enhancement. + +# Motivation + +Please provide a detailed written description of reasons why this feature is necessary and how it is useful to `llama.cpp` users. + +# Possible Implementation + +If you have an idea as to how it can be implemented, please write a detailed description. Feel free to give links to external sources or share visuals that might be helpful to understand the details better. From e3932593d46c30145301a13097895f9376cba509 Mon Sep 17 00:00:00 2001 From: Georgi Gerganov Date: Mon, 23 Oct 2023 23:46:05 +0300 Subject: [PATCH 39/48] Revert "make : add optional CUDA_NATIVE_ARCH (#2482)" This reverts commit 96981f37b1e3f450d9e63e571514217bf60f0a7f. See: https://github.com/ggerganov/llama.cpp/pull/2482#issuecomment-1775975866 --- Makefile | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) diff --git a/Makefile b/Makefile index 705c4acb4..80179631f 100644 --- a/Makefile +++ b/Makefile @@ -391,12 +391,9 @@ else endif #LLAMA_CUDA_NVCC ifdef CUDA_DOCKER_ARCH NVCCFLAGS += -Wno-deprecated-gpu-targets -arch=$(CUDA_DOCKER_ARCH) -endif # CUDA_DOCKER_ARCH -ifdef CUDA_NATIVE_ARCH - NVCCFLAGS += -arch=$(CUDA_NATIVE_ARCH) else NVCCFLAGS += -arch=native -endif # CUDA_NATIVE_ARCH +endif # CUDA_DOCKER_ARCH ifdef LLAMA_CUDA_FORCE_DMMV NVCCFLAGS += -DGGML_CUDA_FORCE_DMMV endif # LLAMA_CUDA_FORCE_DMMV From 469c9addef75893e6be12edda852d12e840bf064 Mon Sep 17 00:00:00 2001 From: Georgi Gerganov Date: Tue, 24 Oct 2023 09:46:50 +0300 Subject: [PATCH 40/48] metal : handle ggml_scale for n%4 != 0 (close #3754) ggml-ci --- ggml-metal.m | 18 +++++++++++++----- ggml-metal.metal | 10 +++++++++- 2 files changed, 22 insertions(+), 6 deletions(-) diff --git a/ggml-metal.m b/ggml-metal.m index c908106be..c1901dca7 100644 --- a/ggml-metal.m +++ b/ggml-metal.m @@ -62,6 +62,7 @@ struct ggml_metal_context { GGML_METAL_DECL_KERNEL(mul); GGML_METAL_DECL_KERNEL(mul_row); // TODO: avoid this extra kernel, instead extend the "mul" kernel to support broadcast GGML_METAL_DECL_KERNEL(scale); + GGML_METAL_DECL_KERNEL(scale_4); GGML_METAL_DECL_KERNEL(silu); GGML_METAL_DECL_KERNEL(relu); GGML_METAL_DECL_KERNEL(gelu); @@ -249,6 +250,7 @@ struct ggml_metal_context * ggml_metal_init(int n_cb) { GGML_METAL_ADD_KERNEL(mul); GGML_METAL_ADD_KERNEL(mul_row); GGML_METAL_ADD_KERNEL(scale); + GGML_METAL_ADD_KERNEL(scale_4); GGML_METAL_ADD_KERNEL(silu); GGML_METAL_ADD_KERNEL(relu); GGML_METAL_ADD_KERNEL(gelu); @@ -347,6 +349,7 @@ void ggml_metal_free(struct ggml_metal_context * ctx) { GGML_METAL_DEL_KERNEL(mul); GGML_METAL_DEL_KERNEL(mul_row); GGML_METAL_DEL_KERNEL(scale); + GGML_METAL_DEL_KERNEL(scale_4); GGML_METAL_DEL_KERNEL(silu); GGML_METAL_DEL_KERNEL(relu); GGML_METAL_DEL_KERNEL(gelu); @@ -923,15 +926,20 @@ void ggml_metal_graph_compute( const float scale = *(const float *) src1->data; - [encoder setComputePipelineState:ctx->pipeline_scale]; + int64_t n = ggml_nelements(dst); + + if (n % 4 == 0) { + n /= 4; + [encoder setComputePipelineState:ctx->pipeline_scale_4]; + } else { + [encoder setComputePipelineState:ctx->pipeline_scale]; + } + [encoder setBuffer:id_src0 offset:offs_src0 atIndex:0]; [encoder setBuffer:id_dst offset:offs_dst atIndex:1]; [encoder setBytes:&scale length:sizeof(scale) atIndex:2]; - const int64_t n = ggml_nelements(dst); - GGML_ASSERT(n % 4 == 0); - - [encoder dispatchThreadgroups:MTLSizeMake(n/4, 1, 1) threadsPerThreadgroup:MTLSizeMake(1, 1, 1)]; + [encoder dispatchThreadgroups:MTLSizeMake(n, 1, 1) threadsPerThreadgroup:MTLSizeMake(1, 1, 1)]; } break; case GGML_OP_UNARY: switch (ggml_get_unary_op(gf->nodes[i])) { diff --git a/ggml-metal.metal b/ggml-metal.metal index 69fc71362..f4b460564 100644 --- a/ggml-metal.metal +++ b/ggml-metal.metal @@ -125,9 +125,17 @@ kernel void kernel_mul_row( } kernel void kernel_scale( + device const float * src0, + device float * dst, + constant float & scale, + uint tpig[[thread_position_in_grid]]) { + dst[tpig] = src0[tpig] * scale; +} + +kernel void kernel_scale_4( device const float4 * src0, device float4 * dst, - constant float & scale, + constant float & scale, uint tpig[[thread_position_in_grid]]) { dst[tpig] = src0[tpig] * scale; } From daab3d7f45832e10773c99f3484b0d5b14d86c0c Mon Sep 17 00:00:00 2001 From: Galunid Date: Tue, 24 Oct 2023 09:17:17 +0200 Subject: [PATCH 41/48] Add more tokenizer tests (#3742) * Add more tokenizer tests * Add starcoder * Update test vocab files * Restrict bpe tokenizer tests to unicode planes * Update comment * Comment cosmetics * Remove bloom vocab/test --- models/ggml-vocab-baichuan.gguf | Bin 0 -> 1340998 bytes models/ggml-vocab-gpt-neox.gguf | Bin 0 -> 1771431 bytes models/ggml-vocab-refact.gguf | Bin 0 -> 1720666 bytes models/ggml-vocab-starcoder.gguf | Bin 0 -> 1719281 bytes tests/CMakeLists.txt | 4 ++++ tests/test-tokenizer-1-bpe.cpp | 15 ++++++++++++--- 6 files changed, 16 insertions(+), 3 deletions(-) create mode 100644 models/ggml-vocab-baichuan.gguf create mode 100644 models/ggml-vocab-gpt-neox.gguf create mode 100644 models/ggml-vocab-refact.gguf create mode 100644 models/ggml-vocab-starcoder.gguf diff --git a/models/ggml-vocab-baichuan.gguf b/models/ggml-vocab-baichuan.gguf new file mode 100644 index 0000000000000000000000000000000000000000..7caaf8239b052b1fc2f2b74441fe377a73758bd1 GIT binary patch literal 1340998 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%0Df9CiGWSWvwKRA0MzUTq99}Y! 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μTLDX)J&O=- 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�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 z2BLvzAR34UqJd~28i)p>foLEahz6p8XdoJh2BLvzAR34UqJd~28i)p>foLEahz6p8 zXdoJh2BLvzAR34UqJd~28i)p>foLEahz6p8XdoJh2BLvzAR34UqJd~28i)p>foLEa zhz6p8XdoJh2BLvzAR34UqJd~28i)p>foLEahz6p8XdoJh2BLvzAR34UqJd~28i)p> zfoLEahz6p8XdoJh2BLvzAR34UqJd~28i)p>foLEahz6p8XdoJh2BLvzAR34UqJd~2 z8i)p>foLEahz6p8XdoJh2BLvzAR34UqJd~28i)p>foLEahz6p8XdoJh2BLvzAR34U zqJd~28i)p>foLEahz6p8XdoJh2BLvzAR34UqJd~28i)p>foLEahz6p8XdoJh2BLvz zAR34UqJd~28i)p>foLEahz6p8XdoJh2BLvzAR34UqJd~28i)p>foLEahz6p8XdoJh z2BLvzAR34UqJd~28i)p>foLEahz6p8XdoJh2BLvzAR34UqJd~28i)p>foLEahz6p8 zXdoJh2BLvzAR34UqJd~28i)p>foLEahz6p8XdoJh2BLvzAR34UqJd~28i)p>foLEa zhz6p8XdoJh2BLvzAR34UqJd~28i)p>foLEahz6p8XdoJh2BLvzAR34UqJd~28i)p> zfoLEahz6p8XdoJh2BLvzAR34UqJd~28i)p>foLEahz6p8XdoJh2BLvzAR34UqJd~2 z8i)p>foLEahz6p8XdoJh2BLvzAR34UqJd~28i)p>foLEahz6p8XdoJh2BLvzAR34U zqJd~28i)p>foLEahz6p8XdoJh2BLvzAR34UqJd~28i)p>foLEahz6p8XdoJh2BLvz zAR34UqJd~28i)p>foLEahz6p8XdoJh2BLvzAR34UqJd~28i)p>foLEahz6p8XdoJh z2BLvzAR34UqJd~28i)p>foLEahz6p8XdoJh2BLvzAR34UqJd~28i)p>foLEahz6p8 zXdoJh2BLvzAR34UqJd~28i)p>foLEahz6p8XdoJh2BLvzAR34UqJd~28i)p>foLEa zhz6p8XdoJh2BLvzAR34UqJd~28i)p>foLEahz6p8XdoJh2BLvzAR34UqJd~28i)p> zfoLEahz6p8XdoJh2BLvzAR34UqJd~28i)p>foLEahz6p8XdoJh2BLvzAR34UqJd~2 z8i)p>foLEahz6p8XdoJh2BLvzAR34UqJd~28i)p>foLEahz6p8XdoJh2BLvzAR34U zqJd~28i)p>foLEahz6p8XdoJh2BLvzAR34UqJd~28i)p>foLEahz6p8XdoJh2BLvz zAR34UqJd~28i)p>foLEahz6p8XdoJh2BLvzAR34UqJd~28i)p>foLEahz6p8XdoJh z2BLvzAR34UqJd~28i)p>foLEahz6p8XdoJh2BLvzAR34UqJd~28i)p>foLEahz6p8 zXdoJh2BLvzAR34UqJd~28i)p>foLEahz6p8XdoJh2BLvzAR34UqJd~28i)p>foLEa zhz6p8XdoJh2L8V`kUqixdJP@Wr(6GCqq_~x-=jyrzWF;37}DW?e$=5?*ThczkK6sf j9PRf1IGWJWjQ{JV3H~2<9oVUB*Ixa5{NL{UKTiIikumof literal 0 HcmV?d00001 diff --git a/models/ggml-vocab-gpt-neox.gguf b/models/ggml-vocab-gpt-neox.gguf new file mode 100644 index 0000000000000000000000000000000000000000..b9af16845ccb4d4888c15f1293b1f47291928412 GIT binary patch literal 1771431 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¨w^u|SfVLV2eQ+VbduRirHeG>qaq0wXdED4SxrUcG?CO`_Bd2hL%(2q zR&~)3l2M%1+l}*~d6fJ@GFk@*!mOkkr?SfFN!wgEVY;Rza7(O_(vgJp%=yQs=X88l zD@dl|x#74(j^!;w$YTUE#2`3gk6bknbNdHo1sX3Elae*k)O;q<7Tx-->iZ_E8uN+Hpu?eu#dln2^W#-HPtBfq4;6s@2D&kGIufgN0($t;|)Gxs{$? zbxe=pcTpG3g!l)#XhV(0+|H>RU4gR14UqpnD}=mj-Bj|2Q&lVAD!=O9aEF%i zF?yp@UW`vay!iVkADIr2K~;aeXoOQcc14Z>W~UlLQN6jw@FNrnN!iZUhs1J$+vH^E z%|W5om7nWJ)2JR%@H*L?7E#_X6v1l5Lp})Rn4bE4{J6PUj>MgQp|m>u9Spr9PDM)) zO8L1{u+j~x5{y5}9*#H;Od}AYGA6wmU1|cLT4KwQ(FHF26j$VMhpWRINd*jJa8xWD zV7wt~$Y5@#T=oYSKlV3I`=tGPhq-!~P%slaJkC0<&F5Br;}E7B3a=CTEOIz_V`*N= z1SZu3D%3S>lK;f9&~oiEI%?V7zTrs$d;X>CkuUW4Us~Ki-;Z@S5Sh;!^>`kcuTZzsfJtz+g==ehcb^#XfEgfspRwj?qB0gIMxqSz+nWxA2df4 zP`x}Jldm&7)+sK?zhC=9RGwIi8lvbvtb_j0OBeJ+krpqGnjoLX^T^elf$pZ_d302I zJdHUzV94@nj)1&1aZtYUhjtjj<~V~tbyat1BgxC(dGgyhx1_hnpHUji^@m14C7(Pk zmx3u+0SlZD$1#EZR8`2igq|@ZRrND?Dm!{BJ|L7^{8hC4@WStq8$Xd3g6Xe|Aa()c zWmKeL^9{H!3p!;bl&Xc&4#T_9!jaO+yj9#iB$geN{8f5ZP9A9ZG6+UalMg;%Y_=hY za_K_|&Z2k~AI8HnvBfX(sd7rsQad9pE!mFHVxRuuc?DCZ$6wmQ@QbN{+VH{@V#gtF z3jzp7-uJUB>n1QF35UhQagw9CKxmv#0A;g1|3BH-8)J zRtpfpRAT#N{+1Stgf`RlLAd^dC!gs5#(K#?ht2BLi3!+G(LXQVXJvZyYxKOciU!5p zAwyoMAT-Wk+}?xu=~mufLZhU;LI;S1V{%*L zT5ldc>Xm*WRPp$_X zZ-|~49_!}s{N)Yl@&yEo%|V}#Nx{2}{ElyPj$XAa#Lz%>+nuaPqYJm6Dz)OsMKf3B z!FYRv9|D}UqyPjf1ZDA9D9(=$@VNNc2f$GWsiosj%E~F-MG}g=cboaI*afYscnXg?&`_rd$|89iEg+ ziogTPQd<5B3uioFa8#;scZ#o*=E!|w*u2@{Nnvix<*gV5Q;#*1{mE~pAsLn@*&k=K zpIXT6dEZ97lbZu0Bevz7b6{FgxH~=osb5YQP-K1?!H(GwO*e~p|0q7OpU{xKm;Ypu)bjUshRX#Z}*c2=sXp?f|5ttKs-J; z$}+F)!FTzWO}2hyiOK5IP+oK{9T0*_!nOU2Ucus&VBj;SiwPY zqyGnW0E}0V*<}}#z;5Ln02kw{wG7X?3XX80?B;eWsRuml@hZavB1HtVy6#VFPX;zha3>>poH8;>O0>Myy0=#P~o~Xx7?UZ@~|LPg!xD+Q9Vx;wk*SM-NU7&vV9NY2q-LYYdjJ|? zc5UdqaU2$8yYrbF1&n{zN2-!nCMvf(vTA6KBf$PrXkFx;9_(0lnCCWF4s zjuzIy;z+lLQ1S;831Djv5$zM(ec9Ox6C}oe?ycB(q*~_KeesKC65gsB1I(!^?lPq@ z7(F>SzJ-kADga*S9qyge6*Pz*et#?a(DdO|o^)biE&Jt^Q+~H;OHnBydL|#>3 zD5_OUeN(BN<7A3^_?8@LxUPTDUSLmMMtAc&o zcg2dQA3pgw2tkX?+Bs)lz5mtK$8e)e)U;}TpBm;p zCAJ;(THGvBejd+xP>5hiox_GK@p!{2;?!Jxc9<3+xTTm8(cHq4Tcd~GR>1M*XXHID zt%=TrtxSYGJgI<5@W;f+yz%ur+OlHZkSjivs%irQCH<%kLC9&2aTMk(WN$sM%E-0X zF)r!?OHfiNE_q@(EY}!+P(rVQdFx zVLaX6VlAE!WwY4NufDP$t5n{SrZ@Vx%<(NyMEb5R^n^6Xa_mUUVjKep>%0E(l z&>B32#T}*VnA&F~pKZSw7wGS)ZC9_?SmL6vaq)|M>S;&;(@9-anqh^8kf%#oHnTd% zT+rQml|U&ZR0%uo05Rd33-T#DyE*vd=%F^gcky8yGIe!`pP5M!0i^mTr=#3fmrj>~ zo7;yOF!OoS4y0(&#j%5`dIDEA^*u;?S+gPJ(N=+V>Q)-;%mvZ^#Ua92rfdk4lpd(; zJo(Te&oCWKJ6V$8KH{smvJwT1H5p&ocSjpKpcbJ;zSUvYOrhKNFP{E4(+Lm>`lNqX zbt4;fN(JzHPn?{iqAxKYEYv&}bik~Kmb##Mgrp(2Bx*At&6Z*dh~uF4=KAM`r7erB z0#0uYPN31KTNtw4qs^~pb{5y_Y)lVVgK7 z{^<)|`Kwb?!3C5)_bcJu)0F4b7_V-tx%rs0a_Wy$(k`~#>!1X#)e=v`rJoYx`todE z+k#kFwt_R|c(op#F-6YbxCjICG9?&;!#5BX&2+BoZ54=lC}v4C2WcK_L%8Z@@k@8k zPgTFFI&=grFk{aRP6%K44a%GET3GlPUK*F~08g8|c)#)rT>AhMZ^FEZ+H0{S&IJ8Q zN;i#57e~+)9x4S$1iOlrVFM6QP2I6~oHxIG8z}6hXci8ymh$Si3SvEhG^BWn0|^Si z9OlpjGEEL`G;u8!6;s5n`BChjQhti#q1P{Wyx7$_8zW{=1RLH?z@S*{!Jl-aju+q# z+z9HT(eL-mk*5-b{D~Do*J|_?7f$<~B$}9GD`^_1qnCj4N6$Wc*E>wyk6;1ciWd`2 zn(%TF?5m(Ul=XD);)I4g`9A8WS2#uoBjN$SEKxG%LJ~9XRb!(WJytW6a74zlfi}W( z-dA|VL$p+aLI>PFtxSe(5Uw+&JQXPcb&Di}$4W4e-Z2mi# zq(OCQ5v6L=34ZzFs+6Ke)@JTLHn;hFRn}*W(*P7EotTR1_r}bs+!Y&TPRAfrMp4ZB zn=b`h-I;LbUms?<6H-IU*#SQei&@=@lCCBgLMd%Vxw&Gh6NNctc{0sl@3-AKYpIvO zXTfGb%@=3tacu}eQ?KesnlBw^xaZy;m)iEazVIJlQ^Y)bi_44io3VJR4t_R%29i>? zqLts@x7U~xhtSQ?E5=)qrT`fSCtW(OMMPw1IUQ-~#%d6SeIArdEVcYosZ&T36D3J( z|GWT-$x!Tq1~@0o6zUmPn4O*$SOKxg%j-esFFun+=H+TZP#6LNVA$i4L}w<$mvUHC zZsjIP>BuXRgltFtkcAc3vMgM4tfk4yX(c>jQjc?+pxn?R6Q$8(4 zB~YGgAs!S5)Msmntw9Esv){ZtfmWpqclrukn?!12?(Ajg@Vgdk4P%tPfxxZKf_Ox#s7qG~8pE`t68P!5Mh zW}rQl>J6wMh3FeigK?Y3{giT0u*PfA9 z0IOPs0!^g6?3%2%I3@-dJFliOC}}0$K((k(VsYGPKets64__+K4HPg9iOU+ZvEX}LUH{Ky&SB@+vDi7~w&W8FDZA#%g7l;uFlr*kg)o*3`14 zqf~~036%)SJeN9Pvp8CAdAbztz_W`1h_a8!7* zr&0mRqV{;Rt&Dj_WwEMed)9>3X)ZcM1vCgn23xMLH8BqsIv!9sx8T*nA0S^r@iVC| zZCdqGBC5k0E0l<;*=h?V)#}#MkBp6?{Qn;W#gE4suSKOSz=qQ?D)3H;hqt2&94R(P zgfEksr7o#o&P?!e`6}9?Rsf1vsu4?@OKYqC_%anbB``P6Up)DlnFL(PptL`~Y=-2W zfTI*FiKz|Ie$&Ud#~#E75>g|7tyA?&ytp$S7|G8Nm=ue61hi=%j@sZwRlI6VT>KI^ zdgc0xZEj`BihFZw0OT-E(^m?{aIRlcM>EzNfkKNg1=V3;=yV?>V!gnnQD^ zaTxqn^iNz_>`DK)oExG21qFxgV#TOZVR4J(AjagTkW2|6dEx2lQP_!J?e0mV0 z3BFih`pCxJ28t+07q%k*m~&H{h+UI1{n5~McyWZzLKpE;VooWse%Eo$Jp-{OG?FKe z=3H%%QyjywfW3orlS+mC28j5{^gZr{1`P6eB#fON`xZm~>=3kYGm80r^r7S=!5@o! z=^6>)F7ZBMTGJ9L85uvwa?EdkSbT5@+dRZF{bI8?Mekjd6w)^+`{^FqxBG=dT#eta z7he$-^r6=JJ%3_G{X~#)+w*ihieLUf7l+5fR}UX$F%Wtq2GeY2O0MS$JhcgwJ?6$t9}MUk8I)XD+K3(GVpme0pZpr$ zA`@(C=H=k5m9@oQCb|NM8s>5yJrmE+ZF;*vkw^jaz|;&t1u%KKMs4K}Bwg%N-6O_Q zGR5a(nxMOt(C*QQ1tR)A+S2KPP=G;8+_Gayx*~{(lTBF71lM+wg*M5hc_!3Nb>I3Y zBS)SUPL^tgoeuWeA@&;PYJC$TMzLAkWNfK_BWRSS1*N1)4I0j~{gv$w^`aPfIdA`JZE@4P{!_Y63Ssu}p9i)!oy@YnMk(WwtA}lq3PFN7|+x z_Oq+NQ6eh@x>8C<9EmUfp%=)lt8}{{B8s`|`rIoq0!1zRc>oFVB5CY!Pz5bHh=S?o zT-2?hLP~If02`|_@_j#pQn&`^)h$m)`DWn-zyi10&-lM1w8T0qc2*-;A;WRBPV4! zU+^P0Obm$gz8cxkk7_47S; zC&;1>RMx10_621D&i_sP%$O-c&@azY=v}>XHJ%wBR4juUGusYT9z&kQi^tFAmnc)0 zFQkaW=d8&I$0ck+At|sT#mLal6y&x0uEaeIMo9fnHcOz zcy7EEaks<#-3oJs1X2{7nabrt9gdfFUPVKd%~j_4<$+g?q1qm5x2i^H>b1||J} z#2JA)j*XxvPuP0%=x!dlHG5*8%wM~BIzA~19g3O~Y`9osYP4yHA2Ag@)(UY#H0}&` zP^TC0qDLmI0ee~PZWlyUHVLxcAS4a2#x$SB*KDRa=x33()|*8|QQ|DXfQeYdl`@-w z6725~1`7our?fTCjvxpsTZ~0$U@GQ-=cXV}1a9=VxRGHO%P3A1U}BE={o=m@%1l=Q znol;ZFkV4z#;YNiLT`trX&oRB`ok5N3 z`;&M#S)RVjNLu-DUuE*UL1_{b^eM&q-RZXYFL%3*R|?P za70Xs^wSjVsKQ0*Cp}SFo$;cEq)^(RrD}`S)mW-5v|@3PRmli`zP0{4J9pTtmCcBK zy)2Sl6kkptCLVkcyTd(8VdbKUx6H6q65I7}DN-~jd5`4FT(!FRPpZXLk^KEXdwK^d z_~pZiw4<0nbx|(S6TS*)ykYq7%DuHwuqI${wA|R)>6zEfhUol69|c7TzQA$%>nFdC z-w+?XD0cbj2N&P>EWxk3)YG#R#PdhZ3mo5)CKbD*Y#_l9{phkh3&9=u<5dsd4i)M| zsW4e`Lzg<&FHn7At0qn@RCZWDh^RF(sHl0;iP z+BVTTJeTa6AQMLR|8?r8pBEH%PY*P$49+}Q1M0ln&r@{v_3#M@7lQ411e`wvXYK8 znOpybFQ*OF8a}97bNo+GR6d|w9`I;<*+Eo%6tsKp{;%KC;TpNoW0tJox|g?#>xz92 z!eAmO(&Rl^C0y>O=@2Wf@EgHRJNM(Uc0<%WLA+|MxSh2x z6j-a=Lv>v6NGr9gG1>mjHxwTOJ~6oVD|h3SvI~e6n=Yd*nXN3w8>B2hm-?0Bkg3?* zhv~D>#uksPAl@KU)4PQFdfzUuPVH)kqOby18oHCoNG0^MiINYq%gg0b6{;R5GEtyd zWm}G)5RL^!Wx)Lt2WZ&OWbgklE*g*8-^v~3Ev81pOfUyo4e4+s)S!ACG2pk}{j90i zHCN%&m=NOOC{Ox=Q4%YyIfQAMj)ghzlyW|tJ#rf+Or&1Vlh_*UV|x^t z4N;4uVw>bs>J@pRE5zSpz8D-;)}!=&u>NmyBV9c9gq4sB;H5TNAIuQ=N+p7>u;vN*0O@eXQ1We9OtVRk&{+YtL)L_>nX(dMUfez3qVsfTY0X8qA+b zA5HB^Et}&T+{M5A-Jj=gA6)$A$wzS^{OJ`lCffp{H)JUwJe354%tqVJXFv`HNz+_3TqqrB0Gir+6%c2DNB?^cOcmVB9(> zx#3EOQgTGhmMrbbwlfz$x6tGklDxyeWEFCu)>@LW!USS4u8)cw=z0U$`$B0J#|}r7 z%gT_9YV9Pa2*zkEAbtxBqKCyH!dukTN-kCtV-`?47P?^yt4rPkTy_P3v^zq~Gi#?N zA1hXYesRuuX4s(T=FPW* z@yk{9ij8-Zcfalhym2%t0VgVi`@G;U0?8j=dloRezqZ=Hp8<6mUwRr`Q7Xz2Z&r3+ zu_(a6pWO2aY`xr-dQo;rSq<^d5x6VQXO=VVOUMA`^MmRfTfne++61D)fS)NMI5Nt12h+G>U7B8;UNlsY_r?*mrc2b~K zNCutmOI7zw$uKM^^3h&D0B~sW-}&8l^v^%V{tGeLqE0azT)GIRSk+)${A;Z)baeL&i;v4txGQwsRG24%6)9rTPR)Zd9R7K7ykn|l%}zA87OozP$5X)* zWHE;3gW2EYoS*2`^4)acoiGRSwdA!@Z_E!|{6x+?Zys5bL{m&EC7?{m56<^{7k?A4 zmnK>qeR%9ig5kK7tRO}E&>x{h%kc1Pc6#z%5aOlafz&Sp(VYJ45Mj@LvB3HwUf7C_)~KJR9A!jzsa)f3R%W z9-d4%;&E$q4fGhlS{! zs|Lcv8r1SBHC4{oY2;**6`(F3#ASJh7=qwXu?vVib7{tB z1O$jRnSSedB(#4%tVa@P;|w~ij7uRlRO&98!hL4SP!x!;Lp>#}PPl+4L7TPSW(XCO z#b5cm?J$e@w{Dr}DAQu_tp}L}xWYl??-S!pUTtk8<0GU( zsgAAMhsh{6t|xRt5}(uI6U`>bDN~7!yDx3Vi^p%hXln1CD5w|broV-8ZSEYYKY}~F z&K8H_u_|}xMZ9!$Kel}Hdi=DXA))oEGUE{{EQhjCS#0|C*Itk1D=JehnFc)#D$dTe zPLc5|bVsQwY6|%O%cw%EjcTh^)OSHMZnJnD+Q)x=^0VNR=~uHlkZ!QFO#6yd=IQ#* z#rI-(RE++vr?bM#O4|Ic?itysL7chV%B9(5k8#{j2hu)8q0PtWoD`^cc|daTThRt@ z7Exx>Xj2yicTi6H@CenWTzssavOZ>mQ`{oeOV>kp92^$fsBCjg6Ai;bC49?WirezP zfiolsjR!Jqj1D?y%5)W+s{>%Z1^7)FRGqM1=T;k0ZG4TseG7bm#HmMz- z2|Z?}L7mP_HX(hGex4g%Hok0+*c*%AFpIR}#W5&WPAMKP=O&6#-pOL`L(47hdFdH4 z89ZET&tzX=6WqIMDW=JtXVt8XRQ7K=nv=i za!wMSzDRCrJcWSb8jQC|Y~=YDvVz_5llv&+W#e{tDdthUo`A1(i^QCSXaqVi5_BRC z)(c+_8X)?A5+lo5F<~1~uP#2LY#=W0IQaKnrA6WES4!7rf*uW?X;G`BdO$5lX;H6D zc1ZeKZ*A3+1(EbA824;?T&Jd|eH!t|;ivM}wm5ezOO9KAr0P2p*X zu5|Z-_ν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

t0k_GkeUrcl*cFy2sI@c%#8zs;TOD?| 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

!yQPr^4O0`1k!ZTL z8w^iDX0nP;I)U^vfWKu!#LyWx0RYRh%SWU^i?j>`pWR!5nS+N)JOtacT$3Lk_ZS0S zEo-*&Q4p9sNHG1UzRVbb9vN<)CIi99Sg0n}#BX5-emWsHtnB`w1CeH%j;No;FpOF| z76fTN6a$$aSny@h69xvc>@5!x67%ZqqX$c7Oz2j#04roR zUJqzftLwR(#k-yWWhO;0;)oK1RwWf%a5E{p1DI`&lhI9CD`BxC�j^;2Xg_RK9U@ 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%0D3PD7D1=B%t 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

Q5O)(&N)g@nEP3TMhL5+cMkQxsG5XL8W~Xo7)* zMitC-5^rL-J5EWGPin!*&2pA^7Pj#OuR~?O2LF8nb zY9qCQzYQ6r6d-_Jt;iU2*sJj^R}Tc=4jftKs>2+ReQR4ni`Qq~j3?41iWWu6oO2~C z`x>|=UVweHxf{l)B{;noqX*5<;W~0*hn0{(7iCEZ(F(~EzFuuL)KBS74@$WThoBb3^H(}T#gGrnE*_A_|8Oli~n8183zE%7Vj`4E!_xkJ<3 zP(H8H^j$T6Ir^e4l~yNq3o;Mpj#uMp?+g^5^F(q2mbErl4L+xp-nC7TIr3IFd5*8L zlup{H{_I3eq?lN&H?cyXRF(I&$8fdEs`lSoAH5&`D3nnyT>yc67ubYC8YMvbX* zRwzyDCgDvA^TuH$Lcr-ne(aqsN`}WMUt^m>165nu8})&lfEfFWK)YCaG=+UztuO}8 zYzHq&jebubeYX60Ol=8U3v|bQ!E@z}r))s&acSAcD>sO6jg4q~GzIaAih10p;Cw%@ zsVjWSzQuh@%?;fYroGUO%2@kDr6=2{>Bqr>nAm+q-n;!EAi=qVU6to>p!m9)E|WoG zgTC-|l-iRZsI#>VOGRI0Kc(>46c+-soW--5!evnQvAz27|5Hvrj`ae9mT|ook8Iaa zxNovdiK{P!q>OulMC7A{OjEx`Fza@@GDhQG?^wT!)j%8cY*wqwB^7}s7AVb-Zu1_l z3BSpl+=a3^RkBaK7OhF!0Qyx1$Z>{FL3$X6CA?Qse2obc6|UKw;@8-+)P=OMc2qwx zNvm$IO%H$Jmw%Gl%JqP9XA0VA47IC{Ukd0XEtu^H+X(QKbV75#{{88XVqfM|=OyJz z3$wJbK7{CW&VEof$v?#RP>1N7!-Q$5`jHy7+tTAkY}rI{PkOm`4v2zGvv`~gA~AU4 zH>>OOaEun_&6awl3`2G(h4TAy`W+javSuB=62B}7$bpJIaCf>}S6x$Y9Kw>8VZ0Tp z+mW^_UbU^Hg79P3c~c7R6Mqm2X>(R}J6nAQg%6i#eiRl{PnXI6;HDN_doeGNUKqkV za@g(5+*xQj7cIgqZtTC9D#?M6f7J%R0SwSR68FM>!_JapAmqvRL34lUioFDKBz~&v zCdzfPD|g*K?l3TWl&*Dge)>K_C_0$d{v#&=GcEBU$#@>sq-Veh+b7u*$;#3V#Ut|I zF8hrs$bz$JigQcdQh1d83=%8ChCf=hn_LxDggml?7hWrCHfI(VJ?MV4pnaa|>>WIo zOYu>bqnFAmlLv^&Wx7}|f&S9eow6A!B`?M1>GgWXqYG`)(^EL5$&A8DC+w$u5YvCP z@cOW)1$5!MP@a0mPQ(2&Z^M)wO)(1-!FHK*HnFm&xuflq!1l;kf&uR++7t5u7pet| zk`_n6qVklGnx)vSjdEu-ej>>IlC8qr>t$oX{zTiKva%3@w8Vjd?dWC`>qtp6H=Bfz zx%%FR9BM}q1^jzy;Xeh;M}!6DZtbj;QzL02ET`J7EnR%}6q>4|B{6hurNND>E|V`7 z&@F)(+`$p25?rlvzLzBmM$0nGcWJa-8*)*gEyk6g6;Zx86QV>`&EiI&y>B1&WCVZXR_iK$udm} z7Ho}RjMI;JjZE%%?`;~%vDH3MJa$#AOnt}i$x;)9$Zz9&syYe0l2Q)wQj&15r4m0A z)qUcQw8QsmX~n*&PZwZ*=%tO?%Ou`pl_FxHmGtT>iSw~Za4+;j3#B;f;z-0+Qr=Vk z!^{MBj*)75$Jv6b*z&}q>0v0+J0k{*&ntc>&Bg-B$Cu za{N}lr*su@2U6gHNCfc-=_sxalfvPql#4Ey7*p=71tWx3TuMg|Ib6XOWy>Q+Q5?zC zD;K<6zDY80+A=_}0%E;i!-ERxYm+w2^z9dDGs#qF3Hm9V{La>SoiNWJMM+RzTL~am z95$-0wbjN65>|>(>9X2M#s>BZUr4p(xjd$mCXpj4ZfqJG{yi+3Knq{SOR&YeQI>r} z1(GDu=5il;EieVzmX=IH@uF0zvQXf2>>_~O1mh;NYN^1EWxZ!x$GKKHEJBO6Zq??O z1(6=S|CWkf2wI8_q|rKf1X5t4D&hjMfBUf^gnnd?ZFVn-?Q?X4vbCs%=wGt=<5fBJ zU-Zvfq&7vM=2#S<0nU74&tn_Afk67-`Dg5DD2Ei}$E+g+V#h@X@uDpS6vnaqr=US| zfMBusgdPELoxX41C6B9QgY>MHm52>_m~2`3)}>y?e_5LqsQN( z(5dMW;5*gX@kYw0kDe@_i9Zq|pfYI;b18+e6s97j)((h(K%NwM85{Cm$;iVieA%`c zvm|A@fnrOQJ369M;|Uq~P4W!)XQa0xIEFQ zY|&nz^@|gC$P*-R=QjX1(OsK&Yk7^VAp41Kr3}Wbo!823`-7x>rqd5Pb$^CtwXrkc z>@Xoavs`Jk_c^4$QNWPz-JK<8eKl)o+a(sohss=OI5P!x|R1SScv0_PcU&Srv0 zZkOd)g!U>c+*)}(PJk=~FV7!U0g2*aLpm zzz9VZryA%`3)wY2ES3?oP+!d|MYXS!KHTAODjz$Is76*GJjT1)?CtI_-G&O~5$}~p zXNyxooXnL*`Y~W^+G4>@cWsIsbifxXO`FJqI1k^7`SL|fz%Fg!6C>;FZvRx#CMnjy z%t5$nan%Obv^@~Eg4uN64&1r&7qLbwwd5hRA{(k|kR7`DP$9l#8weJ`-#<8PbW%`hIisi7S1!o|7xaY?D7XN|$ zV1LG?Aax>VFx5gaKv@7U?vOxly&aq1knCp?bV)R#t?JKXRwP_^eFsQYIVxKLTJ$P~ zPCi1?P-|?<%t5$=w%9QFQv%QnAx0GY+B=YRQ!g@WF=d=j_H1M2W(5j^0m8|$i7UlR z>^J+YE}+Qq`P6MB^q;zY3=f&NAt~tK3`#(iax)d=()``A($$~hlubVYd|U^IYi2_t zT|a)eoc=P-BAIWJ*DzL^Cv1cK1H%O3za)aJU=Fw<>4wk01%~uWBisyspYV8;VI_r{FpUWMh!WQ0B^Yvr9TeRb!Fx z#EDAV&){A4cCf|gTC1t|e+cmhH^Fj5(DLO(ElU>WAR)=iIFC6RiOq?GVPu<U1izz&4R)CX{}#p9oqe1_6Dh$bk5X&F(=-#}KMYFE*7D*-a42Z#5ffeuMimcacDx!A@&VLW-?HVm53SVu})>KRogz6iJMf=x9S>Z zznCj(BD6rF8LwEQz94sel>e8lkM8$baG^$ZMqO!uHMw}(y@Bp>f1+Ss5zi4^lLIUP zTtU~>oM5CN*?DUU{7!};i;P}MNp6|#N(VQs>umtJ$T_hyDBtzcYT3B}-0j}8b>8CP zu?ZchjUa?JG)0L}*!C76NVK(mdPA#EG&6w>H%0G_D&Ty8$L)m*qk?`#;(jGiGFK+l zZLG3U_9mh(gqUnwIoUdV6nzQdSBdA$=ilibFq0#!>e#$?rQgo%=e%x8p5@Vn4(pb` zfjtUI*-i6@UnLgk1xjn>@(8{FlSDPr)e-ebxrJ?ExoF0*XY|kmvZ5D5xKX!&lJ}3& z`KQGbH;qdcI;!vH561yxGoFW8DN!T6#%)Aq+mNnVN89R(+1WBm!=SGqN7$bg%TE|u zwE{~2n5^e$&%^z)UfPLiaG8#uv0{{cgQhq`WL;obaqt1hI6w+6+R6~gyJ#c00f}MR zcD;kInES}!q`HLH+cLrYI>l2EqR<%FWa;AJJft&J`!J8aZb5Y+@qgnAfGNp=+U~~0 zlxhGVy`Mq{dpe1I4^)d9a?>XDRgfKdaoMG?P3adYVqZ8v55 zM0qxLPDt`STu%E9!2?CvQ=-A zX#g$u1%*>DyZPGGI{8s3>n2^XYF$?yqSKbtlouT&_ur-?#oaVBiDvJ_0&CeM;Qbn6 zNkJo^b@Y0wYEMG>a1R97c0)O%p)0D5=|gF4V3RD^Coeozo{D*`5k)cmrYIuR;w&R_ z)1uEK^#2d3%^Gu<9P9JDxz}|s!Ld-z0WGzWR?Nj;%MEj}hfp*H*qO>f8pyW7LR$09hY}zjq zn6qhf(F%gGAyzwHVzN0~#gY=&YJ&)x6q}?h0WvMT)){T@Z1vVq-y(_HTiD?5&~!b% zJ1<9rYA!Y<+_Nc|W2A1Y9%8zNH*}d!lIwrOA+GiA?G?&Og~n+UsYabLx$mYh*q-=+ z)%1*SQR^gXYU8-k#>0mV{Emt3STYt$1Ta}=2rVCn^!3!U7+zvdT5WAZxxvY(r5bIn zHB2JM*iMU%@HjC8A#(tQFsu~Fxe4zq(L2_$Bw+`Isvu^=WSfG|F*!b!Z7}OKo0k0s zfDJ%JOoL*V)iRCi6KrhXJvABlnGOO&^s-ItM$?oj$ZFgUF!M56y~vkMNQfV+TZQ|S z)tRPXa7an_tSpYbfJ2AlIuq{xuPl_;<6#pxFbcBUN0r*{(dKCn zyvJLsS6q6W&Iot&@F=V=lo5BvCQfkGK(^k~z6g`PRImbugS4$6CrBTLpGOeeg0BuE zfec3%EM;&6!($Y0gVTp|ub@qRn@Npa!g0D&g;G=CCA1`gJZ@fs_;4ooY}Sy9f)y`7 zx?ZVC;&Hsfa-gWyH-a$=zs@^g6IZwt+XB?Cvdy*-fJnObY@@5Lq&i0Y3`uNObBhU6 zy_Pt?bE@{f2Gac9dc#|_GtI&2>JPP-c01?ou;|Ya!LRT!pvuL`47yp*- z==oSb0>hZJsN7^&Ao9I&3V0*!xiKq(lf>v{Ko_^~sunfj=s>5#Z-`xmU2}*F|NUfJ z5pSvxG5XZDM`_-jRCPc^S6_#gN}Ub+^dpMuQB)B5KxITejxD-}^alZL<<@eUTUfVs zBUZJatk%hnJU{l|20+m5omRL zijIZudwXSt9MTa#D_0)Rln6rt@^x=0+9_v-U_XV5ZO{t8WL>VqlwB);PCk!ClPrrZ zUx3H|ffk%TR`vrr*g;}NqK@2WV>{f1z>;RwW6-a_RoBTh^ZZuSV`9R9Y)dwOU5xj# zf#)T2?GvzHF{k6%J!0Y8EOP7vs!6_w?K0trsI3G%HQODovrtm}qg@T01g|Xt#H1fF z_M+@`i)^5UPRHH@_x9v{8zsFz_-NR4HAxiJ%OcoawcaY%W1BYVf#mUC;@;P6tzIc9 z1%0Wk*wdOkPk&a>s?gfz~V@r*JHhH1#*q)-+#ZeKK9yBBNg3)k~L^+XRSrg=9-#(m@FLRX6 zw5a${=! zlan9X8BoG-?9)6aAXa?u7y*`j?2IPaKJv7(4}zHo)zS$Hj6mY%lP0vu=Efqi?Goeu zvuAwl|4K#sXLH5qXX7Z%(WK!h)nmEY1q^rIi)v*=oEQx*5NPZaiLaI~#DJve> z8p8M&7MIIf>}YpW_Obgwr;nZ}7oMOlkE#+!E>(T z3#i`bFU60L2!d#eUsMD$#_5p3NuVl9<|x|PUb7ECzrbVS^p8?8vYt+ELLRATWn}|m z!Z#!X0akWlF*-y-K=v45gP5mnERfWdnB;AoG_k&ey}DjJ(~YRbZ_DW)OqR*-R|yqw zX|`HC;}}@5N254D!P;S{$-Eh`)pl*U+_Fd25-|xeZ-9wdXK<-Yf8%)&mNfm}=bv8e zK1A*S^oRxkNkd|UD3IV+Ci;iV%E^r|gaNHd+_JTxd!KE5EwQzY+Y>=|KFeu{4=hd& zy8`6>@&ro+aq)IXcp0&!T&shl2NN#%ct9KHh#{nK303@S9sih=P+N{f0ysH1R3qR3 z1lTA)47-Yar^YG!S$tnNf>f{_Jc_aoof64S?21>RjZeOj4j!Ow*ZUyp4!-h2Ja$>> zf6(nsbe3t%35J;hXq3Np2Us;eznqU`Yt1WF*Bq2yreCh0DNN|@Ndvhyqa0jvfNLJ> z&~q#4qwRO4jH_gF&}3<}mG(lsY+@SGr3{lj%MA^lYtDTP8Hh9Vm8v|wVI#yu;x37m zsTsPQviN&zt+Yc2uPv0-wJ7Ec7i4(IXft7ob9YcPQ1Wdogb3PLm_d~9JSMwGb%A1P z%bTS=hTS!C&XH`K3Yq$+$UtXxC^3N=h#3N-4-(Rfr^NmbaiDDICSXn)uh99)uT6!` zub0HPezitJOzPhJN_q1Qlaf6;6EC400kuMvb;`*Y6IHrHY zi}5l_Hw&at2A0hlxj@<{o|2^afEq)lO$W5R(=qT59V*cMcgQ=01fZ^XdbOVjKVVGT zmGMe()q47fBEz;>_{ifR=KyLimxV+vtVsaqa62Gfsy`&@7S#lIlBTNmJT1fAs>u*w zpB!PEBKx6SljOr}!cJg8Lv-g9OPhg`=CP#40Z>((T3bIpOrgH6S`F*6i5)NU5KW993;tGlG#_<@GW)+oJTvuG|BlN@3|0Pj0~i2}yF8V{m`JLeMD+`g>b zh{1gmTF{qvJ2qaO*r?yi#>W#na@FN@$FFFwjopz%O7+OW5=RL@qA~*g#nJ-TY$LKx zVjy2mJK2C6oXf;>RPP%Y%;}*ETzg>Iw(Mi2&uqHhW%Pr$O*B+fOM)3CyXVj1)3Pga z(KarSLl42>tsv_;9$dU++uQnUqLEr12JpJ|ZOuQY41Lr^?LOBSrV`uk9V49EL zqwmJaZ*2f9Kl!V1h#He4Z8=vU4j-B&7Neu2Tl93OKtPG{D0D3>AudgTmq(8;lnQtq9pGMUpDGq3pME{pzdWn8 zWjea{2GbLE6ne1NinRr3p5~{_SavcY5({L-j*nHgIL(Km7UD8;mzmT<52YNvA`rGu z|9I{6edQzmHU@x&&g~uYvNS|k*<9ZO+MKB@LhMLaWrgDbYt@vCVI1xVI@)uzK>ov` zeS18T@!&o|hkn2@tEQokSekwy0H31~GIeb$sRaI3x-DPs;wAOc;%pDlxzZmwWr5kKXs9e0!Nh$dyr2z|GjS-jE2 z{h9KP$%0xz$YO#T1g|EJ-gRzggwWRN@%zwnPJSLM`*L>=YiKjOd2nOgA>2MHnaV24 zG7eZ^kZdIBe&3GgQGUPrqA>zU0vsj}Vcq78H)r1#M8w@|$(1~iF^Ra^ELY0Z)}ZRg z21>Ja{`}|5=Ra@jOmCMfF&0kOj9o{c9at7#VgikxTe(+^j@QPpT9~OO_?60lP>8q} zpP+rtTKoiN^J09y#qCs%(GE$j7LanzSA2+yxj5s%ds({*LZ??p0??QEOsM~5lxN0@ zU=M8h3V_MPIl}3}M6nSz{;`X~d#Ar7xx>DwOV`$Pm2P!6>~kUyV2#9);&h|+j@5`D z)_RQt4!q~v3}#Qn8xP#kZ3r)^!3Gr^=$Llh_W1Q2Ibri@^J}A4*!`{#O;iq#|H*Oe z_EWSSl}co2w`kT z+#IMHV+AME7D?p2Y}y%HrH;tbrNT6#^91GMV@%A8AZ`&Kms1lbb%U3ZhKnI& zk9zK0Ip-|4dsyW5SV#(9$ceam_WF?5%%z~91eeN8_@k>x!_dF4q>OtrBD!A<_9#4C z8zRR+q?9YCCsqfk;Q(#=)roVFtA+Fx0F^j|-9_Xl7s2BJ4070wK{UkL%^f0>A?%f1 zcKVU6!NX_DlO|tE_TnM2UrKI_+6iBIhrGP6ymuY9lq~805Ge|aSW+IC*wAZ_pQMe?xmYYi|l@KnOkSAS7LOKEX&(*C`L zjT4&-1W&2u6g$WNR80k+hIIXuY^PYNr=Kow*ren;^n|?mX;Ij2dzwPZ)pZ+CM`qyn z1C>hMR}#j8awhM#pT0y{N@#j}+Ov2uVtL6#woiDA%ojIYuY)f_i^(iTa#y%J^4DK{ zDXd@k1}p>z6<;q-+u?vL(*Bg7J7|Kf*nHWTH_ZTQ8BtzY+xu?%3OSFreHlZ_zJ!7t zCKB2KR}?6-O@$Lsn_=0e2z2GV>Ac&ow#U?bVPOx3u9k6lq6#ULo1u%5eEX9R4LQPSjDCZWmXO8@0=&}lEj7HenT5Jk-bz#lBY879G_}@ znS_v^fjE59=2z>cx#7A(oy<{U1>8iS{g2ABUGl!p({j&NMLD|{W8x~@BW^(Kz~=B! z2?w%AZRk&tVr64k*UfU@4zIE{3HJEjyzyrF^VnVZmg274W6r-(o{Tr6K4z*LlUhUl z&~KgmIyPyU4M^>YDivOMn!Q1y3EL*u5@;x3HG9xzeExiS`dQNi+(tZf2xQ`TIU%ZnLn08#;CO`}%hytC(0}rlEOJrz+g9{aw|Ok16bk5Gaa!i1*qQ=TFtGas$PE^BHDXBd^-G zs&k5_BJ!5&L~P?)BgMnb5H1SFi2TJu#*FDSeey>;1J_C zp&RN^I+SxP{Sw(+TxD0U*!uz4YF=#8U>yOkqUhN{M$F00mbXlGyEwJzUKRL3_t*-b zb#UaXzF_#MaRM7^3Hv|}Ow2(=8N3HN#)ubp!e)zNY}hwpDZ$NOxx{2)#av)frB=8 z?ZYruh^DK5SS%ARjlg0aU~kavi{E5VIDPb)a^BSW>7!Q=!Fx{b?h`tdHyK8Dx37Cw z%2L0NJ%VSh+Rqw$%oJEhC)Qr2l*k0C&7oa3Q(_+hLpgadmd#`C?sRR*aEZBg>G6gu z=jTo61C1l&?TCgl<>MEff%;r|+@f9X#5!Skc4;@l3AXodNp;M$?5$PkDqnPT9N(lH zrEm@&Y+EEO;>tx^Zz>ZA*Gyj^BMCE#Ybz$RL2OFO&c1|R;N8a|N)re@_=Qk6Bdcu6 z{JJU1i_OiF*nG(xR91dyEO7^C03NPlBHXDpH;0{Z9f`WL|8Fd?|0&+dZ$(70VNOR7 zL?WiO(Smbfhwowe%9FP9=P#5C7h3j2s=-r$?0c#T|BwBXy-> z#?K(=1V8f%(G+oQ{${Ky7KKEjyM;X4xUW$(Gb;U9o`JmWU*Z z?E6&evfGy!)NM?aj6vP zIE8&$<*oRWst(3c7B*DxeDg6*zp18|kK(`aqNdiWa!BKM#58JvA=i{;(c?BjilS^l zElU(v9~cECd~ITK42}*HwX&85ad`samM;;;ih@&^CV1$+nccgBx52t>cad8;(gC%L zMTPT_D4ax=p|C{DRLYW)!W~=KKde!RBvf~X<+?}yu^&q>2Br2N=sry(9wF>Xsp7T? zJdiufeiA@-Jpp7(3-cku-cD-T|2* zHFN%6F3a|o9dutb5N^@57%LJh(Z1FyyB-&;wOAAL5bO%4CS|cz{u4KbJsh=+5fD?j zRoY9=*nEJb^qgoUF4PTsDPe!dcL_4$x5c#jw8z@t_DHw@?mDcJ;WKa4YxJ2qk z+2_*#L3xYJkaz70(v{$@8>JmA2hH{#F?&T1^#18Obwu9pB)c}kTCbE-KG^ikTi zC2GPG>an%v1SJB@vYflLgS0b(RA_UfK>t(E*g!Fj2lBIRYov^odgK@D+9AjF$W2M1 zur&OeB-;RkthUFbkFit6Rd_vBum`UZ2L!9t1|dHB>-Gcv^uFl*^mOl^kcCa8^yKH^ zayBSyg+uXHY`9+9DVA}cPOyo~X}r-R520XF(`8RlB|u=0#C1}81{S}1=k^u_5-|k& zNhPx^DCKF&NUWDAS9N@8dqkG^o*xcil%U116d*_3_cn0sHWa@fbnuZ>HdSd4$+kJW zG&7(&nc{@tOxoL9lp(Dyy8QzGUxDS#1bOcc``mU41KS{$D2YNom;K01EwdnQ>jm#V zWAcMLfXa#+n#Sy4p1&~NQIBYB`Zow>DzUy?We!%(7@Yo?0voaawj3H#trkdFW`zAL1FqzY|B0))pRovuHHMvH8U@o(Mlk>VsoSivq*K0QInzm zsec2Iz{l({@?20zVc!y#{DoqZ|G@u#8WIhXOHcY(ih~igTGDL`T%N;WOSL$HJS#hS zPnCz~vcL>IlqQy3H?ah{xXyI1dwN7==>J2BgygKKutV4`q`ob^Zo`{mk4vY8Inh1? zWo$G+3zuREu(l7JA_hI?0 zN7gIkn&MHbR27PKdZhv*ao?zOjsj>oV%zQOmO+qhYzo{Zs<{-9UW5zsU19eKoRGYQv=ffMrHRJ^)~Ti zpSbz4wqm@?I7N|)!L^iP5)6r;aPqU3sUC3{?cJe&bRR@pMi9&<>&adR3_uM8P)u9A zS_kGuyQ0+FcSr+aHX+9IiV}4E7Nz1Aw-~BCo&Y%~xi_+z*)kayw$WcNUyM&bQJzQ< z8y&N3B4XBIE6>>Ji$R7f^4<0iWFybY1s)D?KJpA}lhc-k~QMDY)mZk=JyD_PKw z+gN4VbNTUg>Os0l<7P%`i7NBNbBFsZMw0F^PqiTuAKD%N+cRJPpK2t2)?z#knZh>c z9w7L5%N7^juaF^=KO$wbg{WRuQJnoj(#kd2!2@AEkZ5sv<6y0k$*OA4T@h^yQ~i|AH;JovhE$Gn6faKwOP z*YUBRit!y108TzNnZiFPr$3GbAMRIH4|@_%K>H3&A~3eeIaAJxUtU97b@1ozPYXNS-bU5OOhhe~VH*$@vA1aSB-Xk`~(9MX)R1W$u9uMbW z-xZuZ{Lyg|M1+Eif74SFz=RSW!gPso1QP`Ps-tE?w9*QPWO1dlL1loY7*!wn-FAwG z&fJR*ARY{bsM&K66i?Y%#tgv^G41+#nLc->X8xNBH$D4oY&2%m2UL?tzjy?eaq?kk z48#{zO{^moCOqo~{Zrd~G5L@Ds=op!)rQZl|9q_X5f$%UdTXt!z!Pfcg~9$`pUvp; zyPv%KFZmzg!++TWVzXGI-<1ooA}u1}O3DXdi*=(p-adYYeTtyP`=@|H?|<^Yo_gGQ zTbY?zje&qfq3UJY9N0@Ms~(&)`~uuk1X&I4Fz;-28AifEYd@wGwQ34weQY0QkH$7U zthE}u0cD6Z@MR9$AX5a0SaK=BkG5gqzSK_Rq3+}@!(STNKsQIVr@57SjV}`aq)5Mg zOeoBDrHoV{BR;l9cJY47cYrp9C%ScP<#|BaJYoNj^@rb?&cT%;kXZOSwZ_ma4Z zB#gRyp>Y;Oaj35k-e{}bYRB^`!o~gP8UU~5YHT@F3j#Pv_aBV$(UNXrxk~b(wv_;h z(-beD;b1cYJ4k9_8umUmcO+87Q6z3viQ=BtDuX~FSZoAS3Jc|i86vWkQhEN(W9ma7 zMJ_#G=4!K*LK1s1i1pHOz#LBN`KO;wXPDPHp2a>Y9@MqRfNET~$B4ThA$@6hEWS<8 zL#Z~+)n-~~Gs&GSfGx`Piesxo_ zM1A$u7kn$r_3QC;S?kD}i57-bN&E;*JvfV`iG*TkdVamf%JZ{!R^Jc zO<7TI!I6oX;Pxh_%axaAS>+&C)GxAgjg(QhgjdZ(oS}GhY%&eyoMUQ(ZFJTOHcJ>d zszL{Ei!P)lg`_LrxVd4+4DZwyY6*wJ#wxDI-QnO~Y^O4#9qz4YvdT;*4$7j9Jk3{v}(2{-Ei#oj@1V_IOh+JF*_j zphyV^jK#9qUV#T`v%@U>LplAvJyjSOpUf`z9U@whjZCW9a@=vMOe%HgPy5j+7~HSo zX}6^<11iB6nc~3PuAvVlbrhUSho!PU7=!J{tCd8w2E}mHb;=jf?tE-!wMT~%i?SoP{{TfZPN%iy?Uqz#o zOvIdQe98pq?#CX1(+b}N?6uzkD^S9yDL@@JZWDTHdP1c_C%!i2%typD6?S`VI#uF+W2dJJ~ zLmkvSv!r_Di4(ieHF03v&sJ3;#sh=I%`n_Y2yuziL0q)D9#cQZ%ha(H+GJ}kbgQ!- z*3(_06=SxUP8qf!l<%bH74Th5V6QuovVpd0@(5jAIAubxF`$&0i<3o9c9Np5g6 z+YwRm)UxI9V2`}%ne;@Q#eV-dnwQ_5j#QON=|!--2g&>*u+}{wE-Ihd???F|mlH9a zpvq!rZ9U#Thq*Gf?L@}h-(yK}tx@^iWDa2$_PKsN)Y1}OH}EyCli^M=m6|HGao+w=##U#X;B_628EbsyBqaouoVy#+x$lNs0%z zxBZum6_u}qRON=8D34|gNv6;&wKZ3)t_n@Y!Efys(ilz63(rVK6(ALD#$!e#gmRWL zj~qNfrG01Qejod?T6nfY@a0~zHxTYQ^;3_6fIXlP;oU*N0|d&I^Vzf%tBVtX9PZOT z)~n!Vs<+y*pok6*{3kMzzne=xw`GoJ+7EMfO9{1uSrfJFDX$9u!7l@PvGXcF60LSw zv*p;An9&#_IM3WG;u$9xY=H_uSpeX?B@=52U^5-lkt*zNw4zhxpL0|p8j_qyZDWagJQLSvw(>PwK7_|i_zw8s##9eeiK@&((md2U`Wo+tn; zg7L%=RH-A=(p6z6>=4v1l5jAI_iw@KQfv-AW4lN9BT5BF_yeXMwF4zVJNjhkteW-i zh7f_+nasnrvU0=rMp+L$VE^r@%|iLUz9y%SUW*COROWC5B3mOgx#R=Mj_i%oM}J=4u@P+m7W!lqS88?Q!adtpnUBdJ0G`Qy z-$;d>oc@JVkLHWjnn&aIl9_TuE~<>N_ylotcvH6LPd!zh43SV~9+EQgU^ONFF4@q< zg@4T!OhW~8pQROl>jcs%>5cYqUhP|P`si!rg1t#uxmu=#CM=S~Yu}?6+k6a|v}w+A z)&{yS$)c;@kNaU&xQLC91Ro4k2&`m6$M5)(u6p>rv5DLZD#PVA<~Gs8_-mhe<^qW5 zjfv~ZJFRu9S*_d%L6_MJ&ZKa+UCrt`!Ygvij{ZRR2%cIw!<$YYeHufXDR%y>Ek;lB z4VTH*QQSiEg0&E~4q!i2l>46jC=o;V#|VkmS7I|^Ks$0`0nU1EA*E090uhY}%j?mkB%}@qq9$+8REj=*M5PFO8`@)-3RKbfaP`)j{ZaLhpAP9-MH$SvlxJ%k z9|wmv;XE^`(w5wWdp#kZZp*|f59m4?@V!wp3UdAbF3bXz|e1TBJ*atO_6IP%*UKoOxlP1Bp z0Fg(!Y;qO=8HNCEiCW6pOb^D8k~)x68xPyU8kBJp4o(FuchK}^AwFF`7e{(eEt%~{ zRo21nwGZAZer@ARK407hrDgfJ6kN1cjY%%z*$f#fn>kst&h6^yfNF{Z$2dVcZEU&!$SS(8%o5uWaI3KaWb8Ht| zZmU;|x%f|~k6tX#UyRXWvI4b%XSqFy2M`tZ1W)H8%S|~RSr7JjElt?G6AUjh><1VA zU&X*|xmzk(9$bE0wBaa8@ZCx@O38+J1DI$CZ4w$)E#FLXumq&jq~^zx;zWS4cD09W&0xm?&)F9I_>dJR8H&!#sq;AU#f?yA@-y#98x%A4xz6Q zN~iZ}SN)zx=7F$6KFQ1F0OaKP>+q0v%hog!vI$d&jB}I@UY)EK$>u8~jLeiYWF{s4 zq|Fg*_UU`4 z^djXSc3nJCJ{KdA6*Nt@0cV25W_#Zjg66SoI>2`p>>-Ec?HJ=SmwrmGzDGv>0p&$( z40w-FK;DzuiNo3G-FsxLhfIMXY6tBXur#?P_9GxpR!#E!dZ3Ot(tda>z>}jh_f>cU zC^T*|ZiJ&llGISc^)89+AKc%hH-H8Z$R@(cm0S;B@@=Exx0?!hI!~DND^sC!GuD`x z4epoC3PTXJg+*x+1XJyzttBDUA5-4JepFo+6hQpA&OuMb{ix51w_E37;?}`?q2v8#orUqxs#*uk86WSx43#AZrKOzg$}Dufz-#o#{o&H20mB z&F0^5R&4%4qlxqSHsMoB^^Dy_R4E*_Z*|-j5`=RFdC_k4xnetNBRp3-fbuw;_Nu!B zoPQ3Mtt{4$mvoRT3wCK^gdI^<+qP)+MiOJ&S&78E7*%uuRkx+jhpco}xs6N!wd{>$ zLDE#1$%Z3v0xjiNE9){zqVSM}q0-Mo?Gj5MvQ(P7N!;bzsIQU*1S9OZ!7(knhMS$}xKUvp6I&;dL8ipqv?GvJk2JyLg3VN1jQ$yg9v!gnR0va8B(bo`4}u2{~rR{hB`sIQ(Qxohf7ttAAhLIb3d{9brH~kUqEQRK5C{}x<1W{ZjmB#20m+^B`8`%!~$plw@SBh=DP6vH1)~G$AKEL2i8~zIyagVRK#8CaG_Eu7VrPIH$;Zch&96-oaOc;r@zYgDG zD)u}^#p6R7kiT5q5whw~P0%5fMQsUeU#{iExFID<`DQU}`HRFbGfX;%-;$!Kx?EF$ zVwqU0`YidxhzIVST}AjpHrfOAa`%)YqMXS7vi(t+i;*cpYI3d8OImn{${aO8xi)+s zk^F21skFde_aHuBn>eBh>=m>`nj3qc2vqeb-6bo^$=Uvt8-`&Vwa?F(KI8qNmusm7 zSE9FvND3kX<+e#J%uSp(RMmlLm_@aU)b&xX*R z&%PPjg7!_dcS1H@t0ok^*WW{{Hha`TNgb1kQ{g+<$G-MX`73)3H)HNPvJd1F#7ulZ zB-iDCkHir!`iMTF8@197$sCpK2XRH!tR)rU+BXEC;_;+bf_n+~G!iQ@0QPBxG$a9}HoZjHJn%~RH<=PjKU1~9 z#f(>NPz~IHA3`z`@=@g_3=cu=Y*x$SqVeJVjk4!y6+Arzf^Cg8GXE@*v5ATp8G&Jt z%W^V3cdvZa{&f7IazyVM>xx3B6IEiZwYG>5pNUI(&Q~2xOY|IX+!lP{V)?o~n`puj z84p`O?0Chyi!fkvW4MLklVWQe@Rx#6&l(Lbag&x{Rn7U2G zR%%s|vzlU8G~4w?UPz2xKe5N>%NJtZFVUjoQg8vP1+kiOiucPnjgIC1)5T8!UZW$t zgjZRIciJUY`w{*}+ns-T`dj;@nv^JJsce`dKad{?0P@5}IYrz&Q?3D`LkC50v;u78 zl0En8Grs{AS5n1=T6J0M`PeIwv=pC4xCZA6?1U|srGG@lVC^^fZqSF>EQ(-Yj~g4T zmYz=lt^K7oc1_8#yCZA>VjdY9Taghd1vrC7$80uZ{SX$T7RwnPiwX;mmJe}e!1`Xk z8uSOB)r@JfwR3Ho4*AlqwsVzveleZ_Rr-n0yJg>NOmAcLKUB?XHi%fIVmCQNsrbU6 zix~5YHOyai6tUZbj|F?jz1L)82^0x;cTO6^G$b9Pl52+0mI`iO!|{yykG}&>40M1u zSwEc_=bcbgzfOM6KF=9o!EA0P5yn_;MBPD{+ux>4vY%o{Ghe35gPreHT=<|hq0K#9 z{C4s-<~iQD(Sr#-K{p)Ux5_(SDu;}x^RgWXhEh&P&!~?@Xid0y==m#}CtbDm++L4% z*!cbEI-`_o`{}R|KjLWYxw=v0VrIs;Oo>GL==ow4d-a>PQaV`MM9s}mc~Bf`TL;|H ze9CqqG*jX+iUfoEF^C!)76UlW<21Ho54cZ-g8M?$D>k7UH-sKv%&8JZ2)yk?<2=7& z+%|1cPBba=#9=4GGXz0=Z_j{3D!A{!@A(QSibhvzq8%lkka!RcW;!}?U-xR ziclAbAlY=BZ9Moc*br`N%F!Sp8f1VyrSiilp=NIbq74$D-8yId7748f#*){_c!r2% zfH~wE0|zr^n^Fs%jnv2m8pV;ca4?wX7Px0_qNNw?Nui?Z6roj?wsn|S)M?TWQYzYR!c<0}%3?CEXudWaZG$@*?4GD9_7cabnilHGTnGXvu|Q{t+HS%S3k4sLBg5QP@ycZLIPDxEGAh-wB2E} z=O_p9I~-OnaAH7T%kBx-Giu+L=hD5CgC5=;x{Y`s9Vu*s+;*HLzqaxO&X!-Ef&Xg& zf^fIC9aWkpQR7Bm{L729pa2KnAQ$~Gh;LgjoK-V%#wfri+s-eIhrkoK8m*?nF)?jC*7fI|QD zseWQ%Pa_vRv%~N++eM{>E{Od?Stj-RapjIt`@RhGKbcrq*r$!Duap6K4e}#E+;>=P0rGz(}c$BbiFIBYNf=z zmQv_>0-&p8S#~kw)5z22Z6u$W@@GjkO&FsxDL0*FQs&6nNi|sgQH_==ZAuTd3x029kMwAN5V5>ZN@<_2(+W=|&7wyZla||uBFU#~( zuk6ZlLCRUG=xZ3oz9cMc@?)0g&S2EUBd6-d=%TXgjkFx}`N-+1ZhN*gVzDh-HRUM3 zD^K6EKhbymdT=I);5`iHc)==7VB;r32AAzQn$rjo?MK3~ImAoYKvmgK!nn^bdD9sCMxOJsEZaEfB(EkO+f+``yDE6qT8CGb2y)Ex z6p$9~yC|1&Cz!XX({Wa^BP70iHQo&{ErqD=;(7`HZo+7VsHp~!1$~ZxNCqaBuq-c+ zFT`&cSAjCk$PMmaEo_e_v6v^(2kGR=SIgV+eGM3vUmW^`z`|*e+?LToW^_a2&LBZ* zzy07$Im@W%IBga|x?XZT7AsWG4zKE^{xv|gRg)J4x>Bw?69WVy*O3C9>!rOD3#Cj)w?aN4YYy!6fE)jb+M*AIJN`ZY`-Mpd+)PsV)v?*| z(96P1xoyXL>3X>w`7E{#^#J1SVcn7Bvx6lXK>ViHF^V-{I4+x!SX<@G@gszpq#~*% zkgXbUIQII|b#7wNX+!OOlrBqGn0% z#lkuAAdcFDl-F!$QiaIfu^TX&Fum>(R-q5(?V&5T%k-jKol_KRF03uh&Dx_NBxWT! z1p5V4B(Hy_&;J;2n>ZBZQeAfwjz6GJN3i0kc5SS8*{v{wTk=-h$=+U@DtB#R%nA6% zlRuc`hgUNAOp#zfB`F&{6c=YcWh;vzVH#W!3>gxpiSQ}Z_b*R>ABTSY59QC_j)QBD z-0FMTGgFfGEC9p&*2}FDpw+rV=S&3&d4FbLZM}1KR1Xld?@H)4P1vmU-@Rx%fqU z4ow!$pbc-F!p!1`(JeSw8eA7b4_agh*jQ!|!e{=kMB05CN&o4ePm%TCFx%z--gf4H zX_p6=0ASU0M3U@wPfpW}Ssp_}CD`jNh!a#f`*0BAOD+ycJ0h-h-h*p`hY@FId+S}K zr2hF>gj#-q$OAEG+*}*vo&4H<6y|zmc|P8a*-iA=xMvpZT}4nOumq=C`?V7Ej<4NN zI?DZMxL$314r8I*ELv93ch87%@?;u8hhb>!B!P5$&N%J15+m_-dL}k_E&DsdrM>qV zJLM<;7i?g^ws+j2e!4j5>CLhnWLTD$WF-G|Yo+p9kd%tp8kCH>eI){!#~r$fp4h|Sn2C>43X+_0 zBKU+JlN-3k@$vY$tnJRAjwb;8ldNMVvFxS@6KAiUay^PE;!VJ$Qxv2(#&Rbo801)> zw>S|m-31e16xv@l=6L|lT%Nh{97>?d?F`r@AVg}{p!$?oyW+?DDS1sN#3y>sP)z!RDbupuChZrLsv|b^S zZ;VS2zMqb~Tc+E|96>lvMyaA;4YGlotop;~MdpT~)bBiw17NCZ%N7dS@7?nBr}ksb znFS{CUpLmSt{~$iM49+{2TYIa210~%$hEE1(OtG**5pMfJNw>QjI?+0QbTkwj!EcH$T{) zWsnE29#-J|t1a)H3~hC)9IDb}D-L@Z7|_J2sS+JWg<_>BvHFn&>&Nj8bx<87qrc8J zRx4A&yYVJsbp(sUddBs=65FQoEH}C)9FJk{R04&r!9>P6&AhE)t=W$kFh#IJui~Mk zlE=OiX`Z{rJwwVE&E|7`VW&A#MO0IgjXh6K|G+93PHCR z_lHy$uGYVB4p6bZ5eMQGW1q?=kRJCeV6-jnBn5FH?N!1ZcuvrA*V7$eBE1=cia;mF zjyR5cLSzR{9_~Y67g-pb59~m&tQ(xMr{(DY8ITV$_8xIo74BXN)>cC{x$w9J=ru+6 z;l)@Kx9)(Pc8=Gw&eMFIT~usOss!Vlh-RTuyy4>U`}m0`KeWSH<=*5a|4Dp``kz|jk<=|<_1|!qW{;_x3JBe%@wku*eqE3MRTH27_3007;}R?F zWQ#p$TK~z?GyyQKHEQjC8tC=w#y(}%6Rh$(e(>eNRv$n8X*vG>$@@?LV4IMM!SUz1 zjy|nUBGEfr+nL*%RF;*iGU;&%UE%_&z@K^aBMF3fMN?y%G9BDcr7Xi@BoGY}_(vfI zm0I-NGU-93TJ3%a5W?+K z5B&rfrMt4yF2v&;zOv4b^qonb0il@TmV1=A8@>H_%Ra7Zbe=_5rSgs?7u$ki< zGdv)$f!EJSJ{;o&#bEB(u#XZ8x&yG=LKfCib2}?txR;m1F5tD&50OVxWj8kHx-60B$evlavH-ELxz{tpn8JGbqv#new zGEQbUotU_wb#p|=VfV{CD6+<=I>*4cSKW_}YOX{h!jf3OUp6}q0>v^^Ws{?8bwjIZVK)%tn-t7% z>}B%RHGV2yAoQ0~jnP1apFl0dG4Jy;-N~H*>MiK#0IaZFE=~T`FIuf+#ixsRad4;0 ziwnf4gLY4jSbS`WcB%jZ3DwxLt7{Gt&UQ5%6Yq^SfO|PoMM8J7=bscHIE`Z0UApXt z&wB8WIHLf|wNOjJ2zUzWP#&wr^4;h&|0)>}bJ*upbIJ|rwe73bEIGRn@a6 zM~R@%dMt*LXjD7TPS)&vS(&xHgAHqYT%xC)e8~Uab*oQ}Wc#UM(^!)>QD&Z!QP&B7 zfSRps)v<-Ck=Z=g9)9(-ztnCy@tXu%6pBR25K&F#WYV?KSQE_gAXf|H1G_nn%q9VG zDUB?u`kh-0ic$&1z%%=6h3;kjOH8Zx;LO*T%DOumO?@=dG6=i6)9VwHCf{z)oO;An zazP5JuEGZ58*7BQnzrPzs=6^hO1bbaUb2092Hbv80ge>rrxZp@pdh=!< zm4|Lmg0Fl0PJDL1T@I717*x17`f4XxX6nTdsaoep!4HW!<@pn*V+a*p|C7Cgto4u2 z;EcMdtrzly30pVAZEoV3h8c|uyiXp6`*z^_z$}<_jOa>`jwZngQ(Cb4+idtr)aiHB zk_BB}m$jQXRGOPR?*f-U%6;}|2P=#q9H|2=z`m-i8`Z+ zKrSd$(@_fv;wiN7D+w)(98$ZjV4!t6UMNZUO-Wh?OsWZ(9HOyL9n1h#RB(ZwxP z5N${HyW~$CSoN8b;!Uf!%1qE6kxy0%NfgU}N%dNBIhTbE8upXrh1TS<%JGZ_iqzuL z(#QCCsmm0c1)5~W;geUy9n*HOJJVE=9ynr{STwaWo~lrkCiLU3hqMz2xwslqCiH8F zg(}fY2PTKF;TFpSw5KZ8BL6^mnUCyrUM??R3$9thvfp;WSQVf*+!HuApkxAD1=<`K zFEObgsyBy--QJuhRx^dmjwFQU~H!Xa19*);^aFTwIO;GhAajcz#SZD{X#QxlxARL2(w)1?R?2 z^uoFFssR>OO1fLsrauE;L)sz++No*eQu{s@T#BKujj_`kva*|aN#cpi*DkEqlKKZAgoX*LD^N>-QWq>HjlrPy3*IcV8+7BN8!^!NYXYS zsv%Rnex5sHKapK}_Sp-GtcT=x@sOe!Pc<~agBwrDWZu|KDv`*01xo~miB^Iy+j3PJ znsSd*Wq!)&bOVWQ>mcBGHVpb}n4*rj{m7nlm+FL6_z2065u+nJ*Fm{&OH_z_ZtcxW ze`N;pG{b1ArO(@A*5=mB?X~3~j@t6!HDQv)@0fH_`z>xJHMxMW&*MtAh)08G>AROk z1@mN6r4;UBRd7^z`p=b%L75hjQ~L=g5(JfzL=K|gB5Gb&kU2ARwtfi?y1AGr>sH?} z0~!~E5g*7Vjjybfao=nAhzJQ=6e{th>%eV;HJc$cDdi;3QUc}y*Toho9L%f1?rR81 z1$>MPlxwn&-Y9ExDX7&np+<|uw<(H3Swz@EaXGF9Ch3B%0Jbo zR?S?F2SC+w4$Dwcr98vSE&QXxU<0nZwynaWfex6B?1A zd~Dz^he0}_%eg2I<-qg#oUNrT1EB(Y+<+bec`y|0*WI#} zRmZ`0$m3LeFSU5!JshaDd@(p;j49!6gkrdX^_%8?7<;Mx7m^{-vadD^$%c4iLKNPX z2&4jIBxqXA9>9e`Q#zMVKoh}FMlpJMU$TGyT6y-lkaDV^Qs?Qj&azZvQV>{Oi*xZt zyayt>eHS1PN*WP9P`EFpnncLhz?`U7cBDlm!pKqw9Xk!=8#Ub36Cquko&5$$SvDTQ~ZcKanIYnvzkd2|K>HceZJ zP#x1WTn#pnR}R!Xq~XSn8r=e|FyftmzT7kJCv>5nJzg!mv{1fmhr(dvlMm8!ny%l$ zTlj>?7e7PIKJ|v(YUDtqG%nFR;vTh|!UgoU0OcblMk>c^rfHi)&OX;@)$eX5PM4>6 z8lOvG%}$TTVmwf4HJ+!6p!%PXGY9R59HZJm8xP(4W_kM^AIl652gnaf5S^67E7Dc> zBnbIMiam{}^f~CnRaBEdqSMt{GE%EjmH2fMP^8&=o%l2U6e&A9NvuY$3^cZ1kokgL zn7(Fv6AkKAf?N)E{Lkg&_wmddoNg{pqe2rOxR)R(>pT>xt2Q&9t-eN)nsEX5e(Vu) z3@qhxhe1oppjvQ}SbYpvfpEk+F#0mWuq@9St*(?8U$Mut%?&SHpOuD+{nm2M;_f*S zr;31PLAlNqGW!G8L^NZ%)0hwGm^c`+>MC@q^VVY%L~Fs}WXBhzhJ4t*Cunf|Nw!es z=&;Q(#P*m>m06Bya z5MWu=U;mx{#g3K9HYLU9rk2Z0?3Us}`JlGj(|MHf_okIbTE+2?%b)+j{*EqzHV9LD zmt5*}#D}OeR3&Csq>)iU!jOecOnm$IC21(NzbBO(yCUgWTRBx}Vzi`nRV#=gyFgP^ zW0b90i+wAIO`HyiXUn9JA`lCzAD{<+_(dyJZm!uDmC?|bUEf^?PiLTcRRsz!GZa8x z3~85aQ`3dgP}9XT5hyiYjCg15uv;{^#=c#V2q_T3lmHf-2PEx-+tI~N$=;e+NMWAy zua@)nzzHOcGW#Ab2{{PcA#xD8K_onEIGXk;t&kni;}2BH^`24i@x}Ayypi{HN)+&Z z)B35j^`8j;Fr~pb4AUH1d4Vz&B($)|_`{jDAlOVda(@i%?S?D-=+*(9@ypSM$NOQd zvb=5*2gmK;ND1py6<>QOsf`l}D%%K#@yM&<7Rnn&GDw0~8q!K;m=FPqWEZbRffGlxqxjq`YNs6=v=i|GiL2(M)7gm8mR6AX~SDy0{ zK$VNM`wrs5G`(-cR(NM>&315`&tXp33B&M=Y0iy;X^b%5Fw#toMwAsV;xpUR)ZQk_ zVvau~CVuh@JFwaek-cRmlx~)98gE?M5QZjxCPadPXbWs6%J~WuXGQ*|*b<<&NTMqe zv+HBCdsVO)2hy+Os+}l-*l6Kqke^=%r7=mMUn0u}E@&*Ot!^~^cI=bjDIZWu(ALdD zft96>{Ge*3@|mrf+^2nlJA!c;If>a}Ng6FG^yW|HZ{wNO9<@JH%A-MV9+Xu|==w|c z;obn8RQ6VH<1goVpmX$SkDGDORaF-H($2d2672!y-m%RF7_N+w5prqz3~-n0y61lr zOl^YK)-iAK`n5dt zo|NuzJG|NkL#oKhkPN523iDNIG}}5>DfRtlQZ{oa+t^tDh<=a&o|56p4R6{52CFcb zN99Dx75`E>_nfhf60r~LjY17gH1#`vp_+MiW!Iujt#7_IGKv`E?Jf}5Zkm7Yk3CCy zzkDN>LL3EiK_DvI@-%cI8DWnn+=5IA#^3KV(u6YD_zg8`n4;PIJ^l`sW(fY85HI`V zGa7%TY;J~Fhx*82^07^yC|e67YQD{B+FB4@2z_IsGVNZl9b*quY!lgd=^e|&!9e@6|9R;Jg8+dHcVt?}J5%!w1>iB>ZZsZ)x6!e~%T$4y|612oYL+RQ4l8Qgihc%F_NF6BDW;fV?HcQiG8i6~hu-89Ml7BM?S7*SQg_xHsz#%gkstEO6OANwmsTB3fM6u!vbNP= z>p{}3vb44kw@`g_RfCb2GXsz&wsIFgnf40#353_;2^vO3c7%&*{7nz8%ORLf-K;FE^igjJwRqbhdH2M{byC#RUm2Oj)IE2R=o33GJH6Dvf`V2qH~SBsc_D&j#DzGu zK~nVVvgiON6Sij!wi{qwo}xn^m7{PnIV-|0{9P;)d%#dqRb|{w$tgaOx{nAx z-^71yr9d(+<$2jKvkQ!O%43iC;ad_R%tp{HEVF}D%-!B5OCZ2FbcjVQDX`p6*}Yi= zTC>mq&B#zwse;kFHdOQ&e6<;ES2M`|1B%e|ED?er*glE;0Ji$By?1z_E@O&qlKKMC zK{&#wAOYZJR}UQ;y0?jG55v1+6u=IF-=1It#%^rtbkc;U*y(4{i;8u61e#$ftjN#o zix`G`!oCtri8t&hG$CIAM?Xk1gHH4H%9yhs)JM_>lBi*mMnTxUQBPcEo*7rkw+{JB zyD;z;_8j^-W^Yaj8au~V_z#ZQE3ephH+r(?CZ4}xHeHJPqfD^Eg*y3V5dZjJ%hMmn;xKuA zArPKyw6R=`t=SLgw25Px@TC=?Fp|E7yJ(Ub8=Mhx70_a@Y}yij66Bge0TG|DN1r@- zr}#icMKW~)_GLK-3_gtw)5QZE;y5+W062|qj0KRW!&sxgeY|m&K>aY_wozOip zu4_?pWmF_K`Uzdx>>ZTz$lP%8GR8EiLlbS8z2QR;f?Nu}NaEt&o}C%7-|?=8zE2yL zW*pTb^Gza;1Q=)Mj3%dN<@HN1{gqfp2RWYpOZj}zMpz<3=(f+3CvVaO=ayaLo7f-5 zIVV3XC%?7zpFB|=uYF5Mb!ccjD>f424|hlMC$lcBKfZQ_QW&pdYHxp2u`K9JW+& z#l->L23IFfdZ{d>u7&_yFinzowX2w1H#u=Px@!0{^7yi{c(1+?x{X%+Y=gEEh#O)u7-v^<=0x-o{ zg7miKa-oNQB3Q^o`yR%LRPVlDGhN+L1ZvR98#IiR*`WMPEJP+Yrc|&d26uF^MUf0V z@gj@g&V}v^sDva`_Ue61kyT}*fdIq~mAp<}9^R$&_;gOJ*ZM+)@0LNTy`AkTA4}te zJZFi1qtvX})#GlY%5gQry%M{tK-*z|-+M}bxwPzyIMraTOhTcR!2y#?O%iIo+*pri zRX`r2gZja*9o55+U_;Mxpp1tcmvbJ4;dIyk=cm82+kg?S_O^QoOtMA84@FqQaa5ne zGlnr)Z=qdtdCg4)1s;WzrV|DhZN=oqr6Acy1TybIo-F#-m`Qeq>&9xw553g-Fb0#U zx~&hn>>g50d^w)Fj*_h%AT$Q^xEpE@ruG zPma2&&3{clsJ)IZaU3ogCb}+qphIR*%ZPRfm&urq)^y8d)^5|>W*w?&AAF61;CLia zSm|r?Y-w;84}tgl;T}q;Gyn@17RT@7!r8MB-?j48Z3969#A?P3>xc(0R6w+2>c%N= zY8f)dj7kIsxiNXd)P2ILaH_ozQ-iwMWJy%R0+$U2jOPv%#h{O|=R01{HJyX9@5NG6 z8@q$yAwh>y1J=$9bpN?#q?GlC0*S|i-Koxjs}x*2fDZc&ohSz2$17_8-{GSgF)fNRyGuG%L)=&I1HTj5?47 z0rlhafP|IrP9pZYD%4Vm+Np_|3|s2srOZsa#sz}vdeWMj7?WC|#+vSwX`>Kk z-ob&#Z)WEJm#@#+C)MZsMlj11rLK99(9CSPWwaP##WJ4Ue#9U8J;5B~BTx;Ru@PR_ zR9{`1?7A#0m6f;zi~s`USQ*pajU*aTmY3Wq8WP2^QUF!^Be}#Cx0hnLmOUbytp&=9;S)9N;Z)aAX`_m*FiT@gfFJ63s z$xucZ1QP;$&nT?2lCRq*3GCuF$8-B_VjRQ$q?(lV$X2FgddDw660L06i?HF493BRw z8uEd?M@~zaR*3R$**V%w#Jv%{Ezui<)cl(m#uH~QERWLxF46z&x$-Srfi5x`k03v* zC$+0$27BJgldqJWi4jA|#ssanpk^OGdis741c3AK5I@%VW@S1COdNmzDY)O?#)q4# zxSYnl0kn>TGN#;8@4gP&)!vWrj6m0XSzU}}QtWocK8B0gcJR=_5WepOx{^%74(;?w z9K}jjm3t?96^~mgvupOalP9m1&lsZ%$Vk13Kfc~}df~_4aU|%-5;U&Z)36?iJE$58 zRgF-v7ZNMSow4t%(IcKxNF#%+yy||(f;m_ORhigFDsqPTt^OUrSw9vy>tox*I=aSt z5b^OL+SXOrP-XS8gGDM?BhG&|7)qV@*WUTOt+eS|;qEy|rgRqsis+`?E)78k+ha4B z8J1G!LPXR-5SnG*%QG5 z$Ps5Q&dwuarxt8M5bOeckc%LoroDXV`+YzTg#>mo(Mn3CWDYGMErOeCP z+jlz@)@Ez!5)^%59h>jra~-v)58vWM+>^PUTR32LyfWXj zRptA6%xaDY9hmGvN>as8JLEH1JvveanKYmA&)@b+6qcC`PT8Z3Ahpxyu9G zLcAiwz7?^XgttZ##k<0{4j7)YWrUu_GD=}}R9Fr)UM*K&Hf2ehQb$#tJZU_Mq>}Da znr0tWYyOZ_HD|>IhdJy6*UA;|dRe{| z+`UgTNLhwGcR|Qat4<>u2Fj)jKV|RStQ{?k6XY9!$aZUfqZ)mt7o^HCyH61SD1$i2 zilQ7I#=Wi{VmUYrP7%x`u_#iay=4zzf-q#m%eRl$b{^a5aOzY=UnUn>wcz%3TzBkv z0%vxzs{EU>XAuG>1CSaxV2~t_X;*5>ogIf$;8aqmVo=Hvo&hIt#uwZSB5^{*ndI6IZ4A=rPL_iH@4uW7s035O9 z;%HzZChlD*H)o7DWn(Aa+#h1_C0L5gB=WkSN>$BqQ*+ZbIsxL~DV-N|5K@k>dD~S~ zAP$alA#pd?YiEMy>G91PT!n(RehyS4Ta6rY_s%r&?(U&2Nqa^tV`{C;w`^C2U;0J7 z_cSQJPti-V$6h?GoisYCJRX+iTA#CpEfWM}dXase_>ThJzEFV%))wqm zVw68*7MS|2*iLE#^b}}T_(7qEckOUU$ou>rTpZ5?gRW8V#?cZl)9g4_NeQ&-&5YXs z@NcBSQ~Q9>0Aa-%NNaeQLdc}1UzdFwU`yMR4)if)ZqV;+{}Pf1qh$XtRj6HDY&JwY z(3Qf!%mkiF{GnmK>hT|>(=1t&P}oL7cYw_x z61$;ZqRDK!sj`HyVr7`vJWBJYFW#Y^dKN?<0XHwEjhQxAe8))1jC z=!Ecd=j?RUb8MP(#JS{Z+lpzQo-j*GcnY?A9(36URVzK2JA(p80|i}oZ#=eGmP4LM zA5zJgqDNRk9+0nXT+)?n1DZE+EIJb*#5hBq1|9lGNQP*nN~DX>ppjrk-PnsuAIe)a z#Vv4|Hx?Gl`dk9NP){@1?#iw=I&cFV1xlhxk(M0$nkuVn#)H#vY2V!^{FNx_>y@K+ z5PPSh2^gtsBt8CdIr*bKhQ6Y`Kpc~ySWkJ;&6;UD!wEC=HXB7mk6Q<(h*U~@!{b+> z(Ty@n&mjNpo$xPEV*8`aRxE5=okAFI7(LdhT#L_f#lr2v>Yy3)vO}0&rj$F_y!Pk+ zu6-4=fzakJ>>N9Ywi;Tn1+B8Wjh+AF|J|iNLT?&fKKHruoc%jJZ(QNm@`=Ir|KK~R za5dz^80((20S)qu2z%-@h)VL*YqhP=LNc`e5R{}gy*x^qa7|@kkv~$H-UpF+wk`V^}X?gl9TNBt#8EJkaL7Aj3g$LyR#<^4&D``-B zT-j-KFf8of&rvdD&wZ_FMD6V&@g2ymrCy_(0<_6UvTu{obfDvwpxJgq6zKBA1+hd- zYVe3knA_Q++At>5m@(=pH*0&l>7xZ#v9zh--nmBAWG$NN?0F`$D-X}khW3_p1pe55 ztOXRg-HIe*I6_$TfV%ias3|23RA|204J$$IEfjrLj>3`W_3R!EXrlt?`Z+;k8dxHb_-u*h{RBaPN(jm$1Vj=puFIP9b(T`jqASS#Sr8xau^) zoT)soSiw=XZA~%`6B3FZ)q$z*H-B2s<6q z9h0@lZ;#avB`_Vb5|eW&wY8lr8ky}Vo>UB>Bo~}?aKsp1<21oeJUPsb#x5`_(0=uM z)LWl?Vut~m0zni%QKg%_Kpj=~Q`UwPyxrI!EsVn81ub+b6!CahZAJwO_aqp65w5F# zP(f|H8l(72CXBw;vpeps1MO+GN4Vq8ZW;V(l+H z`G~~bS3&%fCx26(52itOlgrXE+M89N zOM_E85m}m81Yxe!7(6zaw*wGFNRcnw#~L*Cc&Nh2M7on7N6iSfRfLUe5P6u2QeZj0 zlq73QGR>oG92xzJY_(iEK744a)c{doj00B&bVgRQFzGv?+u}>3T-t!A8 zkJux-3yd0bdx_1kuB*yBf&KMV0mT1 z{mRAbVBK?^`*N9?TTPuKM%0N(r-zxo2NG0-jo%=ea1ip0fN7-?0{nag;9;O8kA+T<&Z`JlYF^cTBClX+L47+0TDGty#X9!_sWwCajGjF8PdhMVcPr| z+b%v-wNZlhI0kgu!3yx#qOZr}wu(ZWtMSYFd8S(nLF(M{PWk3N+rW**l{4C15tF{l z(A!HY%dsQk9=pb(N<`NP|Bm7w&NSbM^%Cmq}7{iLh-sRAW~d z`@M=3e$T!DVJH-d8?^+gJFSOyr&r>S%e3BeIjE8~tfm}zy(@Pu8CBCV z4)4FPKXc`gdv-9V_7gBX;~2UAfLr*-dnfM(TQ|c-<7Z|EVA9x^bc3iHkl2q*16>j* zSF-miT{QCW5br$_a{QO$|MtIWtdmb&*0UDM|Nqnf7bsxdC9_Ex%;2u>0GK<{5LFZx zmpKj1REmhfZ;Xyej%t=3s+TByN;c7SkgK@$sU9siyV!Rjr!e19Tuay;aUTJ5DQuB` zp;0#hTEQ;ME$eB%jlgiP+uVE;GtPz_)z{4{q|lSn`3hmS(_ z5?rdayfJ=>n&B`{RX7tThPx#HF5aR^5m$nQ$N%v37bT&FwkQOGPPvp)RUjMgLmcr} zI%vl>!H+wM5r!FRMv$e8QE4f;k20gSNcaF#aM^cUIMV!Jv1$9U!qLW-#Qd#V5Ipr#kbbGO zmLke>gA|Aq%ZJ0BJ3PSA*Bujc{DYHU5$cWa1G#YY4vm6NE%{&$Wk91a4bxEVh~w)I z%TcNfA{EZ;a1qb;C3n*qUM{2R@sg!8j~Y#9Q47{RxJh&Y=@fsKU4umt7KR0R|3sko zcd;nUNsj}|J0n&f9h5uclCFYGXs2u|Ve<(dFw5w>A%qn~A3b15U~ZW@12NpcC6jn6-WdW?!*pE_b@y^NY1!)e$zC#585!0kgvH-%_sD3 zI|fX`VJE}~Y2yCyNYo6Xwa#?($0FX?b=SD5o%M$kr@}XL*l-g|#@npLhT!&sdt~-R zU)>=$0B@WdW9wRE4N0dVOi2~9EZf&eo}t`+yBdp#GW(&e}q9C^6^}JzBr1OOqY9&^6PoESxaA9@N!`oLNL9 zIC@$66jqh^=N4Y$BfE$%zF4kZi*q_430VWQ@xt5X#)|RR={+X$6Ty*rfG2kFoD&(M zkRMbw{gJ3*P(Zg0c!~X@%fw4|mu(a@dd~1EiicE`brq}JwWiD=uj8cs5533DzO?e5L8WNa&p=Fja1ro7B8#huttMiX>A zTZ~^)7DRZz29k~N=wBdZ#)?=HzpZ&=lQQr+Mme-|8}?ke_>K`87iQ5OG>`nq6X;r? zU@1IGQ0N;|#5#f!^w%e7fZ1R#m;F?sg!cIPvd}UfP^Vbrto?ZM1Thi{zv(vWc%vbm z=8zz^G(5X@KbQW6jhm3o)wKAvU zvK@tFyvJ1QN>is6RL&5A=z+}PzCzOhkVW&waFI*E_-)-x3Ps?9C$d+P*hrlmZkMUK zATBNpp}&KGgi*BU+O#eSyo(76CH^&ZPN6W)I_2k;##jHf$}_eQA9@-nlLr4rg8x*K_eU8z&nLw7yppz$`FVB8Hm`38%j#NplW-CTB4K$q7(aW}&8g+tvN#tX!bU#r z;~zSo{1s}-mJ0l*^h~G;D?xCS%w)|ghmdHG2r$bS7&@ncf$_}&>lN4p9mjQ0% zq0Tg(vJXq2q6m#&Y4Gj-uHb<$#RVKTeQ_QIbHBnkM_V`Apyw*-;&bJEFwQa~u%XPE z<~TrMWW^bwz^0EFLLN)&@H1ahvd)4H#BON@(68dXDhfNC+pK|IE;g)SC4{Fb)EJG zP&HV*_EVj$n#jxblpEL$ae%nGVtYg!@MYc;*R2_vknx^~RAD3f9x5P~yupYSwqjqa zO;f3yBbAsp@{6q{_@s&4zG> z1J{;4@-1Im)=@gP8Gwz(P*!gi%0jC7zA4)OGWHG#qp}hXXFOmH z4`(CUYj9C2D6aD^5FhTX(-7V(n8>jmKweD~?{4DJPEUCd&NF~jlDHlYRInm@hOpda9McRb8lh&yK8Q*0iC|iBear5{$&+hm zCw=03jx2)1>|0|&>J-B+2iFy#vYJTM41##%db@lhequP6QVyWzbs@(waj+3fvaw)Z);iM;}%Q6=yW3jW?_iaVB!yP3(lHfqTaI zk(5_k)m)a?IuV{NMM;P_+Pi9(B}(t&(X<34KzO^evh~nw*?J1l9VLFpy(wexO zL8GQH7{f5tz^-B?Qsn1qZ;miP_9SN&lVy=jY#Fg4$UHDW_g(R6OH*PGfEd^?qoRa_mdkz3=PjSka**hg{QCv}`-4$QL(_YH^aR(Vyit&j z#l;Ac5a8pz)z>^*mxFp#S!oQPCT2wJ%K0C=`vp%` zkiG5mr>6DEleY_f$N!7}iFI7~Ot}yw0MxEis?#Ct{mN{Whc2NHB!n`kdkPkUuk4X9 zFhME%Nr0LceVj$j)L=wKD2hyoAij89++LSR3Pp9|{WoCll;tRIU9i8ArUK6RiJj27 z$K`8AMkIRG40b@|l{ND+TT^TkkPK@Nfw!#?BPu^Ew7FKf8GoM)tXG*Wq4L|*n?b|j z#sw=V}X&rP^DXhYXbh&NANFP5A3HLYdCwub^|BBi_xI|W5Jc4FwP zJl}*UIE{VTKI>ei;epRBz;UBnI@94if~f#G;xZD#hfqHne+w~1hBC&Gqa-(ssaFPN zMg{EFk}cl4jsd>sOXgMy(-FMIfC4Ty^i1P>u`lH!G2)6`tFbvguy@75DnZkE(J*>b zktcg6F~16wFf#GcpO?(%AN>*HZ<2W~`GleXk9^>+?YZ*SMf>t9 z8aWSW;{6@Zh~q8fwJ8WDXU|Spz1!TdAD7M~yJYG;#%I&;n`u_Tok|g)3XIU(jZO>1 zBZAY`hV-14vtkkfi>?Eo9QoF2c$gTtJAO#{I@npd=Xaq}2qGi4u&A0#ZhTHJZnCPj zoy{_JFcpWZCaARnaw`-!NwhIjt7#&Xd@w)`cj6-o_;+BnWZR&1XaPan&oFu08{eRZ z1YCj~brNz(CM6Y`GW$U4Udr%MxOBiX7UNoBa!v+3#7IQNtio!c$7qjuINtS6s?uZl zLq=q2S!(metHyB>`NRI^|LDp|@JTIS^O-*8e}Ci`?-~Cng}t|b-~f{^mT%g#;X}Bx zR)5E@aHRxc3Y-8ToVC(QF?Bdn7d4iH6y0=|FQGh$!#h=!g9Fna&zEo7?U96aFOW2h+?f>i zCbLn?BBGJLYP&}sIO2X{gfQtN@Ld<4DX+##(OuZ0>DpbmS3Yao5(TH0V*hxPj~>NU zrXwU$O;t1T5pa*aJ^N9bo2*lOLsw6?Gbg7w7p~SBl&>0drGCGfm;w7lEi1LaEX8X* zFd1+b9J{AxdfbqmMBt7Z*uY+xY2_5Rn+`Sfk_*;r0qldHWbVc}x)V zamYP7R$s71%Q=>E*-p6fDS>6cNW_C{4^aUIvSY`{BKAulvfa0(qnW^mku;8B&PWCi zq-(^7v5MO7W+M%Z|EDGr4+W33kISx@q*CtF>Ds}U<8QF&gXEM*N6>hVV)9_+d-uw{ z_(~r|l*ThE>>jV{m7Tr#=;DM1?mdrm&T76cjRYfb(F|n#z0r7;*$}Qz7)SGNae1d! z^|`0SCY=QKIizGuvur`6&^Gowimq~7b~1ItgA|_!OJB!Z5Z_ z2HVu)31L3t0H({_VjRF}p>cd;ig-NDHzEN3xMoe`8;e6t#Z7^Ysp>Ij{3oqoiG63s z2B07iYjazvWO%!Fcw0)SwXWvgkb zd_kO|jbTm`!1(mF^78d~7GXbZ&Ui6F(+mfrzn)ZlinT7$_(3-)5$rv&}CX_ha#2=s(KOdYMR#rdx8P%_<^FF^`qpX_T#n@Nlk zJhZI~TZbZKnpc*zXeUxuy=Wkcr>sxdAt4be8wEwjbmYZ#Hokhf#3TU(JQ2ptG)(8DVUZWR1>x|V>$CYi&b*K0i>vnkv?q7 zBHxSM9cXB0J|Z=n_i!Do8KdE3`x6`tLdd_;Fkx6XcE@8uAnm?^x9@dGQZ8%w?_2l_TqX< zv8nasmLGRVJsl8@o<%0Cn6PzNTOGS=k}cg7{!ku>bYFr>EbNghs|}0dmJzn7ZDU;o z$yqO{J^6l8F}H2 za7>T?g@{>j1RlhY(~2dlXA6QaS2u%!a6~kWi?%TWgL0<@eE^a~P5EB(ccV1VLmEu5mN_ zpk!?%*co)=4W8)>g25O2Qg)%=w}&9hir+jYdik4Ap4{Tz1^+XL3gS_Vc*X}-{oYIG z+&TO-s0i%Png7^Z0k{R=A60hKqpT-SzKpoB&#llDe9e}=N@NViOic*nXdK#!w z8O(9=Q);Po5w{PWM3zdaY{QnS-L-G0hgAHvMlwY0U0 zH50%Z5XE*Ho+0qpkhv(CA%(GF{&2`eY-q%-9jW@9rrEsjDu?m0X$KmIyMoh@yx}-` z2p#3jV4RRkRl1yk#-m{eNdyC{OMgbl^0JSN0JF6a9uD7ddBRfD<7e=^)N8d!4uJG||<@5J!qYWD9kM^Sg z+f=Zc0B@HC3yZ`$-OC&6I`pH|-%6M&ypTdS7ru(o(c{$mgemNjK$DrYZiKB5Zpqz8I$d zH~Sj40=pYIR>~tIF*iApc!3bI9CEwbTrEa8GgveDYs{hKkN}93GCJbn@trj|jLEU~ z3-+!)G~pB0IBf<=5!-*oKHWgmK?3?O8p}W8$=Cu4IcAa49#A95xB%M~LuhUrWfe!e zcGaGy{#tBu=n+P7JV~4Zc1nC>cA>m!3?sq#rtuY`p;cz5>^-=j-mORPxq8{2F)t4? zNldg$&qX{c`-gejfx=j|)od_3GJk}X*tT`g5q_dvv+G_AT~^L?sky@w5=rRi&WRK2 zjYpo=Bs*aVPIF923MwnGvExzce^NsVMx@(+<4HAg18T;o0?Gr1a}N9r|0(*v_{P*= z6MwnwcSb?n+@n~wE^(wYT!gKNVII$@V_Vpfy;Y_Sjo;z}v)KK+2g3wXAoQe8Bkpb9 zf=G5k3b#iTwOY3y=>JbXsLenB{P#xsg@OA1!gKcG8|X8}VHtzWkp%NM;1szBOL@1S zpGNPg-(jMFhO8MQUHoFXXKoF7MKxZovl>DI5b)cif;^)-)wvgcGYBsOTcRLCqH7Uh z6J`raZP1@V0wL_gS_pxa0XQt~dhINi(V)1MDNVnIrZs9x&5pdBhfb2{kgQfT>XF+L z^CFj($-%^mUGp~ifVgu;mFLfuFUF!fyn>tJg~Oz{V`zjTtmIhjh-!volDck9)m#yF zKngahOz%PLcAW)oy2K`73MmEAG(HfzO`0>|5XTe6L7Lf<_AvyCyw*Hw4$EF~fRw@z zc>A(3(60LNgtnxCcJ$M-JLNBQqpaB!g14;VE+1ZjcjLVt7b3{ZbRZ$g>>R9KwRPFM2}aR?xhmRt&!-0H635T!BXbJy%sF_*|KWf z!#yQrYI_C8O=6_ux#ybz&qxb{KC{(p=*>YyllR9*2m^J}MiIN$cZ&%@_64GB*RIB8 za&9+%!J!1$oxGjt6{`A-aO#y|y7P18vE7;~Etq>(g+@F{c1m*WwKrsq{e23-j2Vy? zcG>gVK!N~`*(X~x8l@|2&~TH1OuDu4n`-88VeDxnYIF2S6W4Za6O?;gu}33*5gi^c z8dk8Lk$(#+On8XIbH_{NcCW3aOfl=>aaeax)*`Bye zRqIxMVGJP+lYzzr{}gwN6QtKHE-fHkyLQ_Qz`;1(^JUZ8#c^VFL8Y%Gg0%_?MYy^z~vRcvMAL{D2S5klpb8Y?Tzv$7sP zJzFk*F_uW*8NlR+alkDE*~V_jHW(e#P`LB}Ze+CdUvoCk?NpmMV7T`AY${Gb7W>)1hTXN&TnTI*xGA3ja{WbI$tehO1n7JdZ4P z`%D~br)ne!YUhc^TpScpukjDu^v6L@v8g5?X&XQ?H{I^|7l)iPB7mANQv?8@y~V01 z*Xu+@WNR)1TpH}&u$S<=&9Rzyu(}Q?1v{lqMtk;K64KcnR=NqBT5L){Q7!kr-2sA#Dts zO!4CseqV=f5wQBA>nJk$$N};+j z6IwB+DGv!kfNSLaadYUUvDuAy)X9@OTCbhUI?}zj5p1Yw3z*3aP&Q`6a#VWW?!pVt zme1JLAx+pFsbi9s5Sy&e=!P^QCL(-WJP@$(wvXqiI_&8Oc8%}S?O{FW-J)oTJx8bk zu}Z!wy^MN6;9{0%*ltD%$2&D0)MN&8*>nr( z3+0`Aajj&h(qd2sgR?^$1EWtdZR~(n8j5y>8?CU%m6u`%cNGun4c$v4hgj|!IplJu zFv~pm+Kz5C+$9JSTb*d;MUMLdu)(k5;@dY=z;-!Rz{2Wh=E^8{r@T?j9lQ9ryl^j; zdV8M=26R!pbW?ztEvNn(Sqkr)PX+;}hVrC%KbgReeOU&<8R$8ets5XU3!>ORYh)#s z!t7i5e9oqKaQ6D`ZNqrg=)@nZqw$9(1NRI2?n8!JHvfsEWDG3|XB#P-bGi7Omy_{# z*sgg?yV!qIF4)HA6jJtMLiv&lvTZ7mh-n+q`wJJ#xws1?7$XJM%pQCc zg+OWKIz=4MIpRni-$0JH`*BRQx>FWz0+wQzd7E_FS|t#}ET1HGY1^77zS{sHjehM- ztSvz&n|=|-R9`LU9bKjxP9jiTV^8~jsk~(;)ymzB1Ob>Nmsp8go}8zVRcEe-C2Uc` zE)Y>c00yZD;(Mbs26V}-a1_D|fYI!eO=}ceH2|nB`-@86*Jq5}>WGlspISJ#lYYV5 zG4|4FGE^RnUsAW!%JCU{`Xb!c^Q$i?t$uc?gab)O7{X78WyM}d&zzw7j0}i#NE_T#Z$z9k>i>2+L!F#-zpcs5KOcRW25ac z%tkI^762+OhdNW-`cUIVZOaNwuQ^y|1`gbhJ*glEY^!}%o#eZtP{uUY*~fPvO%q0M z1>iowMmmiW+ILkMe%paXO5v%TG?3=g<-k2R#l?A1tYaTNn(`IuCz$0Xh2q0tyJa;M zqu4FpOg<#lON<%Hj=0MK96_*iW26nj=veqTlM+86?Wc6@;&5Pa(#zH9v;$!!-ag

;GwWyBw2?0@xG2~wkp0a$)h?#Jco{EahEXYV%5OM zhbbm7Lwbt0%Dpxc-I-cU?7G*c5XAUXm7s3Gk{Ac=73XpwZ$3kER}gus`yN>jkep93 zQ=s|hnN&;uQ!p#&86m9lQ0$h>RpG(2=a{IfQY#F^At){*z#_3#C>sn?XWwDs8=))E zjt3f{D}gXt>%rP;AQ)-<;U;myXn?gN5nJOcCJ*8=vJNzhZb#%Rh{O;XcONmV+F>@2dygk1n zfnv@H)uc*?Me7}+5~ThdBtL^99Jrl?c}_Ud)~4oHZM%KA>TaKct)}GyI>!D8Y|AT* zu*n(&v>s3RI!n?Rd6LSSB9fiqp}me`qLL=u-UUbpS|g>Nr%|f{AlX}Ap^27JsWNBT zpJ0RhAnBkjUK$XJ=&c+=6&U+=Gx11BqYSWY;gG_*u686EgUaMEvi3ulu$6QZgz#6> z@3_&ggKs9RY*zzy3(l-J44DrzVV5YTWjox*UN(N#!A_;(o4uo2sBspEZqV>>;b3To zaG}ELp^O;{m{M^#jvKk$zG+T}Y=|3&{{y$TiEs_veZN;e7vx}0Y{ro;)WYD=WZ$tN zvddzashB#&#%ICQU`EqX!gkKUGEd_(fKG1W!0!oebCnL&P%!qvd3g1OkVLCOK@7sT z)Q@@0vcxL}H%Z?haI3V|Yyq^4OjuF;o$ILxo2X6~;13GSPn?eUrv-~f6tHnW!5Xn2 zPo5xd_YzIX88rP!Qm&B>BQ&A@Q7mbptWL!fTKGAsgkp7vsvzDtbl(ij6)O&zCR8!T<$-*+mepnDVEw2|9ON z4PL5^j1ZdxytR13F`>1e#qre{WGElAx~a1HXNFLzLpT5Or}!YNmC zdrBSi*A$J-Ji%ATAwt>|wG6QX9_7CLd%apTh9rm$-NMw1drMO=(oMwh-7;+9**Gdh z77vt^5~*h=76pY8Ie2I!sCFAQjh67X#LhuquuD(~dTVbSICYwYX$~4wmDi z24>jO{Zz-*-sId-ATf*^LaVvwe~;aIQ*>3TPe*zc|T8ZMVZ(S^u;fG9=(x3RVn=YhRY+0v(S$mXD_vM7fp=}0uZ3krt zGdYzC0uU)z?5jw2WOJPSwtVRyXgBu36w;8P4!n3qy>Gh6{+hu+wsnJpzWw)Cd3$w;F79~m;E{@PrLn(H;X zfyMoy&V*IeV!YxyjRrXLv1$Sum~+8?YGMJapr^y4L(xjqy9r2EOuz)Z(zt;gm|K*Rz2Di{cc~H~pY*{x#uW8Pj78<99h^i)W zDqjKE%ZBJ#x8X+OVcCv15Wg7gI(bQ&KZwUET~OPEgw8=y(&s0LM-+3AGSk#6OE-5n z;~44jLEiDyMYap7xghrM^o>aOXBG>?xkD~S8r~#Z_)NqdQBzBP(}Iq_Q%?R695ESS z_94uKAG8Cd>a~|tGpSxHqzEaElgT{=Bu>bCkBXytz;5Uu^M&XbaD|_JgthPoGAD~_7BtZqH#l=YYnvQ zv!_!0wg1Y0%4@ILilC^PCphX`A$6GFk4VxRz>mC6f2Q}Qw-ylipeoLD!efysVp|L)dD7TUx45d zoi_j*+4UwYOd1yE4-13<$N?vUgX2jYK)huPSISOPxlnQSV#?KfMtE800{V6u&IT-vt?S z@~-VxWmYpu7tYDf;xz5=$KQGS`;x#3I7Jv*Z5%G!$_B@3*Ydu^nf;)W?iWoxa2E*I zZEZzUw}xrNRJIeAMxyW|{}DiGdHPAP;7CW~;bUaP=H_rLRb=YS2mS~K{778=16yTd zqlUN_<8_SCwO%%PO1H~u%P4u5E4yW60o<{@o#S`2{1u>;?ftFi%RO6$oY>QjhV z0GSQr77U-F{22-)6~Oo4GyH|vBSSo7KYK$9v=`H#AJD)?#J*AwDWLS6KSlmE3 zA06v`ofa3%n?co0R3p}7Y6=3f76gzkc?K?MG7n+8IN6)}%p;*=`?hKXz3m2fIOEkw z_78+akAhNSFL`<&_P#`vVZ0G1Qw}GqfVQ_M6dtuBxD;cb@vl}cBdF&ot z3lId&JMDS%<@SQ{v|MjiXe6t#B-FF(!V#8pHY^#xgRoE5^+MBgjo6MoqorUB5vdf0 zJMCD=N3ju&P?uh0_NB2KQVPE^UoMbbP z7d$D6A$oqW!cznL2mv$ zfe1%T5Va-~}ClpN=hx7^c2Ndqb{5 zRk9&XW;NmLfd7kK&fF+omAXgdrRM^Z#vKezLS@)m6bA>ik-iKi6T$A#RhHP@t_i_b)C$w8&y5BNeD{har^?AM zZS#l{6m*TtnzRGYoWcjdYLKSsg$e-KO=g{YZqI)0b6L)63LCzWF&wu~oq{=v0K}=u zser7_>y4)b>zCb?ZmO!Q_S4Vn(5&q(07wKdjV{=Bl}2HdIn^G}cA%XKX0}bMo1pM{ zWR!wgaPcLlhY;&5? z_GiGkXmw{B^>oVejXSS`-|#GENIt}VYH{NRm0Wg+>nr7kosvf4xW_5u@1ZpBBhDfo zpef|ll(PpMaqjl-blJIVn-+?#ovZI&c;SWeYLHBM->qI2YVgxu%7%jqkGf#=F-f4r zCAYZ9d)UJv+K{2hC9Kn2`5}|7!uUdIVFGJNWgYz&`?`rhl>ms7DUTng-aJiwBd+H@ z2Ogz6?TsT?k@d!@?W@VjcA7Y69gL|zjbJ4$n!C|=@;)92R$p)t9Xs4W=YFFQYxlHR z_9A^h6?RK6UTbfab~m}u>p0{I9ycbqNg!|JqL)k(fOYr|o#U5BWx|@JYij{ijrSkh zy9H|`Z?{GwJD#sl6JZ<)`?6ZROsDy-ppS&9@|KS8lxK_w<-*Sz56#Ze`F(jVm`37T zVZ?Yat%edn zkoWWUPHOxb58=+NJaQ#v|PlzIab!{4;ESDVw_8RotO$LJNau?!Y zPFLd^(pRf#ljcW+8SRMaMFMAoP-hDMp{GyPnJsZmO2V%je7_b6WU`St0yIqMEW`zo zjrgJ(KI)kGdNYHc?-wDjKeCCHbl!7ic|N{N3v-ypB|XAvJpenTzG~U$Ui8sz(&`*YS?o>s@7O%g3qSr2v2J&{uuQJoryk(P8?m|PBfqDb+BOrcUHeoWDiIfoo(S@H z@nrt|ZCedijQ$>a2ER*IrC1<%gwA7hc`OGNDsxlvmq4NIVEa!VE&0^aimj}?|$y|$cVp5>MSfrzLBns#~KPVAfI z{PVE}B07pO+AqxA_A%tOQH6X8+Y>$oswHfj>h6_rX*DKPovppK)HjMp@9@Q0+8LLR zmOze#!b^I;{Q2)gueFt(2G(rUpi%4N3-9<`J|(BuZw9vznXV9OlDf88#>}J+cRIy^ zgVPnhom#eit%LO|x7X%E4>1@WfqiCD8fdFa@c}BcxIAb^qaIIGe~Fk#Cogqj%@#9T zx-OWIrm;#21h3mAI(dRfj|UzpR#{Roe6ve26BItV`Vyy08>VzhCH)I8U3#NJFk>$ZU>M&WGtg2I1syv6%tdkjp<(c zN!A+C7|u~6gvwpHX23^Z!d{PcLu%mhaoAH^%DQU+rhlh)g^jHcoPo2A_+Mpag7Hxe zF-5Bjj_pklW_d0;@hI8s3hkH-pr(n(#e(*rOn6)^v_E<11I`oC?@#tW5On~rg+%(zX3c_~o8T65bMX6I&* z3Ttz=JDhAl6+vD)k8cp8s7~wn;8=18H86%ItX!v z$W3iMYf^mV$@qokGP8JlHVx3813$=x=n>v`U!8MKZJ)U3iBAYgk}(U`+Xar?vE@#Y zCPNkUz41c0N?n7D zDNuS6EQw?1S5{_AE51OSJkNGGy*D;M3Wa#KBbp$Lu@1bXgia;&qZ^#9HQmdU0NW#* ztb|!e+%2LK)#M2WfcTO6p7A8S%j9KDAF1OVN9{rH`LprEJ>=x3J2h>rzCnrtw+}(g zApye8!e{@BpjmYZzTrie7)Dq82JbQE#D3@s0Ts8P8bjL?_eT}(3sXsB^fWY7K9{l0 z!aS{DW|H%MIyUO)e>$~EY9=JNXJg6-#`VeXYzfEzE3o}I3-GR9;UkvEa<)&NJb9z6 zxg_|HC-uKY|A?;xAY8PcYE6m{I;%Pl^AxUeY;!SP1??fHiyNN&9DBz4>F}20n z%q+b@2{gn2zi!l^e=3HZ+X0BtGq|Byxd9X+1QLPP5$A&ZhnPG{dB)>#IRl+hQ;39g zY=6Xx$}st3eT`dV14b{U!`rz~}?~sVbj*QAqsP#^v_1$MjE4pB~4v!e)qHDELBO#t;FU#JFoh z+Q?5gv4kMo0^eb)U4Sph+ZYM1BTS90xf}1D&^(DN^7Q-md91Y=LTm9ZrGhlJBguuy z9?k4z*?4LIpXrr2C%Nu&sUn?TTS^%(EixoFw{@J`!>r&d9x2u3n{jz6tej+M{%s+HzY5(s{y&R5*XGEt z0R4SEJ<%p(3u6SQA_d=U;27_4uT-=Dk?vf&D)?hFIW*5MKn3=`yQgp?aytSMc zsl+c*S(8gr)Rm+pi=rs03IM;Cf6p28Wfuh`gA}2bT?YO?;#&T z@SJZaaIa3vO$AcWUSGi9SWgBRo%G&`DM^2UdSkAK;+jX7P=(xCo0HzhAw2IsMZppi zH4wo2{p3rdbA{6*9!XCSfMjp+gky0<;7iFDO!<$W37Nw|tkvy)ZNCy586#Z07CVuc zefcI9(MVOuGlEEg>(prmvj@TDu8y_kmN@VSR-`&cSnE!PWAS2n^ieN!tkQDie#V2Y zvSwb(jHuwUt&cw0Shv%l09X~FEcQLbB$>LafGHM_+v!jWCZLRZ(%qI(!N(1o=R|iZf zU+7Kvvo=I|ymw6uYHExM)nI3*od>0OE)IIDMi%1nT>(%LuBCEhpS~aQcPg0?{BSFq z%lF459j1;$G?|hkeXvG5jHXf&E6TB&c`Prl4i^+?mmv8K^AAxks(Eh*wC=e^b$=(>!+6w2w{qk(+71$5`rYd55A2-{Q5OJey@k38gK z3+;a+Yx@E_>tQUS_3uu1j>w)Ea{Zk&dR@spFzqknJfE7#I@haz2M z`96$=xz$r=zU0+HeoGUfq}JQ^AT;+VrSp>V#6W;1VyF#pUKpcfAjITXF?peYWd_+! zxnmn~z1)m#t7%tQSvHfZ(CDTV539JL6nRWwQ5^mZFOeH_m?*3;p`oLMi*Zof?IbL{ zR~Iu%k*Ohcx!T99uyG8@jKK6tb`r1+c*78Q!al=Qh(_D-G`nkM&gS@LZkE@ownQ?^ zIK!B-QinV(mXbH9H9SIS>K!&kDp&Yt<&8J(-9~z`7vhW9*--$8s)4bBs8fn!P`BG2 zOO#}-i!+h+4u^zj_m+K$;5S>E zHWi^kPsR2?B~<~lVY1|E6_+90L3;>bim>0TV^!rzG{;oQnkg&3bw8WK4eCOh$^cnT znI%KwM@V2un~3VOYqoyMfyn(Kn~01_h|Db*o+-n8p_Wr1ESkJK5M$l>U0+_(h0eWb z&sV4}gcg1NK{@@QZ3JD=yGifBVpnu0wt50ChVeqmJcOJH*kVWGk@A*3?&L4a>6bQm z=&35(;%=1^yzr6YHn6ZaIwyXKLPzE+x7r?r2?a5%>$HS#QpD;H?3FYkxw;moL7VQl z!v4Wtxs`NicK{nvv3kE@;bYXTiB~bb)BypQU*KKnQHoDYnf_P#PtpIxM;58%qUthn zgm9$jqe{OLm&TzIhY=w%0&F7KlR-k0pUKEj*s=EV*LHO;@HyMuniA;BK!IDnvYkV2 zQ*Ll}4}X_`m*3?>al$rhE83|;NrpoON5f{XxPXZj7hbtU@oMxK>W%6b#=> zYsp=qa5M@iHl0Hfy$t0jXYI7s%RLtH+m*i4bCeM`ApC{4asqsDm0v%zU`wrvLOG~- z4TGY4+m1XQ-(&V~Fx12|X-sNYC9T7VCK39O5V*WM90OJ=PQs1BE;am*2!^;bz}j_F z7>d|E4ADe^+#}E#_sQvlN6OPrr=&BiM`Sx>eSxNRnaY83!S>r6$Bxp<6hx3=nUt=v z)M+;xnCOvlL|q)kDdGj27(65QFCKewnq~ExEf@>(cGTfHfYh#LGXpu_EV_M)i=}OQ z-lwfG+iZK&;YB%OGCNQ>@6Zv%7pMi*6&q^XE(^VI)}Fb#gE`?hf{G3Pldb-Du0-T-rR< zK$;74(+&Dn3fMIp>kBJR0KmfH8zZ04H42&DT()(gGSC}oJUEWGlNtmxg$24F-U~Se zhe>fxu%)a{MpZm)PgNo5!SQFY@N>NZvU}L`vsrmmr(c94IH?iK6~vMKnnBk0vp+r{ zlK_ok%OE3caKx=+zo@M#Bpf!9)jpPd>?(w!qXftBHW#BureZ469lGP~If}}1y~RX zz!e=_#o+BgW2Ob2+l&~tQ6sX=y6^4=YR&=rnNmyNK8gn)`@w^l7 z9P?ArWLMXyd#Ek8npy~U!QmhUsX_~?4%z81?UgW>FNdt5n8&-^n(?GAjao}Lc3*)Z zrzwE_DtW|TBuaP6QNTgzlQ+$x$MdcO-Hg&zxUAG52%j<`rd!McFyXqBO=N4Zvr~3b zw!>^s`3{{O8=G_^E}E?$+s0LDKTV)R`zTN=!TGkCUch$W5ia)~{%c=QE?jQEOwkn} zilN#`xteiVD-pA7zx;Hea-YkbtkM-HfqWgl7t7Y<&Q3fL($yf~#e*?g5*eMc09=pTc2d{| z?;8cij8@?K=>4tvS-+Q$^}D!O|NLkENiQu#RynJKC*{msnMr9b#uru=F{1& z2tr^xo{$O{_6Cjc#lplk(Bi1H_Ovr z6pJovE;q$3HBp_;6r1n(hgz9hY~eyPriIC)59|Mb_P%c|8U8(lR- z>@gy6Vbk7?ZB<$e%Fd59p33*j>2G5qc(uDSE5go`8-F;qM-b2Hbh)G=vz=2hOd6gu zU1^&UovER`vljAOf=YpsQyKKb5=R(uK{n!WS*F804<@eFUV-9Py&D!)2UVP--Vuo+x0OWyhs z_0A<^izS`E*DKyu;kVC;$ zgK8u*Hd~?Aa#@ZQuceQAUh_h{eHV0ia)7Lzq0=3y%_fAvq=K6-r$Nm#53i_GP2W%> zObO>J0kpN-aoe7>h+X0iN(cOso5{9Y5w`Yhs2|Ek?iT(hn;-;x1%o=^boziC*1MkA z`E+?Ao0XYJ*q($zv7l<+AOcF2~>$(avKO-$*_R`Q#54O0&YM&=7>_*RMU#!joip)BZh;W zg-Y0(N+^BqdFVIs44B)q3u~>WyS1n;ktjoNQ*B@|*@;j_NcOe|fD7(`eh&KG?<;l6e?~oY|Dcvs8sHcJms}r5yphQBDAl@H=?FPho*O z@kU}JL%*vC7*OXY9yKZ(Zc>RGo}dP}h2zR^h{55qsB|GhVNZ}*5qC5eiLy;Yw_amp zHWExhDU{HLlLF=-PJ2mT5y8;xy?h0FWPHDjZ~K}dK)m2i7?mVKj8jZdVcv=_#0pVZ zi8QEOpicOctKbfnBdAz(7$%EMn})gz?X^PD+nlh`AjJ_n2o}FBg@PuXTQ=L%2QRZr zsk;W(k{DYG@WnTP=My8A_#^Ga?5~2)``tKrItZ|59`Hi68kbjwD$ z)$v>rShyFSw|7)vB85@fm}5~t@lv_)g3U+E!95ZSvQ7_-ND#qX2g2(lFk_*{Yo)%U zVb}?kbiWt-f;B8G%M(6mXUUpniy6OvcmDA8GB+QOtDTHKusx~{`oQlLd?H5Y%+wVq zlIcZ65&OrrqZ5bPfQ4%qU;>7%hxa zBG-tz0m*wI^+sjSVsByYU5XQTr(YW!pbB!8Um??!GfBoXNeZk*ra3J2BmWh(=Q=`m z+pgabN-yLHNY}Xi0eFk)jWK2`@p$BERTDWu){%*<>-QebVG>n+(8lTh1{6R*s>`hKNRqy`+><0M-D_Ab$6Hm+AUS^ z@+GCXAOWAFI zHLHd0sE6yf$;#|?I^@JEBX?vSq@O`J`w61fRF$DwaUNSMMoy;T#=!kKYV_dIQ`yW} z1>CH`U9D+|>0oSk1a8DM8{=(N%0h$M3R8+z)J`~QaVT+#J!k5zx60G8lt?qg@2RB8 z2A%FZt|u_!%B!|9OSsy8>EqpzJ+ilvrcAxg&cP0}JgIE^5?5&ij8*u5M6r4sEiMWg zM2tOKAsjB&jD|`!$x;9IeNf;ojYXWuNtTZ{A3A;TYFY4nyY;egH6FFDVn@5ag-}R1 zyf!cr8%wGqGvsosl^(;`eB&E$e51VajabM7`qjpcx5-!8_lTi94tB~8!GP<*)|uPL z9zCVVDLx3DjuZLNq!Jtf!JQ&)S6)d59D(iJYDV&FsWfVy+aoBFuNa~&0%N3`7(kp2 zM(r*uO)~r}VRf}_NX&GnlUKOOPTSw8iv%|-RsmWQXEC1M9`)3PuQ;=sNbBdaC?6dE z^7Q-m6iAeKo`H)7OkHzN;_(cg_r=eMCl&B)cBBx=+t0qtsxUrfaoelJWqI`R_=$cW zsTeNhA`sWed9U36_+=QQ@u{1%!V@WL+wQvg z3?X3XPz~H~l=J6-J#EEmOwP8vR<6fOus?#flvLA;=BPC);7A4dX=>+k1CI>w(7uc^ zissA%GExIML_R;I9J75=RiJzoIA#Nb3ESZL43p11kR2JV7s$sxIAy2P;r?#51Dg12E4 zlF{Y-j7p~C8%Z@%T+|Ef*H#eRx;9y&9IQry>TYr<;aIsqoqWX7nd-w@NhKNpCsg;t zwsY;Q+PXbj85FqJHV;s-L$Ksp=E0V5SUmAW?R%-*l|%ku8`~l-$J+D+81u|n_p@s< zlXa0l@zXNh7-XIZB|bJAWW!SrZq!>md`M>19&ysxL8$9PI0f9ooA-9ZITxjyxs6kG z4DjcsZ3kvRv_Qm17kw@UOx)>Lq7{5%YuZ?f%3{mH8Me~lQ<4g1L0l3IWFZ*FbA)L! zCuI>0v=Pa=)a>v)P2_^mI~ravQ_O|_Si7}J)g)6;Xb1xw za(apYUgfynx2+f>uwD~-2C85Pqbf$I3i+Xv+Kw>aoRjnP8^t38B1=n@W7vyS2}?=Q z4T6jzZq1eD(r&$Sy|ui)&{&K&!ZKxS8Q|^+I8pzec(NoMIL;PCwZHA(Jhl;XG-QiZ zQ89gY73u`%%NCHMP2~ycBs-xTLCO{GdNCdv)V%wS2f|>+(D*M`Rcxq=#4e_;ZSxVL zJWBQkd`M{U=}>JEEW=~5A-Bpszl=CBx9IF)f5OCcD+r*S)B_>O|EHz`0SZ`xbgKMfq!g9-D_DLJ23>srU;W5@cM|*};CO)7I_N7N2!(g^Q za_q1K+>ORu5g1@IhVJx&eUH+E=}sf@M;S`CvbYcd7#~#0!$vig)-)qCo&^;7f_)iE zMi9DC0=HdXsOAiIjeU*N_i=Ho4=74_`k`&o#QU_LP9Iz@&nAa#wR+3lbm{E`cv=B)lXNwrN`*quO+cfz zR9G!Er?e5uR>RLr9E&;C0meM`*biBjTuH2vy;5e{p<=uIE@lS8hO)&=ld+lVyNz4Mkp#6nGFr=+aTqF-*kER~H|N}-EAuG%4$s8tc%#yov+ zH_T=L8P#k^f9yu#Z7|g?kejVD*Vi`Pk?luO4-ioM@m(6UQs~DPgbWdfA~;$1ZQA`k z?4!egw82C6mHb0Kq4c3in!5SD7_vh4UajDkF+q{@CI=i{YmXPKeUNZ6v^={7_0g9@ z%~REp+QyA0r<+~N#tkZY(FQ^AD>JsF)&USh5I49=rQ3ZIm2se~Hhb6xK?wWzeVRDL zmfYYlMEH(Aq&i8X!%&+TTAQUd6d)>L&sZ(3SsUER-;ilyZ&rr7EF@?1oTw|xZ_4ZT z0n8w13Wre|ln;DP3GDbg>x&JOjs+|6eAqJ_3)Ye=G4QjR29yxRAxt}oQ#^B(#hK#m zEDQkxIy(j!td&>dN>{B`bap4%1RIL4vc$1&Z7$tiXDN_@_o}VU{c=AM9A54TR>yyi z-8uls7WdQ^5RTGq_vT3W0e&?pf>F&$wYLJlsX}miRQ2mbvmZ-=BU78Gw6$d(Y+t{2~46&B+|S>(0X_AlklZtFYh29hY9NgzT%|7 zL$QTC`S0cU1N-6h!HqJucM7ydvTPXy`|_+>sUzNqH@>fX-9E)>?^SimX|)H{%3{s- zQ)XWNOK9zOE>tD9>-1pCT9;mTCv+CdvFwil+;lbC!FJ#?2w${XyllfFIZ>BYNW~02 z*Xe<6f1gAeFWA%2*2tW~Kz^u*x6?*E7Vn*s!kDTZZ;yJBJmELrdDpf@oxst$XNN}h_9-G#@?*_`@f6EWNGZAWJ)u{w8!n8f$m_kiF5=*N4ZRJZ8pyECc9 zVJh*-%%=t2c`lxS^TvfUEo-Z16>Q>}*qGHKNa8SQB-yL!$00QHOoZm{j*mCs_1jYE zZeN*Sj;Au?T6cUZfe2Eda*xs#aDXWRUhC%(i>};GhFX(j;Ao|)8SKJ+VoB`1^rNNK zg@Z@cHuKY)6LHiSZ=YWD{>?2#Z$~M^OuRf?J`>&AfA3-(T>!o<23uiDn%}p=`TuqWOrdO{iiyZl2I0#Tk%*NO%D`STrZ| zQH6YB>D%{6rjVS5@Z6BCWS_9Fpx|s%vF|HyBeCMZR2i;)fW!*fw_#rE#PnRXbGmVI zMI?0~1cz4sqTs0 z>U364(TI6f7`C+*9*Ifni-5WmR-h@xNBVM8KZ^5CcY+$)jZa(yiQjOuia+j|bPxv2 zJ&~76(}N0#!MImelB}QkD|oy%^OKJ-(!cuifHNvVvWFpD3u)O5Ro}=2Om6jRlD`@B z9(ZYp(0HHoqhPF}q46!&&`n=8LVYr(r}*cApSIHn$|toEiYyN3Y0tqj-i=NYL+*rw z3}_0$OWIp4l;SlcrjCktIU)^ba5qLhfga8}sM+eSES1)hjRd1cxhVhEj{SpwqzrK` z?7oKY5etj!Ux*K&O2nhHXF_+RY{_S__g8UpaVisBF56yVS?-$9S|XMxZWGkT>(wof z(hO}@!qrACt)9!@H-XfsQN>K4E~M#G!R6U!P5E6FUcX9^(S9+fGJQ920&Eyc+i{LP1fQaFJB*iBRl_4L%@9DYnnAfc za9^2|3f(4B%ysjEJx<4KHhXmm@{Lxfy$<^{UbojLL^8sD83!#)YUp07mdxslVVCu) z;?v#KOj=&^A;++?$z#3>E-J9(p_WQ!oOBhjPqk2{z+Unz;tZfqFc*h@%7}7;2H)yz zn6he9S#)_ezOYLuer>tozJk26BruKHa$_OUT4u<{6a3Im?|ivK9#B6jXrq*vbvnz~ z2h%O`8Z$Ntl{cx1Ii~`&%eIR(G`w7P5D1$A!h4JvKodi44wK2ar+ShM%4CuNTkhpP zgK+}tXu?KWVUV_Td$6^*xE>i+hVIqb(8}5}^!-F=Y+1qP9x1Pfcr*@Ss`N<#pnTH5 zKhw@%&;Bd%3mfS<+_A^wxHj5N7|QXEb(T2>(o^wcqGvTe7V2VO`Nl#K2Cn-nB%ruwrpnl@UtBJN5uIA6SnwH1T-B;O$qd5P@s|oNU-$$D{!^ zG1aYlWcrLBlW#my&izqb1;{xE31yNr+KMRlnM#9S`2J}v4fp=(_iQZ|P{re(O{7s) zY)Nr$m6I0oHlnIc;2I}?Cvfb&m^Qs#_(psHI1R(qxu{}faNR`c7k#fZ2Ya2;0{b}v z#eNRZOEJeys5IQq!+yuczB$0r@;Leuu>eHV#kA(RJs;1%-Y)Gm+sFlgw)m4W;1aRA zEwyDcYf-_T`+LgmpqUBovcsn+QQ6c7wp*m(5@?#rFTaV}%7p`}eA9K=gan(Zw{Hcf zD){}uCZw~`7CETCMUPo_p3Ih!844HuaKU*?Q*49 z`Q^*;SA2YiYjf_EMKB)wsV}~VKY4+!P-`peD`B@|M^UMDAiL4- zIl%OyF$O(`{3facw|SmExKgfMiJt^T$4?Df7uo1IxY%_f!Ptn7gofBq@8KERV6<(= z-xpx@{^_Tt57~KIPt{`V_N$Rh%6$odJF%g^R~p3@`#?J zcog^lNcW*_Ckd`RLl%ln1&|NJ!+w&UUu)R9z07F{*#qW)Gw;sY$w!pY`|2-jACv~g zv@pv3P`~>`3c=n;8DG?qO?BnTHyzVO(7#6N;#P`lRxfU<6;-ur93T!5X0bIuZ#u6EwIyR9UcFUG9bD9L_Fz4Zc2wk$ zFo3N(_rpF_CZU9cNYq$Rs6+}(;6?(*B*|13l0DC5L%K*3FJk8rL_ zii^zlNqgiyxtj)Q=ZC(nScPtVH>e;hmar)@j2ZiS_<>x;;s=t9loAlx8;FU}GQ;%Y zYN8OO3s&QLc{PsEH86|89q)JqM8RbQxisE9QX<&|JczIL!Dz`4j87>CQ&l!t6_ZnH zd92uKD6g@x8q!zmB+)zG{ys0Lz*n4<`O=)Vhf{00BLtHFW?Bkh#N`+emKoQemtFbx z^s95?ujna*z5TuuVm1+APk~aB79>RG9LbPe^|&X=%e@Mq%_8{)B;#@;#?n0G5JY)_ zbF#6%fBLhSeXUx{giZdy(4&SLNk?J{gi}h^|F6pFXZB&mbQ7+Ho_OBQFmN5sQhpHD z0ZoM`-1h1Mnh2BK%US1;fc4r2a6=HRilaC}ThwXWYfmWK|DnA|!BT4B#FX1aI-zFT z({5C9r2Rx?c_1Mui$P2B&=Q_P;k25vPSf2rXcBT~TP z13MXbTh7Rl>~#G6fh7NWA-)EjVTd{x1B2RzT7FRspfcxPl=5?Q^Ic~^EEem>(;HWLUn5mMAO~CU#n-LU2 zSv>Zl>TX?#pI9{~0SFSLs#RR2Tfh+kd7M6Ysr)DVrn>d)CAU+A?B2*-Bbkc7z+ilM z`r~Rhe)Z?}#dR6Fjzy`d)~wA9r>CP$bAv(DXOEz$uq5&Dgeu{lV2wMzt#%pS@4Qxf z-u1qoAmM%YB(F|_xVAzkAAa@cNva@U>>57>|LA@BNZhZrH1{VaLwfwYJwSREn z^c>d(4xWP{ppS~BQQtJw2PF*8eE(1wwUjnioZmBx0Pb-&)3Xj~t#`BAYc=hnm)O=S zlWzk(N6Yia?S~G@b^8V)TrIEJ@8xDB)xF=t5n?O${8;Ej)9Jz{Tv3JN&qG0SZHY4j zg$I}0l_8tMNJE^uO4IefssMfDdT2pg4x-MHDsxblDI*c9MQSdF6c^NHXbw7+5*Q@f zrn>R=qO-ww;;T!T6x;<^;wEZnrG;gDiM9Apt**_7TSQn9 z!fo3jEd-WVy(e<4nE}c|a8=*pOBM6AL2HFYvals)wF^N^`;qaomQI}DF8giy>c7~T zs*88Sl-9cP6aW}@6DmW?TvnSK*~!De=5#HA^l3t%7^9y&ktSTC>gpvMOc2(-4r)@& zD}u0X1eBdS=yNzXU5YP}nq+ekRFaB+$oWCuV^w$iZ;zF*6eX+(@nQuEn6dr4Y7wSb zzg0vp>T}Vt0bkF1O#{NZn$vj!Y>9baD_(FAwkMELJan=2D2yBH+$K}l=0Tc9CReG{ zVJgKyxp$!D^dyYs+sSqptHFCW+Y26jy1f3TH^P+Bf!3(PWG@98qCn)^whlzCSUtAe z?nKVM*L<8uc74S(o-XBi(iuBF!c{0f!BL)_rqFmEXb8y~2`^R^?Zo7qjtF^x?mvl1hRD_j_pjNNk6@{mFqbY3CKx4(|S9`I$zd3LG}{m`eM=6LC00!k<>&z?j};^ zZ-h;uY_6eSnnNzC&R#!eG(YK{Ei=-VMAm*JsZ#z2h4I}}xAU%(akXxvq?*YE`#1GQ zk}*NHL>GKH-bARozXe^E5JW6-n;09l>mBu376t;KnCv@PrZOQ&+06MWN?{=-!jvSA zXZ37tEEyuxx7CL)s1tuzj(-yt6DPbv|DSN)-?Q-|Tgo(FV)Qs#QKZ2E^H;fF|06~TaK#u$wvBRI^ZzJ`-kc(pWKgH4Elarp4po) z=VxO+n`*1MlQNH#I#=FG{(Sjk-z5R!FbdC z8fUHcpR|>cl}+g~+q||iaMn#w1nt!n5_=uL=%J@5R}v2R>hPW{55-;y28SH-%RZiG z)TUx&-Rj%{CB_@}Kn94@+5}bQQQ=_w`RcB=X46A=0^7LmoU+Ex^DV~wnoS65N~2tB z#fZ0rPJ*V#PBErxMklfY7W`k9;*$sE_}B4uTsc6zRH#K-J~v%^liI<56zfe( zXw}_HF@MNgY=KIR+|QQ8GRa266)W zivRqFL21YebW$OBt%y*f>enxiH9;>w!617wDG8c-+38AQZd zrM>#gwnh6m9VW)Q3?XtQr(7)tqxRA2T3IyVSu6npVlv5El6Ulpkih6BsoJC+begn^ zqJZ{R%$QUvsX;91kg&_gv7bt?LS6#uRFkd5b(&ZFDfO!3X#5b!=lEwfeUt#fz?fO9 z-XJc>DbLVmDKg$vIfvG;ylqRW4eIyC&U_*&PF+2}kAV!P zyim6HOAt^$-l}6iwWKVS^6BhQ;A@uTFK8*N;~Ug&CFT2x(sdEusaU^M*bQaM6|AHT z(VuMmFmBn?d=;}Jab!2n(o|zDmV^ey_9EDn-< zq6j)RTaCLjr#3U@mK0)61YNS9s32g|Zj1_>>mI#*iDaR*`uQ(=ND&~IljKcJX>*S}~`2qoAoj!f!Y@NgSP zwTI(aNWX^@iiy^MggVzU!O;?919f9!3;SeS>6nK2fc}CHMG###wImz`5K_sVr$aj( z(ScfEyHovq`+;g-&pl^9R6pK^&&eZj`>DMg1MRFrjg7dHa}Re@*ma|lFuG$8jI&}K zKD#a0sm~SG(Qf^m|NhEeg-+qt^u#2@3A=~NoHnlW&rvQvCJ4E(!V~O{jb%dg>+Oa| zA<`#j0efxWo|Y7+S1|;6>LsL1ku>xahOj*o!QG|aQ$op9*jePTV5QFyCaq^KMa3HkiUT>L7co7DRy zk!-t%9R)12OLsIW_pe{Z?zd=E)3TF4TRN%QQ;*V(u`t|6I3^DJJ$|k{@+}jR74iWV z?I9S}5PFY&TU#wlUUr;OdVdhY6_Km* z%?V5Qvp6Eu=e!Xj)!7^(R2$)3Di_(y&8`TlD@QO=Yz$~DH>zrVW!Jb$a9CMtg%&4- z&wQwB;`T(n4KAis;Q=Lxu#J%ZNR%QX-t!$CAFwDSI>r{k6R2k;7J@rEXT<`Mq5R_u z3nVwFt51lYeAmH&#qH6%q~xf+8&qn%WMXi!RU}Q}1>pJO6PZY&dKnaQ67K*|QtDL# z${Nb)iKbIX!=Yoe_@j3*bnST{WV-Kn9jaF?yyL%DO4YCJd|@f~x9o>iV2(N45S-m~ zsuZY+y{yG;W0blyH&H3E5{otL5Yo`t;ObH=Dn5c`1B21VI@{aoj7h&wdU*!~6Y!P$ zAbbRfD1e%*Dtn~>Y>a_*L^}KFu(VmJJ?gXe+{J{;;TOfdg6n2)XWONQ?DuWjnG91mhxRbv4ev)Bq3oP{M>YYFyn#U zVx35`jN(i8DaMfPwtepGT%Moid0dwe4{Zod;9}1LP^dE(H-&z6F}Cfj-6YB)whg3* z(-<+|CTw(G*!L*SY-zf-Z?pQgJCkhXXl>L`xwDwm4K^aRSfQT>FhVtb(tfG%3Rj|S z0qgA0Zkz6SHpPl)hnTiI!`o;vXdOqn{^~}Cu;*!X6cay~Kwa3(b`%<0HCCAmtHSM= zTb$slHb){wHU1D!!sq5l>K?RR7hc&({^O0(Shoqm{JLl&f4#UbV|@_q5u+*fMhH!i zX4;|(%mgn;NfuCDrZ#%1v}f&c?HUjXtwbFQYFMQ!0%)f6ZL4T$M56Ie>_>!AT?*|- z`NLpT_Gsl-by6`Gs%o&Px~Jk3^JQVlzD^-}1ubLm;J9LlqJ=PnQ^Y~BO4}N=lomKA zl@J&nW9r4dGJ>MZDd2R)K^l(G2K^0tHB4Hu*z89+?vz)Jm$bR|2amMtuN|g)ZI+UOklFoaqDU}}Eu^zNq9q;2Pn@dcRW%je0k=N8z{Yb3-KznR$YiwI?GKB#D+x?GhP+-GX=63svM6Hh%McX zS@mL-kcDe|(JHT8Z!Frfocve7_n1NxgEaM2XPRFWkJ)nm6r>B`6142Jec63`$?w>w z{6KBaVME8E>f{!Q6DkQ~#SFL6!)DWE84$z^<+&@NL1sBB+vp4XIEgsWoC&(vJH*T$ zLpO|rN}!dLFj*!@zCDTcI^dGpF+C!iBV43 zISs%F&~Rs5y(R6FN{t8?z9@>Cqj9?2?|5bv6=UF+#PvLo_Os*0fiCB08k zZgOsH6d0zT%R>D{Jh+K4DMc&J`lM1!XphQYz8v4+sdZBVNw2=9=_oYbK-CnHV$+@H z-YrkW_W`mf#KO8KHGH5-Ee~zwxWW&U!KdT5mw;5w45gpAmbH6~tilY?sx63!&tZs? z3`fA-7Nf&|ivGu5E7a399w4MLjs_3F|)foXFHT`5)Ax zFhxYJ$bkT{UQ(R5v;zR2zH7w4Q)3ikxg^$ajnK0Mwtih_i9HO{2W_zE?Bih z+)IcCsL;;lVW%!;xNs`7LG|t$JQ^g!lj{zJz@u%NlXPpxU)rTPZ-0{U)!$84G%9Rs zl20Fl)|KydKGnRLT4On^_CmSh9u+Ug{R|jUjo4R1Di~EwJmjXZAs{Ep;EJ=cgJ;AL zf)gQY6mbTSj$^8d@3g4Nh5GN2$tU+PbPp_bV&t)~wO3}`5naTWh1&Lb1{gNIuWevr z>Og~vuOmGyc~YDGva|p1&e#m!{Mvtt{cHlo91iNfB>1R3J|t?Hko?DAFW-z8!bO3d z>p=h&CMo#$A>n6U2YF|vM;6JPur~@VBfuKXo5u#joWi?}$mOKf;X+JxR;kIcBFW}rmrQ7A2byk$30noLqH}1vcQ;af2!1j7 zWPoE|)Uqr#;rrY>4tcy&-c7xOua}X#E<;r{uBM-zS1vsj^K$5%nhVZ=zbQC2d4RWx zw%7|X)i(#BQ-@S4kyXY2r2byjmSClP&hYj;28Jwc4x&)UxpTSva(ko)V(ll0vjbU0 z98Ft5<>}eKUn-BLDU<5{yiM>1J_EcLXLQq6DH2>k*%N^p_Ao5>$?dZzqLaX+>;p}HQc*iLHzaIR z0sC}44Iq(;_0hGk)#-!r{ty#tNG71t1YKQKCLXXGo)l6A0+Z-Q^tiY_KW3_Cv7qmQzcv-BgZnWg=OsFT;3mJjHl52q+3*G zK{G;`O}rtVBchW`q&WTy%k;Hgb7!GR{Iz*4{=5Wz0Mo(VTWfgHu)#h6^`Ei@sT=NU zS`IiGJN|A$y$3L|F14E!UTaCBJiO1LFPNx?KyV}_e>w&}& zHnEnj5su~>8+$k+-NrorIB&MR938RxK-&mZ-ensH_cfL~=2NJ8*8U^JCe(FX<@Y2m{@&L&|r_+lo29I(=E+D{;eSUdI;4Dj0lqN@J=#q%~S z)qD3ioj@nA0Dw+_Iqm!{Q34--BXx`1h2KR0EOYR;)c-nyqk{uhDwB=Sfo03J48c~m zYP7@MX)Ar1>J=usDsc!!%x^xmfTlsfQ8J2f7}(rYSq_Vq0SR!n`JH@(U2Vsh7$pX@ z0?){g{Zba5f*9kkQ)#AM&vopFbT1!at&j(mkgb{0oU^g-fX<=sleJCq*+5+v4tAng z2D85fpk$K=8A=`}fi-8nj|D-5{uuDxa7a_R`u99@Ho%29U>vNl&^Uy^!P` zm8KJK3~PrhbYEpu@Ra#=<5x0yOsT0#ERZ~|;CIUH& zK!qJI<^Qenj;Gh*+oGodjPR3fb=5l7WUlgs)ML&^LLqjpT^<+Ob$}CJ?*aGKxs2KN zZO3ErT%WgfLtld0q~PZQG_gdNXk&x!*;q(JJ8w(IjlT!36b7n-ijp<^K!t~3Ncb>_ z(h|$g=R>l>eTho&jXPWFI70}d!ln{)8wS>ompWXZIuF9O@Iy>uWUY?kI@If^6%6fJ z`X|oZkoyQgCSE`Xh*ZT%$nAj-upx9Yup27gY^533UIJ;q09Zg{$D{vn<|#%sz{$T- zdBB%!Kod5winb*P2k=`67E2X72L=L+N7vtz(;u*V_v#sf<0QKe6u01BiVk z%B5cL)qb*_JivHMYOjB{MB{NWNDmW%n-bGCSjl1r!+&CFf9;0Hy(2^cyCBLEf!Y&> zN!_R)EssBCN1)mS69dc6vK;S?^mhTMiaOfBQDX;j)H!uk3s(BI%RdMX>0u^vi#X?q zoXuA4_BbuBu882lj>)FHa(Z$BqQ?HVD!4}Dk6IrsE)n&d4R;vk=WI-7SQ6?5n@pZZ zxEWXhpH?d%H2*58u1bvxvE|tk<)j!1y0~J*Z37Mpv8bdEy3C*xY{me9U>}2ovCG$` zu6>AzT8W`HYsZxM?H0iyWP$#Q2Y%}4D&y7y@xEr9o|E^=>2FSdZgbzou5;4yEPcy8 zHYiAhJKc5^TQ(II-X;S`SFY_IX*RoMl-flb4h&sz3ednrCVoRG*#^K_ita|DUQ`<@ zt+Z-6C&|JFc|Ek(q`kH-B*flUlEgc~gHENw`^1)aWhvI-*li1BlQ4g*&u{<}Ffwh` z>J_&pL>={ncDmh5&a@2k3dA6=HZ2vR`N9T7_JO95oUR5S6~7@S9WxaoR0eO4L#FVO zScZ*f-Ta zn_#$Y@-4;cBjy93nQA87)akO>3n5R*Eoa%wqtp>g2!cv<$GaD09{9*nTz^;6jjOh8 z6W2KwYw*17#Xu8`wln9ul%WerTHx!veFP?eM>UNZqv4_w7ef z>w)I&a4&t+Pk-F^EuW+LWjA|HFe+SZwqFRRhzx5h*HN*wVf&~EkR zxH)12>8_)SvNBCVJ~5`*i8L7+>r%5iU9iw|4&^C+>=Rg%QAY-aTQkf~wu;S|3s*f{ zbGW9xLlht!`#*_Y0p>tSWs(T!+J)GZ%jJCPUpX@R%p|CyExFNDq3&6 z5v$8aP?3$Oys5>t(q4^MkN3B~^uOO?kYWrR0`RkT0YOF}v$s)-ms@w#

r$EgmoLVn(WTY4ijkkeD{)A7$q?5v1Hjo`y2tDeYi(cnBRv+U^Ktw)*dBh@@It6nH# zH$i1JZwi0RCQCyE)9=a(Nz?i8m7PR57{=yD9L0KPat+qumhTJ(~wF78OEQx$9Qxo-_Q9G9y{O;gR zEUk(f!5+h~iX}J{-}k7Kig`xrYuCobK*R2-M>p#*Ise_A&^R#jb)@<#n1xei^Pz2w z3nivKXFY}uJ16ilU>3yvjs>u5un62yp`#D=zcgY}sk|TA=+>n6W1W%hWB}mK5)(_^ zS^<=_>lu|oF;?ia-wh`%k~M^D#F0?p5@8(~(CcpjIPE(Z5J*ed#W1134x=N zqqMgeczx)^@rgysW9^swgIG_@Mz85iZ3kpwuX7OR!mR9c6neK*M|O8$b7_=&y~vpW zCJ{cZFprLP+YxQP@5&zU_FLPFs19Ez;+C_6NEj;DC9$u{r!vU_15R$RdqvL&bpx*yKp8OBJ C$dsG_ literal 0 HcmV?d00001 diff --git a/models/ggml-vocab-refact.gguf b/models/ggml-vocab-refact.gguf new file mode 100644 index 0000000000000000000000000000000000000000..8f26cfb76c9f287f5ff06bf0445ba9ac363f11e8 GIT binary patch literal 1720666 zcmcG%372EXl_n?btp(QgX@6VzH{-9?y)6RV5)akyQ|L6M(EDo2)KA01uh3 z3cv%gWLA@v&~2c5Zj`(Qz{B#83W5U;5I&zxZUUm$&cUZs*g%#D@Gb{`t=qpGYQ?bTG;C z!G*&#=`23_U;OSzZ{Iz#j{gPxv;28a_mY!zbbFAG`nN~@@$Gat&U*R4aQg12%m09D zK-_n;UV3|SGECVo7iW^+O$XUa>FC12LBDsQpLf!pEl$8C{(CT-{4tUK(6iy=_}{=o z_QKcxU;GPy|4#XzFJ1m-I_TtGTb^%T<>FrMX8qekEO>Tr@wGaaY@5a-vJ!b>h zU-@p*x%zLGpY02*JIKVpIXJvMo+P93RY8%B$I~=?Il20G_+t5GJMZ_gN>~5ghraIR z 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

rh|14 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

Dff{wZq(Gy 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 z7|0mN7|0mN7|0mN7|0mN7|0mN7|0mN7|0mN7|0mN7|0mN7|0mN7|0mN7|0mN7|0mN z7|0mN7|0mN7|0mN7|0mN7|0mN7|0mN7|0mN7|0mN7|0mN7|0mN7|0mN7|0mN7|0mN z7|0mN7|0mN7|0mN7|0mN7|0mN7|0mN7|0mN7|0mN7|0mN7|0mN7|0mN7|0mN7|0mN z7|0mN7|0mN7|0mN7|0mN7|0mN7|0mN7|0mN7|0mN7|0mN7|0mN7|0mN7|0mN7|0mN z7|0mN7|0mN7|0mN7|0mN7|0mN7|0mN7|0mN7|0mN7|0mN7|0mN7|0mN7|0mN7|0mN z7|0mN7|0mN7|0mN7|0mN7|0mN7|0mN7|0mN7|0mN7|0mN7|0mN7|0mN7|0mN7|0mN z7|0mN7|0mN7|0mN7|0mN7|0mN7|0mN7|0mN7|0mN7|0mN7|0mN7|0mN7|0mN7|0mN z7|0mN7|0mN7|0mN7|0mN7|0mN7|0mN7|0mN7|0mN7|0mN7|0mN7|0mN7|0mN7|0mN z7|0mN7|0mN7|0mN7|0mN7|0mN7|0mN7|0mN7|0mN7|0mN7|0mN7|0mN7|0mN7|0mN z7|0mN7|0mN7|0mN7|0mN7|0mN7|0mN7|0mN7|0mN7|0mN7|0mN7|0mN7|0mN7|0mN z7|0mN7|0mN7|0mN7|0mN7|0mN7|0mN7|0mN7|0mN7|0mN7|0mN7|0mN7|0mN7|0mN z7|0mN7|0mN7|0mN7|0mN7|0mN7|0mN7|0mN7|0mN7|0mN7|0mN7|0mN7|0mN7|0mN z7|0mN7|0mN7|0mN7|0mN7|0mN7|0mN7|0mN7|0mN7|0mN7|0mN7|0mN7|0mN7|0mN z7|0mN7|0mN7|0mN7|0mN7|0mN7|0mN7|0mN7|0mN7|0mN7|0mN7|0mN7|0mN7|0mN z7|0mN7|0mN7|0mN7|0mN7|0mN7|0mN7|0mN7|0mN7|0mN7|0mN7|0mN7|0mN7|0mN z7|0mN7|0mN7|0mN7|0mN7|0mN7|0mN7|0mN7|0mN7|0mN7|0mN7|0mN7|0mN7|0mN z7|0mN7|0mN7|0mN7|0mN7|0mN7|0mN7|0mN7|0mN7|0mN7|0mN7|0mN7|0mN7|0mN z7|0mN7|0mN7|0mN7|0mN7|0mN7|0mN7|0mN7|0mN7|0mN7|0mN7|0mN7|0mN7|0mN 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�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

kQ5kFPChap00-LJy}Ls_ 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�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 z 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

  • i9M4?noMU0AdU7_{u!We@o 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≫ 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

    4c9E|Utg*!@#JNT|W4z1D_SGE{St1!!Lap_UM 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

    =K) zDEREk^nX%~BJuwE#k!TQ)?>+f#v}Sqyw@-c@CNb_0BJa8qPdp`b zG$exdsEc{KUtrKb02%m*76d&_v>97xfh|?X>Pe9@P`pd|9?Jp$`thgQ*i*%{)o`g#{Ai*{*C`gCZ-Th9>7_P z+L0q*;_d;m$Qyxvj&?2YdgE}3OfV#cIDms4LxZXhy2K(}CLa!+_IMdPF0RQ3rl-32 z8CiOJ`mWf57Hv^$#u)#}Z$y{UrFvi^X`Dt7n@G~^q1bnC*WFzsc5^2>Dif{B%9Q;q zTicdVWI=C)VSIDoJV%wgVjg0Hy714ILzEfQwLY1E)jS>FieD8y@q^3+kgkexAfJZF#?;rNIwiL70Nm3sJqz5a0awf6d@h<6N$`o*ZO1*`^Jlhai5v_ja!?hUks zNajmNr{Ot+0k(!m$U3dEoeTnte; z9!^@8EaYApbmWh$^QEX`e&U{E(~Qt4HRhr+WDwF=*9|5^l5I7v$Nyz|Td!#+c&Gsw z+8x}N2sgUsemV<&h9h_OQ&$lL)cYlv+8SC07#{U^NjIr3yJu*GE`k8lnD%gv#LVn? z=I>7;rvWyv7nK}iGvFy{u;R`vB@m#XHC+B(A++OCp|a)%)y0=J-FE-_Q6}FNO3JWh zvA&5B-N*q%uqEEvr}B*piWC!r5j5jhUvd;R(5h$j84r|;&Rq=aQYYlGT;Qek*N_KI`ddYjqdvVJAba1 zr%yN%;bPZ;!aI>_exvIPvG}}~@=L{8G<-77JR6uDcHm~Y?Y;`7b|qfs@W5D(4Kf*h z+^M4f_b;4^-P5Pda+bb8BRoWt%SQ^#uDS>DYBVS|KUarD6IW@SvwpFj|0S86?5O$Xn;@CE(A;4wnQNdh+XZxVZCTFZzrDS(rE$ z-6BBK&-JuAt^YbFWlQk(-5Vc=YnYSGp^E=k!hlpPJ92aXnOqGTYu5zj%;OznrYsV!-G`i+QjbMd53 zDk~f?y$z=S-Rb)h3gt%6%EQ3%`^Y zLt`x+E1U?3*=Ze(73)C4cxJdOMD#IbBGaz-YA}wd^+y#!i=HsSQhx85aM>p z)7-D}gk97FJ!LrdSU`1cdreFNwg*ifPS6KrswP*H$7k6(pU*xkioJ>OR!qIR8rbu? z#k5_z9&|lrl_bopVi;`jO>|hmyrOlJcxU^-!Yn~p)3?om7gFs;r`z&Yfb-H!P7OkY zFp`Iy@z-=(dk0;NCN0HFzBN$>-jXO{MIZ5*sCo zejn`-%#4hQ7{u(>Qg;`5sQKa_B}XYXSRMJuX=8mHcYlA9_K~)O)y8mOP%F~uG1A^M>qp`M z72<$;r=z{>04`j^8UZxm6m+%UYba?c$x%zK#cS*0`TgAA3lJ_-iU}AKOVez+*J~a@ zsdpkOc*9lkJ)n||!>>Y^WoMA_^Xd9*MSY}@mLZJ#=p2kvi$%daOc z|KH|rnPjS^UlWz%s zZm?wi8nz-~lkMH{u3zlc3H=_BJ(l+wDC-oa#kzi%RwNQDuhv8xOynOl7fbISXgOdP zYuZyF6vZKC5fEU|j7q4;IiTQR*HN%G*+e_tyh>(*``91<)AVZ*jnvnxcHoN&qY%W8 zKbqawqYE#wi_S8A)=SG3{b+ye<)hP~e-QO*yHOJfE`C|}qa)e+a&<)%xq3wup{Z=P z+Cz$Xj(ml7I+#MvBe~f$%ZDY{MbHpW_N4UYzsFuuxI=J4eChPi#Knc z5<{En;iv(P`D~@;vnLy2_DG{1^xHIwa=C4^?D5YRng)gi<$R+V_r`Kf_iQ#iiO=M< zXwn^3vwX_Z(1V-UJ)zP9$TA>~Z!z3lSs;is8nQiIDp#m%Sz6U|u}1Z*UbpWT;jsBM z{JN!GT%@|pI-6_4W*Id*Zcuf1vUX+W#P2!~!3b%s148Gm)_t{&#)N)!*CwsgiRp#d zGJ#>3e-BV!Owh^X4b-semDLs9fNg5{YG0&}rXSAkhXP{#EAVzDgqk+5X8^GOnroPx+V9Wq1Lvmrs0M0bo|KIh z<=kqURcaY$ZC08TlGqz7J zru)R+WsS0Qg^SnROuMixerZM-4NI@^&_6!-WOnLiUGmNCkQBLy^L{sdPh+vdjz>)h z6!fEKd3Qvh+nog9wf!|3p3{j6l3rxl(F;8LuW zC!DXLm#jK_tUobW_6cF=a9+7lUlg)YV;gu2FZj*ESfl3pbM~aGFgrWLC?P zmN;3DtCejlzvy<~S@$P28je*auPS6ey3F?Gss@Qy*r8QWIhd<)aNwAoq?SC=_!(Kk zfCpY+3s8?wo3p?b1H39ImM%X2NV>3CZrJzmHO?}(1{=-h&{u#Y!lC5F(iJVBwZd`- zKh8NQj9yl^U4OzmIHAA1-w=qJE1^w-K^zdR%-$T(ekq6#G^@fg7+h2{qjC+`Am*{z;)Tm^veF;9xabM*k)WPn4vK-Oe?Q7FoKw zs_)FrNFKI0*t|cKuXka;*6EmzFA}`-&dK;8-i1c!JooTae9p1TYU*Zy<5yPd6?beu z|E4%#D?^ZNZDqFiB5Hvho8^Q<+bSL1;W4hk!j@Ii-LtDi^dC+p8Ee65E zOuAYd99@YO((Vsjiti7y{OTiq=aqUmGQ9pYx+aEuhETXm#PxHLXgOMF&2GJRN`vR{ z=8VLI&~>j}zA5o&syg6rJ8ArD%w|o^!kDpkr(S<98$F$9{fz8irOs&%8=z)35bAzlSib)Qs}}{I%{`C;a3wvS&^_ zBi^dalbSU&lxY?~zrt_Rbrs4ihSWV)Ljh3jo2}ItG>Y1HLDn@2p_$iL_b%@dU~_qs z3}047WFS2UW?1bIg6}|j+mX3^>aI2 z%}FZ?aqQfieyuCau)%?4u@a|R3ZEV`4)ERl_~bX5iRp(O$`}u_goO%7{9UKw5{0g% z%UpNY5k{F6a~?J4r;Q~K{)zwl6Mvyq1z~YX#KoP!&Yi?$D8{^ZfLa|Fzx;B1%K?&L zpK)qpe)dz%QLQ|AiJ)L{$|{&Z&FBy4%W!x4HT@|PfKI=*Z2mdyMY5@J;O5Q3^CzO6 z811H}ceRBYG?OqSqu#UKQ?-1Jvj+Bkm^O}XyHs8d4rw;LcM0;Zz*on&dwm!C*mVSF z8sYRXq>395)M;#7bz~$?sm{T1wayD{S2xQl1(J3RF4DT?Rtyt#TCA9WGY*ogRvo%g zxsE{U9sSR9Mj1DD&vknE35w)dM0XiyJDRk3?5ua)qQrH>)#!KrQcr3O&0Q5M{KB8* z)8E(fm`<5WY(}X&YDGoP{Dsa@)lXpyq+`$l$`1#i9Xb}$*K={@Fj~D!XHRaZe?}c$ ztH|!XcS%Zu9p?oB#9!>uNit00gVpL%WpnElm2SZ$R)n_7Bww$a2x~-Z^5IBj(JH8p{n|%}*XahUr>?mwh@g5c+W}4Xw@kx{8#rBk_TqoalSu&?k z%W|e^HFcR#u*~4&TfUo}z*}?Z_52A)8&W{AFi;oJkcC@PEQ)KW^ zmb6zZifQRrJ0yE({W)XwF+dD=1TLKR%(xBef{2S4e1F%8{yJB^?!DM?TB~f3>lw-U z^4;`~C{eb^pXLkAth=Y~ZBW+ScZMM~?prl(t&$xxIG;1*_rC3_kR2eKG?!g;06i2( ze(#tr>WTcEZyS2KT@)-RfkLC5<8v-z;VJ9xhI+`_(B&Qa)Z^LQ6 zClcc43(eNfsdTKlermzhBj2cJmm|l5Up}1OrofcWqSByC-cqNBwwFBnlKMU+#H;3Q z?oZ-chn=US68zhFNFzB8$*h_`o)9@8wZ(NoM>}_ z>CuBo?0L$Q#Z3L!aj|+1KPbCfSFY8TD{CQ^5P-sHjYR4M6!&$U)*3Q@q_Li`Z``RjR;Iz7QR$Z7#NH^XT&0j3xB0Y7>1I;u_*0!7_%!;kOhE^F1#(y&r% z`>I1ScfG^xdRmQGmWo=7srwt+>x;S%6e(7TGrMgyNMzQ zR>fG;KIiBAey8Vn0l=G4AB7yDfRoxeG5c8LmxwnYv-ZnQ!|@>2i(nka!wE;j@*-pt zEBcxG1c~{`I>5Q<@9s^>rc$g0%*a<1s{FlwHKkvi&`=s(7uYALWc$J?jT`;!CoHdI znfqt=scZcS{$Pfqb%S1;rHymGq>GEs>E7e6=Twd&H)nmzix8k%e0<=DeR!XaOarUt zDEe%i*ALMNK{Nz&m_HK#ma_qsn-6?lThT|)BK}cpWHWhax2SW}@pGMWa>vi3&C1!z z%i87479%|X9gykj)rOcD)2iP)qO+B}DOMu3(ca*UQSB^E<>nR?O2lHI zhR{57$8T2F#A~V5NX;9;EH5R0A+Abs+|4&{#-lsH+HA9TdRa-v%G$=(D)!QC- z9Z_D+8b!7vfC}v&e-JZW@H!Q=c)qF6o1Fl*bRw>YuLW763DCsJlyosy+Sa%IoprAH zR3s(?#R7>@s))8)^aymk?3UMux=O;K*4W7HC&S)&JOF+w4J2BQfW`2Z#u*VmN6H8ao;Mz!FIeF6mwsernYsJR^JAqat*NU0jTT z9>)`GRMujoFrzv0-9b&0nWEsGE=eDx=!I6gdO*9_V_?$)6B1270C>8h2t;D9yOUWw zTVdnF&K{>X_)2F?qDag0)DW0IfGhz=KK)pfJmLB%2%by@GW@@*hj>CNFNuboeaEu* zce7I)F=A+X@knwT(x)$TDp>?OS5eFWXu82@Q3XPadQ9V*hay_hY6@rgBb?!%y3|K) zqDkD{=})t}u|AY!-w<_Cxwfgr1F!GCsca>lnBO8)9=N# zi|+p2Fo=Ul_gQ^! z%UaaAmMRKX=xZh3uK*7n*ox^(MAztyOyt7Q{Zk_+^XoOxixg3M7iU&nihfslekcp!7E6;@3u$)qWa4hXBp z1|B^AyV)ayO=}w_;?|`?@ z90_-c5O~}&1xg-isU|%u{Z&MRm3WuoW|xo=6x)d|66298W7lr{PxGy`J?i|S-)QO4 z)rjW?ys$mEnuQ62*CN?{@uqYle6V~@W61|T9GU!2+o&E{&gPnOXMU;U6a|8eGYFvx*K3Ae&^@WA-8C8{r zXcoGDK-ao@H5zNc{D3X)&pw+z&;q{-xK*zKS$-l)Oagn$%Dt6^H>^yYCQ2ipHsU}l zQ`D`^icDJBNf#>Qw&mdFK}xO$GNycawoj>y7Na#r)K=ZAV?mzd?jmIUz3Kb97@M{0gypN>&b|?uF;YIAKF~X= z3-tP)2gogcr{-?Xi>ds5a$Dck?SZasFH69qX0B5xX|C?+gc=p)nAud?9qbnE4lUyB z)*B~v&)Karr%&q(Tu~0TAm@~Dj|Oc0_QJ!^Oa=Qhmq1bNZRjC5&Zd-Sox$Fb8x*!3 zyZE{|a3qJND@1`4%#X~}C&N}l1s)cy%n-94fix_Erm$QsZ;AEls8x(ww5gcx1`KuN zn`wg?+VSs12Lg&FahEb|w{@DQbj$~4r(^e|EiC@uiz14KA=5CErlvOl74yb+hOR~a z>f7C2&Svdo_=RfmPk!TrxlhrnZysCQ#oL+@SyHG?9(d#@A6rcj&2YK80cdp#B)Z4} z!#Ziu7_!8Roe-e5O;S^)NQ5x#4#lt`m^gqV6cs~*OKz1lN<(F$31z`_eV5B1+lZT{ zgUN4#T06(Ls_*be0?p!SDdsO3bzx1vH13*LE!9|Y zXjeD&25@!D56s#@20t~;t$Q#LYtUocibA*%L9Xf$H=AMDoK4OAxo_sr%ucmCvrj@$ zz$EvkcZjP0CTe(?`WV|AGzeH-Jr0qvWsNBR_qodQ$MfL-@HZm1RZz(@9#T7AM7*A} zMVIaRO2z3h*`@iozAT!A9lDos^PFyLe3rWycQAmyiuI<9eIzG)`aA>CzO8Ot6dSMC zwyG=SP@CPV2eYYgDCOxMI4!MlMsA#=0u5Z0k^P~?zv10e&<>0L{ompm)KU-l!s|m9 zL&o?+{C#36ht0(=uVnD)>K+C35; zk-aKHjYlr2C@t2{YF6MuK^GSvTg)OmV|T835Vkw20niM}-n_YRCOX-z_mRDNJR`TW zjFU@K1My}>ymSFQ;y{IC7r9=)VZtjRIT<*3r>w@Aq3fO78TlD};N?>D7HdD77 zE*U@fa9onYsV_0qzkA}P5iw!ir%cu%5ed}ZKx8v?uq#J_H6F+VmE zkZs<7)5lm;)iq=JOU)Yh1`8{T5}(F+%vodn;AfvvIyc?T_ozYaO?ERE^1;5!IryHO z@66-xH6xanMk6i_u@zG`md1vB`0eal(Qk3_wV1By)pl5DYId+9w^L+EpP4?&25k&l zZSNh9L<9eUn4va@B+2=gG#gVPM0(tUk=TuD9sV7w=ny_3D;jj;&t-C&L*g485x4p8 zPyDrds>yTDf6Y;0@4aizx_1WK+Sgz%y727m_+i|4sI@ia(P%N1U9fErIGSO$Al;zT z%kU*wcvdkp8upn{X5Kp(R`jwNBMGb&vS%J7b)6&7)l;;jUqA6W1fA+e|$%K(tEzH(Y z^&s6WKu7H*jbaz}&}%%Vu1q4%0uV_3lWxXzjg-6KCtcIBel*NwdQajQ)-Aj3>+X$N zT3XWfr5WD~r$jnp11YUZzai}C+IAP!F7DRLdK}{T+w(({!+xi`yOKL3t(w$(2|4Ta z+L99eP&{Yeu~f(9fTREoA4ox!VzIjBtl^na5Zh%`jTmo%7t(H6ZH!kVa+HE>2x-m6 zP{0zB2NMT`ndoC~x`&;a;YL_GA}2sU>K}Tm3aT1zuhH~COahY?NJo8;ESL_BZ1r?Q zfW()UCC@P_kz!bStHfxgiGILhcw}zmWo#KQmQwLWQB7mhG>?W4OM`T z^)as(5s_>lspgFfQyMMDcNo=(!p!uomezD*xRU-ydWSfp6lW~Uh_f&<18ucuKX{Qp zd=eDN*H1aT{&Dt&e3)dD&MT#^HjYq_;+8c~X;I?u{GrEypbhD7zOvmzA27I?%4$64 z&)<0CjhLLJ1)wco|sYQ4^l#H7MTUT3YjbXS4VUy(V zC@ckF#xXnQ2}Dsd2ZMNhd%a2@FAw%ye(fo(YT+mbWJDfmq!MnfZp5@qnbwU=Z>I{q zzGTc_PCa6N-3zDCWov7g}>v3I84XyIxeh1^0HI?|$HT3e(dNhagoZfe7kY2i!Nt+kRTfp9JvxPW4wQXLVJv|&x*2$A`;?-DH12h-0)bee?5#zLWK zxGz2BJj0Gu`E-6nMiX@vcS6nYr{9V~xE(fM+1T8RiHCY8zGKIn6SsEkHs$y4sXCNq}JVjdC= zqnv3{$;|Ly4s=IZNR)qoT#y_9X-d!X^wd?oyo$|1agR4xF zjo5vEwA=kXDLPNDj}e{4%+@H{JwMA#*E2hCpgl*~3&hTS{@xC}zcr(H$UgjC6q~$8 z{bAi5l_|rzupnEuPsFnpb@5Kp96s*RTPx~wY1!v35@K@|QON`}(8yOKsq(K+J*VgM zM1b+S=JnT4>E(LulIE2Zt4HQlipB-3bPD!_8f5+e7U2{A`;*p><^MwBl2w>{=JoA_ z!b*CL{^G|V^4VhNk)J}2Fa6InveL*?be3_R6wT<}*h89PT<&^L3Wju-A(^Y_yWkIl zqk78dQwz^Xc$|0aaP5ko*XX)qs7ZV))&{4s$Y_H0$!|58Wi+FB)^4Bjl=|wh-}Q{i z`p=V#7M@$6 z{`&FXM^Qub;Zn0pPd4y*;9(6xuIc$bYC7lnd$>?U zFM5)NGqc^y%B`ZUVkP1-)HIvDNr!zt-iwHMiV#w720_<%Z`?dr=sw9H-X2#uUy+z& zO35CG8x6Noa#ZV@cSP(Ri&A&JraqKG0Tq9shhX`+XS2jRs%W^}XFCmuzA+Qge`&Q; zkFD5fUjdIFE)fM^8M9X6{Cc%=aHydYAQbt!=GWCYa6|Un4Ic+$VLWU_T?+b*8=2hR zF>9&ojvtE{8lV%OhzL&MGn8bereT-?5pkHsXdG@%F-@-D%~ioRX?gkv$9U#ERQV%) zOE@NMKl>vg@#1MwWi2}Y&TcJ5(T3)Pt~h$g?A9way}runD>_4uB?Wbw7O))nx~%G6qVKNsFYh z%UP;MHQ4MyTMN->+A22hX%w~s8S&HEPq`xq^OB(C92cr z&^)#`mi6+|x*rnOK8x--5^E?r7L$EX?@cC*7^ZZ5ECuVOapRbD!X!s&?jGyEPAR*$ zZ)R2&rICxuJQ>Oz`}q@m>z~ZNnSCVYuXu#nl$AVeet_|ZrlgUXOB#dFd0?Lc@y-J! z?8wr(7M9d@M{Lw9^vTrbUpg{>TYg7M(|J}mE6~jwi)~^=VK6&7V%`(SAIiFQheyXi zb$`tBomtbzS5+f}fv9(?3AFo7KV1$xM^O~PaMh?Tk|-!47E}3v|5`~PPq{T;WEy); z{CiJ+O^)3Aw0M0lr0v@F>Q+^(_2h46-?2s?M+X0abpjB*Y=N-*vp~>#UMt`#hK5`l z#Q^B{*O?bE(G!atn@}v>(-8s2g%{5}rAJ!UkHxO^bKE;-PK!J3t#zhNjk-lVLT8!l zYB0(~-&V;*jrEvzPFU|;OS@H%MXP5==8q*Mu$_fH!SeB3^g^vfnH*^Rd&7E>qVFNJ zS6o`aySlv@%yx=t#FdxJjy&#OMav=%t~Dt#X7h+%VT2P_g<-V8v92T=s}=#&=Q~kz zd^hhtPZ7L;-*LF3zUn8H~R8cUf#gjTyd#$F3#C% z!{c}t{5-hO^|aLuN4`ytS2<~gQyGAhQB6dH8&^b7lMPlMSntUz9JT;ii6)%jU3Yh| zR5(P!R3L}^qAo;-iRwt~$q%9^0Jx{VZ+#4rN3-wsxEdV}N<{Q@81h5T1J>!|+*xA& zJ21M{hiOK=H)MaYGJwKVMG@26ji zSX9{F_Y?B&^g9}T&bvX9kwB6xpSaSy)b+Ly%}8Kk+1YBkAAS<|V_6Jp1K+y#XvGlU zgRIDqLKhCB9i;* z$P7t^--NU)gi6mX&y7;ucU{8^?W59}qP?K_>aAb=3x9%XUeq7)MQ1pi$A`3Xq{6M~ zwOPU9;UomW%<5(aXhVx{Amj8AmmHYm7Y2@B?a)s(HkySavTEaN6k-pwdQ=)ruSBk@ z`L#R41lHH1FvKm!YIR3+SyJYbVmEWJ>$$D1je2&$?bICO&g?^J7Z)Aqw_nua)B{qq zu1K2^A5a)9;x|jk0ew*&)x%4RpB&Gy=_%qcikY!ZH41Y7tm|Xl&?BMzS%H{$-*Q!F z*^2*kTYfe)TRR%@;D#Ox4}|pu=i#;vvaj_`76zN*wg__@;~QUyE>5lW;Ay=#TdqsY zM#b3Bmil9>8h6G`0+^B<3}9uBh#)k(@c<&R8N>K)m$@vPCa<8(!YQs^6x+F?B@Uo#}l|2aAUt z;shUcC%))rHF{_|Sw@}fy3h*tdp08h*6q#e)+@Sam&zu2J$=$+&9v5}&Dow@C0g*Z z*LZ<-wkko3I?+(CEzoGx^@D{!*EMx|v!M-X=9i+u_v3e;{8~?Jj4eVzf`1I3IyLcT zrRs`vWwTnAa3Dlh7TwG(d9b_Hmo%fo84{goSZR-(N5*K}GXm7}sO9K|`Z!cC>ZJ%Kh(PFpBZ08o25s(*ItrK0PfCQv3?FVbAd zVM*nUESSoE_AFjT0%SnHscw1+?P}Bsr^f;fuC>^lF5qWH%M+I`Uw%ekB?RXO{_Z|_ zPS2hnPYQwy3{gjZ;JhzHK7)IaqQL3inE1x79J*QyWLo3dX?oU}86bMFrSiM43hs9} zsHssc*9SPZ&68{3v+qR^qgh;(ww-a7Wgg?Nu-dmzVg1C8~XaVA$LDr8EAUjFuupd+WLzeXGl*4NV0+kNL91y9w5GEELT^ zFj}&{m0L|0Ce4#b0^+1UZa@*pX%6`&_z!Q1GB8-U)JEtw)AN zi5akm7d#G0>i3{AIzg=rj%C`41yB9L!FgD%XeUvv%3x}+Nse6Gp%6&0;lhg|hN-uy z)JNvC@I;BQUT~Ms>(fR$F#=MdT37QqBrWpe@oQ6ZhYs($M*pyZH&w&DhN0VqQ&LIs0b%<>QYuRbtp~qTv#(A`JD@*{xTJ z)r#Ci0u1R;b(IjFz_R8e7ry5Hyv+lC1ab4x^xfHy622?mN!CJHdi2gDdaS_J4ot!Y zF`@lR3j!;&Buq=mT3D;%d@+a>XqX*1^cOj1ZdoY7s?1x?4i``$^&> z^~JjMw5WLa=b|^^zI<~*6S|Vsj3!EAoFuMmw08c=?akvJ%75E;!Jw8!iuUT@sLeD} zSBfwld(D1^FvQymTlumjcu{ig7eJ|xbgU5u;jZaelkq{Q`Qhx#cCvL<+Z{XcXzAPdnGz##YQ7sB;xVAtyd6VOqHd<3^jtv{&e5BIaJpkg76gOV( zw%4qtsg`hH$!ZcDXvPG0{XyGw_OO76b`JzgdRu}JTL9Up)(vPKEaHwJecZV#T{T_ zgZ?|BZvQazHJ$?rb`1v6?ayyi&T8>C-9rToHwfLPfphqNY1|Y=?+`iB6w}ZEP6q3o z>ga357oz!1%Wn5C65hX`1+$974~szN{T_&Csry&xP^}R=+V;t4_9T6q%`C z!_h8koLo4y@Jui!<&%J;gwe*--Hf44=!0jT9E=};oj_r>6a1} zWfy|2eaC)tQOZ>nOSLJ^ta*0-F(<) zl06g+p|0tx`W>xA>Y2A^6ZpLE$D%@6^;JnwbCKdxS8z!qYINF5V#8yFK>lmn=#PCT z0%EqoBvHwfa|IP7gT8-3)me;htbY3Ri`my2_D~WD%%nJGX z5sw0P4CPf@Er~HXL2M{cMY+Y~RMR>_ITzmkQ zI;>ss+|#Etl?^bPuA0O6x`f!29!!L|Hxz~bhab)wD7IoFXU;3#_r{IJzY{g6RznOgrDCEJvKP;``H2K@b_P=dKoTiKZwhfa3r9Rr3+`UHFZofYr0lE_gfk zJ=8MoNt`%{LoFixojtrouooktoMOJZx_*_i+b%1uh$TH@s+D@|B@R=IbBm5hLyCY| zodpsHJ`FxM&jHb$o*yt)%#)q#NY4HKaNzk$-O)1orDyfXYz=7u*Xq?s+6 zQ)_&E9E8R50Zcu~tk@8(Vo!-O(Nc!^3>nC52^-ghf z11OVQs4HH%)XvLgS|y3EEgCWXOyeTSn}b5TxMdPKm<1)Jb+rdgwPLo!#Qn0PC2fnJ zVu+w7_?6qHfNI~JIugN7k%2E3%4`?tjfiiRuBc0uisJicl%*w=gT{cf2mYCLg*He9 zI4O;b;~WWLF0dF$BbhQTRF@iFgShS=?oLMkNy6g4QFMxsY&dHE#XEBR+yqNHAo`!k zOa^vjhON`MV0+b3KTyR$fG*G4aZFe^q87r=B5Sl>7n}LoY{Z z-rF9@#;ZE;ewt>e5N6YoZ66ep&!d=WKrLtUqBEXFa~UH^_Ir38!cDsrKQ!1H^*M_UBQx!-AO=Wnpgr0SoFeyXqLqLW=|y8>Fwz~ zk-mOJ1phiHC-+gCSg{^9Ll**TrL)y?pyo&cXn`FOj7&RvXRzx-!S~wA1k4r69_kca zSUjm|uJnf$_M|v7ZL>%I4l`@|nMi<#{J1e@n7j|owT6??+-zPu7!QsGD*Z%4^GBgE zQ7+y>Mxe_Z;@xLRkCW4<^(;Kg=EcgQahKp`jh|9kdbwHiaGMoN=7wm$?h_&CY5f)T zR8y>a>A-RsxUw91g%zvtgktB@ze~4_2O1JTG=H!=;MdN20QBOseW z4Rh5c1(B|ROjJ{{{45{FmI``&4BB`6d1Gj}fOF*p&( z{Lw~&u{%A?3|CK9XifXG!p7fD-wT@6xpqwPtPB`p*$>mt#C2P>4M!C&8y->*?)FR- zjzb7PlcBR=qmGaLLS`WE<*~9g?`%Ll9O4^#8WEOrq5?8+bnqWT#{B`cKbf(A#M3gn z6+}U!!V&04Q|X{h2vlDe<|mF$%?x?|Pt%7Q(iZ2IzTxQk-Rwhu_YrNu?s)L^H~2BL zzhdHY-yMCGve$|39;C>O9`gF@uP^8aqeF+4FcMSZyaUYT*H8OdXq)m;+M3@=)ha5) zgO7mL*>T9mfyO?Gy6qZ22dS7MHk?r45pC8J=|OWp_gt_ny(uHfjnsB`Vh}`#2%OoH zd~ggmYv~xSw;P(HXj7(wy&LncUq6GeOM)&_C8A5U<{XKGCYuY?w3}9|9@%~2APA0U(52qh$5GnJ){&^=jo>S%_z8%X1`%=tAEtZsO z(mr;X<*-@Jo8Rfd7Fc!&6q1WzV5W;f+`wW~*K7LKDf^?lA@!QMWyD3o4-l zFueeAx&>`<(o74&cA!yX0-hopJi;&Q?N1U(j1^8Tqiye)eL#j9roPzs(R!Z9}9Z}8fr*nRAsC%u(rNltK1qi4wn2-f}0!O z#|4A-)9Huet0Xqt#BB0jS{vpea-q)9v3N8>l*xTA_DFkDcfU?&>Ib?8zQ6}D`y!TN z(07!!h34^N!~kfvl&UJY3X1XXVh`z2Ti2TOM;89^r_5pN;?do{f5p-934ibVrME_8 zhYZ{Y(dcAFIJVc(BrjH%v$nkE=6Ha}_-S@WCI&HEtJ0nn{*)RXk_Q1%hL=#aE!#xv zL(t3voNKl1dL;%!y(v0@=)#4|&n#$$$8*Y-OIsCdd8HX{tX9PA)Y&kHzbMS>ea}gs zSmn0xdzcoWXEiZkB^u{tkmku*y3_2|(@($Y!+CG^-t>Xab3=LJAj~SEwAu~`JYikNJ;>e)z}ldJKban59q--le%upR_orX4If!&!#uvOiXw9f3Ft0t84%;5 zOSwUGz3u1PW+1R(%D@nF zi5l+1FlV2kLnRZK+&*R{j~)8vUUf}kKk5QnRT{TG*?Rb6wRnyFw+31Z!&_ZTwv)ca zjH&1~MeBXZTSuW60UH$;*6C)4>(EPnrhDycpy$X}9=6=#M+Qqv^r2|2X?fzo5E6Wuvrp&VOOn%r{B$ z-q*}3)KK+9``pAUD;xzEk=^vZ#yPun`eX=Vqu)LP)(=Hm%^wogX?adv6|s^epl@;1 zIhrrDk1{nrLb`L~3ZVwZ^egeo>wl?>chTUvd5q`>7QLX}d$SK_U+Q_Z5<*{fPd<&fwkzx9iUwA0>D4PYbc_8Y z*RQ)m_xL|gzZ9tl0DpYq=oePXSHEKzR@mRmZx~in^E``8(scw2fc=ML<81zH`nj$g z^xM8YS*d3i#n-J6aNU->OAuTq7M~ME%(wq@WYYnabwmwvagKLvgGb>~?IkQF1StuX z8q9KaGYg*-O%spq?i5T}4PRjl@(ev$J=&s$-MUHw{On2p|uZp0Cv+*;GT|*+6 zV=)kD1XV<~^?Cul6+ISjo)H(P#3^DP9M<~w)WWay@?yiIniw>6M#m-WgT{A4oKu$$ zM!pS7ZIc9?1A0D34%&Mj4@Cu>P-Z%M@DaFwG`;ih=faPNRf;U3(b7@bvPulctugOg zvR5%?tzOyyhh22K`+bpd>m|Lq1U73qJ=%>!ojoQeMk6~ubtS?4(yG?f%8g`Cq|~3jIr-Frw@Y8`$Lela zZ#`!w<;v+Ek1aCi3A>xiSr>(*X5K+j!@|=;=*)Ldi`ZznPk|-avZ5m9XUX%yddV@X zAJCXgOMtA~uP5(lKu-*{=jQYO$KJbjw|!=5e)$l|O4ej9#wfFj60qaK2q*l>sy@+MeGnG-X2v=%M3%kf5=2ZtU%A<1eT<4XI3IL?ik z4_fU+WPib510j8{Zd6tl^!~a>qXC|w@M{<>*>2kdk{G3959E^1N=};{p(u*#(_TCB zk1r80UP@s?tsXWa*!$26-krWfobMfA)*t8r)4REUeJd-_cejy+JJv6)s25a^(9O8~ zTu;Qqep9m9g84+ZMt+_US>=zKRV`Qpbu|a0MlZ%)IMFc@qcHIrPRF4x52xlmhkJm&)S6eXXj(OG?EZM7L9ndbWb zc!iLSH*Krq13LX~`kC5~*#opm4Kaw8Wm>4K7LNCFcQ$!cv!X(>7m(rPNvWG293VRK zFiMppv_DC__CG#;bA5I|{)I&CfAQC9I=&g$rvgCy#8pj7f9xe2YU=x>C^)2FNP&O2}8V#Jhfv}e> zE&{sUmkm*=-x+#>m1BdS|6`I=PPb=(-Q(qi;EBw%MnurWdJ?M zjL9q{LOK*NxjmJEX2D5M}C7p09}eh+w{jly%1rR&b{M zuYqEMvMXk*3>(B?ysuZkgu6+RO98BTR=Q}p0z({UAKqndjrHB*)KF2WM>(2<4~m|%&82L2YVSNR&y}FlYV3W zQfo)+#{6kUnO<@a$AZ6cX7y@Tj{?Yujrp_Qi&F;gSSzb%_EfMNciWDlzBVfKow(0T zfWDt}NG&4k>Rw~KS%}lPeAL<^=BOoVL5O`n3|X#f=IGFA&DhzUu>*Lop1d6od-MSn z%pB;2L)Z(7YbqOP_aVlt#NykrN-;8-FJi-L4g?e+i+s-#am5*%Xufnswcgw))nd*s zlrAsK>?2*W(;xNsUC6MO7S$M|zjlkFQC;yb)-A_R_k#)|&L`PoE;oKl2~n)40=Rn5g7h(UnCw>7G^}Df6iM+MWyEc?>QG=&%CWkSn}ZmeUrs*t$$2n&3&+yC zllP_{Yg3hj8R}*vGbCV#mS}YqS_?gcAtRK(n^3n}B%SW{VTO=^OfXZA1pNQw)XP1C z7Rr;StPry&xF?42KRTB7dN88g9IMT@=T7O>#F3!LkNLz@H050Lxyc{>ya+{=E+pM< z)Lo<&WH#AXVBK&FqkQD2TZL%&zH1n@WMJ!=Z9t~_8G0i}n{u?Buh!K_q!s8y%{$8Y z^<$hO-NCh?$8t&w4LxvSZDUpKD*$W}StgLwY9GY5Gwy-{VDP;J4rsQS1PWp zBu9XuopkMq+jqSFuQ{~bBaEcHqBXXhiWtv00M#&S$bcxCMwW$0@-vx{`UQF&r+#$)UU@?p+f6CFo z^QB>-^foRfx1k{=k&9SYT*Gi8-AXHOVd(8Ks$@;@3J|Jjb-g!o#@iI8$tWc(!|U_t zQrXANVlg**ok%S&by}GN*{})Bmt;|CU`V#yCQTSTXR?lp02<&Yp3_eYUiFwdE9$3t zb)YxZtm0luWy$qEtax)8^1`^GM(q!`>kB)ya0*8E#_no2z4Ootpn6aSL)NTlB8S1! zOF8m;LED3WkMjl(Pb{TF;~fn6`nlO3P0wb>2_(h`W5*}r%fy?DZ#oNA*Sqa5Ysif{ z%n`gU>i-Vl5R0%&>fy{Xs$v4EkAJW3QKzOMotKJv`N zkWuC{LB)jE3-O~1fJS{Cwb3bpz<0hGSQ@A+VX2;c?KO41N;ubDRLQ%lro))%;|M*X zlSyC~R@7tb28BEFBO6~`D$}k@a7EkJv&v+1pD{B&zE#ZABrZmL z>U_p!K+Qkbx4Q?fR+HtRC*fgg?b&|SG+Vq6c*-H}*9;I%iNA@P52^4O0#+}dzw^9A z&;|ELm=^$OSlivT2~xr{_2wDsH_U^S!SJ3Yz`z$bC8Z3DQBY;*>n&Ubo=IO$5o7-(I-+t4!3oWK9a>80od$<;%Ven>Gw`z-ZNhW%t)>9uq%+0>ICesJAkcBBZEhs|XUuyj#2rUF|r6H3*)OC!cWh6Y*MlbY5O}tKjrqaxutb;4>#U(c zR>85QPn;IKEuMO5$0OSY(>jRgbLCQu1d9U`UeADn1T|D!wYBZS8$-K*q-o6j7nvMDMCZV)P+(Ph9l_%-M1vbw;zfUe z|H=&1d%BWPqXpgvIhJXm;($3S+H>YhHl<*2&sAPC&n-tg!kd*vib`orsT$vP=u5(G z71=I&8q#@}R_lD5jrwN7Gicr`el)_X8Eu|XsWX^*7$F*3=c34*C;@IG4R+Z>R!yKy znowK_oTx#oY036(7cW{!G2~+^ZecX^`#bIy0+nc>Otp5&nQc~`KJwtYDnzNf3Lbn(MltW(l8G>QFOK!oGHs7@+ay5`pKwEvG$gmj-|`hhIU3WHJr4Pg+j!i zqs1(Vm_-9Pb`w-oTL|yJ#`3I_CfbQO%+B;~FYF8s3j$o`4%0$lRc+!g(OVE^#>|&+ zJ?h7p{hetI5C+5gF}$HhoV;^dji~!C$tKk=FJ^)5V?jv+5AQl=7BRWx_`KGZJ2wzu zs|_c9M^A3uyp&s^4N7sUrR%VQRy4ibc+eU5g4@a{cQoLn9*`QPE{xuA7w*lq zxNCJ-GV2>X0wQs6&3X>eqqisTYXzW{HK2;}DW2Xv{kjI)g1u}&HPv=|=YN*Me0Sz? zB!X3VzP(0*8uRE6kN?oNe>AM;Uf0sPV7XI?lvoe9Bp5g1;IMO8&-AX*$LN`GV&ag@ z*vAc!;(jzj;BQgWDcO}8sP$#9sMs8iQPa>l)C^S6LIPw{T3_=VFtGFAO}~zd*VZip zTyi%z*~kp6#ue>~D1*ihpD7BVpLJ-dnGJ~ST8PIc$8Cl>+hd$fSo;FEaD<`W2}J1e zoPky)H{Si|KTjRfg2dK%tt;@V`DQy=RdH_^eY`(?OEa|KBvS`nww)BAqShe=Qv=P$ zmPJ&#LuyuNC#S50gQc|c-_4#pbB_OGxn}?W@BcqO0W!62kRLl=weP zf0A%0%_>g#IQJPSr^@Q7xVGMS;^gx$p3`)hW{B0R?{LwDn%o|_U?R+i@}*&^)hhLn zdrWbvQme+H(tZ;4e*sw39nJXc8NFzMG$q$oo20mMw&^>9(Fd+$_m8$Rd%QZ>2Y%}k z6{wVjeykjsZZ02SF2ultY{ig{#-@s>9ES0mWta!en%2xNmFjvH;Lk1B!;q95JMrXI zaNgm`$80dV@6hO|9THNMj16j|xiZQqn}0(C20wUz9Eos6(FrnACimlQpw9^msEsFH zn~x62A1mw77RTg4t8dONE5wlTZkcjrMR4x%*QmmL)LuH@TyY}nhL?`Gku6$~7Magy zF!tu7?ObcQJ9D>tv}McRcS`SOE2M_SuLs)(cS8Mz{Zk`tJKHl{){a5n*`E`73G!2&AvDa6Src) zO+Snie#0U}+JLLjb?jgcWeYRa&BGLrIt*}0bo-GhfG->-q@re2CS#U1Ry`dCjT1Nz zAsOE&I4yA%doub#DyO~ohT5@c*=dLhcekv#9A=XCyw1bnu(^Yv2^p}`x|TEMqVe=K zoEGoDeXKjUt|4Epmt3dgImT0;c#Hp?l+VB5s|~TJVj(W5 z(0@9PP`P+Z)BQ@8d)6^2sHq(uW<$|zyV(W?!bx#x97<)3$}NM>sV~#Jmpueg!9Y4Z zDq?${AI%y8;OS9RGZzv;VsxTlZ^hJBYb%a&UAqKmDR%p2+v+oFi=*4)z%!0swGC6i z0)*;Z|InQ!gP|1-k0-&VMZ8hdV+oei57nh|Jr8<3`Y(@vmu<)UzBgCLxM%c4@HT`8 zg5GyXg1lOV)5F3%dOS%A=hVXaQ@_>|Ebg-g0!DXPY84_nh6yNoktC>PZFMpsLp(St z&DPD6e+tO@m;FZLQL(~@-cd~9u@AcWy}^pIp-c%jLGNt}PW8UrUc6!4XPkslB1SDNP|d6F7@ zv|E#D`D58K-rG_a%=HpU#GH(NOXA8@-vAgU@+qqN>5*IX%pXayXm?>#12~+;cV0XB z!WngnQ~GU;dkWf4KhcvdFbcL9B#G;JX2=17iX~f46%q7ejI&;L@DS$8mfO$;4;H-_ zF~jq}-;TwHp-Bl0eNG{kb`&Z>X(TaZ=*}v<#I5?!F+Dujh@UcJ+DK7P#()l5t%Eg5 zx4ZwcMfn%5mUj?G7g}?xUu$s|c<-%K+H9DG+Jle&ugS;y8D?I$#&JXwgNsp}KQXVn zd$&AskQI%n%QzH_dhlB<$)xv%u}>+M3~Q2f@9REQI8FCk4*fH)0c2!&IL3Q^h~i{5 zVw_QSh(dey3BlZNqgK(P*8sYGM*U)6xhD`&2}(7?GJLoqaC~flSnQ4yMf+buVc^sVLc=|Hg3wP1j zl;N1TQFq+&go55^)9p86ujb(9(LMseypB+Nz2HWpDD>wZCCwO2_c5lHqwXjy%jqf^ zJqqV*NDiwJXFj3n+ZvW<=3iHTQ3ew|y_O}Q8$553v|jL<15KQKCB0*2w_5zxggRbkj&+ZqSn8thD$atA&sLSRaE;T=t>RA{%aom* ze(9_1{mFZiccmjNyV81T;Hf=;Mp@Tdv(vkGp3Zi|>(A*6b9(zgAlk4`4h|bA=emG9 zPo7Y-(CrE&gc?HdncO~28WxVzn9pB5dsfp!u7V}{p@knF$<$y@J|t1=ArXuZK_Vu; zMLnn0-_NY5QP+%>XwS7^ASaSI^oj{49XLx#SHdlzM?ui%aT(4M=eGe+v!FSo%%LW0 zR{umFj|L^oPG={;=bCarvBo4Gu>UO5y*l2L@HMS~%ra~YQ^zz=9JbU^iB6Pv9MKE# z&A=U1pX&wF0WyUiZKvgKOAC$ormj)kTW^3KlitT0*n8^6^lnO-i0|snvOXZ?uV-FT zBYU@u0L{3?Fvv;>&VUlaQm-_VtnZQ%d#C^~d1dDdm~Ta!DPG@@B`73bNX7c5o$-9$3>RK?BhkhfC>A4D5D!a8~5G2F!SXR9}Ii(J| zrWvPpNW|{3Y^nmUmc7wJ&QS{(sDy*cRa=*dZN3|)mXj}g7_b+WqFtS()NyE_Q)jJ?hf zwU2-2lJ`yG{Qtz?*k=fhkMQjvMy5aMx150Ka40GVYKNaV@sxfnZ7k}?tteje=zpJl zqg9QvFh1~&OKt=NCz@G2JR!;vIHT5esdB$Sga7Ne!K2L#!vl5f^!yoldRXBInj6C$ne)orI}ssoyxIbsKS{hJGFoc3l^@jCpa% zq{u07e#2fR*{EJ%`2dSF?|4{4Y~XZ~`T@609+L)+L(SNC)j6w?7>KD6;c*aX`ts#5 zei(N}Y;f$CaAmtNx1$bS71{+YDhT#s2UBwnLO^fV4i6@L4R+I~dudE~SR)4CO}(KB zW80Xo6B*e*(zZ>q3ddhTlcWJ4wUBcY(c~I5`wz*1mtC!@?|X?JB$95#!#<k9|7SyA}?qQgd5U?QU@WaR(M{%p<(V8Wu==I1@4d|mk5?=dEQ;~4^Z+rTE zgRDW5qX=YaZS&4tR;g81bl;Lyu&@FsItPaL!8mtvq03AL7fjtJYZcZATRVac~LYorx^lyp$1ml>VgK@Yw{Og&} z2iHWc=zspdS~fQqJXM#Qzl({mOtj!sO=aYN4i*4VTEP=Ro+|6rf@dxZrgv{u& z1Tnp$my5j=|DxyW4EgjM&Im zj~`|#_E-Ejg_X1%%jTm>S+1cz&>OD~ME4tR4&y2^jkD#)6I+&%GwSMi`!F#MYHZ*? z9CvKNB~Yg?;USAFaenAG1rLRhJWDS&cT&noM=|H;?}I(R-c8IyIy4f7ww$?Vo`3p` zR_0|77QTAsX{`=tGym88_@WuQET<3zKzM*1{& z=mJgymWmxWdK-qu$B*BP#g!s(1wK!^8P>aMNgwK*ynZuQE_+{JadM6wa@*t!^J%*( zky2r72dgb8QZu)g9spDL>Y^3`n*>-)QOGDp)q1 z@zL%%<@Mgkk#PH)zTS_zSy2M)B(J8UHqpgEzX5RElH|f`V2)50p95c^UwYw8d~f(| zY~<_N0Xhc6W|c4)#J=m0`!{p6)-tRx*m-$a!^DbJejaHNv&^loB}4*02CKKlFV=UNMJV|H5ZZrC3|L_Nq126J%9V90W>s;dN`^qw2k z2=h}JeluUyth0xccVZ%Eie&r(;*~OogH}2<@#tLJS2{W$z}_qzZ-kKD8-bK)3=B*W zFQ;0%(_*3^Rq7Xk*~Q|*d4ib8f!#$|IaB(#0-{Nr-?4oVLe;w-2|*J47{Tx@Y=}%! zx3+Oh6HsBpX@DA)=EiyyE9C4<9Q?~hPGi1TiPQ0JPq(a4Y1>7f1y%cK)jsR>lsOqI z10StraUToG)6{Z&65>*Nu~pDZmA9Uu_zI3SuNUPXkG))INHMXIXuv@PcA@U4bq@$3JXWI zu0s$cza0dP-y!UNnm9oVek|Bi;#f*TLK~4UsaVPH*Y+YB3w`R30H?k)i4n9&qYqu(Ul6qh2)6 z*DIyPh6W!Ee{E|4cXhCXFduu2av%@b=2ostJzKlz<#ab3Uef7W#-TTdFf;m%!}Lre z#aX1r8`Gv`E@BMVFJqe-?~`X>@in!7!8vrg9fxA5)i7L`fa1cg>LPcC^27E3w_Xog@v9L2@Vsrb%ufYW9K&ek;$M zK3n|pON(?vt!m5fvgBaY6lY(Uc^BNBXN6+8ByK@krp&b903+qSdjqF}h9AH=YNdwz z%##^E3Gkr|8^7Ilr$55QQ$c3+QQTi|#vVa&Et|7YW9n77N^bTXHMdl2YPVe@Z_WAe zp8c&Fv)*+#3+06T{DLLl4J}ULXbL$w9A#fQ(6c!NzX0-6uOW20JJ#$OupFGa@83Ac<4vp-9jTiiFY7Q+62sv>Y^C$w}Jo z?z^tMNYyU1kr=I}MF;h8j0xO$w&&eX%gThb!-$@;?bz|^Ai8tK`hgD~N)??DnC4$j zKea=Q^Y}hlm>zw;yr_{rG>4S-*rUIje50SSbbO6!mklEwq%z$>z-E@VW@gHABxt8H2OG{Qa zZ3N3hQ>x;EMKGe>{{JM8WPwj`^G$9SHT2jJL*1{I5;`E<;coS{rf-vH=3Y1xSIwP- z;zxs?pixNkk?fo@M=IfWj9OQfb!+Ly=o&E}eN6uG`Hb3eds(Ra6jsVrzy`>n!~)azF8 z&b1)LJqpA>EuhStVTo7@I_mi)QVh>NTDE1cxpKoIGTZJ)OK+H?EiYo+s76jcw{;e@Xb$pzD7lqne8%7RxI zzm8wAs%5?pITgQ~eydXvnKmo4DU*(3BL!~E>?N(ITO_!-k+8V2;*7b>2(ib=!NRMD zw!#SVJ9TCL)cmvjm55k(Dy74NOnkxTuf7a%?ggQsdG9oIckWz0r6HMBnsBE|bJ!XB z;b^N2()V4C@zj{usB0O8IT#A7+u)!YtK?`GM z283yAwhsAd1}^wc1Bpqwc2Og7%|m>gtZS}2nVsy)TtbQXOhR6K;%PmLg?ErGQ-Vs{ zp{1cxeHU%Dr05~QOZAIQk-2cH&5B=YS=}iZuS-$EvUFq2P}6qVAo{)mI$bT=A;jg+ zT|&WgO~2qY*NV7q*~JlB*c`cRvIwo7X5}-S7|QAloQkPDya!IczPQ0nd7}f+eGtGwDQL*1-YSDObtLGxO#Q?a>*;uWum0wa54MB$V zbc`xbfg*f&ft=-P`YE ze!Sbyy?7@yr5FcNspC6=uKUeqW9f!4&8 z>`8YqdSMTVt7kQ0OSYLc5EhQh7e^f}P*a~|mceG+=XrClKk#^p(N3{svm0<+voMaQ zkTL4bHFduvvb-fr+KcG@v9wb)b;-!6c)FSj-4p>KHLe2W<`=~dj0%?8LbeBVkI}`C zwltDNG&JP&`_TP8MBN-h%M29?vTlNbOixSeDMRE_jVI2SWRYc7NU9w`^VJ>RXz(M4 zG2m!`!+&^y(iDwaU8`!F;j+h_L%3QCzU+Ai7Z#{L9?PeB0|QpgB?1+X>%>kk+_ABs zUm|zQHM;|9JLm!Jt&VIkL+nB!)1Or{Fggtlg?Tv+v*2RSqLf8|+)qm&9s|I4dT^y& z){nK&m_UK-%Iq*G!~vC&z)4rIeZw(w;)xTQcSI|e${5yAJ?zCmNg%u2Aqodo3_Vms z1W}{+tlg+Ni`vfFiP+Qi8?&0odc)asPwA@^X4nY>!i@T^OF~?@UxY9vp7IOz(V(#! zLCe{W8edrB8y+ynzNz||Gk5i@Zn1Dokh8Qm9ht?}_-68%{TnQOFP?hwllp0qeZ8x7n0X`` zJ8Tg(8x*{FAyHk$e|Q*WCA zu>-D@?fSW=-Hb8bCAUry5iE8+snM)yXYV0(-Lx*%%W4)?kBARsBF5_JaL`npa)Z24 z6j6Sq8K*2{-z2t19Si^OCO>GXsB7Y_A$FA&1x-3!u)L$NL|q4*Hpzjfx!YpoilC;R zJH2})%W5&Csc+{>ErWL_(x-*&Y^;-o#=vK)!u?d_og!yQ=X;Y+l9KSy{(bzWhHHJ? z4r5V8Y>g=oWQ<#c8p_d@NWd$HkJx2^YRIQe@uU8 z)gsmFn`9g6XK;<*Mmq?rWN#rP44^}Ag-wh&NM2b1O8sp0Jn_U6>H@p1($I(H8YYMy zvWT>?V2)M_1zIR6;lW(Q&v4uF{B-&lo1=B#g}ISMkZq|ctukfBaj!cTjKAA-4qbwD z00LnT36W@9JShoop{6s{=8LNKl1)p_5WdulaB;&EO|~!wT`(waJ-r(UAIV)L@a%sY z6kI%AH`&r#-5b%Y0w&UwBtP+|`gCIc%>2pc;~9$!%i5JIi8f>nbHHZ%2?3(3V9sf# zVl!$qbGqDI(U@LvslAs~wIsj_8adniSe$$AsDCj1Vfv0CobZ^Zlr}v&rLG6nP=WEW z>PA0ky`3lT(M|$2nXMyNSU9nHsKMh%HJN-IBABuPUx9>u51x&;G|JbqB-0NgbDX5D zvF}E5ctBmMiAF>9hGVdS23fv}TTpcitRAeRaA^4I3Ea#tGbhG9@?gvg`8+L@Z|&!( zEQO*8BbMgg;>_6UgYB(xme5tiYh%}~0PZ4;rG>PIzuO_PuBxNXPB>*sF2HkZxI`;!l- zK4|HWUew{y1F#FaNo0X4D1NU(;a9W9fbyYvroyQVSe@5Pj?XHPGG4B>P zZovqc&R>1?s=7b!3|zz%F);Y@;5?3wV5t33Pi!B!WzH0GdT0t+cMkxoB{D=ky4GpA z{{7-p8h*0G4WXmwqcpW|WQWS?+G<6EOeCu0QLXygMzbQ26f)`H9hHxsjL^z{1JJr0O0PvI(DUu_o`h8eO_0q8b#v$c z(-6~uO+&tMv?VAU&(&0Rw*0(ZFeqZTbL?`GjgpFy_4)xGDo&BhUJ830v-<*+Ix~AYQ_l5)V-zHzTquJUqtKFtJy(^_+Hf$l1$y+v)Bdj>`ZoB zewV>$BE)!b7+czkxsz_Vlmx8YAlQnm^ZG)0{R*wQ+_*mVo5 zi}|OfnU9;v@dE|IwJ5ZG`m{3)8zsmMqaV>QvQ=0r*_0+Yf|>QMnvtteTCZxD?FqsF zYJI+XdyeWOx&l#dmDQ0L6R&HGDRZpC=eZ|e(6G=&>KE8?r_Q9Da^k|8#mlj;{$cvQ zUW#FJ6w(tr{dmpUi#>HQ@yu9;mFDfW*I#oYOKjzo{SrXED^NT0Mur>^j6?AtE z2Fa%lD3vn3di6d7_|x=( zE-ZH40bxCG*fAy?sRqN;oiG7_4J&Zj>Iv}ek@Gv;Ih$qTHrKt}&WT?+*9Fswhb0Q> zHOciuH_$s5k?qM%r!BNdP0cdfTuZ*U)pfEkFG3mJV0l^g-zKnKjY&cfhb*Mf32ygb zV7Ptf_8oQ5bjl*SIQ>E^&4`Z|ym}eW2Adh{K~M@Uv@!uC=3_>zrCxdE3ysYtB-CfU=c)(;`C>^7`O5sv9wO;)(>HdaBWwm=_mfad(Kl6;! zjAI4=Zu+hIv~%Qv0CFDp;t+g*VekRQ+&9zrB|bNt6V{^ibJ6~zZfi#;Z!#l`?7Wnm zs!_IZ8Vh`IxPfx3i6Oa%(}q)Dzrf+tHbl0cV&%0JxcuTFI~>2M3Uk+sH6!`bLoNcO zANbMy@ zS{=ebv7YBxHK2-~e{^`=eY6ODl%J|61OtPs0#&MYw_L@Z{VL^oXt>bl>eY*+cx#H5 z-9TDTv^z0JC$jRqw6mWT-7+P((NwdhcYpo5h7Q}Iv>MN7@7%l=Q^8&*srCSfB2Xbzie^m#%2< zxz+`?E(#i+IrD4DAY3B7tw={^EmF_fQN8C*IMFr6JKlJQp;?Tu({iTwir03kM-H}0 zH=jKnvfGuY<20*tk+uPa3CfZCcuM0rzaDD?CW?*GTpz{95ZLpnQg%OZSU{0W9r}VU@&>?pXk;xDMr~? z?NPAUE8hW%(<)uI0I4k#HNn8vhB6H^(B?D6A~bg9Mw&j*6VO7b7S7Jngjy_~aFN#R zqcwOY{wGd;e1y8#z~f}i=_7~jR#p$Xa=D_FbmHj@tJ2;J6f7o$(G({~uv)lS zA-&$y6q7=9KY7$XP`A>7vJY?Xp{H{lMJ_OKzKm55q@O#_le$n{)QfO1XHU4+>io5w z)3bicANrU6t8VtY?w2_`H+Sv@O{ZCG!>9CcaM6G1k6KuynaB8|L52lEfyd)1;m$K7k*F01Wz4MYG|6 zLhL#pd2AK~1?m}mEa7?4_#h`MH7z+PhFyu~Kp-iNNSa1?|DYXGZMQn}k8@({?)H8- zXf3TNjOhKn8@i{11fBeqpL0))W&&jG& z0)4%Kf~%psR-MJF6S6=(7~o-1t68zhK+v-W+g`H~6`$gSg)>H%+lIs+;tmj)BU<4Y zI?vbMMxwp|4|L;lYfQ{7k|0P^)GK#)JpTaEonhDO_+8Xy%98m?By+P;ujrdS2ne*? zEW`%KvnI3Dr+t1K2>VYTzbVrO|N8s*HI2RceZ)O3eI1hPou zf0Dh-kriHom34=wEim`CIn=y#OuL$n0f^^JJ=ww*rUaZi37E(oSJyi35_CzflNSem%cu_~nLqvLeJ zY;+6>p{-?ZX^X98zJ&D_RAej=&HH-A0dbeEXq{ld9f9j|nl)Tn?H!H636S#Y0*YHJ z^GN>Y_1E>>(a?o+byOO7NUXfJ+Gy5G)zzj?fQ6=h=l5Or>9%ArTn`$}QnH!Q6Z8wT zp;EO*^&YL6(|@CyF)vup=-PI?ugFl?y)6n8vG~GJ$sR4wC@g%E09njQsm8@Qe zx_kL$U9{VBy#|>5TVB@~mluOVY|e=_+-I&<;{0K;IpMV2F*wz`V@OtVh^f=xXh zR2~Wg+gLNcH+Hlx%JO$wcZY;Xbx)HCOOZuA5r2G;!#5D5IYfedCCMF@=q`RcUk(2- z{Qw91L%n)2$itS8(K^GQ2;zKS-7Am+dN~Ji&+~{VpsiM#^;IHt;!6PZNZ<=_pCv%L zo@q37Bkv)@x^D}>SvrccqA-bRJQk22x)-4RAEzJb6MLiE3fhBrCtpv0*6L31w;_#6 z%oTq6oqPHPCq6m-j5-EYR@;vPGn6z=n=SX7Ah{i)Y(9>}?#pb(`bZs3JZKS!nK>Go ziEvD_L9{seXVnj6>1tzLQ`cCpl&hs$$p0PeWBjmD81v#6jw!7n zJ@wpG{kXs7N+?Q!i)o~k8=7U(4)KY(Rc|=vwSy)0y9TdOuCLV`0k$#9wm>QYsOx~T zemVV6CvEbky@zH+v0wk)JCnCfk+JKv_*OU~G-#K7S+Ga6bil8#J8*;peHfs*B2n9@ zgx=EJQkTkt_>!*X*iE%n%#-iUF#3+4Qta$qtr(-ITW6!{M)Naq;*gV)JDoU@qXnZ-Ek*#(nZ%aAnMPwVZ>w@KMW3_r&H;=A6HYbs4jv7aU z41Qpi*bu6GwPK;SjZ&>1*2z;dSFKi6!be*ohK7z~-DH#QM&&z3N4AezoQ>hTHwv z-^ES_nv_WRT|L5?aIo2PR4;+684I-@Xpu?xG$7MDoo1#Pa;V#h)N!-SP*kIR=jcW} zns--2h}GU0SQZwBX$>iq9lY2JW*k zulZ*_Q+Ho-Iye~4yvmWcFV+!sY_4x|(&8zK@7C#whJ*dL5#KC9XQ1(HxBY}lTHOrT zp&{Qw!8|$^TlKVzWrOgRcgnG1;1kU~WRtcM89SMUe;X~5}VxJ-sDE;C&-})$=Sq<%f}3N1=sPE4Tp7!ia)XoXHsG>Zd`v z6Io|gIB<)c6gMl*zIxTAJ{}F~I%p9UY;xwxRbMR3(6xYtHUjIco6_Bn0RajhR2I>| z6=b;J$mnV8ft22`zLD$Dt80B419fu@4D29*g^B!SaI0Gie=q zIK#B*Gr}f*2q-vd{u+X(o>lt~+J`r_M{K3w*HCxZF=%6cVRy^jcBZx!gwSC*jys;O zy0>{gdd?mxww@Y?@%vR)HfC1VK{qVUNKja2^pZsCVqt(2RUMXj-ObI<6< z*Pnb+Bb>@+#v4YD{&xC6?PDD2jc(egEoy5eJ|b6*bUESUjJO3NMe^&y6~BF$83M%Q zey#Y`pC{b^Xa82sYt%2Q>xEig$~>?SK(%{;xMyB)y0+J%>jzjdjla2&A>;O#l)?Hqu+%23fP!j7W4M9sf&tG_NNm}aL5w~(q&qF&$t7af zqYk@$TfO$xoV)^yvpJz}@bVk&>GKUcbVZI%B-_^B(e!p4)q` zzd9!=aO;{z#D)NWrv?kt!Vmfak>;;|Kz{6}amZuPkGj5U^te)us;Cu*X*CyuL8Cf&4HrWo)6C^XWYODsdOqjcF{DjPcb7&+YE?J+u453*52{ss8lO$y)oMO> z^0d0u0cPaN24x|~o(N|SP8N(V98gBwm6n#3AaPkiwt;!6H8X_hu_Gii(Ps)>-SA@? zdP1sw1ODpaC{e3Eo(2?2MwBK7E+ewF845a&mp|_DG zZG43PPVTyA{^>u_P!y6sPJhzKVPR;^UU0DPpqFWTR!nWY>5F`CWE-Kr=) z{)1k%G^4k3>(&e~%S?GY5pKLqzD_d6)Re__5Am*@SEJr=HUi7nJ{3~%&r3W{q6*MJ zOi5?oNoS40Z}=NM?a$m5_y5=bqzNogRMDRC$i<<>piO$!A&^jh*D ze1(tpsG+4V@Q!&rpnKq93bx8J9SP~jwph^eFnpjH2KrpU|Eey{%HVY|&fKD@TrRDw zhaOVh19N8EMv~FEx6qw65D=|=GqF(e*OO0lh=8*Gkofo4gy4Rjd?R2iNhNDrgtfOr z+G-SD$#|UFlv&8h2&{1uQ&`|um=gLp7cUJCbXTd;+2%bRVZ5N)`&K568By;-E5QXc zvIK}-Pn_QUo4?WOIbn=sx`?vSeyAAhW*BRW)jC=YK|;;uC^AXTopX|&rZLp2(-%Bl z_v)RK>LKk#0Cr8+D8iKGv4OWDrA`zllwxG4e{FArFzM!i^=u1 zxb$FKQ&o^Mby);^EIQqWy7lp+KZJ$tp;GjCFlDAZlcxpQ9S<&Kvz9 zp=B>3I;ITPKGgy+qNBC*XXn-9LNnQnCYqwM44~*D%;Or->D^^&OZ7cb&|uI-w(&;!6b1%H$eJGXHP6M}r=|n!dRZUKg zuThIPEsPm5cl@vIn`-3oy~aw}NBcg7JMNQD{_gZcJ>D(eC=j}Yl0P)E@fc!sC{mOh zQ-s=k6AZGJvhgZD{zJ}uY<0UyQP2a-O|x%0okS)^s{=u*>zSAb_W+Z=ls!}&Mu?Nf za#%I6?1|daC4EYo=zYyu(uuZuH$%%uD117Nz~KGqM-v#dAOHUG@6|Y{5XdP+C)ALb zw}6T50zJ~mVGonDd&poPcs%YUca>1}-Sd7R^f^0sO8qoGHT_ItgDV(mC207N;;eR` zU2@u<(mEJ)-}twGZlnJ~{Zcbc81vVHHckvoC4#Q!EH>6QRu|Qv_48L6Y6Al|rjnNS zDNF*1Fj+D9B4LAKDDA@+z=#3m#`@}t{Xjm4OxlvL<) z(W(;-k8u2I7O0FEaqW5}%{GUwPG8D84=zOgF=%@P86ofs@Lv_LK$P9UxclSC4KQ#3 z(Ky2?M5+)v)mzgKG(8x@kPj44$+!b3AYwv8yl9*Iz~!|aS4pIK_Zo+Q8YS_X!&Ggp zkm%|LHY0rRn*X{->^9ufLxdn+(Hj-Wn_Q%quGFnpQjIZh9lMFJ!6~Tv}gw zPs~+Ou#3d#)*#%=I6dwH;~nhsU=7cuSM<{x&Oybj{fEiV>S3?rfLg1fbKq+iC3HQS z*M;6N)hEz>oxs#2I(5`QHEUM#!5NTlaYlQ}L;Guk$zgr!-~sOo8?49#n~_h94Q zC4xZNq5x2%p!^ho&?e$aFG+fY7B4!E=<$5B!6wk6baFAh6YD{D4I+A%hdYV{#z? zg+SSL97M|3llMaID&jaRTc=xVXrHZvUzQnr0w(Lv^rFu+4+eGK z?(Pr4>W8^Mr_ZM0OMWo9a$i^3orKYpvrNiVKPVd;BY3uH8M{;aXO4R*3r*tEupVy{BbZQVgaTl z8r&f(Aq%cNn0zt$M5_}#RfXjJmJbQo1O(+$4{|H2h@#?+5Z_~Tu= z;T8vgsUdaVY*X>|x`WM|nrvG;BsH-tbw`ng+c{pl^L(kcq`S{YwdLzu8S`L5M*M`} zJq7?z>Ci4=EXd#xMO%d6KcL{$qkH=vBQezsEJo0)khfJ0Vo#C~tF9bcrrEXb?qPMN z%l{>C=Rf;<%_rHtDIXzZJ$TuJjB+DegPJ@{lOwI0f_y5)ab41{kfx+-S1JupSmNCI zZm=@z$(b|%?6&^p3pL7%;j+AXHAGOS zqU#&0tJJGh=aE)OdO}pNr)xkVnj`zD>VT~3&=WIOou{(iaQlfAW6~4cl;4laAfuwR zs2)5<=K(q%y8#6}04&qHCxb@DP7YULQiAo{+EgfRWJ3|^k%7j#&C9r}-)I0|JpR2p zYU{aUPFq4q8td|b6FqJ?s-I2Qb6+6B6=xc(c_|}EM=^fyAp3_RGhvY8%axwHV$tft zEGkS0gSe$xV@aqyxoN;nk!g$yy#Gwnx;U%BU(G_XN3F~ZSRHs6*So|0aF_D>&7 zzny%cPk1X%&iQa)EdTWQO%2)0p%u10P)xc8M(2*knNfoFowGC^*u=6{Gl{LaGHUr@ zeFp`bS1VQU)Q#pW4KNjS3%!8^J}U&D0~*t~H}Zn1Rl^|B6sPU!J~b0b7S{T6bZq>- z;DNY5d0)G+Su7kM|5w~OvPF#{EoV|j+rCOpfbKl04sy`>oXnq^e<~I=SmIf(m(+k{ z4MWpK)im9{vbLB7lJ*6kanpVQ83?ct|rhZ>5JL#CMt z^O#{A#%An?Epr^qj@X_RKD?eo1F({C{J6YmgHbi_#4Yz#1CIehm}n<8Z}9283HRZH z$-~K4+OaDcl}2S@JuXe`jH#f8R^E89d!)02Zc*mN&V@v%tR;xt|34?6>r-;1eXK=5 zF$-WzPRg@TUDM)P1SjvO=6c!H%8jxIm9M_2R&0a7*UyCS{J5UpMOiqfZ}xF5su_es zKv3%wa<_D`q|FQ`3@(W7fs|zO^>dz{yZ$@|SWiI00_4;;>pML+5tGktfKsYH8)pnc zNFPbuAiKrCEly<5eZtMtheJ6g6^I9^jds+jxvH9~U3c=u)A}l9G0`r4Rckpn+Ugj; zgxb5YSj`|+#uG68MBlYG+nq(-HVk@Za*~X->xvaixK**5&ZE*DHR3r6qsK1s_j7(eD_}S*tHRQJkiMN-!Go@F_N0(s*0 zYg!EG8Hkl&MP#L6b?ji&29mu|u4?FD@BZEo7$c$67hC2T*DUUlkg2x=86J~CfDqE9 z3swh9Qsw2UetKoBu2>W_!@&ag&Q*ZrVL!vH7IhKXIa4z&<&9(JvguhGzK0uBA>hbS2Luh~)m+JTQ z?(N8?Hn^{=0BFQ{+01&mtX2YN_p0{T^yYty$6Z<5&O z#duA^CXg-igY+yo6MAm?po&_!K6->N)=^iejZKKCbt6+9(vBQ;k5)2+rSePa6VXO@ zEu;Db2Alj0+#%?DIyM_PCGdj=Z8#ir9E$jbd>e`vHz!baRc!iYw0kr@aALw|=G}3( zXXz+<8oCRKB}KV6wRQ>ZS8Hpj>o{jltPB7!ON)3P%FM5HBSwc0l$Dubjp{3?U9ynE zXeWRz3b7q?78)*c6Tg0F0;`;ZlvInPhHDXsfT^|TD$fppgP5KRRX;JSan#CS6dVShPCnL%pmu~W9+)$RM5t^GC5a`HbU4~`aKY)h z48UO`*yqkDd0dc?pWpKy;g0(h)YF3r@<;NFB@I$&=qZdBooF0tsNfG;`h@|{ zaR^pj#P=!A>wX{32oAPG&rGFg!-J`78a#ehgMOGrV%lTyB}0cvemwaBt>I7pRTI(r z%~FMYL{rJUjJF{OR0}bYJ63$pnG+VGtVK0+x=z~c(2P-=^rVKT}qU_$(53Fm4B48vqTDfaOv zaIgQUwT7l-c4{EFSyeqhK5=)mCmbn-nYN0DN8Pw#btu%J%4N&UYp7S}4-fYP(XDeH zA@N;uV~~HV8&_JXrnhFmD!|YW#|)astnZTV7JBgKn%dz(MjNs?bb1j?_2k~ylH4a4 z8AmwEyG?oDX^br$&Cq!7W@)%EdXOwwfurl^hST3`$UQJ0SuK6KHF7 zF>XM9k-p!}YRCWu9E{8p7Uv29K$P`X|F38Bocd`=l(RZE)JV0Se`>#(RnPo7{cN@a zr6{yiI-wo458d%$yJc@*Ej}D>ZC>(QWB05b zRG_g{Cq~>ztX&t=t{@gl2~NoVXf(GcaFgVqDWiwJRjo@YX+#fiqNk&G=<5BUk&H%X z(t<9SMt*akZNfuaTY3mgWMc^CV`P9E>ciF+v#s_)oeOMD^N5N%uoOXU>eb&3Vvo27Cy zW)71CCq2fQ+H>k@R{@@z%gO;SlSQd(;BnQ-~dBR9YxjaPC$8wBiI2uf963d4Y35Lq5wS&bAc= zX|;IpC%oY@pT$#+1B`WCREuSF)#^IzrV&(bG)r}TW4Rk^Tk3C;FzmocH5^`#yze6G zJ3%%ypz8;@Mh|^?_m*QQarls{hSvLF^0r5%NLs##F z-H+A(NuJ-2l<1EAyyy`_8bLO*3ab%P@qz zR3k=8e!Vcab>;lYlh2+D;cAQwZqC58d*jd<+p&sKeNmvHrJ??`J31Qf;=A0tu8HED zLH*EPA)U+pIj}kC*C(HQ`e_NJl(vbxR}Vm6{`;unXW@81GT^&R*(7mm;X78B%-!Su z0?Ot*JAX=-CeD0DPaSU7tINy5J@nELK)A*loHsT2Fo0 zO!uFa1W5}lu7Oh8UD+9y<{6zD*cHVoqg(I;ft*(3?RJVvsX=C=I|1j3x!ZSi7wHv? z;joyy>KsqEZ@(a+!BREm~+71rA)MVP^(|A*C!M;7$4+8#Br`%xuPbOcZOJWA<5x5v}_Z!lTURpUcv*il%z)u zWmQ9R?zf)$L)~RH$e7%9{_I^-Pr!CY7U7-nnh;Ysj5DSWd{E6|x=Q8q+0;|PT;HXr z%9?A602<7BFU7WD=guMdMyMXH8&9n$yXlkKC&08@X3psIewwTjNX^nhDpuP6je-o)`mkb+uSHOs=63| z2r@o$SZ?2$KYiXMbhfenD}K}xEc0i{af#G1S0hruk48w+CW|T6PFDvT>$PfAPRUs^ zN$Fr4j+z15X&ZJ9B&&vLonuVzgbBJE@omBoo2@)}@gpn$Lsq^QZaoPeN|RC>d7NM~ z$BR%1N-a;-0g!HL=k)HKQ=Tx;Aj%uD`sNOmm9s^{df$ua@KUwzHPSd_aNHhxAUS38 z#}r*$dnwy~6jC-4&5%W8BFvN{Er1y^v+FU;wFvCAgC7*AcosIRV$x_p(Q7l)ce$bE zncT;@LnrYxhTm(8grv@a!zzc&60U+{f;?$b&QNWsdTt7sJ~D)W7~G#`q`vJ(;a;RH zlRJSA(0#A-Cvyge)*-@H(}hC115VKG29vSDGmMTh%-(*Xv9_Aj6Lr_1UO2~nm16T5 zMQ4z~*WJne`usCmf#hUCXQ>{HM{a6jjUBjyuE+V{I`qrq-Yrd@)k;qsM|uJ#sJg?# zwdA&+q^X+o5OvA;e${4NuSWZNoztGb$GkZ|u2Fnvbn%_?z>TXMAoctVo zZ*W~uwGFv7eNRsuw}~;p)~vPCXs$H%vn^u{13n-2iM}~IfBGrynZwr3IKy@WzO_}L z`xqr6^}lkFM1KV-|DMhJ5uYuYJ5dwz-%t46J#7Z}1>qx7mkK%d+ju->o4?nWWX;=2 zt1t04zBheaz##MR!vEVb7c;&M4FDsYNX0Y>$un$mn?QN(41+Ui)PBnQq9PjqxQ|j} z#6!pK2ItHjy8FreO;{%ySOm~HtrUb)%row4OLbG%ko$)bKitO8q`OKhYx=RVUefg# zjDL(8;R^v>G$14S1EChKkBv^sA4e4@9opwTI}#6ohkNi9dO!d>p}MHaz=}28qZ-rN z-PO*syt~m6s7QCXqXCoC! zVjF4*t(ezI^C`{)*ACbX>I!DY$+`G2|LVLtgHl?#=|cyq?Af@i8|-YH5}68t z%>j#&2GqP1hVs{Rj1LmEa=vMbaGE65V0dU8bUAP$op&}fTE%$(+;s0cjOl!Hr3Na` zv@eZ6viCFonh9}FFGxw#R%$Fr&l{IY>uM2R;#R+AJfQ09%9X~;4z?}Me^QnFwTWg3 z7tXMsY2R(5U+y@7bb%P=PRb6_H2vm;6FJ@@It437IMN>dm&rZ7+=|4W)}(VVW>qwk z41f9_iR>b@KobA%_$Qv45xUYl?6Kp>3M>>_ckR6G+{TB5LO1 zi*@?wAEpo0IOKQ`Qy_`pH)-g*l-r=TnWNdjs2Z8l%7Ww&(~LKl10;sl_|+Ok)iXW7 zAYv>OAHzjl%sU%fU2P~{MqRYvwGN)CvVGCXjx+)XFu67Yz&N^P*$r z6XLc|EcTb!vl-KtH&To03$_iWa4Ge zy^zWPf5EvOeZ>%XcxeAzyQXdUDIm?2D1w?FXE;;YVhxwWUY3_JQu{11Do{ z>NTs)T1Bs^u9llIADi7B)?R$RX^vFaFA94*zOAm-s;mB_b0>mX^64|41BBK>=vPfK z$X%X6S(qM{Wb#F9fR$Ezt)U~Xh-n&cqh9>z@260AM6R*v@07~J1VaRBd<~U5`5c}5 z&^;jOM~{5UQw3gIgl+Xo+kFVpGW7w1kz`wTlpVVi*~MHVp5n%mxTmj{l3UNDk~ zBg?9TYKSm=KM$}T+Wj7NyCsXvJ{YwL(&=hWti7oD!;DgEQKyy9WpX*_4#W%9l{5u7 zbfc^{9vGxYEV7#ArpHIhRt{Y)y>sU^4P3LbT#p7`;}KcyGX%^ZCSIa)jq*R4-*erZ zmNAYi6dr2j(7L%7 qn8}+g~q^_}2HiwWWYeC$I*m`dh@uEiCq2C^5o|%;Bo}rAZ ziyq^dyL0E1x?yHjLOjP7qZ%0IQLaE-pr?h-<`WN>1GHHVua{HS8!$3@i*8i$umun* zQ0rzC+e6_5-IXT@G;v_;#saNZR@N?7)X~Npee>08JQl*hUEu}TOSj1O)Q<>Se7&P6e&v>7+;;sbSD2S*wloD{ueIb>mXJ;XmnEfaq$H5E$33Wn) zaboTiq>5_2$dG*C8a=Mo;J@~q1_b2xo=-C7Qp=;kxcR$#I3x6YmJpE>9XJ?0$yIkoTy22+F?=I*KwB+Y$)cu7YFjkpJm$480N!ts3^;Tol?fi~O?3#P{REy^W~CmE?a06w&O zwcn&us@|kuR7aKMw{onyo%>3BRWGQY?%zY`V8PXtY!tKKf~ADops}PuCL@70N^G3| z7#adS&}#K+>7fjDoJ$oBWqZB8gIJ>C=efSq;d)*f~?N1NWA%(43#WBhnWRvK8{ zXXX7`-tK#JAIrG&y+k!5#q_*9u{;eUxgyW~IJC`Bg7gn;zsoPg(c1x_<<%F^1n* zlM1oCo{l;Jw*@O+lYztfzJ5kFd)i!euxVqfi7=Bb&%Ar7nvdpj>4HXuF6fsRU)E2zJUB$yS0q z*>_)hI5m(@4hmXYYHENDwcgG0Rj@CN4@qAy^;_4o_!xu{d3s8cx~R$sC~YiGR;wkJ zjTByqYR&*wsIX?bSq3?6SS|8#eK<4WK3W8rD-SoCr@zNx-V>dn9r> z^3P!*QKyCpvY=0l7l^$0v`2n|RwiD()%a$C6IIqkfA{^m97{+wTOt#*VCVr;*R%*$?G<(M38y6 z)Y2FE6X#N6Mr7x$nV-xi+>Jme-qR}%kaB!W)66@b6tnr-l0Kd26 zCohV0pLAh&GbVCAQ`5c0)I6Sgwk-!3JHj0dQu8EJn!WwuaeFofg5cWckKa@ic6;s) zXGyrRiL_V&v!J`GgB4Ev1NWuz`k{YGga|H>up+UG&7#)=NoXCSbg_Fu>UTCh2f_}c z128n*R$Wiezyicy3*E~wvaU%Xw zHxIf+WjBAWVNUOXKmEhxzJ@k659~U^g#*~a`u_Cy@w$E_d5aLSGH36Qw;uY42+z(Wu3cV?H9j5`wuv*0AvvwI&v7BgMoe_GdYL8Fl{KuE^=)C@ z5MS6yrk?T}$w8Y|>MQHLWrKMClH3xk7&#I?HF$}&lwN=R`FQhY*Uuq~8Fd}CQ?50% zM;1U4?pm}&zd(Zl3ksq?o^y1R`R&kNk-%L)sGdHnmK&OnO|NE+(dYCtom$cX_2&Rn zn*0KG5%#&M;1w)%hsyAv1GsUHoh#e@iy%n5H+{uCn0yNU;~u!aAJjGrf|Hq{Ssxws zdt=xBR)*I+k;3vjpoP+Xr6R9a6Uc%xn8=SIqBghup;(@*g}Ag1V1wo4yaT4C?SbbF z{6n*nF~}MtWZMrLn*UQID=Y&#*H}JttPl(N#6d~T*lZfHWuDslA)$q!b-F)&Cm2pQ z%3g*26|d#@%20~OzkgLrz}U##$BkGja#k|igHhXef6P`Cs=s~vHSJkCMD|6J5;NL; z!Pba-9IN^G`1kzg-t=vW8ytoy?Fr0ZC=aNh529-C66LNmKAqOC+kT^cD=w+YG_e8T zG!`3rHk(iDrh7Aa8WM4FCP5;8`<7nu@sXYv|+YQ>CEwVe(5uWvFZ+OjhWa1*L$L8L_&X@C43W4m5p_ zZx>o&*T_nZ26d*jNsotwb^{#tMdmYbaw!i=dl=48x{QPO}(Jj0!kv@H5?zft5 zCOc(vsa+0_Jdf^%{jDdoQ3Kec8U?oe`_p@RNc!~M^fQg9m20b6T~A$}4yv#oY-y)z zI@5Rbh_PvEnbV;_Tx*e3Uf!sB(Ju&AZX`dUw&csMzV^e~J_t4<6EOtZvqFyM`qOxx zojak|7%NO>0+>nL^)Q-MveDmTS)m#tv^!|rGdR4}Ths`EEaepS7ttCwV7B{FhQ66X z$+`(U4^gQhDyq8FubEWLJ-}6>$C-K+Mb!E&oEM7Z7*#Wn`gg|!5UcZ*x*CS9`!g0VX**H$XE9<>4X_Lv$QywW zrbNLtnYjzr4@(^KvQX^+4KUrl{r#v=@ zC=8`NaN2qbqJ@xJEVD-+VsgDF`M2x~juJSV`t9q_syE%P)7A_rF{BA6`F`L1Vm5`C z^`V8~Mb(9kLu#aG4p}9vrDz!0br~QyAspQpJ8?2&WUX3mXlO4xppRz>Qa%{wE%}Ut z1)8B)d?0)Q9S1TVNxIhXIQ}94tukekWEt@7VwK|@RF_uci$q2=C|5ia1UA>eiJ+;q zccM?IQ9tEXNp|q3sQ>8NrFv6C!(7!W@!?|7PE(-|C4=)sH)5;5HT~K@Q8Zz2^t+jB z^UrDj|C+zkmLf`X)EpArjp0m5aEJ-Fe3MmG??D%Qn8h@a#=x|2( zchNGO^lqT=q+scV&9$`{79?9Q2Ao)PT(`ODI}vxuC(|!94y6PjHb0gFx2glA4G^$_ zm-=}AuhfBkLv*Q?t@hBfmh9~IYG`WRZ+`Qf1Q^IX+l{)_$_d37({R2u4@6E0Wz3N3 z^)~c&SxNW@c#vV0v)YS#S1ryFc=g-`dl;%pCJas@G8i~W9r;4hT)4RXE z6PH^MHqXd1eUj=N+5~kAJ6IpoqRnj&(Q=v*K5$V{E;TAOT>82dhXP*Xez?Do7WK+f z^|D59DMf_52+0K}9lb=Lu&(B!tcgR+Y-JOefEs(^wEe)%FNLyBrzC<6Nl>GL&(qqHUsI=N57~quj$w z;2~)XojQMy1x}6nBx^Qy8wH$VC1ZvjlKA1Onx#A$w9jX{NtK2Cv|JeX`iz4nt^s%s z;%wdk3}jq*P1Tv_U)S>M6WrEzVk;I&_UfsPN9F-OUutNtmli$g$An+74BXgpHek;0 zVc#MSn$?*vRa1eOLg&-Vc?=SktM!V7=4z;oIK4<(NC%8sULwM;YirGt+I+=$AN7Hx z+b}*crG8XXSk>kP)w6i{8(Id)m)ejLJlSc7B=&SVmJAH!tIO&Io|Nvu6ZFr{&#O&m z=U>n@sQcefz2qnR(}a|Z_R{)#eN7FU0esXLpieXU77wj(fK%1A?;ggLYJjaR6#Wo8 z8ge{6uw1TGj$t8ohTBJ42hTpOpO)JC=_O|mAnU?~@I}MAsB4|bEJNAFMdT?wd}0by zJWdUm9gP}lYLNJI&Yqi#DF#ex)M1#wq0to~llz1*?(6>LgVv_xLUoY{S{7z!3sIHO zLw0zW6UtCMTR5){T)4QR=Uv!nH1+fUP29UZw{<1yo`1*8L`3X`!?9!la-Qrg^%|PL0cgV zSr*$mohO)a7E-iMMT6{M*xy4@eiquiPcS`*9Lv{T?>7nXk8x~0a@^{sh)eW#d+uHxb=w?n4x_ee1k1;|lTC)VzUl2> ztyOx;69#UqffCdd7^>V)WoUp#8H5>ND`zT)tezDVT#F`@9Hsg?;`xOGHAwT}7-j3S zRrIRSvQ0n3^L(gzG-v|+u0GW_X}J6;s(`lNy83d3vn+1jvQ8nH-e_CU)9oV8U8FVq z0ISG^2TM1nsUPdq-O8w6iWF~w{LCd9NqP92CW%W zn^<#)854k^=xZR@2hz>x+Kg04%fj}fXs##})zPu%0VE99po+j0BtoI*NsyAlQjJ|` zY0eaI1-b1i8AHF*I?#vga5zdHP_jCF1@6-B@KbG$3titzmxw&**X`Dho(w_yR6qBr zr-`GL)d3zxZ1I{)DppS6(@F3!$8&3(j!PcsusoR-frw}KWax8CX#xutcY?zaqaJK| zw7INcxS=ZaR9IgBIQ4$CRif4#oZu2t^ERfRL?_-=9@WRu9o+CFI?zv_gHunxs^>1P zHN6UWrB;@B+7XkuxngHoVK5a~?iipTtk8>6%l@lhEoQmo?@2mZ zZs21xG^e*?7>%tZ8V7I2;!!izb;vIqFa;x*Zg+8bz3azmw;kD~6F*r;5PfI-0JLw* zBKeT?cwPaOnFm`g4<}6+vtkaZ$vZkh3blEVQ7fDyU*U*hg6P(o+2~ii;V-@Ax@g=z z2(0y(jq2)#oy*?*g6(E4yAn4{Z1og3d&k1e)7v48yRBX;2DOheMK9jd;;ht5tLxa9 zTDB$U1X#XG*;rPHa@cX30V5#DM8H9$7^dIjzmQL~|J~F*<`8-BQ)ov}QW!AQP(0^> z!^26Nt*7f4eGT?9ReCN5x7j!kayif)tSdLuo9SljtBik>S=#guoqfWWA-j{bBo@Oc z)8w&wkPm3;Y?=n{lt7r$ZIg=Dnou`ez}=-(x%7K*aHI&ko&g6DS;sYXf!a)EV)9^Z zmgfIUGiEK90g*(pumxeYk|s(RN7U5y|+ z%$gKJ!FtgAmpWG|@HG!y>qGW&H7GBaJ#I*P+CMY0Vq<5I8WEAw1h55Khq`#8H3dc) zMHy8qFSCj|Z6j-3XErA?<`TlD`f~b}E>bkos}6P?#bsSesE5!ovRSHT<$lJ?g4)&$ zq*&{uKXEFOeP^45x|NyHRp3GRoqh&m<&obB36jj&Xl(b?M~JniMwIfMw7JR!R8jLl zglg>Jb(oc@*U2MK>p2_KKKvniTJqVGF{VHm>{h99$w-aeYvxu32bHH^Gegb8lSVM8 z2WkTv)A|B0{Al_x1h43!isID=u)rxQ)AmI)CRKpNdUqMmW!HOytPoj6^9Fv*;9gTB zr6yvjXJWj`md@+GNIK`XJlmsh%{DdQ)s?GWAw^35de0Gw=Y4y%DL0ZPg8Nio#prSM zVUUdE+Ud=0I&$mDOi8hLSz5eSUypfd80)1)Z}jAd{H^}@e^oj9LXu4VXk4XLSR#CXgN7!0wIG6B zBeFnQ2HHcvS+55@Ps(GtJF~Uqg+f3yExZuBOmRd%s|&cmQ(AKzODtO7^P3mS4XO5& zOvedyPiz8<_l{d|q~0f#?s#T;dCl>#6>oRD=H`84ty0<41oT_3yREE^KyHQu7!O?~ zfd8f}QcsO-0(*Hp8wM_?!-ejN#DF$oJ6bFvhGU9BeLoj!xR5)yfK#y&JN;`aAn#4z ziSj1Gj;`q60_3D2V3mFljL`{LmwKVa`_qqq`WsCyZCnosylYMAZJXz7=FL?-^|q8; z;S?SWMbRg?+V4?_@3E})R^Lcwf)8ln%A)3VZOa`#a_O2DNNat1jlb4GZv-v~ifQbI zklS@hz;5(CKx-~N11?51aJ~eh!rG4Oc}twhcPx zdy?6W=Xe0kRIl50?w>j6sFp}T{kUdVcR8ru(+VYE)`y7Dj}fB)Y-te;_uYT-lr&PM zsynUYx$3vST?~5aKWmPtiJ#qka?t^(0OxwHJuxUbx8ifVBab$2<9Gn0j}^8MxK<WmmT?>QF;SIP}yMP-#6Sz`(Njsuh-IOp<;Dfaim4_Qd z(2j-*MHxzucT>*LH6A(auYdZ3rZ27XJs%#8XPA$Rts^7I#COCAA9WR?BT!M)ZxvOy zS{>4(JvYLL@Hh?eq|=HphLInAOz!{A>|LE%=ZEb^!Cj@_*uiRE?6yw>v9R|6S>4gI zuQk1rZfn&$!(Pq`@7g3p;(8ddw!J*^$qc)y06CM@MO2zr|EZ+}?Li*QBg42GhVIFt zrV3%Cf8DdZiRMm;zs;;cCDonwoN*cx1nsq4uwFd#yaeExh0|B`^92@PtJF-_luW+% zre@>Ji%)13j0DBct?|&C)DXKr(L=G(%?H!ofIJ3Aln9ihX++0RDkWXXvU$940xnOU zO*d{{s>M}+AX(BfQy<@?92upx`kgH-TG~uwcR&nw2_Dp_2t82n+*42KnG>ajSQIb!Ls=Rlsg(ouKU>Ih=gG|rkg1JXQ` zs9tl%k~WP*aWeJZ7#x8|PYH`dRu}AImX4vE$CQE;1hXRatuA5N|BRS}?K^J8$B8rV zr|6JY6gXIayypvOjhFe)^WOE^Ruk$b3C@z|NiTR`t4-5>`oNYi@TIDg52h0pFJbH{ zyu@#xqufYJ{1|%(_gAyCv z<26=WLUIvnbm-D^1Dt+rPzR&p27{9)i(%9(wPFbn0t(W|n{xrMK=d32^fuyKu`TEpj zP4i58wYIigS&^Z;%DNIkEJBS5Zmj#Xx*n_RUeY@A$z2b|9ps>CN>vKPxxT-$QqeR4 zO7SBBQ@sn+R{*ul0bg zjcKZA-F8tz6eK*x9 z`n5r8je&Nd16)jQQ#$oSDyMo!m))qj|8+3-x;jG^wIu%6-Gu6my*e7-GsPG~xazGo zQ9F$#Wm!Mcoy~;g@IrZqBamux*9mmRB^vZ0?z)BilBd^UQ;4JhZaXxhD7={PT|eh7 z#+x_Q+9%GbK@^45hMo-HAz4T7Y0yOUj>ax=7M>WN%o8j6$R+E|9PF# zI9KlQ)@=e{?@xco$A|T74T|Hi-WuR}7v^kOy&z(LKYPb;u~Cw5@mxGzi|VF&$LSsI z$md?rPv_ltBuU{0@j;|Y7&AzdqwG#rSNa{h01lQctooQcmEuqS8%f;k=He4?>YN2r zD&AcEigSB_!vxyXbA&)1Sv7)s0cu|clWWP5_|{}V9NbE=Bx&27M`)xHv9grZt>!89bEj(>8JIC=K;EUojNi2QR}MPV2}Q< z+3mQ!rTnzZahWg30&dKai++kVkI3|dv+VY#zTAQxR|?APZj4v{3r~lIxlZ8DKU&fd$5LkTw=m zUQF@)8K+KPv}kk4#|oy4)LaKfHry*+lK{cK%cf-*pwO``l4-hxB}8XrvuCG=m+M%N zrnqY0$^Lfw!1WvDJgjxadb`9n>vSp9hv7LltdZh4^o_#*4Lt(o1-B!}(eK_sfBNQG zd{Yy<>?Na%c)+)S~(gA#eNNA7_8mOkuD_%%-;C zIPKohsRr?=lgiO!Ho5Ui@46L(OBTR=+~U7%^S*lJ^fP*v>QZLnH38kXv!*?!l;0)X z^J9b%8B-nVaZOW&Khb9h!&7fy%Re^N+sN_Teoii)e(vm92`~oDq@5gqaO0o2hZb64w0R$qt;eIoa@on*oeN*$2d3d&n+_?TU-3r+w!>`T;Toy}QfD~# z4A1xcbUEr~6(q-D&$G}}pvU61yWUyG0;J=$ESGI|(DYp`!gf0=^4o>7SyRKFyhkJi z5aIN;wi8JZ0+_B~%?8*R`tCaDf$G#VQT>sN?WF4i+B|Y~1)hZy+2L}t zo0r#hg;C#A=Im#ygUbT@<}!eJ4knBS@uF-G;G90>KX04@YHYCQ$?_YW)fFup$2ZDC z#|v@UOr>;1M-*0}Yi2^?8Y@OYs3|F_)B1#lAj}}<+shL0$ zNFGJkSUmmf7o}X%GlOvfjV>R0?o-?$S@cCp8GWWXB`Z2~V;$H~Cu=iUlrI;tVcCkU z4hjSN9=LmShAOf@2?*(10{aa*mz3$u4lk>ydhgNuv=ntkx7^zyfvL5d?0YsKai-}3 z39nq!m~Ah46+am!m&wFd6NJSKlEv2*$b~o#;PuzTnj&yI^i1)v&5;B@grs~GWkK#z zQl9WOi8EEpp3Xos{`8F^0_v%}gm^^SGm`*y+rb^ogGw z_%X|(fTuA-&9{D$khw>-|2tUeq-8=|$T6kIl z&s@+WlK)bBqgdOWF1B(ked=Z8Ru7hbCmU{2`kbG|L(9^J(Ntc8m#X6YByB3?Dp?ltkgR*9oU+{G%~^^LZB=)SDeJjszssO3NZP^c ze{sz*x`Y+KoIQ+bpjzS1?19X>>(2f?A(E$iBTXQJ-F!&Gg}F@%TZ_*=%*+8&=gW@V zqS2OH?TINYHc{#ULNi4lHz2}9rz@#E{mg}2Q&Dj=PjP8% z+=bofGn?Yywz8T70;rFfkBpu#gt1|)Qwrt$S6!6;(nP`IQRXc=!o_P`ENe5GNA~#t zBpd6ca=oS}#7O^=jD`LEi6)?Q;E<-)&;Dr1UU5`V$9L_GiC3dwOglO+Z9{rF#IRY) zdV(@*L}ieMS$L5ydPig7ty5MrVK$paBAT<;q*Tn<5qg^$Hey6uK+PJyAJ`TdY{>vg zJwuTl?OwBKnAtg!OcKbxxkjW@Q^i>V8NuU46N{&wIdxh$VirG`eyj|LV=#Hf$Ep1{Fa*0|IzNw*+eKEB@*o9?y*OOzd7GSQfZfq2KJ(p)YelQ{Z z-R`)|uGL&)a0FL00ldI;LPHh=uNI+=x~XgMOKbfu(SB;K=JlxLW$+5-sCdad2d7mq z;6-Ty$vxM2vLyG?T!{2?>fxYgAz<8}WUON3sHhyHmfgWTh3iNb&Vm~~9|LZxXSQ`m z9MOlAklZHJ^s)c0ka*01>3xlrXd0ab%!62~?YQ`Z0}tUd6NBgd#mAC-5=sj>LA9cn;Ib^spqHdvY~5lq zTPIOqv0fp}SJs%1VbbzA!Huqaj&EgH3`<|=^K6`v9}E^{2W_BZ6-}IdZaDzkED8|` ziOy=`spkozLD1H~!d=z@u;XEEJ4&r-l^w_Lq<^!cRSJ~NiJ>$I&jiCbGn}@2oudqy zR-n;X^Mp)$Fa7;cGRTvec^nnCmhVlCH?@T4s!I}#HP4_Q+XBVx42E9IIth0SOUM;b zy;7oKu;%R4=_^lb1a#nK)evXNLnGm4HZt6-b_^JJs01}896=L*xR zh=Hon9M&x@%Zeo;^2deVyvujz!e5{r=Ix91@P>9or+P@YwBp=7ok>w%(e?Whz6R2Z z8jgCEtCIt?nIsVNc<6K2y`kYV8F*W++e}J)S*z@^qeJOjv%W1lZF7(vKX?V7%zg-c zO9tUn!&Xl3>vup=z}r!jK$uMuWBuoYhoHfIv>CeBjkCb&-8Ayn_EneUEwNF{^5Hc4 z*;yJ=njFQb=txsp;Bzt>ENJ!oq||;^8^q84w4fpvhOAb1KXt%66Q`H(sSWt z-kpA@>k;6%?Sal`o_US`YY9%j;C-1_S28|_g@x0npVO1~0BUKWPkKNvJ$9;Rp1H6X^9?N?~;LIO?XUF~Ol#+}#Z;d?|3&X%h znD91xo^t5ZrtLg#xvq4P20fY&%zWURdRQzju;!0NgsBy`(q?8vlSZeS6C+E?^Gvu> zoZ@<}tI@R9%1YnXjR`GX*3X=wnRAVE7;!GVl7xfR7;Ua28&$6?R~y<*$vU3vAjw(z z+}4IuL{?tjtjewcCW@soKzr{#W{45jNU$RpCu}0@;XLp`O68l`ySgiJ)6c zL`-C(RDc1IujXj41dVfS|1Ly{5@PP#N83n*@C^#At)810FO#GR1Gt*mAdpmc{D8A0 zDnjbRa|n7+Ff0`O(d(yAhcv_6z&U`U9;4YrpZX>>9z376M0fnh;%}{LbwCYquR|-K#8coiY*j;F zC*%5|R;#rG36CQ$kkQRjvwTkPA~N4hztyw`otoz5+@+0WX^Y>U)o@2eE872EHB{jk z%R&BEf1_PtaFHxy(joHZYR01DQuMQ%C#=_Z`&uLl`7}lvR%KUsc{A&Uy1cZm3zP;0 zQJlWjq&?Yh<_|!NrGM8S&1M;kurs#{@ZzKa!=7y_4%<(NxVh-oPA-$j3Z- z5A4xHO)FzdMFBlmNM}z)CEP_XIBQ2e1_OOVUk74&(4&ev90ACs-_+xAp8F`Q6$7z` zcmg<>AFG}mS#e;rcfN`fsJqbY(RlQENbOF7*|1$iW{rjgc-&IHx29j~;GzC&!$N7` zMK?KzJ!ng!uvzh3<<7Qi4`cNvrsyaVi)&bIpOs03VD28emBLyaky58pEX&}5D3a6w zS|@!OjLU# zi!#JqZI*oN_h3?skV=-t%miqiKRTOI5ba>TezGtV$n6LFyKwHJTJBs0hQ4}3QS(Ua8(;p#A`y8*Dx6Y3K%m}I;grLuRIF*AfHHjkpS zijof#`+<2XKKi0!aDIvbVS1oXV@s(wf!pc?_&=E4*HBY$yX=f!T#RI2v%2o^zKfN- z@f$SRnpL309oc~i_2N%*clycn9e;HP8oF;J*49MA!M|pxTlP7b zwi?9gGhS3#E_wFk(hW)1%jYz7Qk?gnmz|M^;ALt28~@dv$KA}N01S%hQydVjjwZkOu*ez*j>N6HQ@PF&I_c546!7jd96{kk&)T6tx*&Nul1z!U@%3kFmr01u~tzZOM&39uMOA0a7ZeFh1j7k z$%9DS&%dJmNwPgY(fP;P|A~%pU@Q^)@A>bWxD|<3Jj5&@WZVeA95ntH7EeigZoH%$ znikVoIHZVoX0}`p97Y&@*2p=xOlZ)otI$sJW!#dc22+T zL_a+QmBo-;LI1>^^o(@wUeH%s*PLa?PR`YH8X8gPDBhr9Wch+7ccYOsfTXlURAi6H zWN%v^C>?bsG{L^0qb!gk4k7s;{6Tl%#J2#UhJY+tj^TxuJQkF5dQVK9l9jsq1xH@6Z`QcTl}^5 zBS5XujTi(8B%T!-5WP>TFY*^?Yxi{wVhbRyV?4e3FlPS59aF2CG7ceE-4)#AxKk1$ z>+LCNSgAGiF*Ubh9DMZTIXm0GwOlg<`REA4^!365nfPbO8$f z8DG7Hc{Id?tzX)rezdMRM>!KI2%yj}7Xo357T@+b9LW2aBMU(i2sC_5o43}Vgim1ms#a~+#+ z*fED+Z*Da_n>%W?+#s?%BUb@d?xmRc(j$Xty3Bq62FFR5;0GXdrsp;V zn2v+^#WF^5*0_!0nopxyIOY4E_QW0X2nBgJ3I_flonRIlIX4dbQ5F-Sx&%l%+Bj|o z?yl8u4&xWKO=~sg(FCh>|IKUKU#nhS0`HLo-h4>6+Q_&QH%*nO9%aWJH06;UDyf}E zBJz}BG`mTT<>;jNqE>y6?6>X$xMi4ejuQ*~km8{CX|Md1245k7J3Ps{E!a&#^?(S| zQtX2Hxb7w8t+Dr11|#5cD>4=9kuWy{9IA*tT>>crNUm4OfA~t<#a7dRy`=oZGF}CB z-Rj$Ah{tD4oA2WQey;^HzlKy*s*2PeVF6Q@H%-C*pts}U$w&VH=o}P9Okjz~>3Ert z=5RM0JZ9)VC&>G=&wu*;Z{`Q&FaMo?v^?9SDfKf_`gxpV3XjGtjUHq7vkDOc#BO^V zw`C@$_15SR`#5ha%a-RCLr2fIkAlzW@X#h#vqWFAY8HwCcgT7Mgt**y{foSePa5f* zi=mshjCynPZmF_T3l3TiVt4e(XqW>_d zq?`=+pqo>KF@8fX1n2A*$ju#m?=RCs2g>Rem8w5tN`D-@H^F|yZM3xdrv>Tpf4LR>pCh$qc`u_=@~h6_p5Fw z!jf63YvNcfOWNLccVoE);O0`d>m~*O4j{I=&&l}OkPc4YN(F9sz!I-EN-jFxYx=}w zMQbv)Z+>rKJS_v$_BPoMgG{&|vQfho*6oZ-o=A`%eASB;=ig@?V9z2h^#1f?2~$eE zd7JDB{n6t=H_vU7(eX|8(s*^^oOKUcOA^Ff0%u!VeS&Q-?fTYNhMsnrVgZ1!2($F{P7d_r3tDh ztCuP**J{onHM_ZRC5IuLKIIsTWh^IYtc##3^fO7REL&p^trY@j^yGNM@(18!(0qOK z^y#3TqrQ%T>m4$IS2R1#+IqRvln_vt%?&Uc5nnwui58>6)q-qCd)rI3`m!I#6q;^S zUk>%YPN-L`86iTLTC`r&&C6>wIz#D3%MjzPm)0br1Y=6&b2;p4sdq!8I5_a!;$(85 z>6nEJTThCy25qf-&X`0fWgim^A-{c69-~#c{+j~8x$rF_!g#7iyx^R2`P#LusS!?4|R zTlw0yYke|)bHuQoW2ay6QN~pWZaIJ-%W&8ISYt0Y`^OIR7$!uq{lR0uIktk6%$PKQ zeTzJ2P}8I!aUyx(a@s6KIjG^mHwZvTb~dqzCCjhBAi+N#_~wV9FbWgN(e%6?5A@$o zM-udJlAeE?jQziTN>f-%IT^j;0C;EiKu{H+?xJFL$h1Dm2H5X<3TZhdIJHdcXe6U9 zm5MUUlDLnN9ep7&=XraBJ;x^-@`;SGzF`cEz?_p!qTg9cizX}P8@X|ms%gKC8{LH+ z@*!v1XR*20hV8Z^igxhBwLpg#wf|ZmnliYM0fb|REtkCVos;&P*?leRuYdjPm<*!` z*X0rmr7U(r!v#=@qOn9YsK?>p`h;3RV?+2b#-`~g*NiFm^3tRm z_LH4QVW0EJi3xyz{o0N7=BBSQ=nD)-``b;Y1Iof-)d*zaN^9G25YE~2=ZMvNl(OH^ ztk}6lu+q;QP@rt2s*`k_Ijt45dQ!Y-y)<*5h*&7;O(+lHa&_BqcC&&xqx&S!o?WF0 zHL{r3;>$Y)J%q~xu~nFVw87RIOR;KmYHv;ci)31*8(t~t^4HC`)CNQo<8MFk&PtEu+cBG;9?hhxf z8jlEO#TB+yDU(Hr;nP7pA}R>5>i5&nblPR7)C2T}0Sj))Z%BnZg^L_MEdZUj@oYa$ zS{yP@tr~sgY7)ptZ_jY@?QhNSGr>->)AqxtAH9CyiGmR0GhL0yyK8(ZzFaLKe#=AH zuzj0wRHGxbVr-f%Pe3B+c|R(s0sUL6-7(2r4X(4}))Xr2p=TP+<#H21CkW9w%Zj0w zD!Bf7Vgj|q^*Os8e@?975N|{q*vuZ>?JQwQ%ow6xPlw>Og4@d?I0e@oU=r=GE`}bl zVeKMomp$~px=S9SCGf*_^(EMp?T_Xa*qdVkkv~V2UwP(r%|^ZEXgbbU{r0W5Ueq-< zYvps=pA;jKxUBS3emb6&o)ye?ye2x_9Y#tfk@pf-dwcey1S{pptUTCCJgnTT4UTi_SrNvewI;%g#y+TJwOYU9TG!70$rfnaT1cz$iwJFo&X+6 zU2zT$4^WS;=Sua4-Yfd4?ez}h$%`Xw@E>U7hV83SXjUaT%=P{0S9<6xSFUI>ux7>% z86WMW12-fbCT_yiBR|4Q$8<=E*jH^6@T`uKCr?QLEt-mnqq(QWyGMyYRT{m=b5=qdPy8D9)?e|k{LcWnufSk0X1GG%Q7`lCHFsx^TBk;k% z{>m~~tnwjf;iC*aRibbg%Euf!N9{J%+r{6S#nQE`Nl_WteE_+dwPcR~;yO+VH2w$)TWZV|H#Q^JYc@Fy5*-ql8*Qhx=wf;)V{K^XS@4}4 zgL~@i*=z<2Sc`Tl+W-p3n7^f#r=S6CRyKU7MUT4_aMpKe8u0c{f31PnTgR42)zQwz z8Gw$EpWV^}w;XZN+4kdM&~oQ+ z6m}p3_h8rJX|Hk{A6?giF?{o3_0saQ;HKgw&O+ZcsXg7cTat|NBj_+`TsOTJ6T)75 ztO?NvRN_30>j6m`c=JkPAV))Y#hb@Hw=uc)kJI-pV)E19ND_(wq-BqT@Or6UyVR)E zwYSS#OBG2&v*yT+-Y}BxAA))QNHcEY?(eit+$q25z5W`;>7{RNQqCLpC1eP^r=h>F@LKGkQPDg;g4__8_x*G<2YRc% z7V}SgTefqSTc8GQqjqT{9vLcZJ(v?6yF~-Tft7TJ8JfB_ersm)?48iK8>Nd&B?lT5 zH7o&7d2YeeLsu4^-T4qbtS1~E_<>9;%FUt0Q%`ArNRnlzKKeg;CnUfA3k{})ip~%C zdTqU;=bPPpd2Tf7@pmjN6SGyXY_65c4x(^+iI6ZHbxQpmOVcUrjF_K2>PZso3hO6x zwbZv7*OLMxtDBW;YxEB#V=sBeeS_1P{Y5rd^YX%L4&`hm3q#Y9%2GVoYJgTwB8*Q7 zBuEAS85Nt+Ywt}o8z#UhvF(}%DX)0-vIUw+Qt%v_+UBqb9O)4ZGGHk=M}Y%gT3&M8 z)aqJeO<%SAItU2A(<(^@k3gnK=yyc?ew@Cog;~Sk@f;Pzkd<;%lk)6>H>0X}Gpbi^ zXle*~jH8bPL{tWQ@yWp6a~p3we;(bFe64J*>8z+-)+}9yYPNRiiQGeoaN)lg6OUE@nb2c_WzlQR z7v`=P`lj0YafG+VL$m4-E{)wIx28M+$G8$^KXkn5ihM zg8!`y?Y`FXp0Jj&Mr(vm*{FH~oJ=QW-DI9JmOyh~!ZKs?pK$VK=Re`qbVk!XU2{4o zko7sGnBxNiIf>dx@|22zOn0da0;C%rUjeCUBzp>shQe$q83f7-N6B!E*_I>up5#LJ z-bk;)ySqe;P4ftEW6aNX^en=F&TEL z9R50nK#(O!dy1fIUx3>hb(6Z%dY}bKogo=Im@vMqk?}3cvA)ySh<1YQw2o^U8>oVV z%ds3xBLVG6$Gv3yn$O5mKE_Dhpvur;la%}GT6k&Ih8_$tz2rkF>cc=`g!O^$X;|Dx zU#{%{4AGb2jyNBKN_38SOm{dqIdI!))4CCN{5nRx=$;+>i+&TD$uK?9Ly|WF))*cw zC#2?7`w`OlJGkoaYQTSN zrVS50iBsxy9&5Wxfb#lwpT*EPHqSYk1!jcwpV7*aUh=_@?;aRCdVk{LV@X9w&mn$y&V&TQ=)$l^-MOwXKJFbjz=I=&!U#X=i9-J{{m!pw zY~l~W(7ikRLPzUnjTlBF41NpR!%{K;bIka)1jO}qJ8J)OwAhFWp?GW1x~gfhlt|VP zzIEVq^(>(AHD%EjZs(?Ge4n^rJSEmzwW)O{p?|PyJxDdae#gPmirU!D(e%IdR!-6m z5BSrXlC(MC{WXqG-I1klE04Eo*PNUqH7@R-!Ad1zO zxY702nHS%b?2vRILfMV>KUjoo(Qg;=CPW<)-Q9L*Pjw@?Kw1`@DKEIgrS`I$L-I{o zTpy!=Y6X3%I;#3UKoJ02h)AKKxwF_JD`(NhmZm(}rKt%+g6wFON=IW@DEzc9*Q=XN z>AV#$OkL~kWPuUuDDKV+#kyzC#OwfZClQbtnnZiD_EoHS+zgwem*r;@?3u$@4?Da0 zi(g9g8UQErr%V1NyG);L4Nkm@oi>U^2w7id@4$_&SLUAWy3Tz5ug;u#Rae=p)SXV8 z5(WBEYMK(Ht$8_onmUNTWSNtT2<2V{Q_s`-QHncSYF?B83=HQ6c&|_eRci zMMi3=b+m#brM>z}V@V_7*rN!;^R+-cya1TZlg-p#&-Ephi`H?|BkSy2D@YIJh`F{= zuC7T5TbW4L968`evE25`s%rEI#1sgA=wYEca%aGVPOXBpTIbM?V4cZ1`X#YY@dwNX z(j^~#Fr{~iW*O!pa`i_i$}L+Q#d|K!2}(6Xn@jErzqF*w6-3tB;MbhK!v*h;`uZra z#+b;ANW->MAhlHsJHgTr!P*NW8Vm2mwMN)E?|ds4cy~CYMvfUhBBYED><-HM2~9g= zUCAqTGRp`Dt|%jlGF?_}-mgwixMuwYGDDTj(fvF~3u%K@=<6}dA>5T!m(30VIID=& zytB&?v2a@&wjZVR46T>olNti53W>H z@feAjBV1nbq|>Oi!^sna!dv-x`n7J$3D`SysHSZ$XcOYiNB=PUQsQi3MEqC#`VSf> zr+HAEw?-#mGyUjg*v16#LEJheH{8l)f3Ecg`W&x>M;DCw2ioMn_$$f!>A&(0V9!6R>4x`c z*Ex*Wobu!)r$F!Q_{fQ_xGBOppY5_{LS;#=DefVk?>cO_Yhh$9fu((EAIYR?f|7F0 zl0wb;)`nxAYC90vN7m{RkV*}FPRiLO&ESHN}(njeuJ^}l}6Q@#Xe#|M3UJ`Ib+ zD{3|iaMLLQ9!*zf*aGNLf4SQoUgbpb4X7j~2|!H{x4@kVX06R$mrf_~?kX;Q%W<8Q zR16PVqiY_|f5K~MtC6_78l({PGv;y{KDMB>eb$5-r0sy?+5I^3m;d$X zh07j49%}oo6Pb=2HU$>gyyVY(-Vw|ss<(nE{|g52-WHn`0nq7p5CZ| zPVod?zei1KkNO6m=C+PPU6O#>H*h}^lbm@M$KNb!3(@++&k^SA@ABp-RK8})f+@FJ ze0`Cs=FG{ezNCqPf!%nJ>}L#imD)5@p1DJ_=SWw z)rW+dvcRe#uw@u>5*sBI16VI216sgWpQTZr?$Rb&Z#9G(_a@*=+u)?TbmI!UBo)=_ zJGSYsv#c5jF={jMq{5y$^Z5UK1@6wiCDDIp_F<5V(PJK?)k~--`|{)+ciHYcZR2?F z6^*}jLR%>v?8z0MGs*cw;0((W(K-Qfb%oCE8{1JK$+BJ4@}>nv!%_#9t+%c>SZ{qc zRonllCkNdHOPveA3jN3Qv^ZT*+OscMG5wBb{{$ot&D3VMbxQtfQ5P%02bG0?R?E($ zx7~Bd=a{A|9&4j>+0$;X&Hj}ceRuCB?Un~~nN;vL_Jp>&F+y5_;&h*tQR8mm6x_)$ynBJ0G$>9ci;6i zKdWsy0;4kWH+CsA3QSdZU@1^jje5Ar;6^XQ2a!p~`1Pu>;jsh80qpi1w~)Ajs~H{{ z`V#Z3vlF2~4BE7?k7POZXOe)R-|Jh;+B+7e06f!itEY_l>Ny{a{q$)r_tPI-Y)Ev_ zN0S`Dx6@lPj!NB;q-EKQPODxQLHN%tNdUCJiLHTdX{5kN9N0~>f+v}IHNb?{vToEW zFPAHuQKbU$(=4lXx9ApUSpa(ss>V$u-=N!x#G%S59ng}>dWwQX^GTRdJ>6l;H~F=m z2hUDgFoWqFK_la2%|5rkryps*pg(Ei;9*95>A`iaK8=$jKtX-M5I!r{+0EgyCql~2 zx<+5c&{w)mqffvt@>RoqeTri4hVi}IL&loJDdutfT_R>Jw{f5(Pc0Fav#|CWU=?OS zi&}a^T59KT?7w~M1wD)zQCS=mqg->>ABN$W8h29GIR95;8@4TBt`!!|n4kO{>v=lzKJA0(Rkv#-VOvH}h)Q*TL0bO5qAJx6J&yj)p{RXRsR zkTunOt!`|2LErjd_rSH_qd&|()`y4@{pb^EdgRvh9lf``f9U6h#oaQu2Kw1!-!&l=>1mM=tFX8y^ zu~jpbD54MO%q3eZPNGm94?V-%tXK5JT_qnDv9nGYj2a-$v||=p=$l z0}wrSRgc9s#v1~29g@oFTJ^Hz6k$v`E`YE^1shVo|=1h?~ zKKdZl_Ix+H6B1(WQ_xMZKM!fk#xeV@EBvPyo{rHi;`*P~6k9MB2v`(e;6rHMCfEr2 znZ&M7+*+-6LEotrSbXg@2_0yP00@mz zV;H@adNk=#T7CDy5rLvhs%9O}gRmSWM$rU^?4_m94)@%y247@wdVR<2c=+8c*yks0 zIys97ljfe*#IDPzPe1j9mVRz{#IaPl4$YDoBDx&0BhuX`$Am!r7WTVV-?VVJRU{CN z23${#W7%@^Ysr7zq?o}a0`_9x{@0-GZFxxi+OC_N2VI96qHFO3wSZ_7mO~Rej#gcC ziF`)GFgTXGC|0fPCX zR~&U;%{)NH0c+v$ul3+Jtc$81$MX3+t)Ir=!akaPpyQ-Qi`gUAW!v|P`6aMlc}@ro z1rE?!u*){#@F`mL6bDf%ot8{t%9l2)&C;6IW<6Nf&@14s^~v4{5~2-a2pV;@36G0L zZCM+`Z|T!ZeIP>S?E4J7J^g0-rDUAem|3ER&16{}`?$VekZE;FEy zBf(zpXJ9-&`h75kl-6PGY3jx}`W|51#g2D_d5& zYr?F8VrU$f@eBHk;@9~VHVYFrw2_4gNk9*F71en5XMcRQ?@?mmEj*r%;zdep)-|)n zDWQ?W+wpwHN^snYu5Olf8k}fS2<}7Hg!Sfu-r3Ei70q7j*iGeb+kp|(iJGM7IXDf> zKFy8HLDm+y28{{%g%drC6(JslRK5pt&mo!YOBe@&TH!yxxfruqL$d;u)m-6l5mYj7 z+!ERSENnn?co1>g7?1uQG|zvF(trAt^|mDe9D?8T_MO?s0TgdkU}5)t1=#0+h?mz^ zp7Z+B%kEvaTE0tmw#oSV(;ZQdGjy+tdgv(a0x#unP!hK7c|c;*#4$aNL?VDdS@2sP z>I8GKA|FI2P+z~&M%80FgYI6;A68Nh@Z79ApG9lODr>YrrW&J?rKl&VV-)A6=_}Pu zNf649S~^>OpH#z9S_JBw;8-RCkUk@O!yb$M^PlEN#&iG5A1&s{AoG*mJ<0spg=l&4 zQa|k0+#85JLA6o5Xdh&en^X-Ol@rAFT9e((`KcIvcQ=Zg%_=o0aD<8|9X@EeD|XQK z2qdW9gwT46qWDUjDS1V>~3w6iPBpz=)vi) zw_bSRg|lb%R=H&|p;v`M*Q;b*e565Gqe*6glxQrMxT={yGvRu1ik zBU*P1W2BGRCe_cUpIdlQl84w@c1qLSI&fw)tOY#{r|8i62QW{DIk6B2*MXl;iI1P1 zughKzZ0Z+4Fg{&_t<<|%P=4Xm=(@QN@3h9fvWj0-};uvR$@%>nNtZ^2+VyZO{p zr~g(;;{R8py)gf^rUYpE)=8ivr2r)MJ`QPOhcvQ|*}JjtN9LK#+qY;%U-Fc;;fz@< zO#v}26WEx1z@Ww-t@jfg1T2h3vTDlLtP3AW0rDs1PDcn!_kS%p=c5VTLD{$a#Gz+91Js!;g^O*lqd=+SpKT8i2v$4qH99q%nSZ#LhM#1MhtH z0*xpo)L@l>>HF@e(^>ekWOOv#iNbu+WP3e_%o^EC6;@X*2OFt3vbI&4v$g8FE;GCN z?6WV#2Y1N*-pIK`sCbG_VzZl9M;?g7Yci@mZ7}SgPono8@MN!dDWk$YcnLzCn1q24 z-I03vpr2r8Ez51{a(Le3NHMNX-0EWvTOLj1l=pr%70)wimpAChsGlK!FJ0B9{TGYj z{&K!_TuBF)r8VdLLpnneQ<33)-JUA%b+_qh9VPvv6Z%ZWgsjp$O_FqeNXHVoJH)#f z>t3{pV+qbktGzV#d=$~wcVp#82Ob*7uD+(vkB^+#kOUG*(jBiRHYc5vqc`-x{?$>h zCvoLn7qSq?Uz$8n^~@}htzRoAB`tI5#TD}vmwZ<#k+z2aWmP{O+Q+& zc;@M*l5Omvr)SP*(cmmJOu0;yf>Rojce&t(#z>;YNea#ERQE3~4r!~k>(6E?&ab2lQKINNRbD>(Al4-?w0RNzmpa^ z+1R zi-~8C_gbF2WCQo}v1`2BZ4a@|Zoc9L=qsGzI3b|$^x!E+_Z}ryBm<-{r9OPOfo`JLI$YU!+tn0OMWjSl{RUd*= zcReH3^s&;@HIsYd}E<2aFgvN~VAt zjSO+IZm{C9E7gYi1lQecJT}lPoygn{Us>B~c*W4-sb@|-ts9bHc)}T-fuG%)zO9v9 z_~na|6xb}$wp8+lJl!Q6Yls&bS?LRBo54Sx=^5~yt?k)Mk$L%`@?i->oNR4RH z$UC#$Gy-#Z&RLOlHX}#Fpn?geNuTwk`yD$!7j~`KIq-`VzU1&8bk+_h74~^JvE^=G z(tOSX-=rzKnHkkwcZSi$=#wNIu1=@#hgpuR7FO^VuhLS>nqE( zhNgtjz2yy1asE&w+)|HtNxES>$@WqH{dh5yp_=oeE4qvV+0nPwt7~i3Muqy|Wv35& z$va~-2z0pjxjXdo3#&>e6(uR>*t-#{yql+jHYzVS<00VtuDKjYMnqzWpv8{W2M-2qSOyN8y?{Z7kC{APepG;w3e zY^|fVnZDt zC@iy!pPNbw=jaM!k}T%TY5# zb@_B&I&_XGOGE8BR*a&?JcMkZycSIfB;c@1Np5OKe>MTv)7Fwz-e$!IKmrCMidV9L zn{6?3<4t4g!IBmv9CvrDJToM4&y=_a{Nh3~1d4!+NMtM=}X4hdYrZ6-WR}$& zDwivj<;t=&(gn=K?8By?JWG!?2pU<>O&|eQ1wCgWeztLRr+JJ=X8?BQw`MQSKAL{2 zOJE*+8_j(2LNJ0LhT zug^X4rcT~f2Lrd__`gclDr5cYUZ)Teoc)Iv4dMub*n3%n~BPsCIGg@V+(K9URz*B(NgRK{Ky$N+9`UYC!VkyQ&5X-=U?zm87z3phv zw6RlgcKalr6)g(-gJ;z&ovUqWUS>Cc`PQ4ijC;NMrc-fotU~auLj=6U;0UN!8NAV$Yi{Lzb%~%gHvWuJ)8uH=DwGWY& zOd!d;Cq1FL2U1n=zv!8)GBWcG2nQfcyPo`oENy+wGGucPB&Mxy7|_Q=-KG1JMzd0@=}}u(^Oh-8N*WSblR_eK zKl9&5JvwiB_6Bu!Jw@{M#B9i~W_R?elt{mH$7>^p{E<}3c8gUKS_38N6Z6F=HpM&D zVkN5W5t0`@1*j5BmaoRS)ZOT18FC_;Nf-=Ptl_k-f;)asuPCg72rrI(Q|AfUpUAg# zXA@Bh6#?Xj?|pN6d-je7YuNnShKZT~24k@|rjFHj7fDol$xUzR@MGFc9blQ~Pz^}h z-!3viI+&i#dN74m%hmo)BF@hrL*4g%ye@HqHyV0Kwil+Q<_O=Q#;0?H2Vr|b9;JMQU@LYyDm<=zn$G4wdEjKENGyiHug89H zo5>R?nCi|(w+rq`i-*f#bB07}3d_U8lcpbhgC6}*HBt_vWQ|x<*pDQ#cyxce3!>@s zbUfYGoX&32N=5QUbn^~DXk*{Eo-t1DwKVDPCrT#2za?T?u77_s|D%aH{pu3Kg#HozneKPx^Hdm*=_{;v$ zbFO3V={eVzm$Z)iSXwTau>a}fI2{-DU?`JTQO2uxOB+oO98;SMrc456E=11ELB|?H z{&xG0V#D#8SCvSn$?aGJZ4GJ3>@6)|1NgDsU)NtMl`m|0qqhS*^}%>@;00z$e-v6I z|6B5mh6##(gLZzV`>dD^(dnNkOM4NzUHsg2u=$+&ROnjF)s=69s8b+x>l1(cy~Km6 zmBwxZ>d5xflX7Sg_xBLOAxRPqASH4BAyU+>9mi*1>!DojLH)z#rgdO2(3GK-I(`N@ z9lX<^HLW9i(9V#^hBP1sX`mnuBPoKk(I2Fk?fcouaRO0*^&yvVr{fYdVv(iS`dHti z;Y801a*Xg?rm`2Fd`1t9u~j9C>?XZ7%Tu}(+IDMgO(F*-#A9yIj=YnyanQr*)2P@7 z(}(d;)azSAF#Q7HMFr7^3M(p>uHZW`YPN@z7wI01fX97JY68sNA z9$;Z>JMHvP23tykqMcr8*7Qv#?Tgt5de!TgyQ1$wjk1?WNAxzg`NQme4PXT~TIS5AMpyCS%Sv1Soy?Pnv>DksV{rxYv1zIl;|p^k=6he7%Yoy zW!E~TxrwLgfl%X|F8<=;le%xa_4sC>LZC}vP2Z|5op&n>Tjqq0UW1pMV-xH|Q8~lo z`L-`{{2Bf^wxD&wAPG!`=+uwq0c8?d{>W3mT5RICEdp8{_hks;(WZ3z-N1?Z5b`f) z4_G-`m1=U&{%1WS6+im1vFwKT>}HV8zW(~F3z`Pg6C}aiK^z%z1-@)FG97Kh>Yw8x`=;vssIfk@0WC8AnZ~7|a{nuOOSt2mb3*&I$Vo>{>fRGma@B&x6Y!3dT!Y)%y0O2N57F<`|m{JY887U%g&gZ(yUk{c;GtQoH8VM>^=YoK}{2E3VsVd zELQhL$sQ8|E$-$uKJv2ZD>LX<3S`LrF7$U^y`5kWV-YcoyMn(sN zEF}_Hhe=WhMjM*|UiG?eepN>>aE^Q}ku+;H?wfT9bO7w!TKw~k+J@zBA|hh_K$BSz zPtQ7LY{uw((&L&q6o_Fb`wlW9yTk>NLljMXh)4${vnT)4e4ioxRjb8r^=&)_wL0EL zO#kXpEWOheX&+w=vK}6f)D-awz4zpkPCiL-W0r)*Hk87$0~JZprr;np1072@blN6; zqo6$2H>^g0#Gz)5U`hRQV(QfsBF@x(;6>}Aw74Y=OvESC0eIQHUFTWgU{4`u&GQas z$#;9vJ1t=p`ksz@^7PZ%J*&0NQuCZda2@+k!?2v>QHN3vy-A?aADghlAcGrWQ<^UL zM4|YN;m>gWy2g#}#EnMmh}!05P~o~`?U=(EFqdn9){So4@u15v$Zj;CqteIG52@{U zSO%6XC$n+n+HOSamNGkA^Mcx-U(du*Pwd7IKp6jk8T4@axz_z`bdiTmOY24!!IIv3 z5+VT(<7Nx7;XGu%1BlAEpOF(?)t+Tp9y(H?QEBF8`G>Pl;#L%ZQduvD~;g+)2HDn8MdG?3W*bPdzO?z3PP%FD>gD z+sUon)khAOH7oEKey%e&1&KXWEO|$)Kx3Mntc!u=gM7fX3T~SLhO}f%yZQ5e@Iprx zZ=HjII11&Vh{&uP7NzT$=3-w)alXa1+>Ks%cHwLcri6OQsLzL91M0Ry%LxfMd_eBwbb&?+Qk zbDjmG$$dWNcXbU98ly&A{JKGI-R5D}Sp!W&EhmNIJQ@u{&G`5I zeSIhW@kedp2V4ufpv29PM)Ps{J5lOIh-9Pg#Z-;04c+r-$Z6;yJ=%cjdEpfe=yGDn z_LV~wxiNvIV6~pIdW%G9(mMK8auAA6XOedmFg>4#CA2AJ{aJ1MlTGAAyrA{@rKS>Mf+BsUx3X&&&u?K+E8hYl38&=?tgiY=M z$$M7|W+wfx;{-3MJ{keFuW8S|dS2G{O$;(+rT$(2YS`E&ryY|xyZQX@^vH%;p?RF-#R&5TE`hU~FhDHmJ<1C{ zn%<4|uvYXG!O=4+F4h<`hdR>^IY@p!=LRLE3*Ypcm;719ocfpf_pF5N+{AU_Hf*PQ z3Ye~l!0JPz@o`Mic3{()mR@$YH;Y;tee~J0XP=u1u`5>7yPT7&i^p` zR7#VLH1u;O*RMxlpNi-~~dBvaug)K`>cvW4e6HzmCdZ?j3EC z=GL=YWM#u+Y-`nxO2fZhkWD7W04-pjQ*zx;~! z!OqpV^A5r9ctvc`We(?`_IELzaNKAF<_==0N!Jvy_XOG1Ck_EJ0?P@FKFc^!0(Ne};lK|Z`=VcOE_va}2@aXVp!eFc*Bc^23pBNvap3FR*mYb#< zql>z90VU&2&ayZHDAonx7j#&w-Qj`7Wetg@Cj_n1C)F9Z1X0j#U3CO6F_Ioc-MSIM z+Ry3NeCMaXp8cTTnPmt|)n|mpoDAo8PsEJV+*o&G#w`k{_dp))c_55u@GzX7VbzO# zB?-X3efBH$i<)q<1~~ehcb1IQbdfW9JFrZfwR*Fm?=B;r`uTuFwJzVNyPb(b`fU26 z9+F3LE9A*iIx+ue0b~4Q;K@e9VDZsvb0gs zI9jR~uRMQNvSFcAvf*GawB8tkTk9pw)zdHPr}N&8W!oaX0UZL9qNxC+r<+jF?lH#> z3O%I|-AS?i;O8}~9nLcY^0>>;PIceqpr?FwFyU8Yz$aO8{9!+UBM~w216t2bP8x;) zlXJ~75t>#q5JOL~)I@P&+ufid=tdYaB({m^Tm4fOx2f$cA-Pm}O6CbDV8`_i(Sfd9 zQ)u;bsZ5i0gYJ^q4biSziKeASf)ARVc>kwA=m{*)RNPv3;{DG_enZYVz3soVjL^F% zoV&9REV zS@1u*hrdJ|j4crIywNZe1;?l^aIps0aXdA?YXbSEV_eH@aY5Yj@a9=qLuXi^=Utzg zdq8=<(4O65;*JckgF~Ghq2N;gA0B z*{y73_hvsZHqaC?GWH|QRP@!eXP?qn@qnC%fR&zj*oMGE(4Nn3{_3M6XDS zKqVBj#H)Sxz)ak;mer$uG+KO=a8#g*=*{!wqAuE@Xe7!xu8s~JF;8t;!e48SZCN;s zgOX}v7e-JH3`ym0&giF_r((7z+Z1cZq;^|vsWyyfJ3aWDzImFiw_bA>h7>%ECK~6Y zjTHGRFqK*VsT?=E@bs@@zE?aG4Fb}21$!P)!S3|2BA;RkrC7;DZp1LM54z8M1<52>CXWyWaJRxik|NsC!rQD3mljP(`irBb7$ z*>CLix_!?}n;3F#`le1Twqnz_c9?()fjVt^^3gAQ@znCNQ+wExkE|9>f(jJYhNzbW z#SJ5)2Z@CNwS3#G2v_Zb7Sa zNd)ko+9c*iWH}bN*UCDz)5~t)zLPxo3=0f^ory-Z?Ruh1rw)>>wz7QKKCa2U#DIB^G@6KT3!3*vil+3mNSeU21Vxxe#odDn3r*AH{d|iz%A=S zH->6C4{jP{B%*Qz7O?g-x5hc+v^cxr?~&g_rD9-ac4Fe-Kngwi)4G}!l~eofqC<*$ zYki}k-BDnPp3#7D_(&d-^^#gRxE3`c7>v`5JGNsJ>bVJ1>^OTF*c&?Hp%qn2Ln0Vu z{Mx~|24%7x3t?teH)yW6QLbpxpL|u5Fgk`_TQ81>lOUo*Iv+>FdN^}Tt*#`5!;ge! zY;3T4l&0!&+4#ijiNZ_7scfM>)@Ihj<)9Mq!jkW>5SFaF06()u=TSUeZ`i)Nd2Z9J zJ8!CC#uCnG&&@^lD=F?CK?dmyjPB3qM{$QE;RjubDvf#g!cUUA)t@j4TC2gZtz{h* z2cjl!JOp{87cDC*(D63LCDLsZty2XmZe~^&n%#WsG(6H;D&^a&8J#Lcbu>)Llw~S? zK?O65x-{|Y+XSmDqU}{ijjg5iYF6CIG#}fUr+cBPizd~s=WwvNX3PkqL0I|KV+}FC z!OAmo86%nbg#Sz@eCCq%x@PO?vuE|oT2;T?T=4_3ajvHKU-6LPb%flNWnx%}(OB!U zbV9@f^vF2du9P%dbRx`{MrBjWaEKDtTouF(rG5?yr6b<1XWlS8j^o@nvYkHX3)3L6 zCY#D>g-xtgr0g;e!eA=)C)Z<8G(*3q@Aiu9P@Do57qNtV*sBRe-x^@Xzvp#U za>06rbL27R^rKm#%o00}KuD1wYa;stt92V};R6XM&iuAVa!1{X3oE=izI?-Ax`!TM z;C^*6dsnsNS$k`Y`alaj+HdKtf_gfaH>fhI_yE^6Z5W7~rE*0I%<23wZyqb@L~n0Z z3lc9)Y8B;Ouj*E2WSCW=3(wCP)Aqb2kpz3=6}hXPzuZ`LkjFL|IJeHM9OK&% z5p>r_w6`!U*mt@m`J73>oDG-m6I~tD!Gih82M(uvA-=XuO@`L5)^r40@?^{{bb}s> zK1WV-4R~?Fl{G#N0(<|PRQSK5z<;LJZ|c!X*1WDp{2&?mvC|XB2%d&MXLyEiO0~H# zB0IoG_q`Go+or(b+4-WG@9{BLJ#Myd@A;udfEanvUSl5c4vJQ8nx<~stvL2?+q@FZ zCq@}Trchf+>zj6vWC4y$Z6fuNB{~Qnb<0+o9$IJKKrYuRAcMY|IY~dPw~5w86Oxca zUjiV09}=N&G$G_WjzG({GL+pW_EFDjYc(Fe`Ob{!ww`VAcfZq*XWo2MKduK7>Cu0i zei~oiNmYN^Y6i*1J&y-DG;~_gcR>1wGw;pc=(@wPvtL>?1arcUoUR|5v;^%QFBwC2 z1Y?`S%D~lLgZdV>u~v&sMn1XtJ2PCZbF+n33pOKu*6foj!M#Z!I1Q=Yc54olKi%YC z4RhAE7;a#Z`HWeHgx@kBanU1+5K{LfK>*U`e}}(|bNcq|>kw|MPbcr>&&=-rmS?!f zdV8%k#&&_HD~#_4u>h>zm$Qfd{C9|{e8m;+&mKr5IRtLa?n&fdc7!LyXm2>03muA@ z%vKJUXAX4p>A+F5!%5dAAlB`ANH#^O3{j|kw)n*B&ZTLlMixST{`nVl5&TrVcfCTX zEaib!^J!AxbU0X_s}=c`bpjO)Q zl4OP~99AR{AL=H|DE4q{gGR-Xm^8H7qrxqW_M+pgMbtGYI%GFWtCfbXM%?VfSyu3D zbr(4U2@#Z{^Nltmp~oV00*1=3s)RyFV`sPzbUE}Na`-O9$X1x}v6gm))*X6|8W>nN zAsbjN(fnYi=dSkE1Gl58?^Q+3&yN8`uyt+o_oB&8A9@bGL*Yj#1Pd@YIKe;$9;VgD z;rZChH2NyOQsQpUezy&n%`ns3?vb|kJSoCOm$AR9&C5au8^Ris+KN2VtV$UqqOe0E zd75@eEmAk-gj>?5%u-EEa@x0es@-c4S(~s+-B9&t&Mft0TB5L8aYu&JDjm42-3k??vE->~0b*1Mm9LUfln+59V zhFcg`B;?`3(t1O3GdkIJhzh&JTnRHDzt&}~q=^WJZfk)dgVpYZVoiIP*4v2%Br4XATu|2~TA~|B7MsDF^8IU^~ zI3?~f>eP3Fse#$U_#S=Rv~x#C+iY*W+U+lqSCAZ7&zbI#5lSC=&V9Vyy{;)?e|?vj zX<|yKz{f!Z*(izQ5Qgi5$Pz|xOt&?&`icXHmR36H&OEWGm02V8Ai=4>p$}Yn>n;7* z+4gK9cvDB=>_>Yzpp)^qoxYdoVCGZZ6>qJVJR4}cCzAhWXC07x$yDT%Prk0FA`M~f zqU@h=kKd(PWb(Wu3r(0<$6cbV0#@oo3kl}G%t*Rkmv{AsdGrY)KC1Lj+Yhg$CHv6t&u~b0W)JjyY{Vm2|N7mW`X*^d(xe*T3ok4<*tlnorr)%Im7E9V zc6si5<`lajv+xVeFqOc%;Bu+q3UJ_!&aN{l5)TmJWO_6&O)Ku(50U3>08iy0bsMtG zmY(-g@Gn>j>#kmbKs$5Fy9qt|Cs4otG`*|cG9&K?XNYODFe*4?$ZzLP#YVLZdAOc@ z*tc1JyYCQza>GM6wT>erj2PWt>{v2Dv$NCo2x-6NYR=7T79ChaaQ`R-DC4=La(>xe{@rx%Hvzu6b(Na7f-$Rn(oc6X4k}> zcy*B77(Zz#8#w{h#1N%hY}MD?)H-$QHyYRM=4%U2=$Zutyb)WP4C#ls2_H{yYY@wo z&9&NP|3q<6CuE9rAqTg)BzMyx{-@c4n5;R;kc$OYt44ROR9}{gyx=FwCZ)Lg?PZs~ zSIRDZaF|HOD1On!29q$maeO~!JRg9k_zYM1&h(T2^ye~HNZQXNPol#)Wd$rQN^Bui zQZx?g9bomie2<42BhGU5V$AakFD}H3qgF<}w-iB$Yuyt+JSa3v^%7xobF8_As^^|` zoRL)M-n46P|!?O0+;kjc6P zY6e=@yd@RkHmFbChBB)#06XTYood%v7W~pXd1oa_;l-|);iE9Opm6f z_v~u1>=nN=o^F1*GBLdnvcJoD2kO}~y633bP9M}26}y{#8eTg`&he;pJhE=(idv+I z&KFQ$yic91)u4Pi{YvlQC{X#IY*mLaY5$ygK|ft`4V(cu$CH7B0e<&Ot*x1|QU5^L zY?QgUm?cG7wie=`)%F z40kyDNFSy=WdO@EJ5OUZhcvg~j4v7!$=|+B&CXp7wKH~QNa2(|L#z#`s$N+}x97G( zht@oLppvmq-$|5BuWFSP#2?EfZL1Gz{!02|~Jx-aPMx z>VN#b*~57X!AMU-nf?pk!=$z@g4QtoJJPZ3FPI8Bm<%T*eA|vt~3eQ>d!rQ zT32axydMLnUd327Gu_aEeNmr;K3Pu>$ObFsLFT5B_C=rReKy-@gqy9`%eWoZUO?mF zK&^UCWO6X@5|4yN`0vcUYjayymZteDCSoRHVj@y@l|);%`g7V=CJ2BeWRjo(P?B%u z1ObqQ2of+Zlqg#jd8w|5?ue=Go|uU4iTNU5WZ9PQcG{LN=?EJ7U-PVe@UFGxbVpTZ zXLpUO>?Fv8bI#s-?X}nCUGI`y;t9gLWEw!kFGMfI%t$3JLx$U+^3q$9V3smnAvoIWq{q@98s#I4w!(V^$Spq{wPfuH(5 z>fZeBhxwb5fgsnpG?d}0xn6quX}$6qVG)i0xy{l>RoB2`s~cnU;CaWV5u`)<4o2+R zUrIBk2;zd`OuxeCnB#Q;#=w&7F@I9d+EWhk;_|;SD;OYtJ%Lg@aNXgJ9e@21-Dn6q=|UeU_{S76F@HE|u_45?N? zzcOqFxfAnF;s$3QIU7%;G|l>I>y9Khpjp({&1k02HHV^G-)vFl60Ct}cTjqPT`{zx z<*~m}{*gG_^@a3R$Sn;$#<8}&EDd(a^VhAB(^L=^j5nsot5%yCdO<&1-C|7kP7jik zto)FY1~zX#CbwaB9e%xJ|3H43VflF9PC^$Ge<;>a3<`L5Il+;GV># z_7TRL@1iHqT-3{!XWh0&yyEuji_|Wi*E{a)ct{cOy<uMJ#YXsD6+6m{wjF+50Vvr;X2$`^96!dupqRtw0tLAW&KXI@@fdP)n1M8ZW)mRNs`Ma&__q)vf`#rm7+=+DgQ_BjO)ouqPD}LIMbF-CZaLrC^i{nM zYt?naVytO`S{fRE!e%9hJazGyj6A(g1>_EgZ0tkOFix3E_q*(*HQ@Ga^k^*M!>kBD z^JzoZ-u|m3c#4~7maWhiuIEKy#626jZ&R|TeN;g{tqr5*ac$;KA5FjY+Z*Mwe!TU| z*YsV4(S-EhOZ;i!2$44sTo(~jO3v|Tkn(93HC;P&52rN*>D+en2M*no4A7ZoHmeG* zB**jH7oX72FTT9=lwK+&D!?7Zg56qL%6JtBO~G*Djk55qPMWVee2jA{u}BC0#rg^N zm@tPDS+LO1f6*tWn$mXd`eHFJ{B{4)AlEiZUK+L0@AkDITfLFg*S0%5+iu}sp+S*u zu}9KV8)7^pn5qwm%FuC1d?=SRod-R#7{j(hA%=r)3c&c%7`2N@Hvb#CfNk5mQO|V# zkM{^we5dz#?bewmbr4~oTGO*A2MuX5tgunE=)O3x*4!nUGgE|J53Wiqs+3*O%A-8M z_36v=+Xb7ydq_{6`CAPV4bVHpLy2q6_(riywZdgYh{3nRFP?cuLoqL3v)Hm)SS`!J z&}a8B7Z%*j(J;Eyci1gdS@?8XK94|hm)N-;UYHMVMba_g$d4mzL+80-6iN?_U1`$o z2Fq&?Ls~EPP(Ke+i3TW$v&aGfP+6KDBYO?0z^3Dw!pE_a+^`qFpl24BZol|dL1TgQG1 zp)EQ`2CEg_A{S?;-qkGgWYtUj7>LCd-4o(BC>az72Xn6LNJ&-W$iYqjNCO9HjN z<@kBb_o64N{x<8m^LL#x1dWiL>5e7};Kz?c*3k228ynzE^Mi)DZ8}CzCoqtw*v3($ zYfyW)K&aRaR@?dQn{D6vPd?^NqN}70!pWri?VF5Vq^PB_=0%m|$pz{anXxSvLAKOGw1~g3f;jM+Dqzm;yB&Zw((mcp;usU! zkoP@lO0K@ZZ%N)r`J{>$*C6!<&AxqdEq8+P83RP?QZAJIGA-jqeOUr&D6`(7mjjer z(9nR}*V;hJdE|-nB3bJO=HPh8QycT!CnuEz`qqFZ_`M;X$l`cPt-ZfA_T#1#J&e~VmuN=ND*Cx^o^AYJe5bj8{xfdnG3=SPqwT+%_SH$#Pl6dG^0n?sBb}BdDp?PW{WJ?F@op zZ5Iq(rF($WwE$QmB2z1R zOU5qC7*u9XngDtZpP2)e4!q`L%?@xc9Z zTpZwxS!@Tf`cyM+41cIj-K$OfG4MO{+mAl#={4gVFuKIP`@Ls>`Ab=Fk9kGqy4M;P zphK#W{rqSuPYsg{1k;S z1rYu-$v~>i=#>UpO+u+~rX&ESEp-|#ER>{OYK{Zp2v)|%T*y@9cC1Qfi9^mbBGM00-bMHdDV=!-;oe(27>uy{3;>6SFVuUDk*nyu9H zStFwP2_}wRc|XK_g^f#$5Cm9AvPI%dpT}=-3(@%jBDaI@!5=()W}R!;DH3jqFi`8h zi|Hw61Y~Xi{PGn?(wC>MPe6SIeHmw3(DNFhQ|3Z98j>Z$zs}gC&iZXp1RRzJh^VooHU$(GaW2byX$dM7uOzfgL^PvF?xO`ZUB~QNm5h7K){XJ3rZ{U+K-ul~T*;4c1(N_8_3pdy|6H z)x=NxH+51W<{PBw3{(_|5zDWx)He0e3PORrX-=(Rgx5<@ z2p7oa^G)mUt;tNq>V{GR$D)C=zzS)NSSlf(Je=m_Yn@SUE+Q8YYKTf|sy zayOsN-_a0~rEZ)R1w!Df?7DaGG`#9$xeAZ57J^`MfJRo<>-y4y5Zz%FFKp-(7(4R~ zY3O(7UubHGQxSY{$xJ<0bT>8?B^$MpB*G3nYrw}u>k_OUXhb_%Xr!^dUe#+-6t>ok z535my4kQX*T4}mIm^GhPh_J)02b<{R@;G`lG18L_BKhM#Joudkf(9vP6+Y;&&*mTV zUtkUT3Z}v*RI)mcBBch#U5Y9@>?Na1_iBQ?LU{G&9h9$UyDS8T_3fHtXtjBU&gD?Y8kJ3Jh2yjyW%cB)8lN1DQfU~ejAUOp0;D&XxJ|*y`SOr=f3>f2%&_`RVy_rvCl~tkc zAsjf8i4Cm@w>{R+>(!E1>JsbG6q>2qb;-raOU;-yr54g8xEH0AYzf;I!32)s{r&s{ z4G;zPS#lb(z715K^{4CYz&_Gw?er}c_r3WCdJbB$P|u-eSht=M--89*eZy(gkP$!;C>RI{!=p)+Rx99P>iD(Wv@0FI&vW zqDhxt{e&xeH>4bz{?nCf8uzuKODqSe8!Pw=x(6weqv3VE76JE@ks$)ft?CMEj2KSc zv`4%_8|69cX2~Ir21Ppb1!nl(>DL+vFej6oIGr(s-<-eo8?E6QgD@OW*188;%G1yE zceAN`i8fC21VX)=H-NeS;CE*Ha3H(``}4>8BIk9TnuE>ls#b~E+CyQWN#7jH07|ZH z`+<3>qiG#^87y^bnfC|j$IQZ-f$FzCj<2e@KO8x6Hax5NPT|2~RAt7BIgw5Tw@Ml- zd2?oa=vJ-$nSLwKa+7yP$n@5^g(scb#bnF)p$I$nWS18#(HUv;g+tX-})T3SsE zhA-z|N?rS6Ti(tuG4_0KNb%(PC(lc0i{sK5p*)~D9WE2Br2fR+4$L*8Yy_1FfN81H zK?FsP>?A%zH$gT0Q4h-@VAyM=O1@pR!rMzY(~)6y7ij0fO&D6#WPE{&T9aL`ma@_yq7`Au~}oI8P8>NdcsktX{>LR zDT39_c4oV|v{`|p&AD41I1X2VL}{Cm&c_GNQeIF;C9_xeD^)K!g@w&zUgBRe+AiKi zZ-VY;rp79LbI;&~JD#e7=C$Pxtb?=~Lr>SebQnMy8Mx2P=P*h@p zHtCfzZb6uvlnG@GLs8eKceR!kz|YVwYJ{LWE*n3D&%zy$z~5nf-aWmejljYXm`Yw} zyy^b+s9XVhOYI^5{ci5lna00kJ&WJ-^r|UW+mM>hC(fRiHs()vfRb4=Fw9Gz`bt0_v|45yA4TLH|UGbk9*R-`7S>?E~!@sAw--`-9 ztZ4sj&v8`b@tp3X(X(9SLmst}ZtGizL(jBgxpguslLh@xmZtdCMF*o0D|V#Kq#O1J zVK8<$=I!Y{O=_i}8`b(7o#p&1{n02C>J4}2c4s$ldP`FJQu^R1{nUOk%gP-)3odjV z;7RmgjXdE^b1SlXr7Jb3lik7o+#&L>IX-jd%#ug6?y^hXLCxHwkPr6WxySQ}5@TuT zJ1xj>wY-KNG22eofz^mjCV4SO$!HE-k5~_$NJ`YVQdVMJ-?pUY0DQ{S`(BXM$CKg# zdLT?xP&);X8pUKdi7fELW`B47aqNg6KOizd2|9i2K9IPb^Stmfa1sry+1_(LhTQ;v zgO&UKoC82olIx$v`e?C;CLLs(880xXL@bTx=MJg$;dtQrjWg%Z@c(fNRR~TJQk2wI z*H`q?z&L!P8wLW@#9r?|#_RsGuljRPrTr$zlxZj+9$pU_K>NNuJXyHfF&dwT?>L#208&PU_ z)s4-)!)zOo;MKMz0AUJAA5-vp*Rj5s$lJ|UJ+mDL$L?<8V55$GL!c|ZKE0!vz}5R6 zr{`s^?SJ!m4p|IF0n&hI@tNuv(t=6hHl*u$Rb)#nldn!e6 zU99)nlNdc1nD?mdu|}8`Zr##6a}Wi52uu$Ev%W*Ph+i=^9vD6M=(#hG zNHw&G0vvuSNUt2f!{`i$;c&`H0) z8AZqdSv<+LbpEV%59>oQ^1xbB`yq*aTyJXF#4e4vqcg}B8)jjInoAAfIMz~{;ZeQT6Mdc0B2z2#1Uxq4*ne`H?XvZZ~CeBiiH5*SlKSOBtquP zZm==5znH~Z1N>vX@w{G~OQ8PW*N9CI!&b~Li|>qvhr^EH>^1Jq;~gC|R~!>?)QQj@ zz==%g%h+5FshbiOHMd@S33hpWlz5v<=6~pqn53VcW;lL}+z%&hw@m1%qK((wuC?4_ z$E8mB5Z%Y*bJb(;w8{g}s}ZO8G?r$RNY&l+@9Yeng-iIdKSNLI-D%)yW?0M{vskqB z)Vz^D(#6!i7~zUu&=Loe?5nUaCRzk{G7M4aZp^u*Tb`6AMTB@l3n;N3O$u}oD3cqJ z_FA#tY4x>Q(;+YEUPSYtpG?G9gVZ`oA3MW6*4oW=k`|C?6S#;yO8Wk*`M2^h364!n zj*i;oNc6-VK=*m@dr|jJ+eIHL?WU}dO*7juuXKd%r1vP50mua027L{!eYGOltT&tb zai{Cb63wl(Hi%ZptIbLV_%71{z?B~{;b-+Nf+Dr6nqiBH*wCWC7m%c0%FXHe*KWOb z>wH{awn7xxNHhpgJ=Ulz_Lz}CSrjNUr-<%aSw$#$wutFdl#YH!oc^QJx07k|O^7e% z0+benim5%*#IK!zQSjvaLRj5l1P^R&6H-D*6OU9C&@)$&nXWqnQe8tOgu3QHqBa=Q z_yfj(Mx0`exyx#81^YX?7N73An_jRo<)PmqwnKER?#zc|p)3)n(HY75gWu_1(*po} z`d|$sx|(MyAC>&pSFNjMWUEt4i9`vauOI|s*U?v~ReL*PBOBF9Z98j%N5B>zftQPo zfSm<2Ci&8m&BvEKczHZ?aXkH;Dtw16QX27|c04(2-$c0TL@1A zAWURx0-mzqCri*Tt<(JWnMd4@A}3}ghvBYTOmavC(ZHz$=eM8Rt~R{H+zuWNsnmH| z0(;hZqMtmw%r@U+UI7RCe`U(WFw$k4&k|J&Jkx0D>U` z7_q3t4^3y~4m}twdZ|nB5~Gya{rZLFtjG2rX)nfLprEh#@7r3l=Wa+W&z=2S4GF0E z##P z23O7jt|^<}etGGMiyFyd9X`b+ycZ@epWfqNYs_J#V)oY$6<(_`bu<*SQ^Y)`NcEZH zWniO)vX>IU#D}Z}ciIF@B4s_(maA?$wk({Z>D%i#JdI`mLyh~~*|TS33@Z?5>I;*7 zN8%BZf^myQM)?GVBz0F^T>_gEGF=h(Z|)IAZHzT!K=5JW-@G_G5yr9rOyg z7pr;}O}8G?&-k!jve0R}K2Bl8&tjB>cKg0Y98@!c#j=u&@XaCxlB|>|W#E0c1e5>h zh|opaAxb}rvYoNVKP$6jcaj6vTLK`>hIQ-KQ~CooZkF+R@!Z+iUwe5Nay{=Id1c=k{kU3FsYj$ zBL;o>R!aoA@g=-RN&f6Ovc6Xe2o>w*n{HB&Dp+92pp?niPUl#O!`WG+8-*F8mm;z&u zC~%G)dTV*cNDRcQ)Pat>EUzZyy(FetyIc)PwXzrMjV`TcG3_z*oY4CpYv^UbYghWy z{Wuwo!`*OGwrIMF(Gew?zo|Rf4x;<^DW=*`mQE`OR=)Y3|@KVjN2Dr z{hXh)R`CR75iMBn`PS_3;9zR7jI@izj&rCr+_Ax@B&J)3Ml2a+t|WOlZ-KAXK&42s zi}T*?dS>)ZQgIf#bXM0Zy)F?RP+OW-vi6ju89!PMZ=Oc^(OxfLjtrwa8|mm}Wx+RO zhB#3t$gi}_u<0guMV}$UhPh_wR=k03sHD&&Z2wG6;!W3_go~^&?%(TX)|l-QC%q)0 z31lbW{#5S5c96YU3p8@rRscQN9&Sw11`7yoS^IG3Xj2C=9q1@cLFm&_P5pv~ZVrC> zqyNI7fX2b0c|}m)KmCBy2?7k=`N@|YhxMB?FU#m@JBJp{<=ELo4D|(C(CWuYI~e2* z{}mb^Sb$?K`gGvM!}a78GBT9WVdlNXtbW3X%K{#3OM<{ppxAwXrCz}AY0h!=_S>Uy z>I#P2r?mvw@Q?obOl2dt4kp~!P zz~OrZL%=d}*#Uj#;xjR1nrA^K71L8jRqSO5nc=o(3ZqG1GdQuOo%QguOHcjkVl4EC zBv%%`A@BTnijWBz(NVIlP6J+o$b}@&f-gSirS>eO+`fz7!`U})=-X2V9jrwr z-n>bcLX*Go!gKoZTF(t*7zs{}tSa1XG|+T4tqMO!9B_X73h$&p(LTM}&<7rL?8k#S z4P^tF-*C=;4%Hxyd5fRF)lyKwaWd_d3|y||ggBwYEBT9``{j8bv89wPvHW#dFyyj% zt%ZNF5+Ndpu1}d~*nh(9Hf!7x8M*O^G z(1V$uPFPR`{7z^AFG=BqHdU*aVlZFc)FWB)orvq;yMJ{0R_tDmTaaA7oyqpt_`+@B zSynTcC8SB7e(tq?7QRDUP$Q&QDWu_cNDr zV>tReZT$}lDGxEje*Ghd`-dFv@5C4>uHo!PDMo5%Z|GT=(afAW~x@7^?X|x3_me3G|Ln}xTZSn zb0#^sWElk$nUF=irR0kR-0iEmH{7+PeDC^N%38$|;T)NH6i)z@PGO!e2Q_&KK1`*7 zi@nwJzhR*{!qFC>dtZ`P;sEus#K~}Xn#dY84ofg=GOthks6(Lg-Xj^?o4$y#=Np5c z12KXEo;hA0C7?hP}9|7>X+{T>>Jt1^pMFuF6*(P$45 zB>(Ofc_ztpVf8-tm_C#8Swd$vGWq9MnkXf8c<`be~S~=b(7GdI>#dTeW`6s% zTTADqR{@pdYj>BSCC$x)N+1GvJ8)A=K~VdF2A1CuTOqmExL2-aKzgs#R=1<~D><+q z+`+>lz+a_6R5HCf@gLW>y{zyzk4mJhHL;F((&BK6qQUe>*u~syE?9-0c;fX?fb8uK zXS4?aiFi}erRlH$`TR|Nf`$Rb6`vTF>yIvOd+_MgtglErBgO)}gF~Vzarfjn*syPN+6w8j+yXg)9fYe1OIHj-`K3ztC(oq7vY8_$gOb-4g?i=qj^6 zu|23qa%vm;UmuCF;Y9dO1a|IzFp^=MHd^_jmSViHizPnBi&wPdBZa8f+o(4+-lEh; zYf`h@5#Kh< z2Y=9{8=3@jT(g2a?mSEtWWl=V^?01Pk2PaSUcbPD@HSJrEvZ6t2=$Q!M*T{)p{KME zf+~A=>TU`zWx#Mx8QGmFOtZ7egAy3mpU&Spd)}Xp=R)GeYK!jkmhaE+$NZP6&ztp~ zn}cknt^U?v_7J*_i2cX`rq7&Pk{Z3_^U<{UDUET1<{c!npMJ+dxQ#hTjc=r4I@er~ zN4Th32pmq|(H%ll(IM4L*oT-T_eQS3*a~*Ob-aslqv`-+LRCbjV;7O)=f?gbL=&8s z)*zidGt#sUV5!(xhCI@#umMY4OX39*chYlekgz&wH3Sf9-H&#@z=ta5n8dLZyZZB55s+s?>#z zJ`0*(qdwJxXHyHv`k095KqBKRExHnYqnk06FqF>Ulm@JqJ+1*UYUDg#J`-uE@z85~ zN9CCPgi->ZqzSbc`_P>vEW88l7KVH|uG*uKvX&k9XXqg-P6vFCV?Sl^8++5N8;o&h zoNz+=LM(4L9Z-(j^&t1b&&jxN$NH2=P>Dq-IcKNQ zo%`5wnr1?cj?vS!_5*Yc(qZK7LV>1VcZ4G0c7)u6095pEdG_?$#F-K-%$~qpxS%nM z&+|`=E!9qCbaOyBdK1TfVf*!HKon9#$#(t7yDS%7Xi}-1tE$wRuhpI$#J;Arky~m0 z(tDtkGVvRoj83H2nHS?njQ`%&U(oWO(xuyCbVlFtr&Dip(Hfudni>~p$=84;?u8zx z6OT|sHeF@f&ju%%Y8t*qM?lZfm!#vlNDD-)I=;Wlagy_*+{)+_L9#GgxgERQaP$=A z8}6!OefHy=w3wFX=gG3%XnW45VBN{+`msZs82_=eOq&LH1>Mlox-{cf2?7fN09>rR0`g3FikK zj%nAZyr*`jKkN<{bvXjWr}9J!5qsTa&|CaLi*wn-D7_mV9U4M{9#gT%=eQ!KeeTna z#HzNMT6C)Yr`}4dWQAg8RT?TO?{a4-jzk5MD;X4`*991%6DO;p5#TzhTJQF@NjBLD zYq6p*Q?W!i=qS3{a|3bd?5}x5A=<&= z#t0&HDgN-cORlXk7(FjmYLukkkTC+Rd((ZrJ~jYR%<0K0h-FVSTU2$>c24YCz1(ug zg1DURGC3BDj%tQg(=)7N+e4IH95!#xKUBzvAZbb}Tl~rx?sO-XBr!Q7OOh@#B1|=c z_;4+Sg8v?6V11mugV;JOIN8o0kJy8fX{!x445d`|>I=0kZ4-#2+BXMI(cGvS_g8&W zk2lR^b%`Xo|Co^>zBT`r&GS~;LT{bElYah4>wUTH<|NHGw9KzPsmBvZaC8>)V)p-M zT0pBF@M0;7I=twSs0r5S^~{RGX2DI>LuUtV>F0tZG6^^tMVAxm`cEEG8EWYKt>%ey zFCjK!Zc^me$DQkHf5y=CL#9eF;tPr_kVo-y(Pl z6W)ta75N2M_t??qOt7=`3Ib9&iJNqd;-y2b*2N6ygB0fEyoHEgSSx;z!EPHWjw=db_g}5aq2N9 zv1E!#^30t;wMfHbr^js*k~Zr8Q@UhuVxb1df!F~7%8!}yL)JRZeV7j3FN!3DYn69t z>SAp+zCZmy({MPvHayfV%mU~)@x+gGO9oGv7lfM4`s*`IB zhFQ(s;hrzcxuxIyM(=2uS;AU&u4nsm13Oi3JTUF8-O?<&^x2f???l9hZXMPpn|%+d z!Aq7|q*OIqG-1<6!o38AJ+Mk1D3)aevj`I&$BLm!coX&jR+QU5Ej;E(>Ec^h zfP~(WQkWb^*4(#aDwEcH+Dz8Bpx_Sr^#W}0%75oSvAkGp2~>)w_cs526r-JtPU`L# zAO{VATw1|P9(6FjMa={7>7q$z?5=%x06^R(u(lpRkgPWtx;+Xx7t9UPLe)qLl443m znznR-%hS|g9C06Wxb^p0$3#)mz-dJWKgo`y0r*KbNHGdTkSAF5cGSw78KHr6cDL(# zx9yE({dxkWq&6?YLmXv1`M-q+@p~qBXv1!VmtGC@tvQ@FqTI}=|#rkWpR<~;UaVyZ;{mEux-}Toh=+YrH)(n}YMuAO? ze`Dw(KfnE(zm1s!I&iIbkeT2d*Ql(Ygj`^TvNpN{kA`7hwOw}7*+9z0-$%~-Z4KL! z?~*hUC8_Aj=UaJ6a?iShics8!9E?0y0$RL~9q%xTA=kMqS3zNo3cC^-@ zOU%USOfn;eHtLu!Z$n&YM$Fy9lnFNzU4tEC=4^qp%*>f~2c~uYsNfEVf1!#k*KAc8 z#t!UxX7b@T1NV8Ago>w^Uwrw=cxjAUBRl!rkuCkhu1^Y~^8Rjt)YROQ%JqzyNobfB zDSF>|I7Wkc^7Y(lsR&mYV{-5k5v>{?CoHL^Y_qvI%Jd7)yp;LzNi|ldRH-F7W8}ty zX4(C3r9BKqLlo8SH6{_GW0p%aQI=Qn9xw@DxQu}x))%>;&OSw17!lG3&5dU@3!Ktf zx&WNqLrrcd4y=_t=X7PgN`x}TH7O% zKmO-aZ(g?7dsSjfl$yMa-gGkBJ&wN&XxgX0V9B1-UtqgtqW+h~Nd!3{p_-p);81ia zDB-hTU>%a|Y4&;0{n5BMA{DrrYe2%FVY^>A>m>Kk=b@1@GK z@m^*`6KnH(y!7}lb-QNis=l^?$Fp(V(brNDLD#Y@8ZIVyzw4|K6q}Rtyz2A%F1^jH zREv@+-2!9Mi2JgvscqmikT zZ_$fl?%$h#sHv^C$AOWlH>>)+h5uaaIC8R-MVmdS%M8GuNo2F!@I|GIbzFtU(ubL4 z#I;Hs8eXn7*!8>xjvLzAI!pWcIcid2mSIPOm}3`*F+u7KZ-WWQnrewr>P05y8%b2T(UP_% zF?6(&;D7F~H!oMO>d%JeT?F&=u$c`Ek<({u*JhIeDteEMsfb|!jMK_fu5YTO5VQCG64o-NsK zY&wiF( zd*roWYw|Wqo26AR55nnM6sL!raXRe+3iI6VbyTGJ`&tq!w`Jk6rH-6X!YUgMW{%S! zx~1pwP1J=J>$TUVA@Mqlyic2SIQF7)IP;#ksIOzFjQTDd_?|fv$eE{Z>2?d0ufA65 zc1z>TeKN##N~~*`Jbnx%KIDd)c;eR1lI6jq;G#q#xF=N77&b1SkesJRd4?_#k&1m9sh z>m8>7TeqNyMtR`^X#R>E=AU32f5vV8XRpwWIRLNJ$r2`8l%`)xX4=_`Ekal9rhj|}s}H3n)~3@@k<)a8ZL?af#NDvbu%-fB zVZAF9r7?vA8YR^a6!AMPuNj?I4WiE$ckCSu+?b_QfpPYnynwf+)bpU-x#oGnO0`w0 zt$UJpBe*Y!$7n*1Qp{fydOW%jov&{UtZ|_90WKPD(x~sLGmvHu;yCObnu8#bGqz1Y zuX+ZgN#r}SF@FWR;vEn|9~EQP*AQTnRDHDIAlZRlCgtZgf34|gB@3_O8e*SG z*iu7gL$c9%D}zRI@Mi~?^{%eC+O!1WWNMg8El_1hV!XcCSAq)umHsy-x->A?&5ey4 z$bbBi{0e&7k5MedT|%FcSsu>7nhfZmDf(<=?4&(%1W-(`GhoqO!pUMsi0x-MU$#PYQ3S~_J$s-9(S|DZ};I12IbyE$Li6{ z?U8n>^3@_>sn7h_BAx`ZMDQwNi?~63L`D0^8?^z5cL=DH2*tdz*(N9}jgnK}7=nU$ zfsQ~>Go*SN4Q#c(rag8Ag2kSrL~utw2MNdYKlq)l06F#5>32FIFS%QG$?dnz;c;7k z?|M5^LnUjcU~9W5Cc9g2i=-o^IlG0q^ZvDJP*@?*5weGU{j#ef+IzAYbVm>gQwo*+ zargs)NMTz+38Rr20p*78U^~F3C!5)(`NfMbpSutn9I{IbEoY9-X8nrp1xAP_hq6H| z)JZARdkCQiYzS~=6mB<(J=wqh4N9EA$HVn|`gz>*sK4V4MlMx?Go+1z(atK~&FCv;fMp3q>oPw62}KNf`}_mLVaUb_*af13WpL05-u_^AEHL$AeaV%aaoDUZYv`HyFqH zdQ8n$dS!jaIqjgf#~vKC+WU_Y1EXk3)zgRxdsFX1GsHg-UcXouEaJ8@8AuV}q6>R;B+R#GLcMNV_z_8Idv z*p=yMvrXf>&cXTuETP3H*v{?n)?6SmZ`;4Cf88TUBW_N6BLeEf*`CYoZlA<;wy5vS zKRmsog|jM&`Fr{{6TD|LvD0=h#!l;$o7F5_qi80p+8eY}oMG(7NdZ96+I~0xPLFDW z5)Y8nI&WogWOCuIvC>kpi}k1t3j=5yT!q=OQFX_WhSyqB5{LS6(DAs;ac4BsD*pKU z)6e|pcOU##%QNxRiyjFX*1#1?10Y}gVYBWKf%)y%UwK_CN{j@X>oAL7FM=^{dSXPE zt?+~VAsjU60bCJjRaKdlae@b3IAjdsP{Qr)=-vr;~;Yio2(%FWo-6}e+SZ%Ang zv3|j8`GI5!N`EyPZZ}49cm5}51htYy1!Y(e5QY;Vp87hrjKUlhsd*sg|IXc<~ALxhuL62c+*ulGdnKPe7UGBjyh= zt=`|1?*@TpLLwSprAiP~w@$FFkM$>uErs=!T5WIufHe&%Oi{+jW)oh;Vb<)kRtVQg z+Gp8UEWRK0F{R6^eg@@0sbn2va{LgCaCPFnQWLl$#oc|*(`jVj^=@q7@q&rPQfE<~ zxX9NSkl+J;HmLYFmc3FUtkgANCV9In)|u0qkvkS@+0zA9W3%U=%D$mL^=>RfYd9RV z`dT&$A}?gPz@9 z7ZjDEJ~a#FN3`+(`d8Y{KNB7Ki9(SGZY9`k>@LnfQ{_Z6yi|-9nnb^1^sJvH);`nh zv7JXL`k~pTKlWgFl4FjjZLDw8Kun?aDhA&97t7#>HI^=McOs(NH`ll7tFw61taf*K%=q}|D~Zd;{I$w1n1 zrtb6r`~d6t7%w}>Kdc2wo9#XOqOLTck9*yNZYQ4bTu~vW*)Ut6s3BX0uy% z;I}wvB)BXKLpD25bKAdm;D6 z%R)};BtmdJb^QFzISJ0N=vR_$Ev&=T9xldM$=b?WsDUmWdi|C9dPP64!{wwk8g)FU zPr}QN1kRz;rA}0yi zmi^cAlW)&I)Wb z=YWXXCMZ8W1k{oi|M$vwDe?5tP%ctlCRREf39xv^0~jiprbq$F*r~{>wvWy9I-7J6g$$s>N|Bd+3-asDOUQ>*w&*&D*5CVwD~fU>-Y!X!6lm74(W@{ zX}8Hj9_HFeayd~>OHYj_9EYY{)s2FI8V|8M2mB2 zu>}UHv!-@^XW~lwaOSZ9i_bW+|;z47iU3Vu&=&J_%7HP$EP-#_oGmsQNx^tR8|q>$4oy8`t1vNEb{%PB1m??$8$-8$X33wB@MD4W4_Bb< zjLXqa1rx2cFDZWhOjE+6z*_e_1_1hRvd<==Ike{GGIhNk$+&p#tQ6q(P(NLbh{ivi zexzIXciFv=vgkf6cCdAjd2k(+zz4@@PM3W+J3MDg+J*?1Ys6Bk+KjQXq6QVwoN^pe z@S_(PE{fMf;&v?lhpvsOCXI`og|5(BHmLBvp#lueF+GGYWd$B9`Svu*7)Z2qIyyBc;uXhFq|^2dLcO@F4|!?;f)7?)+O# zNrgHotLYD}`K9N?A--KbF@t{H8OfR%Vi=1ls3 zLkclBttW7f412*rZe^o{U5Ix~t(H*RiWb{cZ)+`R&D1e+A)mojcHN+-^9cK82Igm+ zg?xR=Qg?4Q&IbWls?=zat+9bhz@2*Vdr%2?=08X`u0&FH1%RG@y)$xOZny7~y^ob4 zQ6^&kl5>Qex%k8rw;b<*7BI6?ZbtnjL~e8&=wt@>;2(l?Lzb7F%nG4$>bC zv#gm+Q6Gy*c-*SNX0G}BZQ@qBGOL)IVII2P$*lBLANcm^-LPaVNljPa!qm>@&H4|0 zLMrg{)8OH|``~w{?_n=}bLy${Wu#lOc*!kTV#wYE_KI)n{gGQQ$HR^WNIWS6U zWmsFZI?sAep%ooNuQ+Vknfgf$H17(4!Q!AYyzVh3e3dIR8(aVle&ue3C$bSMKl z>~YcI4XU?w6D&lx_G%N0h!_@LV==Uh;R}1?f1?Rsbg%iB{*T^)St0V^smIGkvUQ_i zfzrbgM$>Aaoco5P9aT+|vI^KN^E9L>Zar~PVq&$>?s?%{ScYF;Lkkr_zMl09e}J{2%;WtSwI;S;?Dy=eNbB^C{W_??uwj5Pk&VBK$O zYErMBm~#s@l_@H3c|`r(i!VDr8H-MA;Akq<0WSpy2Rf!8<<=JC8DH~nLC?3~4$*6# z!@)VP59HVKPNv49LTu*)n0CIAh+OY?G74}Y4PQcDW^{_5X(jp{SEz{XIw!oumXGXN zbKBfOEcS!Em5;8FC(&D3IJx!qkvNVU$?{A)Xuu@zDUnJtp;V(9it!PBxRXRF4c>Y zI!|dZ_Dpol+irohlZ~7B#`MNO}3TiO3M3rXKl5jN9#y&J4WoBs4ki?l={5W(*T5r6|8s-E$lX`l-qM2K(wRF_I z;3-_oRYmXW{)xN%qgl)?HbuN6JEO2TBnkONdc_)(TLzA^<+cG6OYq| z!rn;%acYrM2rJgtnwkubvjVBEbq=%gs0gR0gYje3hx7j1!r+5;J<`4AR5NDNYcXyP z-9)o)E$CV|QgI(94vHkS?oc--x{ay}3J%LhTD>A0Nc#Zy(*e@hHhs?zTGe2?YdJg3 z*D^%pHfox~>)Y^PZ)%!|T)R*kd8*Ad}GiZcIE_@|*+J z;X(-*94ab^H2YIb-S@IPj|ja7)Z0?bN5>MGMRKf2k@4RUaOwJsZ`Z(omY4Ov(!;16>?rJhOLR!T7#EhoP4r5p#mQpo z&$zt+or6!R$Zi)U+R`HISi04bCUYNU)c42@m8(FXkVvWn_Pb4>19@X{})r`Udh^{5agx=!Z)of2DuDY5S*YJvSc5Af2 z0@+2ylI#1WqDQh`7F|D^I<>ZjSUTz!Wu=-C!!z%3rQQ-5`{>joV&!IIC3H41J90!e z!!miG6z$AM={^z+Pm3xCDi3#SH;RCcHd~85& zV2dh|u+>?m#zQh=>BUq%rCT7$gZ6c(3v4g=PyNnZILl?(uDiwBQ3!2U`j)D`h#LPHkeftTl&=ZnPZ0_B!WMiR7r)-7i3=RV|ZfG_no z&SC z{$K`&MbEpjuoHFB$EUtw(Ev~#A`p6;=cx$Pv=OXqd3i+26@H-^`|%%%f&Sy^8?h0d zcaXse_tQ%-*_=~fN-?20DGpDG;GBlO)$^@D2Zf80ZdiqYTkiUi0%(V@mu^k%B*1Qe z@of%iz4!(L^4TJ0guhmHM$=Xz2$8T8`hX#4FR$;T$xc=X;&D-e5n8}qVA7GRFoJI# z1uNr2{a9!KE{2Fw=lA074Au02cjsiKmw;daot> zC!-d;@VEL4SPM+8xZSm22>@wk-lE=Ve*5AD4dL;}FT__~yY-UpmiXhJj8CNuf3ZO` z6lWE)b~`&2>jCS_R`gMDGk5D`(}Ua#Ekm=qQ%`0e8Y+oHPcpG(Mgr!n1hI)TnQ#`q z*9gOZH~*7{bL*8yUz2Ju%#;-k+o`CRPaNY}0L0v9(g^wrIE=gS^}Gw0%N^ZvfU~1% zf$C@ICItIB+gPLFfzkJ9F543i;iAYFB*D7P{PtrPmNY~pA%TQK7C3K@-E9P`n~E!R zjdC-spTjo6@!$WGrip$96RhZ%#q#s5 zwWzzG4y22kcfqmR^`fj&uZno|M;L{6i26<8JOHMoW8tbJ{1!b8<7sA}&cD<5%;yGT ztBv5vJby`@l0qi?ofmWbulczyB<0*#UCa4 z1fxoW41Nx2Ud#!)uHaI0Dj=M-0aXxg&EmL|B;&sy1-U?T5vtYGOO4gqrrr)!c{Ige zBuJ$#$MN<1fB`V)eK$cX=;E+$(vbz*t0uX;wY9QdTJ=O8p^fCdyA?9A!{)o`O-XpU zS=LLXZd}^Iy#E*anOKRdE5?teO8P;6Ca&UqD*aKa&D3FrCxqUFtsNuU-3oJVjJZUE zCCZB&=q+l-8>L%sZ)`lT%QotjMzbX|u1$|6483T1vazwDTR<7ycOkb5LbJHT62R>r zQecoQf887t{O$Qyx&b!ex}%KM^ex9%+%CS&_B~60wmBjIv`&Ac1D!- zALb5`GeB4L66qafG4=8!BVp-JY8h=Unt0)^X;E=R*-fcmNK`BnX@g^F;&O&iA6mVG zrlcQ@k@PEqG)L6<@=o3bGnFp~XwazNiS3%7>n{tgYv|s!adLFSd9blNCW3>NF0fTA z9mpI!qv7uWEc5M)CIQkA;T8)9(z-16qJ_?uJdJvzv-n3ljvbg1-Pvbo%>s;Lu|j~5 z8P*Vqd3*jRt*X7|O2!4r4&L6ZwY0QbW$*oN!T$Ib;Q@!tq20{QDTw;BOWgGL<}|A zO*jPCv{5@JiM>-ZX{U&RKy)oy`hCY|{rLaP-!&wtMuGkI{pq)%S{8U!x7d)#&mR0< zPXf(_uaq6MG%pWOGe(p4`zB7b|}#@-%# zO;_w^Ol2@KY9#DFLh%|jCrKwm=_1xYMfBf1>^i~lbqK+x9+2AJT*p?CZb@j%B5bN@ zs4_^*T0NQ2(8qIcBGDo+XBDc_aYa9th0$?tVU#`cFZ}2KkP&C;w1>oyPyRc-ml@o! z3F;#R0bm@xd!5BKOO5iH&Y$`1=g2hx&eu3@o&fiIPct}yaW5?Mx2e`La_g_=&W%m? zcVo@)<1j%%5#VVem(@N7VQ?}st|9WxF{Q>F4~!Ab6Wo^^ivZ!SK4LD!p~g5t3{g)oLl#L`|P+*+dZuqI3+ zCuSTGzT~h?uGN-nEj_Js!cin~tu?%IVq>!Bi&LpJ%cX`_svG}1@UwU+%X_jomZ{MO z+Tc_)4W;#>2{Z?BO!S5|2ua3>uE6)-2|2ws>s{*~xiYny3FC}>>-7CpKk<%q+0vP% z^LqPn+f(gKROq`l&X$I2gij;AM#1=3m_&MUi#`JQxTp2ca$I^-tGf)&8Hx&A$)qyS zz)+H`BELq5oUp>y>A-B1HMW3yrwTP$hjOSIEG3cH;n5c6T*vz`Uf$Z&Fkd-)Uc2Tu zOvamYuY4dl;Wsq{)C~*{F*K`VU(hhMOdv}Uzc90*?SHbKAU8BIEo%je>8V-RKC%u@ z8pCsx_qamqldsMWj}r2nJD!H|pvFWu!mHgM`gg7F)ujel<7nUGqPL!WO#?T50GL_t zhBaaZx9{qfc8pBjRwdLlHV!m1%5?+G>TNWqzQCHC%rd60k+skX^Rm-Eght(6Jc8K< zj?leE_|@0jeMyX&QkLfg1}#Cu^Zk}6+&l9RqV4Wxb+z;`4c&6R)v9mkl`x&x%HDcn zZAU8RxlPTvkq!FRo%GyR#P$kq$LTmXWuRUeZp{!Yl~gya8-^s3{GS=XlMBu&|rv7r&xP zDlYEV054N&R(*EO{Q3?z`}_IFdd5qyy!3=#hX%XA!2D{fyh>GAr=Ms*95*nNR9pH6 zVPNl|cn-XZ8=5Ypnmchk?QW6S(~J&FUF zTAHVHcHaJr0g@Wa#)2DKZ=YQ9H;UkQ*iJ+;jm^#-;-}7Dlz^3Q>ZdE$_0tQlO8Y=+ zrFA*!kl&3Sd;rcREkOJp_c{(7Pny;0_1KKVOU)pc<8Xw~N?&B(jQ!FsI91z4nySG` zH8T+sFn}e|SBaPgMLp=W49O0>vrA+&Ht3P%Fm_mE-MX}F;ccC0o|&_NkA7)dgd+cf zh&O%-TE+@R3~?ygvy{E&DDiwvyj3_7@Kz!`Mk-7i<{#<}e*ECU@8{m|s&{nYVLi;? z_xbmon8Eh(kY-KsdD5f0($OMh;=(wvxQS6OY2}Snrq?wWQSz~fmbXcHx-!|=bfV;D z$(ya5V69_k#6F}i{iHO?fbvYn36qh@!D`#*7&8|KTH|dEElVP)D(|~gp*+ka)pZu? zi7X)^VJXyBdoQmuN1?2>Hr6#FK(N5g3bJzDh6n_3x|lM0W@nOxRZy>Q>HCXN7SZPU zC;GnWfFnPRTdkHZUWkPOJ+H>?4=tSR!I+|7Y{yAa8Ph$q!WVdl-<`gv`K%zpJ+m#e z>DCS;MXkceby2rnq7OJ`V+UqYPPHX5=kKN-ZxkN}#ciN(dW>unW$bhl6$Z>Ol zX#Bm*T{L*?J8?BeD`tGh5!A+BgRo+1#Wn1+yFdQF^N&JRa6kg-q>5JqDBFp71SapH zFYdrRxlf!bEIpVG!F;g@L~*o^#8l{S^QgvM+ae5Il`iQ|QY76hrJB1IProQ>sCYRN zoHajau1Vt}F>y{~O!aeHs^JaFIkB)yKxf5Q>5hnBFL`N0Xc994tf~Y7fNvS24l-UI z?bup*P3Wfu@YEfdV?WIP%nkghTlhcVvt$LEcgF#ogvd#McOB_w)7C3$VYU58c$)P) zbRQAy;32u-gi+149@B*N=Ua}ZO9v7c1KOH=aBRd(f*HiO?PhIl_os)02^H38Dcim7 zxl#zQVE77xM~k5czK`7Q)}pve&t#kgr}j*7toy|Og**6Xz9#7e%?1Aj6J+7Cm^0p= zl&Zt=jDK+Ed?SQHEwBxn;h;e}k$7>*2Qn@%z_fNkp;;W%x@j|SY_7nbf zb%?e$W7Cy&^2MfY^!|~@P|#DD5V^@^N1y3)afC$jlx^ZVjV?uN6H#85$`F+w=^^%vCwY=cW&L-`L-erA@XSff=ar(7xOnglb1*Hkm3}U9` z;mlz~miUSI4O;NH=ZA-xAJECT%MYq|Z{QZp3XoI}B;fxaIY?xqY5Xjnw7@G&z)el9 zLG4Vd$BQg<0xzQ9F^KmF8r`8d=_`E?CfMyVd-1V_zC^x?j)c~l*t|9iHL<bpk2YZN{oB*;e85kiedXekW_Eq(R`6@LZfPBW z$GRUx-YFqrb$>q75e;f5kLZJqc|?EZ*aG@*{(X~! zPTmaTMH6}TaNr0XRW40bNcCn-?FlAMuQMaDfB9+x&EQ=?%9qx_p!L^ zrROzy!_ljHVG=i%6OUV5;q=n97wKKYvuFt$_4!}&}Vl!3rt}CqBf1SM&C+hw07#oI#7pV6`fH#$aYNm@o@Oo+8(&B zm&M)C2 zFEKoD&W-lXew1|?>&P7~nMEp3B80jqBL=HZ%wP9SrgF4MTcP0AcJ2B?30%1FGuF>v z_$!G34$84!aidml)Z<i+;A$uf{N)bTqH{a1rj{ z1ZPWy!C9c?bO*u$zU2v$a&N!iz85btcRL#2>@ZhEzG;uTqkY#~Z2X~{f>h@1WvTcA zy}iPTsRy;zmbEbJwbF8JozhX=*8tH$iprrwBwd)+u)jix8;XhRh2VOhJ0u}`}{ zyhsiEm9tMis^{;G9O8o)bBqU~d1QC?N7A(zn`p9$LrqggFR6Ilbk++RcV3Q0uD<2Z zT=d=#iIOhvVuk{CUWD|>hCwQ!L6T`-Z9DD}ZX5nze}fVq*sA6ZPnIxHGY$t9+KxS6 z&|6Dqv>%|Y*vMiZlVf*BkabQOjoI=L*sPg^oO$Vt-v##&m(4dED6Y(SHxrb99RZy{ zZBj?5U-(p~C+IbE3}ZkBc#zeHg<$uf(wP4>llC*MOX=BGZ6)53Xc(ykos)z|?t?=7 zz!D1@@A7tS9j>@|PU%wV>i@RTa_kk%^3=`s;cY0>c5x~{Ecx1)R~;_{>V6wc zQLhO2Y1XkLCqN8qWtwZ2ce4WX-Ce?LZfK-%)Sn1P-8uc?$;BM~>=gW0Cr)#7?(ek6 zo_YFL`mtGRY6|R-jy2(vJIyF|BF0*8^m@?MFmGOEP3Ix_(~ca0*cz6NO+}CDbo`{V zjX*2tf3q0Rzc7FAmuX?BqnTheXkoCWemK3uRDB!)Ig6>e<*?sf^=sdSm+TJT_$p-8 zbg`9CTM$8ySm$iW>||0wU;uxoBZ*C6<*?rbbRB;V;6z7qX8{vq+Zm(FJ-%X=I`m=o z-|zVE+ovCEiIzRHQFCQQOI)oAwe!$v>Jtts7%go)yk2bQ&mBiW9q2>eYOmvoQVLa# zh%<{d&5i)iz|Z1OvUp9+?{#>xOV~$pf{p2(Rmv7Oxf$pK{k_sCZRo8C_u~Fsa$gfA zMGD~Sn>I0$S=Rl^W{=Om7i=e1Xs zjpszG+u6|45lFxc&`aH@ly!5Xa2o|$56?Sc6Jw0nPF47LbRz@lMYKz7tr^^=X7yhN ze9#jh*tM_d*~1-|C#-qQdENOChNgiVw(uJ^bcZgO5JshUqNu8UXvvOP^U@K3G%x;P z&5IiGSgW#?@bz#Mw2>?hXR+?qP|L%NC%|@UgyC;R#WiB8Cn4~k{rHD@)?U1}iKn~n z|3Wx7sa8EEDjLvKcN)#Dg1{f$L}r&T@~jXwl5j+8u-} z18dmpSs|9jFzDT|dRkpSzy0WI=U&rv8ow@9n;Yi9ZBy#o)i!gB8Sl(jQ=p~00OWPI zD$&wGhUxU)vbtb4?HmnVE~tb>FIx4I%Tfx|+~6G2EB*KhEb^b9exof^-PaUsZFos7 z64>)9oZit`qNpK>U*U`b#>AN3=aDOXnqh=h+YMYcQ&VJ=!HFGn|%{`7sl!P@#IM>$UpP7IF{kFIeNg0C4m zP{CFUM!r5ZU#|YjG+GP`>uSBct}V{Hv!mX_)RZ`E^=}-uy+h7pXO?`b0KZDUXI3&M z@$FB#Fo?T`x8SLP@R>t@0Z=Irf$E z?m#y?9u9pa2pthnOko8LhbL2jqEDPwr23>Joh3sf+3!t3MSm_iPXY#lU5_f4wwk(A zzk?!nT{Elb_hzmH>JsK1`i^SWhy>;ElpEGxNDBd)ArYQLq+@cuABTu_4M_N|xYux! zg{96ueKxDHhB^X}?U6S%OQ)*g)86M)HPWC@b({Xtu*;|ywqIN-r8z99J?_&cA27wLADXfEWh3cBxTEw3F4J>Sr-d?U)MI!g6EdAk^Os@aoXq8muuf=HX5>|8BylW4s5F7o5&C)@++| zoOIxlh}R&mn))8!lkU2v4DP_ zxp`g#YmNy0UsC^fiEZ6Ll^o=H4$JyARyC2$`I{Pw!Kv*cPrcxb(;LO4P;<7uRmt}q z`n9%MYCNwLm;nu~Xmo3lSd6F9clRr7c%tGGglfH|J+z8Bq;uo4SCP@wL4pR|J^CZ< zVVxK#DdS5iVq6*}vxoj~XG-Ol9zTH4gE)vDY1kWoyVR`<^Yg9Kd-C}z(Vt;vC>~C4}`}2Dm-0M%g{zORM2H_1fzt?Bu^%Uwbzs3AslA8DR>f}F7 z65M@2Qa+i#g~#^R{H|7Ta_9%5osN1sfyO)q7+vv5W(==u4aIt}7VJnvYi_l1Y{9uQYU~G$wmwzC%oBnTVHkM~c7+F0n|q#692&i?6Me znr`!ApdGqxHadZ`Mn)1P9vwpk7nF{gd`JP%1rcdXUf~`6m26Dg_KK7bTZyxTAfLqO znKKuh?KAoApK2mgq2Kj=cBj4!fdAu%vY9}s%s~r&stZqC@QW=q^26Ds^BN`ysxRkX zN&&50(<}0vR7I|7?@zt21QIbwMNblu-Xz{i-^Y75mFjC-nmDHdVm#{O6zdhxD`4w1 zKw|_Nr`B?MXP&n|wuoYg4#Q^~XF-E<^t zAOzW>iW31-#2bN&2@oqB;yFLxK?d@Uq8LDqY1#n8e(bbBN7ID z*FS|(h{-0(nr<`#59anx}5Ae@P8G44jNsO|Y=V83)&Uv~lsZdU{m>${p_?2URW zzJASgSByKgTrpZatrtCvd1%*NBs<$iMp2aqy=nzrO56q>)q+(+58^4GldOn^;#{*h zSr+o#8Co12uR0L<42Pt)&&^3_^yjuqjjA?&6W&ns+KZuTpNzWh#UcfEU};Rq!1l^Y z1Sn9oV|;wQs|Ejw6YA=;>%Tbtlb%+X(Z~HRskor3u5oRsA^H z%T6fNYPPS7=w34QboKP$Rex7@X->k$+oV0EoxudM-tXDY&Fbsu%r$1oS>D(}l%=2y z%Pv<=x-fnMI`tDD5CdApfH9WhZI11*&g`#6!wWDCvTBH~>q#c-svSdCh@{KVeYfhf?eB(*! zMmSm=S?wbSW>QM&xaEFlb>&(na7V*~m>sj(rylnqWQFWz64<13tKN$z?0X)BosykC z1eM&i*fdyS{vTVQ6ETlBEG)`jej}rKoA79dC zP?S9t_QxB9roWWw2dT2zhr^@tPw|;u+kGfl$p!*s9{N!)E8VYDS89ROHJxS$IpE(HE}qrum^N(h45L(xtuS?e$X0pFPAtu-<()mhP1)AAt3iu=+KOuD zaa;P2r1l_D z{ddMK^)6`g`={?pSYUf6z~j1cs|M8oOBwG&LiMh(C{up%Rfqr~Ph&sw&@YMBuOH%N zwW<|U&YGr;((}tz>CM%?lY~F((UJ{ZUtJAvT;EwaNtB*j(zcjoMOUWEvdra1+j@J) zI}VR3goyJB_l7f4kxHLBdqrj|=mqAtFKu{@N2#*%`XX2OuYuUsGbOJ5ls@-G#a9N3 zXN&rUHnW9@Cq3KAAS*LCL6iJl$9dMTP(5fqprnkDjInIAB(HdZ(?x?OJ(}jYY;1kO zyb++=UP%O#-bNeu!dI?g-kv0_O6~)})_a?hz?4NuA`Z3R9rbO0ND2JnHoQJ{@lbMsDO4PjuD(IiGD%bkWHYfmvtH1;0qMx# zJGA_Xq>=LDCv;JxPJyB}b_%hZpRT{Q42>~=++^Kp5 zB$?61B^Cu`kLef91sP@bot=V`b{q<1QA{@89}b;vuZ(KIC-1jK+gwk^+@Q91gos%0 z^_U!sp%~5`h=>Fa#7E6yKcy&MXP*{_Ft&2%z77*SD zvKt~|l@;C1Lb!*%YYc;3Su~E&jqEh?_da|6>?3;b{=qC3(`Z*}S=G@ptrM~kpe?<} zEwFHq$4Rg@GdEVnhee~MH~#4%rAQuXCXf<4^T=fbegCiPBR4o zu!t7{Vyr-o%%UTwZ^k}zDgz#%Ynpw4XdYjy(TX%uyzp^N_cQgdRcbb`)EkxmJwH#4 zpVUHk`Tz2>#JCzXyz8F$Y-A+7e~4U8@5oL(t^3kbk6nlzz$}`9>xvOE+T7F>f(xDv z$ofb~k$8}JnS8S;hpq{2GbKY#dk~{>Kg*VkKqVlwTIME&ofvHKD$F>yuGRH*iak0v zvspGm%tc|9W_f=5c_=@0dYbue_Ip=6cS&XaiKl_)@OSovQsdA@lGf zcYqm=JKA#{IoHu<*SfOu${LX!FifQfh>g4XPlUa`KmDliOf-)qwGoHuzQd#do=s_< zvTys!M`JLgdnwAC6(sJ#jMsb4(dtq-kNnXb8<9fug! zah6{jc3p+ztoW{bJqI?&6ix}EMfer^iCCN#d5{>h#pt*){ygCPkNY%+hNRNu{W+6g zoM3>8XnvQ7)im|!aA=!+Hz&*+i7*%I5+rh~5-jVe?D5qC_mbpRGgEJF)%2D(d*p<( zGU^eU_`0)6VO|l)qjQ$UJ6$27>MR`0TCym|?ndmIoyiXH1upPzVB_W!Me zGQu=De+7cmp zk^gfAX)%L>+(^oAdgNPna$wo+P|Y9{+WyVd!Y(y1)i-aw_Ne9~Ej&?mO<4Vi9;}pQ zxj|(r+ft&M1Q2D|o@t-yJAh7#a<0%~7~k+hhLr#ZNDp3!Oz;Vu-JgG?slV`y-mP5m zB8o{^szBWWkTHN@QBsV~h?p_f0iMmG1%+<-^7%*gqF5$9z{FiQRobI|fh3YNBFX?o zyJ>h5{*(*+SQ7?7abyKbF;->>Om37a_s5+v_Jb}sroNd7F8L$9v$4*3dNPr*9ukVv z^_Tk-E;oV_2^kS8NYmUV!c=^=wx#z0*YF`Y&&&aD;o4ecU61R|pa;qZ1Bt%$%R_;~ zR4}FmdCrwzv%b=j)KcXAiJ#9!@0UfuqzIenzq%g0aaKsrP7JRH*QVnJuVozF+lRRI zMX5PFEm#fGmJ7>)RKZ~Ao<`~?Xt5Vfmjz|8SoE>mJGP=Z$-v%lNC90tit^0I0vj9$ z9gC9U zwU4MZ&1k66U_~Z|%k)UnsCGssDV5lm(`<(LaID3pY~7qAoNLreIw!I{ocg_XcTWD- zg|(IA3iF>OM8_8D(+XV9 z6IY%ewMYe-YQxA8PttOxQuCUpxEr)Rn345bX4gio$oVsWqq$1v&!t`5Q}LM!VraF-v8&77bOCgx`Jdv zHzc%>`{DHn)?n5G?tpe&@UmZjKW-@{J|jmi;*{&EG|8H2@*^0Z2WK7z5hTO|F6 zn0Q1p(Mgij(Bokqcy*L9alN&m{JM)1_7?mzh8z1+`uSU}p}DyIU5?PPCUOC@Nxu7k z+eH3_-_(3nH!s&3^-c2v;_Vh?PXW!4jg?MN4II1bc`t+@6Wpj~#bcMNjoOOW8?xyK z1NYMKwV~v}#f78Y4w?slh>g{(ZB(>PSF03vwi;d_y_WUH@Gw=~sggR^`r38-!*H*+ z=t>o*=kd@{z?{2oVsdl_InSabktnI|_t<0Sv`=P4TVn>`IFD)D>Fryont~6Ou+k>V zxp1(zvRd;}_ZsC2N8y?~e<{N7?{stH>`4BQ9=%-y6sf;bA!rcNsRvas%Z=V8Vh#qG z?)Gnl;$4u!m=`5c?{cK?45{~YFBj3b>&zY1bJ=WP^mPVVg%$}DdZXvm-p$LKx+NhC zTE&vP$}ECahL67_!@21M#ZB65L^I37k|uw&;}J17?(w0QKY?R_sXaC>0y%U2O$w&& z%I)0Q*KTP9#;9?ui6}h874oZacIlVfmQ5i*L1aAueG5(+rykM}E6}|ShVc65cBg|u?iBlK!Oi<#5?oP_2;yF7NyifII!xQM*Yyz7sfr#@W5Z)nZNho z_bFWTerSFs=g5&gH)jbkMv_Sv6n6Whw9rA1{CV)?zwI|#(O-Gs*pkfp?Q_Rk&lewm zTtDv5+)5)GnH@}otF&Gz`k`SHHX%GK1%bqKK1IRO6sO+k_w-ey{>YttgGq-`xV>KU zsvJ8&2KFEA+~nEy#tX5~)38>Uy^e?9l8yW(Trn_u=!w{|QNd7cG+^P;W}#Wwted>$ zvFnwsa!DfteL?6+pHd~0LsM|tVJOz5J%09#?nzYy#a`e8DC5#AP{p?E(2XDO(TV6? z{i#g0+x=`D;f0+mfdC;>gL_k&Zj2KoiL|`J>7M{a>Q*#ZfBJ$xls1+tPO3nyu@N3< z-Os+LF;!C;m>#w$r_{q5MA|gK-massECE0@g`)z@p*YYD&Dk9}C(yaGuj_r7mS$O3 z@c|Hee6rR+T2jjq(8A4CAf5jpugAM}bITr>+GNL8w8&Bo6%oH_({`$VJoN3(iX=&i zhthcXWgluU!fW6PzF-;d=t}09DpI{3OJrby&-J+|D(r_vX$#1=xyx5tsb?WsFHx%C zF7(#+vX=riw;L;^ay1Tin}DQBCVWE!iWVe#tz`)80-N2;1ASL)X5 z^^S+1ZWyFVBEb5s5O35&_}FN>io`}Tqak_^knNedGq`;;)LokUDBtJ@XcftvFS_Yu z+Qp&Pekp*6mH=yKBG#pAOT0#NgrDQC!D5qJLGl}VBCiI^k{f{ZtXr>Y`b$@ugw$xQ zs5PUQXgnLWJ$_sC)TJDcqDdV%jx3`)%ushqXqYkdo4%7g8~Lj<&grw#JJjFT{OsF> zY~9__*^mG5;CJ!rq>=K{zAoq~iXEah3i!_B+DByK4!j#IXXtC1RjQII%jFp2G7Thh zh6I+9sn$bDqML$}coBPAbU~02nuWvlt8zh!XXU7RC|7|c)k86vFwknQBe6wj3ZX}0 z3J^hdufTYq36c+HQFPQOZMva}ex;?!!0kGVS$fC-Q$5JzOW==tjYAz2d2Zv0$2~S= zjW@q14Eik`CPj9M|DL|Du~`~%kGK`Kmqw!)q;$mot4%LzN)gMqPCt-fun~HxkB27I z;xXW}uoo1O;o0BJKgHF2AA%`bG|s=)gTS-=f9$>6lUrAo<~M$D*nV_4#*VRH+*#@( zQ$>*u+Yb(wL^TqL%!HUX0Z3j-Vyln)j!-APfU zyC{jeO{Ac|$}j${eekWl$(kO!s;k4Eh|MZei3D)YK6`(A?RELqTIG%PhNoOoDW+c6 zdL!(5zTQlNi+>I$D`6Qo2|h>u#0PpwWL!M}M{zHjlXPqG&_)af5WRvx?-Ok{epd@< zw7=!9$J~%|AM^JujkMLIB)EVP?wu6U#7Wqu?|qEmQI3*I_EDW$Yc#eW_hU0j-~RY( zrtPiShZ;6g)w)Dli@4Dy#qn>dk_#|%4w)&Vsh{1wo$}gmcH4xdbpo`yo?uwoE|u3RS|eOFbl(yR zZ9iH)0m;(?zcd(fe zA*i@)@`fOpT~BQ8T)3NjCG{ z^4zHfKWau~$aub2P!wsIaS$aOE=wA^550H1&F+uC(N-<8QKGS(tYuN4L@3$Vx>Q;I zTX|i6KTpd);iuzsBIMpg*nFcWSZhwUp|EyuNoRwyl=i?)zFCN>?}VRV@8G+_yATyd z8kU5{&>x>90Wd0e-?Rf-km5MJMLbff$ z29HOpEY($4HXW~d>=>He{pD-UsYXjDSw%NBJ+&wbtKab5=`I?vA{5{1pbnqX(>+I65&zTd`JSvu9JM<-dgwa z5_>?L9GahdoYUOepO7E^S5CwKZT6NH z|LiZ%NJ?DU)t;xC;%?Jxn{+3z4!sx{Q)j#h%{I!=#2bH}Ui_2i;!_gykNHlxKtc^Y z-2#fq=*Zadd0q4Buq4gLej zwg8G-qMOWN@EK|5U%PWHZU$&loS)T%V^aJEWW?=14>t$)zSerB(O8S9IMBxM71daF`d{y^OzMFlnlmaB4l^S@{ zR6KqTS+H6+oC%fc>ZbNF;l(LEQDQv{DxOhH0w-nk4nO4__Z8A&18Gn3LLbhg zG$E@Ckw)VV!inIuUgL){60bX!Q6sFmpsobzAl4ly5dn1P_j;$fKXpC`F3hmDAXbkQ zynCBO6?LuV0W29U0J= zjc4fKeCf4?(+g+xpk(PEL)UZN=*}~*XeHO6TC z&Fni)7rjlXC(;r%nHP~^8Xx>m_D<7h?8?wRH~p4NN8@cp*sayQnkSD#8C5GbB9w%q zxhMmbbi$y2T=imQ{i;@ecK6Pmg$vKd$F*2GA^DMKRoImwvAHj2mq6Xf-97VE+*60Xj`A^29&@hVA&jp+>)d9D9sJ(Ez>sAaTzgSMM-8qydP1>^`0qA-D zd6R|-M{|N#R_7g(tl&Xgi8MWx`8X(Y={wd4ZLV#-bnU|F__#r}r)#nuaC*eK`zKhg z0*uw1z%{9lSY8OU7{D8CRbo3q*lN~Lr<}<+p6(v+cVZkD{8-^W_v)>Og>;z+NIv`V z*Fpi&aWZ6aKWQ+AEqe3C$E{UXDaWAYfUWmk%K15%;*)d;{qVZA7xxnq_8Kk0qAj(G z_TeP^>W)_LdQ45=Q2tuCLWw~p$E`^r#rWdX`SW^#^4m%*v~tN0K_o}lr^&kISoUCi zatQcHzc_d@gC@h|N}YCJ=n1@Y(i-~yLD!vQ78SPw7<42;KmDFADECg@nY|h1 z0B06!I*kVSyuOnbo^O3cWt+EQ!`zqH<~v3tVVLd$duR4>$nE?NSDZE2@pFZqURI<= z^GB2?Ik1K;p9y-61dl>7< zoj-T(HO(|0GTQaAhlF0-ao2V8LYD2u+Z{Gte=ub=XomVC<=fn|NFF5>(8f-}vHbqf zDNrA-b@q~YE&a(GClCHhJTF!&z#0^$IsULJO~}W^ATSMgE~0=s_W~AZp<%aPRokh1tF*o?l$lQ0 z?j&L0Q28_3j}%-;R9vDdUH7@rMHR=m?!cUVG<(apo6%gXi^QAM_q2b#Ln4pSn>uyx z)SbmMnhxVD4o5al*I~=_sey#a1nD-W{?>i;mR4D-?QA!6(rr5X?;sv-hein2B+)lJ zw#4AHpahls2nbTq8#J9?NMJFPiX~It(lKYz#-b;B!e^fpW&9-PPA~jiw}r>rOzJlC z?FP%^`81~%UpgfOom#xM7?+rM1O0-8i8}6EEW?NihC4MOp-Hr8B>Zy>&P42AyLLwF zO%q>?)+oZeer^?*dOf}L~US`3j-7TT|qq)WRrsiQ|xpXtm17{qHw%)6+Ru67fd_SDi6FkDN4Y5WXz##*}t08(Afb06$`DCZC**mwQj9= zy?aYPUg~=G%$0=E*NQ6Z-lWwW?CFv4Gr8lV-)*})ZIZZv2BfU%`n^u#pdSrf^@9Zc zSYl*p*E2kj2^Oj}{a(0a`Jz@vRo~r2b*OA^>0^9zl)UrIGe6Zkq(z=`KS}V^&h@aE z(`B|Lw@kuY*ktD0*92egn9^%0)ebshKeWY3*%RY2ApqTVsa7gq)Gok)rKYS^tc!4I z;Q&cXON=>#35rA&ZMj=8sI;@LH|ek#%WIMq@NR4x|MJhypMTk%)2jpv{RHHs?}k#m zNlJccXSwPkY0V?DJHOCclkngc1B(5pvrqI6+5KLSdB4+h+6%I$)RmGi?I>X3f zgj}P?2UmL-DhW*j!&?#*{S8i+CX#gg7&+qw^ap*A%|QEj?I^3idDJYb_Ug-*4=8e= zMO+?Eks7Q+%bkVj3XSUKPDOKU7A&o?l0)L{6KkuiwnJV7x@-gk!;FLyjxSQ75Nf)V zDM0ve1p$QCl*0oTuEvWR`5{sv#9MTg)!r0WB*%%4i|3!yyuX0QS0CGGTAC8UVSQ}q z%rW{~d%S{PqrcSsw@E~RK!`=4xxv#El}e)FcwV$~>y<676g8B?%IRC2?%gDv4e|-j zW__=<=UTT(*LGwzk_BUa7(L9X3kyG!K^4kY8T239_MGyE?jx>K*jod5>HL}VXCCvz zQR)-P{4NsON=SaDNrKA+UFpq&Fm91xlSII|A>fGfhk}!J(nS5K`9j5CfRFOADrq?HoM;D?T1ibW(=AvKXk+ z0`Ao6zDqEk(j*~NUX8U<6cvwCP3;|m9>HIs&-A9$5{i*k_QR)~wt)!{F-Vh7G6ggz zriC^4nM3VtOdBdm?U5Ys2Ci*KD?_7)A2i!FSC?h({jn7KIITxrFV{w{p#9N|;n+@O z+N9|x1%k6)iIacC2^z20h}FQj-i4>)l%Sv`B?}8)D4X1pqr4FgiEfhv%|N;Als8K_ zgD#OsqSw)dsV5a1fzkiOPGO&O^KD`CcY6W`4in=t&KtIScm|ma2LOk`*R!{^#5iwl z(@7L{Cpb@*Pyt*Oetz-1M!9sksvkF2%9;pjAT^!zX8v?|jpV)Rllv2Q2Hs4X?#}Ju zSna1fFre$A`<7~?7qA~jEbWdae3EJusTU!W|OC+S#>;f0!6zh&Av2;^|_~iKl`~;ZfJgi!=s`T*t;$k8Ipoyc4f#j9cxaa%Ec= zrNFwUH>0ZJVdmgJI!-jBw`QO5Aot+YhbHq{UNfdSi0xl5$Fki#HlJU?dhidv`y(9` zf~)HzEda(dwEq}|WQ{+cy{XmOZSEe^0Y)$3q@zx`lCXFumT_OMyXaU(4RIii(5)y^ zr01pTneL1@1@ST0j&1GCAXJycDz6{dL0kd z?&5adi?!>S@vmp^vuJOf+}A|3hhAH)7i+0>Q0qqwj_jKdU@>Qu76f{L(pc)Dj*yDl1>7aiHX5#$w+?boq!ZmvjSgN=Z@8GhVRM-B^$tdM$BT)3Q^w#Fzw`BL|=RtIzgMy=Iv%BIOM z{VA2e+FQ|-+Ze0bLih&;&?-YYqA1>RE?A9bWK%B{ZEr(SH>1yz;V}IoK&TJ_6~&LO z^88PnEW&jk3lw(H*&!Hj7rZu)*sEX99tnU83m0@~tPS+j)>J=TaV2U0*u84;QMAB_ zFY^IwAV9gf>*NexagI?CdFb02bF@jl25lIW#-pP z)dQS9{ZqY5RFxHdaoUNUsj((lYNw||#10vnmQby41$RuhRRt62YQd2RDyV)35-GRO z?t`VQuM$&(aBZMT9{q>EJMrq6Xb#(n+G|;q31On&y~R|sm=>G1j=j{p~_#;liKB2R*E9+ z1mQJnt7Dhd=E6%gN@~fFyghb=&nVUGEyKOysbk(a1r&kMvd;amb-(SeXZ%mEK;k#i z&j44@>H#Dfk>;cQjIjL!9K!EwBVYCWz+W6BHsUBXy{C5Ky6r$UoCr?Vr!q+VW!v#+ z#&ZuvCz)ij^$vaevb51lWix8El|1FWVp-~~G+*hk>%M$rP7?;!q?CFD$ag!wN%7bW za7hO3SS!+vH^vqn_9Ue*mDa1Y+Q4m+>?g8-f?FLIyC88eBpIgbVhU}~xZ#?3xS@o0 zH69M5UORbrX??4Fu`XCQI;{iB6gPWGsxw6sk?3lE_htC`-SF?Hk}^!@6wf6pO(*U4 z`hZ%?A6Y>I(w}|{!}%i?m+REsBW** z-Aq&W^J}N|)t^6q;n{Qg{q~W!;MsB3^A+#c_sSi8us5FS?7xu|tt7^fG?^p1R5ZfV zy{xyjTfv-GLr2c+?s4;`rXHRaEn+qGs}$lnp#8Y^dY}{*Qbdo)%32mes6?w-2;TRu z*X1AXT0s*_nbBaj#x$GJ^Q`o4>5B){J$+0tP>c>y!>{zjlsZ1Av6@+O^08joi5*p^ zn`2kZ@uV>sfr#hA4!M`|5AQ-#nRE5@sJPB7!I%@rcjL-ddB+>RJmbltS2o;fN$9JXRT$RY9Mf3+YK(KW%PuUq%l6337R0D;I(??}2d25rw)+Rc~L zX*mB`-`*OB_S6l3?tXuAl*FuzSYlg35f{^%c<={ zNxhfzpM_$k)jYLUuE`_3TQ{NcIAV^+R%bL01HH>y2ncTaj8Hp1 z_>C5Z-X<}`vU1RMcH3smt=owTqU$f@eaoJHgHf<{ni`RFe?@~U7AkB5|r=J-9d3m=rwLs7wzlT$UPL*71SX)l1O(Z&QItU zuBVTHdSzRCnoO9Xq`L09ANNUg{;^-{zLaD@FvJIH-(2Z6W6giKs0)ia>9Dq`a7g_Y z*DZoG^v!96l-VZz;RLHiHz1X)R&{+n^cy#8yXiI2pM6?bZcu+Esci(V_wAI^+mvfU zX>v=k)wv#r-6%}(2u9c$plzJH@cXEx#UIq-u zk%?-3jH-dXrXHQ6mVU-?%?Nt??*iK&=kxosZ}p|}TB%moi|Qq~$dch~^A0wpnP@LyjeT=Txb}Evw#YnSB>Sf};+Sv@TO5aQy-CHq7=Y^e( z?O)Ev#ism{)`|aQ|7zsuX5_&I3)gFvEuQxD@TX6CcFxbA*Wy-s*y(T+<(1P2&&bksBYmuYF1bK|zjyu1-)4qlH(d6c;`YJpr+BLdKj5eYczGU^Gp7SKYi-oFTel z@Iq5~T@zKND%t_%l{sZtXHw$UfsUTFYbZ%8|W=)RiWMY%oexBY#> zySfAUz38x7SKFh%(le0>eMWEa^Pl~hUK|ap^(|e%ijysS>~it!%TZP%5Mu3j2=&eA zytFhycvVqfv@!s(;my|GRZ7I@er)e?_us_F{Da7)zn^^l{XZSCHt)HpUo3a6xghqu zW~_@JBF6Bku!^pE-I^~%6i`B_QT1ktsF-cy{PAr}@kcW+8*K(j;e*y$1v-r__gPVi zP@B$bpIE)tmYZ15#|-z%#0#|4tFGVtV%0r$*Piom-(X1)88vUZqwQ8D^7sA*C!QM<-uM?pBv7`sTrq&VTSk^_s0{d?8ma zOpa2}%pcn9wD!~(?2=<#`YYnHoRPElqaZ>B++3}!Z>_q0VSU9cKx4c-OQg`Qs8{Qk z-M3aq(KzYbDaVv@S?RyR^-!syzj*orgHiXO(}W9dq%O<BX(<9;oj;m!JO`m*tGyq`uu;^Ukl5mAvTdT9Ub1Y3Tj9Klqa=GT zF5|m6t=~oGesJ==u0g<48-mR5b*PGOR=UAI=o#g%y<4x)hah@u%`>_IQ!Sf9> zPWLjtNOf5&7}7*Z=F@AOrUar}NeKtjx*;&=1Lk(HG%c+sx?ZS)n+CZk>BvUAY~?I; zSG#A)1RYdl~|q?c<_yc)Z&S)C-As zGZ%cz$AY>=MvEY4xS+P=J?yD(1u0|Rb?`lN6AkIyYj@7Yx2=r>A$LL)2BST z<}nxH92eO++KhzWj3ElrZ>cN>n zOwTQxJ$ueM|JYn_!KAc*y^sL&ZDl9jEmIqYHfBO7RkuRP778!9na%Og9Y!VrfVE01 z-8hmkP{JIkH`roWiH=gVNQtxFpzlP&bub43EXfyysD)???JREzv{$|1!Ja7w93PH{ z5DOH9ZZ{9ya_9_h!@7}tSDEcZi>RXnY0fE>Z-mO5O;`L08mCEfl}p?4876d%alv45 zz8#uPM8F0I&xg9SB_~)zl?c6^>SGbx085u6=!j!OgYI^v-!ow zjm;Q+&1g%({p^t+)IjCxE2COvlF}A=c62>JP<=f6So8j~Kh?UNd-i$#Sm}8cZYs0+ zHeK6VUyjin+;mzLU~@@7cP3*mSjCjM!NDYzyb8Y&;I*xZu#OWnp-Un6C38*NBj)5w zZpA)gPi6E3H4wR-ipu{_%m(3*5U}You?||1uBUB`7WC;&PoNH`#v|=eHt?v69+IZH zm~I6n#XUTlwk7Mss|72qcw)lbB6vsWf+SA7J|O^l0)zUzfYFUGRP+4&8a}j>f}zdrVzv%{G2R3INBAx*HOGU-zU2l-DBL zPG6{otW`}iB4VqiXEB*@$ndn#96=#a<{Oz`ASx0^HJQ&*Cg6i@bz(>j$4bo=l^dPr zG)@JBT1Im>{VC0#sfO+dxNzg>4pYwNh0}{a*H|rFWyQ_}5LgIt8AFh=NF&kvr(b$1 zP7*f{u20RWRovNKUDvfSqk48AY8VIf6;HB2NN*xVBOy}0jhgh<5AXc=Yp5k}oqYS_ zU+KD&SI0*y+w1YhtzI{DCh;rxTWQNa<<#i=VJ+Y6#)-q?qjW{+&Dl#%Ahr*7XeDe1Q+U47}!;(5&= z19*ofi4Ws3ix)zA-CaSk=z6WWnBCny^0+dqJJ(n=7Z&P8@rW;%AsM(`f|W+=!duDf z3QGPkoufgB$++A%ohV++I5)1UTfQo4D@L$BU~WaEmQJw1i@^bnVkG6OAQQ6uR_u!0 z@{6lL8OGnR%xD1&5~Uh-t%_;k zI&atAMiq_Z{~hGLfEA0rJ(_*4r(9}O>Pe-^Hbi|-!m}b6X6(l0 zgx%2_J{Ci{3;aIN2kOU!?+KQ9D*4V)Yjb!r!UZ`;JiXr(tX}qJvapz=SYe3YVU!Yj zJb7K{z?0x~Bersqk7>BJ+D)28{I+J?=%t%a$IbpI^^d(6X=2zEU#i?`n5Zz3s)5^Ie1(vT}TRb1<3WdtRkth|r zR4!^It|WA_hgOqU({KJSRM)hA4h~kMMw+wr9nAnc_^Tg(qo=lP!}Vn9-#>Y1SG`XIxfUslXhmh!uHzLIz4)Q z!q1(3`iz8XdF-wgg39`BbDVHh_PS%wA)sshU!2pzp{ToMP~<}CVIj~QxG8m-)6tWY zOzDI^iodke@h7m2QzXo3naT%jY~RY(Ws&F8^O)lR-xto|R8pT%K#{0)a zn3L~DyUSY07*Q_zQrYUC%zWqC(SSoU5->~&vZR?QUy0LbIlXar8SKau#78sxZT!r^ z(3rL{%3Jz8CbSgq69(3d{L3-~t06W*4LUp>@M>rR>9-q{qyw#$ykJNB+wikrV3+H^5U{n`Xt%hT`|Gmz?n8U$bEmOkXfQb|?V{dfE zkJYKe0`1>u|dbsb}iLy=jB7VahLfk+LXtYQIFM5f- zX4Ho`Ao4U@hkU_l-9am|{=(nSKGnC1Xn>EI49M61OyZ$2+^6B<()5V^A15=k4M--% z_A!nYttXtt>yc8c5YXIXh&L|pNA)a-E z0pzq8A+1+xm#T0;1b{J()<}Yxh2m-AxH1%^nJs!JW~W z{C9In7u?RD|G)oNmuXYalM`KNvCcZ*z^rk?&l#GbXnJ0G<`q3ADIe`kow*h{`J?$& zg$#>Cx;(=0@=a_!9p+3Up%0Ijg?Otb%!n$G@0Z9`NHFY3SAh^p8nr1CgZVqhe32)kbNZx-5_&M;_By z1OW8yUDjL^R=Khb*Vr2V>6(3GFX(Mj#*6a6ULT@JQ8hQ4ga|wOt*G<8bpDhtP{{8z z9W=V!3X&)IvZ`U4(1Yo|OaFxnFFmVOnbJ$mlv)jKZAduJul_a-G~Z$Q-g zD;wi`hdd+KFU*{=M$wvfOEz(7Ga3=G);l<2(pqA>$M{XWcENDhSvRy2-|RU1hhzKH zqSrU1g2>RfGY@dM1G=gC8&1$<>-FR(u-58{yPO2VY ztwaxgVdoSC4?P)fEnmg{XwQ#jsv>%Aa|*Mx%UQ z_edJ*++As6!w#`1_o|!LcrRpy>OST}pLj&F;E`DPU*m4nHtYJVt;NYVdbMpnF89%} z)zQzAy@YiN+i2nsO^H0`RM0Kf?75^Wx_QK`?%SKQq&T-_#g`Li0`@u4XIGD5V-H*N zs!1BuuysU$HL-NwpM62S(FZ^NdgdvwYb0}{Uum;#@6;p^p5O;D<(>q0=c%Xkh0fq0 z?vvAtUKxT73CZ(+l!jW6p?)tNRpa0&NO`;LTO#0k(`FS4xkgi7FA3fQ^fU7Y=#voE z@jy7wj(3c|u9c;NXJRHG_=q;RwEWj6pP)5`@@{%o`pT@_(nhlYIfy<=uFzPkRZ8w} zJH2prVNstB@j7!Z=vsH~oO$gvzZvae*@gE`-aUC!JF`M|FAgrgqHCDXwZ6Sx^78P@ zm0;EB;cwsWb*!L;UQ-O>;tF{`ewTNtmi|5@IjW}XEv+C-+i+vJm{_Z7IrhuG=u>(v4;sskP#E4j}pPWhWJ(}CgmC>a(f(dgp*xV zbltFKXOARg@DxJ;^Z)C9+`yW$B;O5=OAcN#xs%NBH|aZPo4%+89R4ke7|p)c>d<(B z*bv8`i>Hb?MF~U2Xy72W)EV%op3pXe_~2UvG4fQpE1%qxPgs(1-A301SR63XFa8`p za?Li`+ywk0=&V5V>wZd*5EL`a;Pmk<2^R&e=O}`#&uOe%<4TC@QCTnQ9|}WD$8&Q} zzkqjyGaEBhzrZHtobOd#RARe~hnPHs@w_7ri}?vwks4k+_@Cxe^pijEk8iZ1(LyNu z<-dcgjMpNxI@BP0Mu0PRjpi7~d@*1bpD^?ipj>cWm3 zq6OW@s@WwgHXUIl`)jy?Plz4b@>&E*OH9Nnqvdq;B4 zkf=#3vAmJCp1{C@6un=fkl>^*iuSa;x)0#79y|~E`bntoO? ziPxL*E6naDaS!`Zj}fYPygvI*i-kOCx;vkyk_)Pg#A&-^MJk!8!uiL9c)|N1g{*jD zyi9q+OReE*sKqzdDp$0Yqzd(>t}d$slioGE^5lVD;X$tq(#?$2T#9B%5vUAR5*9sZ5m2LgG^$W;lQO>Z@D31?lH1m zD+8w`F0EAb<4RmAir)LC=ut~s*`S=HKxUZOHAfmk0t)*fKh$#Mu(#sn%#!vs#-f6}t_`Z>r1K*Am9eqf0wJ}4!(#JONGMQ0|n=;-6HF4S($SkDF^4e;+ z=bvm|D+{5INa~spm&oCGH1^$k^B7qgFTD$k<4EH-&%+G%6IG19!XAAer3hGtc3z(zc;B2cYpPSn)Z))8K)IkkirBRW6*Nn7vu`BdNLWNf$hR5)|&1N21Han^nk|J0dd$> zF5783pr@;%d4%*;O(!LrbfF(;d^-DPA#O15|Ehu3Iqad`%>!S)x>gJMlTZu!b^qOi z+2>(zMqt>+vpK0)PbITzl;9AL6>!9N`%9C_bIn9mhn6af}HHGy;z`lJG&L;-C*@ zD_-rDJ8@UlI%d@9JvO`x2UMMpV`T*b6E6R)Q`=DyG}VR7jK0z7x_@a5_KkL-^=gOS z62TISPi;l%@fx{&pSNVwHPL0)ckt;80)$!tp__h2i{)HO)(Unnr@;*uVF;8v3nX#s z0--uyKPvtAiBo)l0rWwnRqRcp3XcGS`S|M_$^cbA$T?MA)f2=BCmtBscP zi90)ZU8#koXT#1oDvi2&{Gi4^WEX!BtMG$r1f8o1G`KL2hv_-7b|fC`L!yxy4*9z8 z#h!JRcV2i9;(9LQA6$=V&&K5W@i!U;77A64+rjqHMxpTR70QfTB}hrZl}MkgPoq@W z?Z%KFWglEL6Z>(N&<}rq@_Iw-`A6ko6v)sJyOVKpxLN7$-{XH;BaUiwWk^2YAn1;) zCy;BwFvWUabUirT*)BBjh+Fbk&+2DvUJo-F5u$|u${lVYg~>QRnsxm596jSI?p{68 z_{f)eyGGj^SEJkJM;8JZGrR~bXo!MZdK`S=+EBlTO;cl{t89=^|>ZDN$A0JvS9iyyMNYy)KmD zN&q1u(cIlKf1yOl4m`E7*-TPcP>3y^;Ekd~ahwfu?_x-zg@1F;eGoNE3Nh^YgIcG~ zdpzj3voAF*A#QX@U|8Xx@OWyy>F&$A`GSdsYJG0^lR9ls@LY?)6v1hvS;l_zuZ&_Y zkhLPZjYC2oTRijBX^qED&se5oadGi+ z1+a%PHe@UErOdxAh=<__(iU`Utk&>^N{qXG938&Vrnk9XXUm1i@AfhINBl<5L{a^O zq&W9vB~A$pXDoU>hv7Z+h%GoGY%52gC6#{#ALM>Kv=-?YqWhGRjQcC2gvUGX+#o8A z<*!eU>3^*4gEDU^uuvz3V;mN#>bA0}kK)ybk!CidUz zg3V}nLp#(Ys+F^M9^5=@(bQ-XSk1iDEi7(NXjfZ#e)<$mT@s=!#fgH)$@fKrl9JjN zxTevcbwvYGHx2KyjgyBc<9x*FG3X{J4y8;9JL!U!9KRc7;5)OAAnLr!GJ50lN+>EE z?F!!gEV47U=^h8I4tJXdg)_!%M!mG!_TV{AEKCj~C*9KwR`Fy7wnGwlv@R;7{c?g@ zEAXNr={yvvwY>qs++80_AvsGki?0dHkm(lMu4(}Zb$da*^3>~DRYxuj?mYc;oR*`< zavS%ehZos4j9vwkbl1Ik63*#bS%;GOQm}dVgTGY6Calr$oD00o?x9&&SU9UGVNr(r z20#IBXLD6QF1~grKBuV#K~g-bfZNY^Zk7y2Bb1YiB(fj(eJ09=Bm_h70hsSx%JqqFsdRQ5KVeeXhG& zQ4K!=>y|-Dw92LH5@|NV-Coc0FRY_{&CFumIZ#iheh=d1awW?OH|a z!Nz7X-C5VWZq*D#v@sgNcxnNMpt&XZm?9ZJ(Zj8DSex((Jr3cI_o)18#^d*bWyMoK z+e0T4lSik=-DB_Rvt3s>fB4@|-q9yW5AeV);?#q(6zcrxPc#_Lr*csSQO}D$vFr7a z@r+cq;ycyILgkd(T+x1p?qiQ#ayeJsT#aQA!YKr&CQe8lHg6iGF#4`m8hz>eS#m1P zho=G0pvF?|5T{Q3!pX-ckMzoT^RbdYj=VoTrLP7B0n&KOlg~HsUu$WJqVM8=({*t0 zU?AxMFPl{gWDoUect1uF(p;CT%QYEwmKPF&SFwUx#fw<2)VQgCap$d4G*I>&f(x+dYfVb_jIdq=T#5U$QNk_us(fy;T)kLO$}a% zR;$@*X(0e)AkX+Y6ZUVvBfSx=#>fEjniS+0(-|x%`N?BeiD{JBBZWSo@E@Nt?cy!| zelWjEqT!Igy|h(XlkC7FZ(W_*AzCJ6^tuF=TfTeGM+Vv^v-zfT%4t!F8$nC9JMfY_ zgOTTw0K$iwH`=T?qt`NA25u2{_uRt|Av*Dym7Cs9#}XJ4VPB)y0!BidWit^v-n|IR z+vOiWSKZ=-CKuA@^{`mloTkpur3jCPi$cGp%cIDy<9zUnneq5>nNT%`0R7$LIgj6w0zd+%BPMUj*LK9)BOO!8{qUijS^?8RsYi4tnv4(?Hdxm&@b>47I}h_ z6=d`FhL?xqo)d@Gw(5<|(ndvB;eecuM_tEquw>sydeP8cPccEvPxg}Xe>^#2THVY0}Ig z8nn~Z(iqJ*RAQt~p|EFBO;g*oJ%9D9U&XhAgDJ5YP+BMM^s?YZP{4cx_XopK;+DO< zR%%El;cwvMguCL<)|-uvQ!C5XXVXuq%H|gJ=KXXmSjc8~TXe$y`?c1+Wj+qK6e+$K zuTQzvmpqTS*eHdjp;4fv17cX+d(bY$~TxbL4!d2C^SGexvlSj$#HXZU^I6j zgj$trb=?E~05c}7FdkH4i`Qc82n+bu_(iz03s(x;cxAj7nm3wD<1TIl!QM_0*r7@O zTk|H3HR80AS3Yzs5G2_sX%b*yKx)uv;Xy_8o8D?g42i6_l0ZhesBjXMg-sIg`fz@9 z$N_lsJ9po4Om+Ta$SXuZeo6(P_MBrkB42? zw^v79&!es1>~vfKf+Ojw*I?L7ykr*feSoF)W+J<-0DTBoYV>Sd+zkT2Y5Z(@5~L4d zAS3JRT}-FjdaCZA9a1CXCWAGD?(K#;ic(Q6=!O@v!NEtVD8!F83OPxSCtgpE+E&d- zHzWr1s%}7GgvYJSP)LvNHTu9Z?S&pAv7@@deIrg1ndp~77HBlG0r|#@+qwcRKampD zyV5Uga&8$B;c0mRp5%uAgQO!DAcaEyu?Y_T8q4xtvPSRYntPMh1sDu*k1=rt`%)id z;x};2^{0LF%}ZQfICoC=@T#9_YZoh5_1k?<1|}fjLdIIXd8O> z^%o&jpoL#;`jPoUOk8W@|90JdGWU`Bu>Qt!J~cP6$IPduyLMs!Kf!e$?D;WouDq$+ z!z?+cmWIcAR*~EkOGrXagf|mB{PHi(oz-k}5~C>%JVTyVXE9H~JpXoXYRJJ%^^{8_ zHFYD*gZf|jUbI)6L&6QvuRU>F4+SR3`W$rJXxymRG>#^mT+4LR>l*$@3sOady?|%X za!rK`8w{P*?cdkqM#cYSC)vNbYY#&NctiCE} z)nm)eo3ZiW9df5N%#%0Jx!;<7sAVEJiQ6|6q-nTiD4Y-dT8H+ zqJ}PKRfVHB%ThJZ=t<47(>Icgeqn?S&dsqKQp=U?x-LY~XPn|%3Y=)uy*Q)}WqY0d z(w-#l=23?N4DF6G&d&XTf8r1WQ@?Yh3BrP#2PZU8B8#7&e5|p-S}=aJ-lX)=@_OP0 zhTCO1BxpjKP^|FJ;FG@%Ouo{$&^Vj7J;t^UT(r_#{!_ynj9-Z%08EAEQ`%o%X7>qS zcS3j43eN7n<_Q2u2;4pog%`RpvDf19V{{LXuW|mCH{?ymWorjtunivzC0N;)IH61E zD@b5n->OPLDRqexxHfJdEIU%SyqP8RjOHY;)bzd~F7+Xv z@kDrbdu?k~5Tnd^OnE~0=usR}qh2>sWSXkSCN*DNBxYN^-w!DLjKfSrW$eS=u|sURK)Mbb{*y=X%LICZkA|6m|aiFVGR^gXDSBr((snvHzl-)2gYYa$0Yc#?PE-UL5GBM z^n0CZR@Iv%X-h~-gIxS#tz!$R!R(T~+wHqHyM$JPTUv`%hn0uTk~BB^EeZdRejv&F zAe5euGnP-=}cU>&Hh4AHM3>GV(uR1}`EyyIa($e%-IGj5Bu1=B8fyX9TLJB3jupi+SyBZ-t{$eO} z77x*2xZ~w<1)y>ZTO~0kYgV38+P8f6mI5|%1$B1!^ec-R+iAF3uW4O~XrmOwjc18+ zljA=Bkx0RJ^(eB?i1%PO={+8KYrUdZY*1>$XoWFY88oR)noINjg&cWc_HXBMJ9vWM z_z(AAO(REkb(Nm8dREM2J6BAadnSXOHGfT^s=q$@4$`JFM@`;Cz-z+&E7@Y!98)a!-i)p>-JVWa-&ttOqb z+{dxnIdZ4daL=3$@!0^`y!DN4-QMjxM`w8GVFqlmQyMpJ5!%@J&1QG6#2yTx$~&G{ zVF#RGLm_E&&k_u7j;xSUCb)4Tz}l7^gk~OsyWu$0*FuI2!4q)kLd(Q#Qt@S}Mqf*P zo+F<5IA90HX75Gg7VOX@s~FObd4!`R#F2f-j7dA7_@&*Ijro|%YH7M3PeVHgQBPr3 zd{Ge6vPdwrVcC2|^E`wMFNs5gkmI(Id?6o_qSwB*HE;qw{trdfz~QsP_r* z7-7)L!3$0#`1*R$ag1|5Qez7rh509vLUc4BBsD)ZifB+0oUTGkdFxW8c2x_F#ql6` zIB=6{CoRYH-R147hQiu>s-JP7T+sCjQ$Z6*Kg6-Q8udxM#kKg!_0{e5_|DR@MqyQJ zMfA|rP}wB9fXvLadC{df)$yU~rsgrXgF(BdI@y>$M$6!d>m_f*5kmDLC?g=)RzTfN z^sZPoLANxI!O16a#7bU|Mx8xHh~UK!&27y@F@|^gY22*AnQ7HP(OO)REuLP`Qk3=` z3LC?LleI3FNT}6DIQDV|r1U4&M2i|u8a#G2oH$J_F68J(z>Zsns+wxSn~!G$(Sab! zuJ!8bntMsjma|4Hx-d@Im}ysP(=N2zb7v^W?MwRL&Stey*F)a9^ORPOQ08IizpkZ4 zSO%s6GfA~Er%2~cJwl{ck{tC1W^ zmB!^tWm6AtVS=DMAaymo%D^iJTNX)(@yE#{_&|&=!hBBoaJ?m%ZN9qZp(E0!$?}#( zx>q%(m9%$LO$;3DBKaJM&FhhfPrYQ*(wvrN2IHhTmY&A?h%E_oQg^!Dyez4RA&2LI zlW6QwstI+ZDY6pRpNW}zSpsaE5VU&C!_&Cg_1&}G?L{&=p}uc_{Iza|!^+NAmZY6f zGu??4TuIhc9>Y&VU2g8{$F-6-wyrfQ+Mibsw0@Z6mMk4iaeap(CfXDvm83qIU9+nb zo0;Y>dsh8d-|V;DZEwqp#51ix7hCR3qN~hQ4(ntUC!Ll6mYDmP6r}QAg+M2539Hp|uygPTL_=>w0MaYHXn& zbYY(A;oy~E22sCMlW;T57{dSVr;e5E=&;+|(nJ?R$9-M9kvnhQWUt37uN1e^l_#yl zPFWiJ17pt9bvS|ukREmSEfGsoY=VKXjMjd3_t|Hkk)R?Q>_AUkl;blcB@SX05(KEy z6zt%atdy%O)ylF4ZmPJY&gwgq$7vm!eXk)QGw@OtX10C@p}%MH#7=E}k;GEC5lc^MVTp97`~k4-h803$jB2n)`al5`h4+32w&_22tq39-qjS z9~`Yk5i+Yw_mO69GCJP!E%ah{tNViH1snjNrUA`w{`TzKlSdp16bF8cB4gB;&$-20 z{5O=m)6jxwBA6DV=YMj_%L$B3OO85gthR)w->5$cS+0qlq#+aN`PHxDi+U%itWw`_ zfdnT~8wd&^=YM>)KOFjs-~|9Lx?Htg>$n3JCygy%{NCC|sVtOD+f6@*OdShmx8Mn2 zO+d&f2;rvjQIQNC*|erSjF%|H@3#+@k`_P`i;L@~`@@E7ggn%6=z_~a-ejK&!OJE{ zi4w*U82=Jio7H-VN$ptpU!Hs@w7z&$hzqy9%vWblTPziK_icAW&NJStI4|25%XK|E zk1(ZeR1~~cwu8o|@56a{q(`eC!*eHHCW)iq%EI)LO=tWAd`@GkkwqVU2jk&U+x5fc zX{1cCc_mb~xBVdcg-2Dc-EoHzzA=rQ^JXw~N7a;*@EDxwLjBQg%{ziEf!~eTwboP` zs~crh1AUm1Lhh<&Sz-kM)TG0v_I^>^l;bh+Q`^sR1~}vTL_66$E{N*5{X>jjv%OtJ zv-Q%Uq$7IDSrvcT#LoKmeU!HGSmE&Z4Pc>J z3*^P`7;){*Kwo=P6BNwSKmbk~P7z^g23k-u9Sg7BSvVuLb@3;9mK6qdtY5FYj5Xg+ zf^BqD+E54zH`lN0$Ig+b{jdON<%yP49=mhceEPA{25vjkL@y|;Wu*cB;PL=^5Ys9Q1BVbeJv0me6t;!ILgg)N9jnS)sAVd<;v+rdR32!Etn}g?Q2hihNy* zeQR1)m$n@`?^3MgJzaUz_%A(rH*1R=P_{wW-3HyS6}9TBzCvd}T<+bLK6Et}@#(Y@sRJurU!i+6do7axaWB)5QO}7d z(@5o#45v?dh1rOT&TvmdtaIufx=x5!8#M5WbF2-x3?)-N4Km-LI{E|5nVmh)O`P`|q`f)k- zM{AC+bZ_Y9;mdB|nFkL8LS~jbS;!&^pSWXk;;Ja=StG#;IQcoqGeiiMVoH7j$^w6DDA7&n%H>ex2VDf!T2o~;WX9V2b6^*B0^X&*sHYWR zMj2B*@xHJGl&WbrBYq7c){@D4BHTpjqW)g(pT5&BU;LR@YM|Mkd+J^&)%1y-l@eqa+TL&6L$Op zO$h*8J%#A$#8+F!W9`&* zYOQo`du3c37#}X$c*o^7EzsI9CgO@nL<*4&tFB4p(cyKUYBrCMn;&2plOc8T$ORd> zrdZr2SAVN{z1&^#!#%Vm{Lqz!XMds(t(K~rg3lUtvSR3Djq!N`?t1BpzOk`WZ)ouc zdp^|zs4N^0lcSiq7xwJ$7^=li*45C`Tv_7qD_iq!jR!6ju3T+2UR~YR*T{MO^Y}(D za&4OX#0fmWz?pEh8b5cb>zOZIwo1~`u`sBD@fGh*XRqYE#fFYU-J)%i6;jfNFL!pS zNv2mQDV@G63+39*vc`aU6q}DDR&Pdw1XplaRkGiFz1_n{#5a^V(4idgm}mMC191 zrn-5qgfMXSd@yLD0C}R4hUSiJ)fYDFyNL({htH%%i)8Cd6lgD^812N5h4t%{*We zN&7LQGK8)?^M!njkT0I}%Asl3k$)q2jn|AQr4_^eHWF~;++d#-S#W-0b8I|H@C+EG zOgWhD@faV3#7b*@_UPn84UvkHz2UJX!nio0+YEi2=;=25T1&W6-K^HBkgV4hi@3=O z>gmld(>e$qtw?&tj8~HSBpaP0%@HC zWw5_QVM@yz7f8>ZI_1<6+Kw43Q%jvBGTrXD41h;^-A@`0f*YONaR<|z&tXY?ahkCH zSLx>9qTbTaqej!+P2gKU>ibzWqCPo3xdi{_73pC3*}Q8dDuirlDF<0kvm7*R;G{DN zmoZx;(c_Hx(sPA;8&ac@3iWk!1e*S>ucINb#UfMd?gL&>ObeGSJHSDvN&exl>F+_v zGOl6+C0oefTE40ej&ReOwAJt$c+ziHJ!-LyL>aan^JaOwQE|C+(LKVJPts{`;gHjX z=fd1ARSGsjJkVof2ltb}7VZ=rLW$KzUga=QmbJUhA@k#3Aqw7~eRFdE`MF7eojG17 zXxQ(Lrv0`>K*+J>KD4PJhZRDiCAG9EGfC-n@Pu7zenL(;==l6!54}?O;xst(2KYfu z;KQBx?T!=7!KTLrEmCP6p1<|NMkpV_U)_G%5?8Ha*==ow^-*J9f|2o%pO}SPLqn z!$g50$#6-Rsn#3SvR>eW*s2R_m=yF-(5o(4B{64w;o9P9-;M+U$R`iVtv=0`YfjxI zz{Ii}x*TJlI-57J{=cDS!h6x@$H`ZzEp62+nqSI85dp#@qy;b%I1b~)Tf5Y#RVo_) z?C$xWo!4g(`i~_$j;1{r7n-pUmY7nw)cpr!$r>x^Gd%-5qHkxPXxFY?T=$L^d(+mz zr0ZplEJ-#zz2@GIbbh6;KK=CKPvf9yC6MSJNXVfj?C7Rwm)M+IHBt)oMH26WqgnUZ zEg0MSWb?Lr>Dkdd`fgq4yNQcnydB@aW`Qtu$x& zy`-C{YY|J3r8bQ|ppP*1WArOZ^XOs1w)@l(3eTK&g7FTt zWJz}U($>!Aa%EYU$NVI(0C$-_4+$!`X*D%)2=wDhwIQgyfOv6^>YY>9{D~hBc>gR; z9eNTtK&PTEpgx04M0wSf2!h2LEC&3^VXRC;T>8Q(&p?|a>Dcoq< zrc7{tX>`GpKBkwUR@Ht1f$EY*RIrM+6@o#+<$Sj?@HbO37}nGEA7)i7BH>s=E0sC>sXp5PY~>R=}5-ishWKQBRx z)HrH8p#iVH(H{BfY(16r4gA|q%b>dD;-ZgKhWOuTc>v|m?FT^FagU!FZ+P^p?v4A| z@0wVD$Zz7EkK;LEhMnfh2`vr^m4N$cI*xw^ESu}cp6RR6xPkj|@&eIso;mPJf8ApC{G94C8?n8@n}@O>&^HK>sw?FNbiO=e$>24fq;HTq@7z&{E>-e z{-J^~GAf(39hGvgj#Ay?_H$L8Ek)aZ+lv0W+R^!@VW8%;@>q^z3ejQT{DmTyVi zepm%{Go*EEqW8Omv4@^>wNbiK-PrNgWxUdp;(q=1ypRB-SF(hFP%=>(Lk4h3T3N7};{4oc1zA&Z$H3X9Q< zk*1{$K>P^lI`6YOdq)T}C6Go4x;{PYzrD%Ob$x~6gx zHkjRqa=7;a{~O_+U-K_901pvf5fHA_J&oYjQc};QUoHsFdM4~yOTEEU+V^UNDDcG9 zg%YAL&EsUrEZ;)UXq`xs!VE?`&6?uz1Ux~*FUweUAlnthP>ZJ(ERw9elN?VgrQ&#kth`) zIlzHWi2PoIObfBn#l1A~RbtlpjxY*}*H9NYAKCGfb+}pa@fo1?7X3VuD&}rkqYoE_ zq6!|_M_Pe%!~lf1H4jPGJ2&;qLod`qhRFxo-Q+2B{Mv|{cx%YrNAfI5)zdw7ZH6m<> zQr|K+n8vqL*(_hxlb|iQ^yg%n3JvGZof1%RxD0oPZLc1NSVIRO6+J#9{)QdBA|t*T zmHOFTnyC66b|F7#(J2jJ>>7=VE}?BdFsw;|sStY8B$xA)>W!Lf5Jxw=i5^VYfd<+? z{zfy0ct$0L`3+gs~bcgg)b>if z_*Uiyzkt)23cY`OXbuTyaW3NqtyP^IfV;ep!&3mVoZnbVtiHC>_^AYg4DZJY+fV#f z5dM=tao!dE&ioW8NYh^Y6Jd&*H*9RZ7mH22|Z#{ zb-!C}&GnN;Y;j2!} ziP=|PDr-hje%X3fm^C$AmWR$_WTOmrMs41YbBwOwd1~^?ojHZ6IqJ51$%I3Z>K)^f)<8(J*~Dk>EbFqfrwI;e$*p#u?loz2M_%6J z#@P9*oMQM2^^Mac0%)+tnTI$e%viM{z||ZHCT8gx^4D2Y4T~eKYORBWPmnS_V$maz zp0f^wx?Qzi+R#@i@wEgy!%57rPTV%Oqjn6LF4h1jlvpyU2>J#7q@J^C86SEClMJJ# zAI1~>`ozhik&5NqQ{2980c_Pm)YYsJ*SbCt3^gL1lgU!k=NJ#v6=4Yv_Nm3!G(YTj zE6{Bj9$v49k|FaBa3XMk&cgit4!{)oUk04N$DxFtscWHoz%?&Gp~DWmORo! zqkq^Q(<5NMw%mKapC)^4SDa98woIBv#Zzi4E}nl`qe%M4yCQG?XshC^yW<8h2ZIK7 z_UzdU5e!slH4WF9g+?K4x|_ygD#Jm{Ilz5{o2XE9g+f|_SgEAQ=EIkU-$x*#Kn2wc zV!eJUt$mmXsfC5bL{GMQQgAq12|>-=Qn0_%u+s))F7#VhoH4#GUZRj5PJFF9p}Egz z-)ja+%T#=;)E--49Rywjn+3Ky>>o*Mxcs7Kj7(@J6<#0sGW25Y{K3@M^C*f!j;7$^ zbB6@$a65v4PG`xBsZYB3xN#_X#+7+0Zs}1t2~1nnOG}TsF?2=GViy*%6+A+`mRfvP z6-W1ic^d`%^XFgI@3(hwB5Kt_r2E$=@2~h7`VaWKf3II_Snw?7{c>mbb;lq66+N*3 zF5O?mFNjc^yHcxKsh3OJt}ekNKO~tmdXz|e)RJvtvunHH+R?A+pifz_{b_hHLDQWJwRX zzdH=4);3JH-#s?Zy`~ZR$8f($X-#xkRK&eKsZs?ysWxY?Yuh(aP$srb-K2zVkdkvk z@)aygJpp9Usmqr(zOiLIR2r1M9ysf$HQYzuYgNJV4Xg8}*A|tcl2}6BK>%58G zqiLP?KmYeZPxoe@KR9_L?*WdFk51mj6a5~Z0-C{{xPQ5I-6}llTiBPB4-h^U@3>Jh zC~5cKaBTM?^SH$7bJ?i0A}OeE9^}eLExAV}rFWsrj*_bI+t- zGF9~VtJDNGY7+Z3uoPmdzWJQ01D}K7fhYL$^~sxsb4FM|2kabC2;?XzZ<-6{?7KKm zAv)luLvSZ~`cc(vj_%N7xkP>0e1KUaHn$}%L6`3R38|ukf9dP^hq?*=nBUW~Q4W5( zYmt7<1J>U0i!N!{_4ptJf7sB6zUwx+w>soh!Yi#w(De=%R4e^8Li{wmD0&<;^IE;ZbUGs?J?a7g@h9902n`ZRU<^pG2K zcA+MCcK7M0pNRvr)6Z#2xMxP8B#)|$;Sd_2^Uwl#558jT%14vDqga^XNP!qf`@_~7e z=N-pVU)~$DZ+`qMl4`%4eJl`?dp0tPtL_6*{%-crBkf-1MF)V1Ax&)sCM*u$7;r(1 zKIG83kHvT|t`eRZh;Y@7_?t!r^M%q+S~tqReN3DU-p-K*S%XiQTZIi zR5!Bxae1V+LUYdrf)S@A9MBGb5g(RFr>mSb+6_XQabbv-GfmyB=oyH5Eg}m#^#Tr@ zC(fECh8@k0;0=%bW3ss7E=4pHo-9p_#lQ+*jxbrTZ2ZoV_9bSR!Q?&dVT87E>P#rH z78)NNqPxx|-5Lirsb9A4Ik9$Jh4ytWKFXZjIMR*Oqk-Y;fY6>606-o=pNr1|p>)6V zcwGUq+nkuR!g1m3uA7!%%}50!2p=OT)#KwRYVh;m?+eKX(nTunC0HrBQ}d!nKrdF; z*Y$YUo*g#=dm5X8Zq-V9=Q@1B@yIWZkHHHCQMab34_H}_FfAX%j)kGzc17c| z0G_Uj4oQ1@kARr|N^K-fGfpi|6x3Z^meM<%-ug1fv7JZs zj9br-v*I8y9N*UVLTsmbOdHj*<{4d>VuwtHmWVi>8wO;&AaOLww&5Gjcd1t@7d1w+ zVbQ4ltg}GIb|?xGKSAmlc}$uW4hz#nH7lE2W!=Bu@A^G3oqYXgcNZ4!c-B4DpMO2` zj%P@i?@nIVl$gAMs&aq!{fT$+A}jlzv5Uw=@xuhAWY+>udOno8&ra?sF~_t3dT@8V zSiWDLwdY*o-`S@Z|DQCme^5pHcfCQf)VXthm??wB5;X0v`9dFP{%VzSrFyC2;?|1o zTZOc@iGGEjweq70wN*5?moU#Y<$EJ{WmuZ%Te>nKF!H-S)HNNDpUcWQm%ZC|zc~sF z05)ScE_1u{!~gu_U&hxJoI%4Rw%ob(M4V-JdfUT7sGG^rPHh;^4heBAcaWmUg~Us( zoQ3zIZoRzZAt21S+pfE`+QcFC`1S3wejJQ$>*47KN{4V)+l?q4s<3DR$$)WZ#KN7I zwc$7h=Y25Z8H1a#u;evJ)Q#UJ-DSuTA;TPRY}|<>=&S5RUA3U#GrP_>1qH_MF`iE- zbQSLg6BT=vgI!O8o3#svO4owMNC?`DCy7AZP`BWS6vtNl);9I0JxO=9aZ!_Wd3!~R zioZ9MP|;hkU-aXo?{y}Qyav{tYj@)HajT@Vj6!oQPgX!=8_hr)4Id%N;LtFblX!v6 z?yar5)`Qw@ez+kNha_jX&x5ZYG`XaPjZ!{9lDa@S<~(S5d=)_Ty-10r+*#2r%^r3X z4K=oD8Lk;;Wc(&Xw)E^<+b&c|;G6_UxIWHKp|lhcj`T?^j#!T9IQew;t*-UwfBxrs zgVGsvl+Xji*GW(RcV?f$z4A#ksY31gf6Ug6>n?X(IDkEsV!! z_xJm~v*G0{7LTzV8RX}`EyTNx>yP#KKjK>XZ=QpUfsBESfsBESfsBESfsBESfsBES zfsBESfsBESfsBESfsBESfsBESfsBESfsBESfsBESfsBESfsBESfsBESfsBESfsBES zfsBESfsBESfsBESfsBESfsBESfsBESfsBESfsBESfsBESfsBESfsBESfsBESfsBES zfsBESfsBESfsBESfsBESfsBESfsBESfsBESfsBESfsBESfsBESfsBESfsBESfsBES zfsBESfsBESfsBESfsBESfsBESfsBESfsBESfsBESfsBESfsBESfsBESfsBESfsBES zfsBESfsBESfsBESfsBESfsBESfsBESfsBESfsBESfsBESfsBESfsBESfsBESfsBES zfsBESfsBESfsBESfsBESfsBESfsBESfsBESfsBESfsBESfsBESfsBESfsBESfsBES zfsBESfsBESfsBESfsBESfsBESfsBESfsBESfsBESfsBESfsBESfsBESfsBESfsBES zfsBESfsBESfsBESfsBESfsBESfsBESfsBESfsBESfsBESfsBESfsBESfsBESfsBES zfsBESfsBESfsBESfsBESfsBESfsBESfsBESfsBESfsBESfsBESfsBESfsBESfsBES zfsBESfsBESfsBESfsBESfsBESfsBESfsBESfsBESfsBESfsBESfsBESfsBESfsBES zfsBESfsBESfsBESfsBESfsBESfsBESfsBESfsBESfsBESfsBESfsBESfsBESfsBES zfsBESfsBESfsBESfsBESfsBESfsBESfsBESfsBESfsBESfsBESfsBESfsBESfsBES zfsBESfsBESfsBESfsBESfsBESfsBESfsBESfsBESfsBESfsBESfsBESfsBESfsBES zfsBESfsBESfsBESfsBESfsBESfsBESfsBESfsBESfsBESfsBESfsBESfsBESfsBES zfsBESfsBESfsBESfsBESfsBESfsBESfsBESfsBESfsBESfsBESfsBESfsBESfsBES zfsBESfsBESfsBESfsBESfsBESfsBESfsBESfsBESfsBESfsBESfsBESfsBESfsBES zfsBESfsBESfsBESfsBESfsBESfsBESfsBESfsBESfsBESfsBESfsBESfsBESfsBES zfsBESfsBESfsBESfsBESfsBESfsBESfsBESfsBESfsBESfsBESfsBESfsBESfsBES zfsBESfsBESfsBESfsBESfsBESfsBESfsBESfsBESfsBESfsBESfsBESfsBESfsBES zfsBESfsBESfsBESfsBESfsBESfsBESfsBESfsBESfsBESfsBESfsBESfsBESfsBES zfsBESfsBESfsBESfsBESfsBESfsBESfsBESfsBESfsBESfsBESfsBESfsBESfsBES zfsBESfsBESfsBESfsBESfsBESfsBESfsBESfsBESfsBESfsBESfsBESfsBESfsBES zfsBESfsBESfsBESfsBESfsBESfsBESfsBESfsBESfsBESfsBESfsBESfsBESfsBES zfsBESfsBESfsBESfsBESfsBESfsBESfsBESfsBESfsBESfsBESfsBESfsBESfsBES zfsBESfsBESfsBESfsBESfsBESfsBESfsBESfsBESfsBESfsBESfsBESfsBESfsBES zfsBESfsBESfsBESfsBESfsBESfsBESfsBESfsBESfsBESfsBESfsBESfsBESfsBES zfsBESfsBESfsBESfsBESfsBESfsBESfsBESfsBESfsBESfsBESfsBESfsBESfsBES zfsBESfsBESfsBESfsBESfsBESfsBESfsBESfsBESfsBESfsBESfsBESfsBESfsBES zfsBESfsBESfsBESfsBESfsBESfsBESfsBESfsBESfsBESfsBESf&Z{E@X!BQ@#koG z*co(hcgAP;_xruG{myv5Gx^VW??2`5|Mgw*q5rt}&p(^p{cmS??M?eLyBl84?*8Y+ z>+lQzrTy@qByarRw7uDH6J#S%Ii*4DKyp(s#Kr;M)&F6a~zUSOX z*=<)1Cf(JFAAi5QoqO)t&$(qX{;y|`-7@gcUOD#9e*PSkuK(I8r~Wz2pZ)BiTaN#m z7$(0sEZzU!fBq(8PyhFCzW67<%2ArJV{)Bx*o^XA^Ly6~J2|IbISn9ra5w3de)PJR z>%3epyQAG)#Zi7RDE)x*H$Cau!rbz9etxk$6PxypGWmu->6Km2gx%ZEKM$KfpZIt0 zxE%PCgVOb%Y59)-+$lr<9F` z`HAvGj(@+IVlNijncJZA{(QIeV_K(kJMnCEBUJPEy>jTkUk0}>yD{+X`|8v(V(T=i~b1g4)$=aT=LAi z<(|J_U$_0|PI=&;m&^12;}?(wL~5FSx%s{Dr7wJJ6q;e5AKi#u3&PVcdqGv6E>C+7 zkPQFqmLoT0Yl7-_?mcw^at_PKa|Ng<6&HSE#F!3 zE?!9L)i3uvtI2r4kpzJyBrNOU$2qu4&0b?8RK>bbD~Q8ojHWiw4Vri zSmIRj#hQEM_YKeBVsg#Xa^gw8S-QIc5JbjU3DiGOWWbSjgVC_rnk(f>Gt_GHJBU_4 zMYyd*mkzweUw0t^{@p1lth`=c_n%qEHUHi#y`cHKOw51Ry!`v53_?bG4h|GDHFzJO zM0CvGAeI~VVIKa?z{}0=r~JG3cJfkqiecPOD!5W^7#&ZMV~%5&>GH4L%}E&r&$@kD zPGegpFhRiV;gS+>#v(mlqCWu$jgpLEWfH}BLKjl)$(SxR+6l8|^4c)98 z@qr=bMr%F}MtE1f{cUL&?OiqCqv;jd3hCmGN9i4s`KJYMizm&<+s ze51VKpD-5p0!GAPHya{_DjeqxLBPYY*2nyNubbp>1MKzez<+-N;Rq4rWKK$X)1S~|&r_I; z#b3N+-W;`?dKkn;GC+_@KI;SA8@mCk9$e_u((5>k0+ zrClG7W}%K&mZGX zpwo7FaMJaFG(bKh9vB z8JKS9$I!|gZy$_4a(fZpehPr&DH~uaB-U90$sBz#7SPIG~Z($p3)H7*YGejOs_-a9B3q* zL=@aiB4Gox{W3b9lBY33O2P2H%;Q1~8o!{5} z`%X8x-(3{DSSUhiYIB^elYE02EePWIa?w-mbq`ZLTT0Mk-i)@$PkY^fm<07sV2I2J zp;#h~1ob=ncA0$J6UH(Ti{f`2bB^KdcySkYW_&zKJ%LR|0&!0}$OEPeqahsQ7;Vn2 zc_t`IQouvWw;E?5Sc= z&M=sOxaaWS{cF#LJH(djS+W%=bS#$}F$HNDld(TrMa>GBqnd`5WT9;P8}=w+#Ni9& zrUMuB&X-Y7N;g!U<1jMu_RXQF&RIZ5=YTfJ^?d3VaRziiT?m&mM8fX#_SN|u=~W;td~u9 z^Z=2h8|n}C);QLPScd`HVT=5COFyMD7~&ld_!uURke>k2s~)8)^GA#ST5L{=?_VB~ zK`vkRgAQfP_#kbg&zEO&B9M^~y*uTO@$e|^6w7HmL~C*9(3u3sN(sGvrEHtvJjXxO z#OFdj>ZQ26P&VDuoX~K-yp}9VByJQNfVh|{2h1xFp#$&of=1OC;jTGCX??p{R{a%V zf*N|Q7fM(eN04qe9`2Sw&ktuGl!w3Y!%!sFhj{?&1kQdOP8CysIvKxPE*T&ac&pm# zk7eHitMcPUyvI2bFK)Ar*qW`fY!K~s%So$nay)he`=ss$|J-T}44rZ>CjdiB9*7Yv zDfH@`mL7@@Cot5Dq$5T|A5@NT5C?dD9%oUCpe=}FqZ4n+ygg3RNe~A<3qu%U1hg|3 zQ2DmEaxpQ4fiAjhsKCxBh!}4INPX;W!O~8$HKZxb)a;=92S42BE*7oaA=aA+wUfsL z?%$98A2d=l9Kf9-cDvKb_(AChSBAEa(u#wkWki|d1}rDc$}BX%E@lui7Gx>Kg{89W z0jEdIGucjE4k8iyIWj;R0Uk6o5n7pSgQK^T)}j&ifo78i*f{)%)fI#YB$$l9lqwVm z=tZ7=S|0w!Gdow3sUncZH;7Fi8s|jHyso!KrI&L?&j=3NEjw<2gEVO0QSyxbz1$}Z zd@=BqD}KFUtM!ol{c-n&y~aQLWv8W~P>^0g727GQl@~M_3!~i* z!QVXtxL6qe%Mftq)u1;pFMy8zjno`aq2JqaTsd(G_~jB#S&-55fJp8Jr>>I<`ouZu?EQBZh-4n^ z-G!?fFx}&WavG<8GUiD56~qJ-_7L=X_K#k|`E>K$EB8YBt;~NQO~{LSv2=slA0>(J zKxaFFL9*_;0RsFckPph}b^xe3XD<k1-)9pjlxoXt(8i4N@w?uadI-g4V~Ke zjAdR(3(iR%x7KebheDhXEC#XZkmaKo6RLT7+ZeEXA55vDjR&p|W#~tyq-~FR>>(ip z9qSI}Bs4_&&T%5%U`~z3^ZmdUKN-#RuUgOaBSw>ul|C0_0|T7{a~$iD5h{-2Yvqb( z2LMLLfeY-wVNzsUe!VAPeypl@jOG*$02KQ)kfQJG#u4BF1D~g~EgJ5Jd#H^eIbt~R z-=!|aRL`Z$bR{hh`we&8EbITb59cEWWlMg4{J+&^)LM;*T?vcaN?E^QE`gA;dx%hF zSOBT7#)Q!i;|!pB20c50&zv?E$)_4`>sncMdqF*<`N{a{67DPLamaVj6%!9U)t-ka zn|~uOhn@o2zBj14}q~-w%wH^2D%=LeuP_2>2uYj*U9|$MW!Vzd@+# z#Y|dRU*t3Pd|Qa(`LgbCP%oq=_hfm}omS-Z7VtT?hV;3kuAFxNt+)P*^1gT7ok{47 zMPYCcSZS0vC@dpcHoLypy`TJjfbSBMgZJUN^i)d*@jx8BL7c)$r`_OYN^dB%K@=7_ z!TY^~Sj*JRtuTclL3a{Kjuk zQ9Hp<&*-6Tg~7 zyT4Z+c=4EITLKGfYWx8ZoCsLZ-#rEpI_>@+#+EM-iWwmgtPMv%9H$1{2@C-bQ}~qO zI*ju&a5lE4ijv>(1XlE=mmqT7I}BlPp==pySlob&pC)6RJkJ|6D`nA>TYygaU~F~^ z?xoarWR2(!9AzW-Q2Q@@M*gF_>F;vrVVNEq8KE&lLc2UR_#Lbf9LYTvMGxx9NeS8e zN_pL2nBcH{!Vf*79)dPhTb17cDKQI4pJ15*3u9>TzHLj03B-> zBmi$?4?954U9`?msEduU=vujEgus$vjFNZ0v93do!=X}5O}sN5dy0RU8`IzjiQb8^ zFz`2k+E00+Mh18|_U91mvv&pOZz9fex!XuyySaBr^r^!2`*~2YSq8}I`Sl0{5mPdL zR*TeebH0%GI(I`N!7RAf4VsQlw;MF-Lb>31OQ(X=8h{&R#S523Bjp=8ns#G%WE&f$ z$Xufz+>ZHn@+4!|GMJ^&VzW*1014Vj8y4H|F63M5MySRbbZ6KIkVw4U!$twY?7u7G z?=`$qUNeSb2Dswi1g(d#nwqzMuZw(o93){E3_b~To{Wjnax2_lJ1;gvuuOhr zyt@gP2pQ!Xye-C=Or=fFbFGq|L>x_{gPiF1lQ9%Fz=KmEWC2oI$8EayQf|K!Im%lc7c#MCz!XA6fQxKaAvhrMc#~%{8H9cuo$>l!Mzv@TQ z4^Niwf}~8w1Y&uD$S$Z8{!Hi8FoG>{p3)f-R;yn#O+zn${wd>yx;bFNf8Ag*arj$7J z5WO5}TLI=?H~8&QmI(RDuXYg+Lxk=y^*j_v6urB#pM+<*)rhEwCdeFz-j280`{GZ@ zz0jv757Ve6M9ZAN1fzUv^`UEJ-7j!{_eXJz-%8T+N;&6mbcP3~p2!eA2#GZA>%DQ|mCLW+}a_%AxFIZdb-5Iy8bzQYu9zMxH~{PKr? zJtFpmxw?i$&O#$SmaL8$gT+bq8csQqIq^5q1p*P;y&eI*e#BqgEGKR==)-)I8)By2 zZM3s$o%9?gWBC~Zf!nzGl^f-Sm=W>d?tOD=DoXSi0h`7sD(o8rHJ?c*0gRomCq1fjoOTWW25sRpV_N*+$O#lSK_4{4>HlHzbrodDlqTB06{duB(**96~4Tn zOek_*H*6tedREE{{yTjBAVhf}S`|N|(DY!3(PH^VhIQfiNZY|=%&b!v7o`h9x#1QP zU_zqYZ^Hs5^?uKwJXc;z1d)vI>70Fgf`Iygv4N?FC_}hmP4kx4Q$wtd8h85+&S3W; z>7M=e@+adb)7af_!X4JihWCWpuR-Ff)_D5MN9LX*CyLJ@bc$x%eq-aKAli=5DrE_Wj+l>_@=e6J88T&u=fMed|MzmG90j?g`Pt?uwhZw!zflnTF)RQ0Re4GaVW;jCe_P#W;d z?7tiKW+aXvme_&=;bc9EQ(jLi21D-+reMUG-C)NTlS{8R=|Yn+hs;Y{tkCr25iDbc zU|?ve!j02W%z_!E17EZs(?G15E&jH92Z{P^tQH9Bp|IeEDmWSAoXZ1-i0$6w2M&>L zJ)`?h(=|o}MWdZD)8?!wDn9wLP(ES;wx&z+Op#L??_~!$KQt=q;GQ|g?GS|6`38Ss zqQ@Cg{cd^JcvY3Hw6t(AtDf({PdU)J$KnDJfW?M)j)Sc9lI$vCG{Ce&cOl?*%6{UU zCOhDi8Rys$uY=+dfd*6TGt^%~0}4kz0&W0pgb5ZA%HQ>YVM+=Z`MV)fDWfD;&;0uF zp+v($usK;nJh|t~1%u>;D$IHy#X^L!0p^odgf2(#__QGz8bl|LYhXxJ0F-n zii?PupVtt1;i54TwwC0L^$cWOy98QKPnzVnJoC;mTr)IQCYvCF`J84)L>jMV!Na6a(pm&kKaVPiXD zz#&4RXS`5e@S7@6HXb2lr5}41IuhyQUI`644eR3BxG@y&V}1oyJZ0Rc zdr9q1O8V?2r{|`NWD|a4pb1D~=6=R2QLX2GuFM%5o#!LhLlC+PD<1~EI zlQEXnw9Fjulwm0K?<7Z;NytlBL5rV@4$BGxM0MmFN#`FMF-K`l1gs4qLh5gwi&$-r zW3RCJW&jhc)PspCBc^F{ZR5q=XcBgj@ZFdPP}_06olj27+n!QJu--K$-nXC2cu(8 z8#_Ro@4rRRfl2Tp5qvrYX;mjoCgiQ9vf{3BDcJHUUzs*qbjwI6YghmRG&?lW`MEi_nua4qkJZM^%2KU=lKI9*4eN z#r!OqA&ttz5(EV7y+OmQ_@KbPI7}7s{Sna>hD|kF9`8MFsp3zX01@rnR(=}H=I(X9 ztQz`I|Dd*4%gtp14awP*TN-KbO^A?h^OAU9S7o%=j$C!ZR4)D-G@R@$$I; z&L=6iR2Gvl4Er4EE`hCv{<^eqIRP`$8DV)iXY;JlJD%|3R4emX*N~t?D1!I5UX_uj zUQO_}1fqQ7&a%o+V`ex9Tf;a7&3BZb^=t zH|qp(;WWsa3V-+wp&yN;gd41%!IJW2?-_!KHN#WI3L7Laz~i8ZH>k$pImm6|-xxQq zxB(cG8Ed3%bpm&hz~KlP3~;Ti7*nQ>$@`~{CR6Bf`!C{={YNkC9zNep@!LqmJ?uPa zNMz0NN~Dm%wFaSi(#U)nBz&VR`0ujeg%i1I<{79UPUP=spCk`UBo-CJJsH0#Hkv76x_!xDB{_{n}S8bBUAyIL(nVB-)E zg4E(d+-rr5tNB) zXrZ#nn9x#1B&8%(x^#^$_RTj#~cZL5n{JI*B2E)dTfz|LNxEZGRAX!~e_IR3%+xiE~xxOj@ zH@Y+?g^!GZTg#hCcIE31i47Ya(v3H8gCzP?1F+*DV0+W$gv_NRl2kRR8xj^Fi+&4YtQ5u3$Kl|8NUYR+S?k15c5M1d&3fwReH>&b7S z_;``XvIxh1BlAWQ>#6g`?~pIT4orYu;5?c~m>(G^qzlCTIlfCwVw&4evaefsojvAt zjGucTw`Yf41`Re($&AQ)N@R019w`#M4jU%$h}@6C^nN2JZ&yLs=c?L&rgE020$$W8 zP;a01^5=e#Kp6osoaNCVm;%*Bx&zNRgk8`0$tP2nl2VPa(60zBf5v-9HmLWmPVKZA zi~|s2BnXTCVcI_#i!!yb{8A+|SZpb4qP4lXgr_HOdawNcJwu-?`KBh-%?9s~Zc@n~ zrjUmxv{5dfFOdl-qx)~XQf2&lc``6Hhv!0h#W0p?5ld5QBzgk^jyoZ9EW&q?_xDjf zymj))+`|~;T|knlPOt|FsNKGTX^tCY<$QOuVh&lb!?1o}QK%mqE^}wTnvAdU zbvGn9^p*C1Fl@sTtsp29=ITr-L6!$9Ia+!8>3qOt=9OZii@wmWy%G3G%7{}R8&Sn# zNUZ-*oqY1ExW!U;8ba%iZ0+M9p)$As}ufBz#+%mX--(XYtSW8jBf`i-Xx}5i>CE&qcPZ-)C zv>mf-7=lC!f8z5@?%dDH!|!AV2tN4$0((AF#Pq8gdG3Lh@tb>bgs-`4%r~9g+u=0k zBx9y>8whoSR8+olD>-k;DRY18<=SILmOq}JXtZ%B)yj}`Qy@x`7U19R$1{R@R{MMZ;(<3 z>_!a4*@{x(>7!G`t^(nvy4;{!<%Ps9v|9*}8?x@OqEZ`5fk}Qvghv4UTITYi*CZvz z5(W$OoD~Q%I!aR=Ac@`xqli)xsEx#_c+m@G!9y~&5LgMB_MahH{XCsB>5AP&f_*&LCQhr=oWU3w=1R2S)+XUAT7Xv5u&MDweff`=A0?<#=rNlAq zrwOPvS&~rcrJN{~RHD6?vYRnd)q%#V9BlO#<ppJ!DUE_lxC4L+ep;zt998B9A9ypQY#o&!(!@CF9K5 z4-lcwx6e%?%=%P%Fvzwkb zso&wymssBDN7!!CHC>g@1jC|tOf_D}llIo2U~c-W`)QTESq4$cRjDWXS94JG!(CmQ zcX+FeT;}{e$eQ~LWi8^TTW(~KEMRV~2p4popn`|L_QqY41dr|4Q`Sa$3d^FSx#;T! zONHA_!`2ejcJl=6a8L)42Dw_pE-){8W2KAi1*3W~wF$U6(J>wzVNipIua<(%v$QL5 z8FzLS+t6;1IjL$HxKqWSeIpklL53M_l@0fRB#p(vPZSV==y(pZv*9g7O*5E?3Jesc zq{6ma=yYSrY`g0P$G;1*He4N^>SonhliCBMJ6+g3dh$M7ZDN4m-JRjaeK>C$M3Z_y(bp+3TC=P%+4| zb|}O2s&Ix56^@@Q^_HU>eI}gyOqbl*70yC3W-Gwqu8x;`l2?fsCNS=sjEal-V zD&No;mb<&AI6;>!)%;8U`-l|%#pa&W*#{4Q(WL%uE4{_<5TPV+dU0qS!=T0p7DN$w zXF*n(_LBcMrEQKLi6mV%b&$@9s(zB0a%iz(Ijq`odIBe7f=3Lhn`On5s!1cBFm&n| z&8i{MbVwMg--~a9Pu^pK^(;)O$nHIxs zd9GZ^3C&`Haza2S5wt?2$${A`N4+rdtxp3(JozIq%~QEmwG=;%aQ2s>CthtgwSJ62 zrlQ7;sKF*cCOxCGk0!rrye0J1mEFTq1fr*s8s^F?%DwVKZw<gQ9`ujWSSgPW>_o747;!Arq4W>?KkT$dg8$YE8_wnyEX!OHqp^Ty*Nk4&<9&J23gCXSIsW7n_iWUTK0E zw58wj;5W;fo5+}h>Br+?0>KjDRm&i$gff2&D*e1EVX@g1Z36Ob9v)Bk8#zjR;w}z* zPXK#^`_wT-qVwY{pT@9}Uph1mGBEtvWK8Ybq$NZLWacv!v)U@~9P)-EQzkb#a%T^_ zMcUZkDd%$K@(N}g{rxsl?nYVP_DVYG=oj)C^cW+Xem=8T zw#Y@zr3!jckbwLR<$<~xapLKWfj9sDJx^hyY_12UjAxX;U7w=e{XsoA3JCBYs5F7i zs&PFshkoo*W$q^tuP6gdgGAUU5Cc6Aq{|R2s`_nQ6W$+18NO%AR}9m&vhKy>2B71h zn95sdsw6Ley>VtBDD+u_*vf+Ar3I0}rPX^kep5)0*F5GHzxH#bu&t|;pHNh=NuvQ5dNkR3LLA;!-T0ti4X&@__;L?&t)Mi;U|{6KUwM95 z`5NIv86Qt&JE#DOHo1dTWjYFM)JkiFth<_wZ=#+7L99(DAkZzr=EnDB0r!Lk(Y~e}ZmCaYfaVH|`cP zyab@&tXTvKfht1`kZSf@BQSCCL5!+lEOb{T3&%kNnObeDdeobp z)E2pWSaWyRLvyYKeZM3AF)e}|U4KTJ=eLn1bI++M``|b{zTj(fQXG5O4K0v3rR|TLDF*|f{62Hez6I4%56fNMf&kO^6Q#+(*jeD;Zv=W z_Foh*@gKcV`DDR)PglA`Br8pIP461EUIYFm%$seFTcgm;DsSY?sc&StDkO_A{n~r& zdB}l>xZ)A^G0|kIKC;14Kg)p0ppb><_FEkco&#JneQq*7U(QE>IS%rk2b45|6zhd6 z0ro>fwpBNlS|<%rXl~Gf1czWLb-;}g)kEY#jiZEA_+_eq77>9v^Uro5{5&QnK!m6*|L)a$vcvrpd+PEX;|JmOmeG$vjO*hc!(O88TnUo zR;505_C9{c$@`Ju{sp5~HDV=|LHBMl4-_tU$BVy6tv(M)GEtMBrE}*u>@e$1m~WSU zgB`l|wA?_9^yi9QXiC0npFJM=E+Jq|#t3xol$u3ZkC$kbEx(X*5CW>A#p~wfP@?M1 zQdwPU<~YX!`ZH&|A&$n+3KedXji+_8{6&>^@d_o}iTEY_EOb(8aC=!;azm+5!kv#1 ztlU4>vs{x5m?))Qp<=TF4jYio(**7!k#tk*#D zE1|#61$@>bk>0_*UK723_Fc}VyICaIa{Y#ORcqk9|3K6oWMEN`R0KhqQ; zl-%R#z0SR~P4!yz6{Fu4MHBrM;!FDOmoxYmkibHXyT}`c4}Lc;o$y?+8J^-7$u+|B zNs)K&GQ3~N2WoS8o2S9~oWy*4E;Go^$RrH2<{AZCJQ1z|b^~13Y3(M2@}Mb(Ir1#AzJ$ zLQarkpGEwkBtZ=o5P#kTaDgOFNJLdWQzex@epX;6&g(8BWh$i$S@dWFyJXe93_F;2 zmX0HmBeKx7SWh1o`+k}H`bjIWt&{ePKB4w69%eEoY0{8Xs9ct^Sj&{n3*`w9srrjw zx*YeOV|u|>e{*@u8?#YX4ec5^t=q@5{~b{IG0*l72n3J(DbK3xwvXth2)VHxGO~Z- zVN`G-9r4x>bH&7Z`vEmAD>x{6!hPJVP8NSAJv&(auIgm?jhwPk!X6aQ+V-blOF{y} znk?&v;&qafkiU#~DAUzZ=Fz9_Qa=%o-l!K#GWtSU4l*iD>qmYeInI4A%-1kE z`=m^Mkcb!D&rP8a0V>Ety2eS48e!%2#K>`XFM{0h)RFB!$rY$lVfgyJ&59{Vbq*I( zxW#MqQwTt?(J6$puds-E@UP|t(5PjRVJfcbbwG*Y7*vaf;V}!C^t3o;JEQQqGR65U zI!Sh6rIVrSXSp5Xf{Ls0mdZOCERJizn#i^xz#wWgFF3-a*Q7)*l}3S<)jtH*jTFv> z{oyO9wb^#!C}kP4y?tjzqxvB{3t4R&+NU;Xn(7 z{Z`EY(v3n11k$ANNgHyh;wP>#-_+RG!_Zr z@*iamE%(yzsy$BsXjFZ0gkE)+L>F6$g6ceP=@EuC%RLQ8bd>^jy<8b9+GaBP7}U3> z&Lj7NDQ6hMCWRGy5ezDUw#`y~B@ZN*YMtcKRV+b`MDP%^mR{3(E#U5_sU^;zlDNzS z;zV6+#7uH-?&m?gCm9Ki)7{A0oQL80@)dsyrGlnOn@pf3rR?ux^h#NDCxsF?#&u1!{6hkUyAX~4 zfxjesAEm~xU$LPwQ#@UCH&x!2zw8c}B z2x;&j{K)(HBUv?rcVqpy8^FTq z&=yCarq{)1j0CHyP9kmJ{UZo@b<+fl=tlQnH$-TS@%$w$N*4_n4$GTd+_dQ@G-(v( z+{{|GWj;@GTj}fmUa>X@p#)VUfh@!xOSSFsj2kv&jO_b2-jiLggFrE_v2Kg*^)je* zPf3`wU_Tfa+y&LhLPMsCAU=6_h?eFl;55XVnem6~i>FiS~X(Nq-m_hH( zQK`{=RvXsu-!s1LXF+ADx1KNi(T$LHZqztTeVd&+P4p#xiR|n!%*(nR2Zj9!Gm2sd z($_-#fx#y)%$27+u43*(i-ybX_=VgWpZbB=h!Ru1DFN1-iS8O#rA&1kl^1fmRXN)e z>84b~6Cq6miNc@CE%6-#ekw*H&-kqzfU(Wz^M)p@x`y+%ZX@h80qjzpY=H1b)xDCu z;`%h$(=(F!YN3fL(y32@66T9&>u(X?ni98@F-gOoeU+T{d#!U>$!uN=x>91?(ma)x zZ6$A5B$(`TRQNpMNLr61tu~IXUoe{14%5(;@xb zlm&szz?Mgf2nN652F?80aQ!btuq|NK4sglV(BA(iReUEh7#}f8&8Z%lE>L$Y_y^QJ ztL3UL4br!#JiS^h?!udl-zopWpsJxQ{t)g2XANs8iJ-fN;*#}nuNE7<`;am0cYaWW zZ-jo}WhFt+-B;Nr)gwf)M#+Z$@6Y9F)v35wA$UrxAK}pSJQmBE=O|Zq4NvrbA~oD~ z4>j4)jjoh)ZiIPg3$tnKf|Ya;#B(yn!H_Gc%*1VLIRLpXd?>amjqy_zB9`*w84L7l zoPOBOk^0TX<0z&|&SP&n{x5EP`*vMOo zF?aeOe@<3x6x#N5{0hKJxfVT~9GV#fP@_a6vq)M=_kiJ}Q{swHqEj#4rh16y*2BdZ zLieT)ZRQFLRY}<&Qd=VRUCBg2FXWE zI$x-YNCFhh$csSsoEa!np4q~2O}U>Obl⪚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 z zy#^eW(5Z>HEqk&=NP+p_k86-}HuO_d(`9-&)}P*XB!L#j)0yf#jU21#iJlcIrFE2- z?kNbU(x|OK=yVl$9cMshqi2bN(0>vs3Aj(GQ0^WweGD+&6AjhhRPwOHNZM=*q6Lz( zIcje6(EKn+lMRlX*D%K`JjQcIfuOMO$+&-hYOc+*#cr*bCU-{a>`uh~K+{ds@aX%! zG1u@Xp3U*ySHa{dT<8gcQ?T6fyV*j4eg|(532@UOL&^#oe=Qsi_+@!VnJ4rpXJpFC?UXbm8w;jlD87y5~ndS}TN^}G^5NzP@( zR;ULM1S8VzGj_Z+1XUEfq%w-TU8$5+Ufzy-g|u|tEBsHUwaI}jt;FjnG8K;oxv*Xt z+Pozw_<*a4fwVfALJ0zsx;ZMpze2~XDT)89_Q941@j=W8On&6R6MpINQUnF9&yfWN8N`47Fk@w z-cIXbzxXc|3|E<%{9-oTSp!nZfB_=}gql=wLg2QUFHljkvHWU~DQ{*h`*L}~lT*0| zaiRJ12yo;s=AL&ij+(gDssaBKf1_jPe@nCTE|N2fbhzGVqmc%1b_R-4lzZ-%48HXH zGp&0e3|}r6pMJt87$@mTdgMqof6K4th`#0tM9-!tLv9fN?i#@T=lrtq-5-~S8XbMG z0X)YWm*guvET6eqMV37$TwB#`;mvlbT=rKJ$56~Ofr9?>i*95Ec%Yx;`UMD?whl(o zRrgYtTE@#rwnl<%xnoE`W+_yLxxpF|EI#62gr21ddPn=l(EIU%vY#s)pGl|oXxm=~5dU)({I(SH!Ky8MQ)IEI6 zZia-(yvi^zL(`EA2uR%JTIyV`PA|)D`H7pDLV1s{Hn&z=y_4D72@`RA_gcAXa}rrg zDc_FV%Pm!+36BCgMx3iTd}5MkfGby3_Zh#fe|&nEQcC$adM4~~o&@d*?y@j0C&4G5 zd?C^~`>C^vq9&033bC=F?!-j|f|-!6P>bLET{h7n=OZxnV0qvP_eO^N0F%bOSzRjA z;DG(LmR20t-Z#`?d&;A_BX?syxC_i+E!4+ZnfH6)hgIOr5gT2MEG;~M+ybHYjsKH? z64*K8|LAGP^@-H+vffORotMf3FZsnCL_fi43K1ZEV@7l*|5i6M871yHYE*()MCO1y zu$fb|%?3D3Mt3;brLgRba4Y6k!L@|WFFr=Ua`E^mt1G$p&@_2ivL&XUvzU~P1_8zO zgUkaE*cDwZT^;b1dI6MB;9p@ulqoxfgg`&&#ZJa@JH zp1XmFY|DFZ3M20CWX*>sx856(xzm*c^n<7PNxt-st=?HNhIv<_rK_NgBxV}*k3x`sU4>DE3lV4hD2q;E%(e>4g)`O2 zuS5BT@F!^Hm+0mVGJn#6LovZ=f@0#nOWtZgX>?h?oi)>BL{6t>pWb$$ zNw-E8>Tz6Gca->IX(rfC2h+uIk|W>^tCzA&6s{GeO?zdOn3Q;|Wjq3*?#htqP*mQL z;Ci*={oCC^c`dUCmY9C4B@@F7)6?A+`_r`B5qn|TjzI5I<>eGwos@3aHl|rvY?P2N zbb>g^Z#-$LNU{Y4z-^;m0g3y_>421c{lYgeTNqc^3jAS8 zLG+mCHwnD7P#=~sgqS%*y~E}f%O(GtROuNHw1X0oZ0`OEPBT621yjau7+~@gp?Y|y zbu&1r0_{HvM26;yGM_1#9yU#0^F~Y#

    iZ>fF*(>=vN-Tb{8&z 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�j8R8Q7C;N;~-8*sj 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Ⓢw-4RE!P@iC+j#1L(`l}-2 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 HuKa%il+r>+ literal 0 HcmV?d00001 diff --git a/tests/CMakeLists.txt b/tests/CMakeLists.txt index 1c73de0a3..6757ad1cc 100644 --- a/tests/CMakeLists.txt +++ b/tests/CMakeLists.txt @@ -28,10 +28,14 @@ llama_build_executable(test-tokenizer-0-falcon.cpp) llama_test_executable (test-tokenizer-0-falcon test-tokenizer-0-falcon.cpp ${CMAKE_CURRENT_SOURCE_DIR}/../models/ggml-vocab-falcon.gguf) llama_build_executable(test-tokenizer-1-llama.cpp) llama_test_executable (test-tokenizer-1-llama test-tokenizer-1-llama.cpp ${CMAKE_CURRENT_SOURCE_DIR}/../models/ggml-vocab-llama.gguf) +llama_test_executable(test-tokenizer-1-baichuan test-tokenizer-1-llama.cpp ${CMAKE_CURRENT_SOURCE_DIR}/../models/ggml-vocab-baichuan.gguf) llama_build_executable(test-tokenizer-1-bpe.cpp) llama_test_executable (test-tokenizer-1-falcon test-tokenizer-1-bpe.cpp ${CMAKE_CURRENT_SOURCE_DIR}/../models/ggml-vocab-falcon.gguf) llama_test_executable(test-tokenizer-1-aquila test-tokenizer-1-bpe.cpp ${CMAKE_CURRENT_SOURCE_DIR}/../models/ggml-vocab-aquila.gguf) llama_test_executable(test-tokenizer-1-mpt test-tokenizer-1-bpe.cpp ${CMAKE_CURRENT_SOURCE_DIR}/../models/ggml-vocab-mpt.gguf) +llama_test_executable(test-tokenizer-1-gpt-neox test-tokenizer-1-bpe.cpp ${CMAKE_CURRENT_SOURCE_DIR}/../models/ggml-vocab-gpt-neox.gguf) +llama_test_executable(test-tokenizer-1-refact test-tokenizer-1-bpe.cpp ${CMAKE_CURRENT_SOURCE_DIR}/../models/ggml-vocab-refact.gguf) +llama_test_executable(test-tokenizer-1-starcoder test-tokenizer-1-bpe.cpp ${CMAKE_CURRENT_SOURCE_DIR}/../models/ggml-vocab-starcoder.gguf) llama_build_and_test_executable(test-grammar-parser.cpp) llama_build_and_test_executable(test-llama-grammar.cpp) llama_build_and_test_executable(test-grad0.cpp) # SLOW diff --git a/tests/test-tokenizer-1-bpe.cpp b/tests/test-tokenizer-1-bpe.cpp index 85a59a14d..386530f23 100644 --- a/tests/test-tokenizer-1-bpe.cpp +++ b/tests/test-tokenizer-1-bpe.cpp @@ -91,9 +91,19 @@ int main(int argc, char **argv) { } } } - // TODO: why doesn't this work for the full range of Unicodes? + // Restrict to assigned unicode planes // for (uint32_t cp = 0x10000; cp < 0x0010ffff; ++cp) { - for (uint32_t cp = 0x10000; cp < 0x00080000; ++cp) { + for (uint32_t cp = 0x10000; cp < 0x00040000; ++cp) { + std::string str = codepoint_to_utf8(cp); + std::vector tokens = llama_tokenize(ctx, str, false); + std::string check = llama_detokenize_bpe(ctx, tokens); + if (str != check) { + fprintf(stderr, "%s : error: codepoint %x detokenizes to '%s'(%zu) instead of '%s'(%zu)\n", + __func__, cp, check.c_str(), check.length(), str.c_str(), str.length()); + return 4; + } + } + for (uint32_t cp = 0x000e0000; cp < 0x0010ffff; ++cp) { std::string str = codepoint_to_utf8(cp); std::vector tokens = llama_tokenize(ctx, str, false); std::string check = llama_detokenize_bpe(ctx, tokens); @@ -103,7 +113,6 @@ int main(int argc, char **argv) { return 4; } } - llama_free_model(model); llama_free(ctx); From 2b4ea35e56792064598e922e46d081e02bc96b94 Mon Sep 17 00:00:00 2001 From: Georgi Gerganov Date: Tue, 24 Oct 2023 16:48:37 +0300 Subject: [PATCH 42/48] cuda : add batched cuBLAS GEMM for faster attention (#3749) * cmake : add helper for faster CUDA builds * batched : add NGL arg * ggml : skip nops in compute_forward * cuda : minor indentation * cuda : batched cuBLAS GEMMs for src0 F16 and src1 F32 (attention ops) * Apply suggestions from code review These changes plus: ```c++ #define cublasGemmBatchedEx hipblasGemmBatchedEx ``` are needed to compile with ROCM. I haven't done performance testing, but it seems to work. I couldn't figure out how to propose a change for lines outside what the pull changed, also this is the first time trying to create a multi-part review so please forgive me if I mess something up. * cuda : add ROCm / hipBLAS cublasGemmBatchedEx define * cuda : add cublasGemmStridedBatchedEx for non-broadcasted cases * cuda : reduce mallocs in cublasGemmBatchedEx branch * cuda : add TODO for calling cublas from kernel + using mem pool --------- Co-authored-by: Kerfuffle <44031344+KerfuffleV2@users.noreply.github.com> --- CMakeLists.txt | 1 + examples/batched/batched.cpp | 11 +- ggml-cuda.cu | 190 +++++++++++++++++++++++++++++++++-- ggml.c | 4 + 4 files changed, 193 insertions(+), 13 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index 6af42a6c2..202f26049 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -331,6 +331,7 @@ if (LLAMA_CUBLAS) set(CMAKE_CUDA_ARCHITECTURES "60;61;70") # needed for f16 CUDA intrinsics else() set(CMAKE_CUDA_ARCHITECTURES "52;61;70") # lowest CUDA 12 standard + lowest for integer intrinsics + #set(CMAKE_CUDA_ARCHITECTURES "") # use this to compile much faster, but only F16 models work endif() endif() message(STATUS "Using CUDA architectures: ${CMAKE_CUDA_ARCHITECTURES}") diff --git a/examples/batched/batched.cpp b/examples/batched/batched.cpp index 75856a81f..22a4265df 100644 --- a/examples/batched/batched.cpp +++ b/examples/batched/batched.cpp @@ -11,7 +11,7 @@ int main(int argc, char ** argv) { gpt_params params; if (argc == 1 || argv[1][0] == '-') { - printf("usage: %s MODEL_PATH [PROMPT] [PARALLEL] [LEN]\n" , argv[0]); + printf("usage: %s MODEL_PATH [PROMPT] [PARALLEL] [LEN] [NGL]\n" , argv[0]); return 1 ; } @@ -21,6 +21,9 @@ int main(int argc, char ** argv) { // total length of the sequences including the prompt int n_len = 32; + // number of layers to offload to the GPU + int n_gpu_layers = 0; + if (argc >= 2) { params.model = argv[1]; } @@ -37,6 +40,10 @@ int main(int argc, char ** argv) { n_len = std::atoi(argv[4]); } + if (argc >= 6) { + n_gpu_layers = std::atoi(argv[5]); + } + if (params.prompt.empty()) { params.prompt = "Hello my name is"; } @@ -49,7 +56,7 @@ int main(int argc, char ** argv) { llama_model_params model_params = llama_model_default_params(); - // model_params.n_gpu_layers = 99; // offload all layers to the GPU + model_params.n_gpu_layers = n_gpu_layers; llama_model * model = llama_load_model_from_file(params.model.c_str(), model_params); diff --git a/ggml-cuda.cu b/ggml-cuda.cu index 654d3632f..db053e3b8 100644 --- a/ggml-cuda.cu +++ b/ggml-cuda.cu @@ -29,6 +29,8 @@ #define __shfl_xor_sync(mask, var, laneMask, width) __shfl_xor(var, laneMask, width) #define cublasCreate hipblasCreate #define cublasGemmEx hipblasGemmEx +#define cublasGemmBatchedEx hipblasGemmBatchedEx +#define cublasGemmStridedBatchedEx hipblasGemmStridedBatchedEx #define cublasHandle_t hipblasHandle_t #define cublasSetMathMode(handle, mode) CUBLAS_STATUS_SUCCESS #define cublasSetStream hipblasSetStream @@ -4326,13 +4328,13 @@ static __global__ void mul_mat_vec_nc_f16_f32( // nc == non-contiguous const half * x = (const half *) vx; - const int row_x = blockDim.y*blockIdx.y + threadIdx.y; - const int channel = blockDim.z*blockIdx.z + threadIdx.z; + const int row_x = blockDim.y*blockIdx.y + threadIdx.y; + const int channel = blockDim.z*blockIdx.z + threadIdx.z; const int channel_x = channel / channel_x_divisor; - const int nrows_y = ncols_x; + const int nrows_y = ncols_x; const int nrows_dst = nrows_x; - const int row_dst = row_x; + const int row_dst = row_x; const int idst = channel*nrows_dst + row_dst; @@ -4345,13 +4347,13 @@ static __global__ void mul_mat_vec_nc_f16_f32( // nc == non-contiguous break; } - const int ix = channel_x*channel_stride_x + row_x*row_stride_x + col_x; - const float xi = __half2float(x[ix]); - const int row_y = col_x; + const int ix = channel_x*channel_stride_x + row_x*row_stride_x + col_x; const int iy = channel*nrows_y + row_y; + const float xi = __half2float(x[ix]); + tmp += xi * y[iy]; } @@ -7013,7 +7015,8 @@ static void ggml_cuda_mul_mat_vec_p021(const ggml_tensor * src0, const ggml_tens } static void ggml_cuda_mul_mat_vec_nc(const ggml_tensor * src0, const ggml_tensor * src1, ggml_tensor * dst){ - GGML_ASSERT(!ggml_is_contiguous(src0) && ggml_is_contiguous(src1)); + GGML_ASSERT(!ggml_is_transposed(src0)); + GGML_ASSERT(!ggml_is_transposed(src1)); GGML_ASSERT(!ggml_is_permuted(src0)); GGML_ASSERT(src0->backend != GGML_BACKEND_GPU_SPLIT); GGML_ASSERT(src0->type == GGML_TYPE_F16); @@ -7023,11 +7026,11 @@ static void ggml_cuda_mul_mat_vec_nc(const ggml_tensor * src0, const ggml_tensor const int64_t ne01 = src0->ne[1]; const int64_t ne02 = src0->ne[2]; - const int64_t ne12 = src1->ne[2]; - const int64_t nb01 = src0->nb[1]; const int64_t nb02 = src0->nb[2]; + const int64_t ne12 = src1->ne[2]; + CUDA_CHECK(ggml_cuda_set_device(g_main_device)); cudaStream_t main_stream = g_cudaStreams[g_main_device][0]; @@ -7046,6 +7049,159 @@ static void ggml_cuda_mul_mat_vec_nc(const ggml_tensor * src0, const ggml_tensor ggml_mul_mat_vec_nc_f16_f32_cuda(src0_ddq, src1_ddf, dst_ddf, ne00, ne01, row_stride_x, ne02, ne12, channel_stride_x, main_stream); } +static void ggml_cuda_mul_mat_mat_batched_cublas(const ggml_tensor * src0, const ggml_tensor * src1, ggml_tensor * dst){ + GGML_ASSERT(!ggml_is_transposed(src0)); + GGML_ASSERT(!ggml_is_transposed(src1)); + GGML_ASSERT(src0->backend != GGML_BACKEND_GPU_SPLIT); + GGML_ASSERT(src0->type == GGML_TYPE_F16); + GGML_ASSERT(src1->type == GGML_TYPE_F32); + + const int64_t ne00 = src0->ne[0]; GGML_UNUSED(ne00); + const int64_t ne01 = src0->ne[1]; + const int64_t ne02 = src0->ne[2]; + const int64_t ne03 = src0->ne[3]; + + const int64_t nb01 = src0->nb[1]; + const int64_t nb02 = src0->nb[2]; GGML_UNUSED(nb02); + const int64_t nb03 = src0->nb[3]; GGML_UNUSED(nb03); + + const int64_t ne10 = src1->ne[0]; + const int64_t ne11 = src1->ne[1]; + const int64_t ne12 = src1->ne[2]; + const int64_t ne13 = src1->ne[3]; + + const int64_t nb11 = src1->nb[1]; + const int64_t nb12 = src1->nb[2]; GGML_UNUSED(nb12); + const int64_t nb13 = src1->nb[3]; GGML_UNUSED(nb13); + + const int64_t ne1 = ggml_nelements(src1); + const int64_t ne = ggml_nelements(dst); + + CUDA_CHECK(ggml_cuda_set_device(g_main_device)); + cudaStream_t main_stream = g_cudaStreams[g_main_device][0]; + + int id; + CUDA_CHECK(cudaGetDevice(&id)); + CUBLAS_CHECK(cublasSetStream(g_cublas_handles[id], main_stream)); + + ggml_tensor_extra_gpu * src0_extra = (ggml_tensor_extra_gpu *) src0->extra; + void * src0_ddq = src0_extra->data_device[g_main_device]; + half * src0_as_f16 = (half *) src0_ddq; + + ggml_tensor_extra_gpu * src1_extra = (ggml_tensor_extra_gpu *) src1->extra; + float * src1_ddf = (float *) src1_extra->data_device[g_main_device]; + + ggml_tensor_extra_gpu * dst_extra = (ggml_tensor_extra_gpu *) dst->extra; + float * dst_ddf = (float *) dst_extra->data_device[g_main_device]; + + // convert src1 to fp16 + const to_fp16_cuda_t to_fp16_cuda = ggml_get_to_fp16_cuda(src1->type); + GGML_ASSERT(to_fp16_cuda != nullptr); + + size_t src1_as = 0; + half * src1_as_f16 = (half *) ggml_cuda_pool_malloc(ne1 * sizeof(half), &src1_as); + to_fp16_cuda(src1_ddf, src1_as_f16, ne1, main_stream); + + size_t dst_as = 0; + half * dst_f16 = (half *) ggml_cuda_pool_malloc(ne * sizeof(half), &dst_as); + + GGML_ASSERT(ne12 % ne02 == 0); + GGML_ASSERT(ne13 % ne03 == 0); + + // broadcast factors + const int64_t r2 = ne12/ne02; + const int64_t r3 = ne13/ne03; + + const half alpha_f16 = 1.0f; + const half beta_f16 = 0.0f; + +#if 0 + // use cublasGemmEx + { + for (int i13 = 0; i13 < ne13; ++i13) { + for (int i12 = 0; i12 < ne12; ++i12) { + int i03 = i13 / r3; + int i02 = i12 / r2; + + CUBLAS_CHECK( + cublasGemmEx(g_cublas_handles[id], CUBLAS_OP_T, CUBLAS_OP_N, + ne01, ne11, ne10, + &alpha_f16, (const char *) src0_as_f16 + i02*src0->nb[2] + i03*src0->nb[3] , CUDA_R_16F, nb01/sizeof(half), + (const char *) src1_as_f16 + i12*src1->nb[2]/2 + i13*src1->nb[3]/2, CUDA_R_16F, nb11/sizeof(float), + &beta_f16, ( char *) dst_f16 + i12* dst->nb[2]/2 + i13* dst->nb[3]/2, CUDA_R_16F, ne01, + CUBLAS_COMPUTE_16F, + CUBLAS_GEMM_DEFAULT_TENSOR_OP)); + } + } + } +#else + if (r2 == 1 && r3 == 1 && src0->nb[2]*src0->ne[2] == src0->nb[3] && src1->nb[2]*src1->ne[2] == src1->nb[3]) { + // there is no broadcast and src0, src1 are contiguous across dims 2, 3 + // use cublasGemmStridedBatchedEx + CUBLAS_CHECK( + cublasGemmStridedBatchedEx(g_cublas_handles[id], CUBLAS_OP_T, CUBLAS_OP_N, + ne01, ne11, ne10, + &alpha_f16, (const char *) src0_as_f16, CUDA_R_16F, nb01/sizeof(half), src0->nb[2]/sizeof(half), // strideA + (const char *) src1_as_f16, CUDA_R_16F, nb11/sizeof(float), src1->nb[2]/sizeof(float), // strideB + &beta_f16, ( char *) dst_f16, CUDA_R_16F, ne01, dst->nb[2]/sizeof(float), // strideC + ne12*ne13, + CUBLAS_COMPUTE_16F, + CUBLAS_GEMM_DEFAULT_TENSOR_OP)); + } else { + // use cublasGemmBatchedEx + // TODO: https://github.com/ggerganov/llama.cpp/pull/3749#discussion_r1369997000 + const int ne23 = ne12*ne13; + + // TODO: avoid this alloc + void ** ptrs = (void **) malloc(3*ne23*sizeof(void *)); + + for (int i13 = 0; i13 < ne13; ++i13) { + for (int i12 = 0; i12 < ne12; ++i12) { + int i03 = i13 / r3; + int i02 = i12 / r2; + + ptrs[0*ne23 + i12 + i13*ne12] = (char *) src0_as_f16 + i02*src0->nb[2] + i03*src0->nb[3]; + ptrs[1*ne23 + i12 + i13*ne12] = (char *) src1_as_f16 + i12*src1->nb[2]/2 + i13*src1->nb[3]/2; + ptrs[2*ne23 + i12 + i13*ne12] = (char *) dst_f16 + i12* dst->nb[2]/2 + i13* dst->nb[3]/2; + } + } + + // allocate device memory for pointers + void ** ptrs_as = nullptr; + CUDA_CHECK(cudaMalloc(&ptrs_as, 3*ne23*sizeof(void *))); + + // TODO: this does not work for some reason -- not sure why? + //size_t ptrs_s = 0; + //ptrs_as = (void **) ggml_cuda_pool_malloc(3*ne23*sizeof(void *), &ptrs_s); + + // copy pointers to device + CUDA_CHECK(cudaMemcpy(ptrs_as, ptrs, 3*ne23*sizeof(void *), cudaMemcpyHostToDevice)); + + free(ptrs); + + CUBLAS_CHECK( + cublasGemmBatchedEx(g_cublas_handles[id], CUBLAS_OP_T, CUBLAS_OP_N, + ne01, ne11, ne10, + &alpha_f16, (const void **) (ptrs_as + 0*ne23), CUDA_R_16F, nb01/sizeof(half), + (const void **) (ptrs_as + 1*ne23), CUDA_R_16F, nb11/sizeof(float), + &beta_f16, ( void **) (ptrs_as + 2*ne23), CUDA_R_16F, ne01, + ne23, + CUBLAS_COMPUTE_16F, + CUBLAS_GEMM_DEFAULT_TENSOR_OP)); + + // free device memory for pointers + CUDA_CHECK(cudaFree(ptrs_as)); + //ggml_cuda_pool_free(ptrs_as, ptrs_s); + } +#endif + + const to_fp32_cuda_t to_fp32_cuda = ggml_get_to_fp32_cuda(GGML_TYPE_F16); + to_fp32_cuda(dst_f16, dst_ddf, ne, main_stream); + + ggml_cuda_pool_free(src1_as_f16, src1_as); + ggml_cuda_pool_free(dst_f16, dst_as); +} + static void ggml_cuda_mul_mat(const ggml_tensor * src0, const ggml_tensor * src1, ggml_tensor * dst) { bool all_on_device = (src0->backend == GGML_BACKEND_GPU || src0->backend == GGML_BACKEND_GPU_SPLIT) && src1->backend == GGML_BACKEND_GPU && dst->backend == GGML_BACKEND_GPU; @@ -7058,10 +7214,22 @@ static void ggml_cuda_mul_mat(const ggml_tensor * src0, const ggml_tensor * src1 } } + // debug helpers + //printf("src0: %8d %8d %8d %8d\n", src0->ne[0], src0->ne[1], src0->ne[2], src0->ne[3]); + //printf(" %8d %8d %8d %8d\n", src0->nb[0], src0->nb[1], src0->nb[2], src0->nb[3]); + //printf("src1: %8d %8d %8d %8d\n", src1->ne[0], src1->ne[1], src1->ne[2], src1->ne[3]); + //printf(" %8d %8d %8d %8d\n", src1->nb[0], src1->nb[1], src1->nb[2], src1->nb[3]); + //printf("src0 is contiguous %d, transposed %d, type = %s, name = %s\n", ggml_is_contiguous(src0), ggml_is_transposed(src0), ggml_type_name(src0->type), src0->name); + //printf("src1 is contiguous %d, transposed %d, type = %s, name = %s\n", ggml_is_contiguous(src1), ggml_is_transposed(src1), ggml_type_name(src1->type), src1->name); + if (all_on_device && src0->type == GGML_TYPE_F16 && ggml_is_permuted(src0) && ggml_is_permuted(src1) && src1->ne[1] == 1) { + // KQ ggml_cuda_mul_mat_vec_p021(src0, src1, dst); - } else if (all_on_device && !ggml_is_contiguous(src0) && ggml_is_contiguous(src1) && src1->ne[1] == 1) { + } else if (all_on_device && src0->type == GGML_TYPE_F16 && !ggml_is_contiguous(src0) && !ggml_is_transposed(src1) && src1->ne[1] == 1) { + // KQV ggml_cuda_mul_mat_vec_nc(src0, src1, dst); + } else if (all_on_device && src0->type == GGML_TYPE_F16 && src1->type == GGML_TYPE_F32 && !ggml_is_transposed(src0) && !ggml_is_transposed(src1) && src1->ne[2]*src1->ne[3] > 1) { + ggml_cuda_mul_mat_mat_batched_cublas(src0, src1, dst); } else if (src0->type == GGML_TYPE_F32) { ggml_cuda_op_mul_mat(src0, src1, dst, ggml_cuda_op_mul_mat_cublas, false); } else if (ggml_is_quantized(src0->type) || src0->type == GGML_TYPE_F16) { diff --git a/ggml.c b/ggml.c index 49f3b7aba..17f0ce487 100644 --- a/ggml.c +++ b/ggml.c @@ -16602,6 +16602,10 @@ static void ggml_compute_forward_cross_entropy_loss_back( static void ggml_compute_forward(struct ggml_compute_params * params, struct ggml_tensor * tensor) { GGML_ASSERT(params); + if (tensor->op == GGML_OP_NONE) { + return; + } + #ifdef GGML_USE_CUBLAS bool skip_cpu = ggml_cuda_compute_forward(params, tensor); if (skip_cpu) { From abd21fc99f1d35e2081e4c01dc09c71a86bf3c5a Mon Sep 17 00:00:00 2001 From: John Smith <67539080+kingsidelee@users.noreply.github.com> Date: Wed, 25 Oct 2023 01:48:45 +0800 Subject: [PATCH 43/48] cmake : add missed dependencies (#3763) --- examples/main-cmake-pkg/CMakeLists.txt | 2 ++ 1 file changed, 2 insertions(+) diff --git a/examples/main-cmake-pkg/CMakeLists.txt b/examples/main-cmake-pkg/CMakeLists.txt index 908131884..cb00edbbb 100644 --- a/examples/main-cmake-pkg/CMakeLists.txt +++ b/examples/main-cmake-pkg/CMakeLists.txt @@ -16,6 +16,8 @@ add_library(common OBJECT ${_common_path}/console.cpp ${_common_path}/grammar-parser.h ${_common_path}/grammar-parser.cpp + ${_common_path}/sampling.h + ${_common_path}/sampling.cpp ) # WARNING: because build-info.h is auto-generated, it will only From b2f7e04bd312eaf97eee0523aa09d950d585626b Mon Sep 17 00:00:00 2001 From: Georgi Gerganov Date: Tue, 24 Oct 2023 21:51:20 +0300 Subject: [PATCH 44/48] sync : ggml (conv ops + cuda MSVC fixes) (#3765) ggml-ci --- ggml-cuda.cu | 10 +- ggml.c | 438 +++++++++++++++++++++++++++++++++++++++++---------- ggml.h | 15 +- 3 files changed, 369 insertions(+), 94 deletions(-) diff --git a/ggml-cuda.cu b/ggml-cuda.cu index db053e3b8..d1e874b6c 100644 --- a/ggml-cuda.cu +++ b/ggml-cuda.cu @@ -5664,10 +5664,10 @@ void ggml_init_cublas() { GGML_ASSERT(g_device_count <= GGML_CUDA_MAX_DEVICES); int64_t total_vram = 0; fprintf(stderr, "%s: found %d " GGML_CUDA_NAME " devices:\n", __func__, g_device_count); - for (int64_t id = 0; id < g_device_count; ++id) { + for (int id = 0; id < g_device_count; ++id) { cudaDeviceProp prop; CUDA_CHECK(cudaGetDeviceProperties(&prop, id)); - fprintf(stderr, " Device %ld: %s, compute capability %d.%d\n", id, prop.name, prop.major, prop.minor); + fprintf(stderr, " Device %d: %s, compute capability %d.%d\n", id, prop.name, prop.major, prop.minor); g_tensor_split[id] = total_vram; total_vram += prop.totalGlobalMem; @@ -5677,15 +5677,15 @@ void ggml_init_cublas() { g_compute_capabilities[id] = 100*prop.major + 10*prop.minor; #endif // defined(GGML_USE_HIPBLAS) && defined(__HIP_PLATFORM_AMD__) } - for (int64_t id = 0; id < g_device_count; ++id) { + for (int id = 0; id < g_device_count; ++id) { g_tensor_split[id] /= total_vram; } - for (int64_t id = 0; id < g_device_count; ++id) { + for (int id = 0; id < g_device_count; ++id) { CUDA_CHECK(ggml_cuda_set_device(id)); // create cuda streams - for (int64_t is = 0; is < MAX_STREAMS; ++is) { + for (int is = 0; is < MAX_STREAMS; ++is) { CUDA_CHECK(cudaStreamCreateWithFlags(&g_cudaStreams[id][is], cudaStreamNonBlocking)); } diff --git a/ggml.c b/ggml.c index 17f0ce487..6f66bab05 100644 --- a/ggml.c +++ b/ggml.c @@ -571,7 +571,6 @@ int64_t ggml_cycles_per_ms(void) { #define ggml_perf_cycles_per_ms() 0 #endif - // // cache line // @@ -1828,7 +1827,6 @@ ggml_type_traits_t ggml_internal_get_type_traits(enum ggml_type type) { return type_traits[type]; } - // // simd mappings // @@ -4057,16 +4055,17 @@ static const char * GGML_OP_NAME[GGML_OP_COUNT] = { "ALIBI", "CLAMP", "CONV_1D", + "CONV_1D_STAGE_0", + "CONV_1D_STAGE_1", "CONV_TRANSPOSE_1D", "CONV_2D", + "CONV_2D_STAGE_0", + "CONV_2D_STAGE_1", "CONV_TRANSPOSE_2D", "POOL_1D", "POOL_2D", "UPSCALE", - "CONV_1D_STAGE_0", - "CONV_1D_STAGE_1", - "FLASH_ATTN", "FLASH_FF", "FLASH_ATTN_BACK", @@ -4092,7 +4091,7 @@ static const char * GGML_OP_NAME[GGML_OP_COUNT] = { "CROSS_ENTROPY_LOSS_BACK", }; -static_assert(GGML_OP_COUNT == 71, "GGML_OP_COUNT != 71"); +static_assert(GGML_OP_COUNT == 73, "GGML_OP_COUNT != 73"); static const char * GGML_OP_SYMBOL[GGML_OP_COUNT] = { "none", @@ -4143,16 +4142,17 @@ static const char * GGML_OP_SYMBOL[GGML_OP_COUNT] = { "alibi(x)", "clamp(x)", "conv_1d(x)", + "conv_1d_stage_0(x)", + "conv_1d_stage_1(x)", "conv_transpose_1d(x)", "conv_2d(x)", + "conv_2d_stage_0(x)", + "conv_2d_stage_1(x)", "conv_transpose_2d(x)", "pool_1d(x)", "pool_2d(x)", "upscale(x)", - "conv_1d_stage_0(x)", - "conv_1d_stage_1(x)", - "flash_attn(x)", "flash_ff(x)", "flash_attn_back(x)", @@ -4178,7 +4178,7 @@ static const char * GGML_OP_SYMBOL[GGML_OP_COUNT] = { "cross_entropy_loss_back(x,y)", }; -static_assert(GGML_OP_COUNT == 71, "GGML_OP_COUNT != 71"); +static_assert(GGML_OP_COUNT == 73, "GGML_OP_COUNT != 73"); static_assert(GGML_OP_POOL_COUNT == 2, "GGML_OP_POOL_COUNT != 2"); @@ -4209,8 +4209,10 @@ static void ggml_setup_op_has_task_pass(void) { p[GGML_OP_CONV_1D ] = true; p[GGML_OP_CONV_1D_STAGE_0 ] = true; p[GGML_OP_CONV_1D_STAGE_1 ] = true; - p[GGML_OP_CONV_2D ] = true; p[GGML_OP_CONV_TRANSPOSE_1D ] = true; + p[GGML_OP_CONV_2D ] = true; + p[GGML_OP_CONV_2D_STAGE_0 ] = true; + p[GGML_OP_CONV_2D_STAGE_1 ] = true; p[GGML_OP_CONV_TRANSPOSE_2D ] = true; p[GGML_OP_FLASH_ATTN_BACK ] = true; p[GGML_OP_CROSS_ENTROPY_LOSS ] = true; @@ -5954,7 +5956,6 @@ struct ggml_tensor * ggml_sqrt_inplace( return ggml_sqrt_impl(ctx, a, true); } - // ggml_log static struct ggml_tensor * ggml_log_impl( @@ -6008,7 +6009,6 @@ struct ggml_tensor * ggml_sum( return result; } - // ggml_sum_rows struct ggml_tensor * ggml_sum_rows( @@ -6640,7 +6640,6 @@ struct ggml_tensor * ggml_set_2d_inplace( return ggml_set_impl(ctx, a, b, nb1, a->nb[2], a->nb[3], offset, false); } - // ggml_cpy static struct ggml_tensor * ggml_cpy_impl( @@ -6720,7 +6719,6 @@ struct ggml_tensor * ggml_cont_inplace( return ggml_cont_impl(ctx, a, true); } - // make contiguous, with new shape GGML_API struct ggml_tensor * ggml_cont_1d( struct ggml_context * ctx, @@ -7173,7 +7171,6 @@ struct ggml_tensor * ggml_diag( return result; } - // ggml_diag_mask_inf static struct ggml_tensor * ggml_diag_mask_inf_impl( @@ -7285,7 +7282,6 @@ struct ggml_tensor * ggml_soft_max_inplace( return ggml_soft_max_impl(ctx, a, true); } - // ggml_soft_max_back static struct ggml_tensor * ggml_soft_max_back_impl( @@ -7702,7 +7698,11 @@ GGML_API struct ggml_tensor * ggml_conv_transpose_1d( // ggml_conv_2d -struct ggml_tensor * ggml_conv_2d( +// im2col: [N, IC, IH, IW] => [N, OH, OW, IC*KH*KW] +// a: [OC,IC, KH, KW] +// b: [N, IC, IH, IW] +// result: [N, OH, OW, IC*KH*KW] +static struct ggml_tensor * ggml_conv_2d_stage_0( struct ggml_context * ctx, struct ggml_tensor * a, struct ggml_tensor * b, @@ -7721,17 +7721,21 @@ struct ggml_tensor * ggml_conv_2d( is_node = true; } + const int64_t OH = ggml_calc_conv_output_size(b->ne[1], a->ne[1], s1, p1, d1); + const int64_t OW = ggml_calc_conv_output_size(b->ne[0], a->ne[0], s0, p0, d0); + const int64_t ne[4] = { - ggml_calc_conv_output_size(b->ne[0], a->ne[0], s0, p0, d0), - ggml_calc_conv_output_size(b->ne[1], a->ne[1], s1, p1, d1), - a->ne[3], b->ne[3], + a->ne[2] * a->ne[1] * a->ne[0], + OW, + OH, + b->ne[3], }; - struct ggml_tensor * result = ggml_new_tensor(ctx, GGML_TYPE_F32, 4, ne); + struct ggml_tensor * result = ggml_new_tensor(ctx, GGML_TYPE_F16, 4, ne); int32_t params[] = { s0, s1, p0, p1, d0, d1 }; ggml_set_op_params(result, params, sizeof(params)); - result->op = GGML_OP_CONV_2D; + result->op = GGML_OP_CONV_2D_STAGE_0; result->grad = is_node ? ggml_dup_tensor(ctx, result) : NULL; result->src[0] = a; result->src[1] = b; @@ -7740,8 +7744,61 @@ struct ggml_tensor * ggml_conv_2d( } -// ggml_conv_2d_sk_p0 +// gemm: [N, OC, OH, OW] = [OC, IC * KH * KW] x [N*OH*OW, IC * KH * KW] +// a: [OC, IC, KH, KW] +// b: [N, OH, OW, IC * KH * KW] +// result: [N, OC, OH, OW] +static struct ggml_tensor * ggml_conv_2d_stage_1( + struct ggml_context * ctx, + struct ggml_tensor * a, + struct ggml_tensor * b) { + bool is_node = false; + + if (a->grad || b->grad) { + GGML_ASSERT(false); // TODO: implement backward + is_node = true; + } + + const int64_t ne[4] = { + b->ne[1], + b->ne[2], + a->ne[3], + b->ne[3], + }; + struct ggml_tensor * result = ggml_new_tensor(ctx, GGML_TYPE_F32, 4, ne); + + result->op = GGML_OP_CONV_2D_STAGE_1; + result->grad = is_node ? ggml_dup_tensor(ctx, result) : NULL; + result->src[0] = a; + result->src[1] = b; + + return result; + +} + +// a: [OC,IC, KH, KW] +// b: [N, IC, IH, IW] +// result: [N, OC, OH, OW] +struct ggml_tensor * ggml_conv_2d( + struct ggml_context * ctx, + struct ggml_tensor * a, + struct ggml_tensor * b, + int s0, + int s1, + int p0, + int p1, + int d0, + int d1) { + + struct ggml_tensor * result = ggml_conv_2d_stage_0(ctx, a, b, s0, s1, p0, p1, d0, d1); // [N, OH, OW, IC * KH * KW] + result = ggml_conv_2d_stage_1(ctx, a, result); + + return result; + +} + +// ggml_conv_2d_sk_p0 struct ggml_tensor * ggml_conv_2d_sk_p0( struct ggml_context * ctx, struct ggml_tensor * a, @@ -8180,7 +8237,6 @@ static struct ggml_tensor * ggml_add_rel_pos_impl( return result; } - struct ggml_tensor * ggml_add_rel_pos( struct ggml_context * ctx, struct ggml_tensor * a, @@ -8625,8 +8681,6 @@ struct ggml_tensor * ggml_map_custom3_inplace( return ggml_map_custom3_impl(ctx, a, b, c, fun, n_tasks, userdata, true); } - - // ggml_cross_entropy_loss struct ggml_tensor * ggml_cross_entropy_loss( @@ -9828,7 +9882,6 @@ static void ggml_compute_forward_add1( } } - // ggml_compute_forward_acc static void ggml_compute_forward_acc_f32( @@ -9968,7 +10021,6 @@ static void ggml_compute_forward_sub_f32( const int i2 = (ir - i3*ne2*ne1)/ne1; const int i1 = (ir - i3*ne2*ne1 - i2*ne1); - #ifdef GGML_USE_ACCELERATE vDSP_vsub( (float *) ((char *) src1->data + i3*nb13 + i2*nb12 + i1*nb11), 1, @@ -10149,7 +10201,6 @@ static void ggml_compute_forward_div_f32( const int i2 = (ir - i3*ne2*ne1)/ne1; const int i1 = (ir - i3*ne2*ne1 - i2*ne1); - #ifdef GGML_USE_ACCELERATE UNUSED(ggml_vec_div_f32); @@ -10287,7 +10338,6 @@ static void ggml_compute_forward_sqrt( } } - // ggml_compute_forward_log static void ggml_compute_forward_log_f32( @@ -12120,7 +12170,6 @@ static void ggml_compute_forward_out_prod_f32( } } - //int64_t t1 = ggml_perf_time_us(); //static int64_t acc = 0; //acc += t1 - t0; @@ -12316,7 +12365,6 @@ static void ggml_compute_forward_scale_f32( const size_t nb1 = dst->nb[1]; - for (int i1 = ir0; i1 < ir1; i1++) { if (dst->data != src0->data) { // src0 is same shape as dst => same indices @@ -12714,7 +12762,6 @@ static void ggml_compute_forward_get_rows_back_f32( } } - static void ggml_compute_forward_get_rows_back( const struct ggml_compute_params * params, const struct ggml_tensor * src0, @@ -13997,6 +14044,7 @@ static void ggml_compute_forward_conv_1d_f32( } } +// TODO: reuse ggml_mul_mat or implement ggml_im2col and remove stage_0 and stage_1 static void gemm_f16_out_f32(int64_t m, int64_t n, int64_t k, ggml_fp16_t * A, ggml_fp16_t * B, @@ -14298,6 +14346,9 @@ static void ggml_compute_forward_conv_transpose_1d_f16_f32( } } + // need to zero dst since we are accumulating into it + memset(dst->data, 0, ggml_nbytes(dst)); + return; } @@ -14370,7 +14421,7 @@ static void ggml_compute_forward_conv_transpose_1d_f32( const float * const src = (float *)((char *) src0->data + i02*nb02 + i01*nb01); float * dst_data = wdata + i01*ne00*ne02; for (int64_t i00 = 0; i00 < ne00; i00++) { - dst_data[i01*ne00*ne02 + i00*ne02 + i02] = src[i00]; + dst_data[i00*ne02 + i02] = src[i00]; } } } @@ -14389,6 +14440,9 @@ static void ggml_compute_forward_conv_transpose_1d_f32( } } + // need to zero dst since we are accumulating into it + memset(dst->data, 0, ggml_nbytes(dst)); + return; } @@ -14450,6 +14504,144 @@ static void ggml_compute_forward_conv_transpose_1d( // ggml_compute_forward_conv_2d +// src0: kernel [OC, IC, KH, KW] +// src1: image [N, IC, IH, IW] +// dst: result [N, OH, OW, IC*KH*KW] +static void ggml_compute_forward_conv_2d_stage_0_f32( + const struct ggml_compute_params * params, + const struct ggml_tensor * src0, + const struct ggml_tensor * src1, + struct ggml_tensor * dst) { + GGML_ASSERT(src0->type == GGML_TYPE_F16); + GGML_ASSERT(src1->type == GGML_TYPE_F32); + GGML_ASSERT( dst->type == GGML_TYPE_F16); + + int64_t t0 = ggml_perf_time_us(); + UNUSED(t0); + + GGML_TENSOR_BINARY_OP_LOCALS; + + const int64_t N = ne13; + const int64_t IC = ne12; + const int64_t IH = ne11; + const int64_t IW = ne10; + + // const int64_t OC = ne03; + // const int64_t IC = ne02; + const int64_t KH = ne01; + const int64_t KW = ne00; + + const int64_t OH = ne2; + const int64_t OW = ne1; + + const int ith = params->ith; + const int nth = params->nth; + + const int32_t s0 = ((const int32_t*)(dst->op_params))[0]; + const int32_t s1 = ((const int32_t*)(dst->op_params))[1]; + const int32_t p0 = ((const int32_t*)(dst->op_params))[2]; + const int32_t p1 = ((const int32_t*)(dst->op_params))[3]; + const int32_t d0 = ((const int32_t*)(dst->op_params))[4]; + const int32_t d1 = ((const int32_t*)(dst->op_params))[5]; + + GGML_ASSERT(nb00 == sizeof(ggml_fp16_t)); + GGML_ASSERT(nb10 == sizeof(float)); + + if (params->type == GGML_TASK_INIT) { + memset(dst->data, 0, ggml_nbytes(dst)); + return; + } + + if (params->type == GGML_TASK_FINALIZE) { + return; + } + + // im2col: [N, IC, IH, IW] => [N, OH, OW, IC*KH*KW] + { + ggml_fp16_t * const wdata = (ggml_fp16_t *) dst->data; + + for (int64_t in = 0; in < N; in++) { + for (int64_t ioh = 0; ioh < OH; ioh++) { + for (int64_t iow = 0; iow < OW; iow++) { + for (int64_t iic = ith; iic < IC; iic+=nth) { + + // micro kernel + ggml_fp16_t * dst_data = wdata + (in*OH*OW + ioh*OW + iow)*(IC*KH*KW); // [IC, KH, KW] + const float * const src_data = (float *)((char *) src1->data + in*nb13 + iic*nb12); // [IH, IW] + + for (int64_t ikh = 0; ikh < KH; ikh++) { + for (int64_t ikw = 0; ikw < KW; ikw++) { + const int64_t iiw = iow*s0 + ikw*d0 - p0; + const int64_t iih = ioh*s1 + ikh*d1 - p1; + + if (!(iih < 0 || iih >= IH || iiw < 0 || iiw >= IW)) { + dst_data[iic*(KH*KW) + ikh*KW + ikw] = GGML_FP32_TO_FP16(src_data[iih*IW + iiw]); + } + } + } + } + } + } + } + } +} + +// gemm: [N, OC, OH, OW] = [OC, IC * KH * KW] x [N*OH*OW, IC * KH * KW] +// src0: [OC, IC, KH, KW] +// src1: [N, OH, OW, IC * KH * KW] +// result: [N, OC, OH, OW] +static void ggml_compute_forward_conv_2d_stage_1_f16( + const struct ggml_compute_params * params, + const struct ggml_tensor * src0, + const struct ggml_tensor * src1, + struct ggml_tensor * dst) { + GGML_ASSERT(src0->type == GGML_TYPE_F16); + GGML_ASSERT(src1->type == GGML_TYPE_F16); + GGML_ASSERT( dst->type == GGML_TYPE_F32); + + int64_t t0 = ggml_perf_time_us(); + UNUSED(t0); + + if (params->type == GGML_TASK_INIT) { + return; + } + + if (params->type == GGML_TASK_FINALIZE) { + return; + } + + GGML_TENSOR_BINARY_OP_LOCALS; + + GGML_ASSERT(nb00 == sizeof(ggml_fp16_t)); + GGML_ASSERT(nb10 == sizeof(ggml_fp16_t)); + GGML_ASSERT(nb0 == sizeof(float)); + + const int N = ne13; + const int OH = ne12; + const int OW = ne11; + + const int OC = ne03; + const int IC = ne02; + const int KH = ne01; + const int KW = ne00; + + const int ith = params->ith; + const int nth = params->nth; + + int64_t m = OC; + int64_t n = OH * OW; + int64_t k = IC * KH * KW; + + // [N, OC, OH, OW] = [OC, IC * KH * KW] x [N*OH*OW, IC * KH * KW] + for (int i = 0; i < N; i++) { + ggml_fp16_t * A = (ggml_fp16_t *)src0->data; // [m, k] + ggml_fp16_t * B = (ggml_fp16_t *)src1->data + i * m * k; // [n, k] + float * C = (float *)dst->data + i * m * n; // [m, n] + + gemm_f16_out_f32(m, n, k, A, B, C, ith, nth); + } +} + static void ggml_compute_forward_conv_2d_f16_f32( const struct ggml_compute_params * params, const struct ggml_tensor * src0, @@ -14462,16 +14654,40 @@ static void ggml_compute_forward_conv_2d_f16_f32( int64_t t0 = ggml_perf_time_us(); UNUSED(t0); - GGML_TENSOR_BINARY_OP_LOCALS; + GGML_TENSOR_BINARY_OP_LOCALS + + // src1: image [N, IC, IH, IW] + // src0: kernel [OC, IC, KH, KW] + // dst: result [N, OC, OH, OW] + // ne12: IC + // ne0: OW + // ne1: OH + // nk0: KW + // nk1: KH + // ne13: N + + const int N = ne13; + const int IC = ne12; + const int IH = ne11; + const int IW = ne10; + + const int OC = ne03; + // const int IC = ne02; + const int KH = ne01; + const int KW = ne00; + + const int OH = ne1; + const int OW = ne0; const int ith = params->ith; const int nth = params->nth; - const int nk0 = ne00; - const int nk1 = ne01; + // const int nk0 = ne00; + // const int nk1 = ne01; // size of the convolution row - the kernel size unrolled across all channels - const int ew0 = nk0*nk1*ne02; + // const int ew0 = nk0*nk1*ne02; + // ew0: IC*KH*KW const int32_t s0 = ((const int32_t*)(dst->op_params))[0]; const int32_t s1 = ((const int32_t*)(dst->op_params))[1]; @@ -14487,24 +14703,27 @@ static void ggml_compute_forward_conv_2d_f16_f32( memset(params->wdata, 0, params->wsize); // prepare source data (src1) + // im2col: [N, IC, IH, IW] => [N*OH*OW, IC*KH*KW] + { ggml_fp16_t * const wdata = (ggml_fp16_t *) params->wdata + 0; - for (int i13 = 0; i13 < ne13; i13++) { - for (int i12 = 0; i12 < ne12; i12++) { - const float * const src = (float *)((char *) src1->data + i13*nb13 + i12*nb12); - ggml_fp16_t * dst_data = wdata + i13*(ne1*ne0*ew0); + for (int in = 0; in < N; in++) { + for (int iic = 0; iic < IC; iic++) { + for (int ioh = 0; ioh < OH; ioh++) { + for (int iow = 0; iow < OW; iow++) { - for (int i1 = 0; i1 < ne1; i1++) { - for (int i0 = 0; i0 < ne0; i0++) { - for (int ik1 = 0; ik1 < nk1; ik1++) { - for (int ik0 = 0; ik0 < nk0; ik0++) { - const int idx0 = i0*s0 + ik0*d0 - p0; - const int idx1 = i1*s1 + ik1*d1 - p1; + // micro kernel + ggml_fp16_t * dst_data = wdata + (in*OH*OW + ioh*OW + iow)*(IC*KH*KW); // [IC, KH, KW] + const float * const src_data = (float *)((char *) src1->data + in*nb13 + iic*nb12); // [IH, IW] - if (!(idx1 < 0 || idx1 >= ne11 || idx0 < 0 || idx0 >= ne10)) { - dst_data[(i1*ne0 + i0)*ew0 + i12*(nk0*nk1) + ik1*nk0 + ik0] = - GGML_FP32_TO_FP16(src[idx1*ne10 + idx0]); + for (int ikh = 0; ikh < KH; ikh++) { + for (int ikw = 0; ikw < KW; ikw++) { + const int iiw = iow*s0 + ikw*d0 - p0; + const int iih = ioh*s1 + ikh*d1 - p1; + + if (!(iih < 0 || iih >= IH || iiw < 0 || iiw >= IW)) { + dst_data[iic*(KH*KW) + ikh*KW + ikw] = GGML_FP32_TO_FP16(src_data[iih*IW + iiw]); } } } @@ -14521,30 +14740,22 @@ static void ggml_compute_forward_conv_2d_f16_f32( return; } - // total patches in dst - const int np = ne2; - - // patches per thread - const int dp = (np + nth - 1)/nth; - - // patch range for this thread - const int ip0 = dp*ith; - const int ip1 = MIN(ip0 + dp, np); - ggml_fp16_t * const wdata = (ggml_fp16_t *) params->wdata + 0; + // wdata: [N*OH*OW, IC*KH*KW] + // dst: result [N, OC, OH, OW] + // src0: kernel [OC, IC, KH, KW] - for (int i3 = 0; i3 < ne3; i3++) { - for (int i2 = ip0; i2 < ip1; i2++) { - float * dst_data = (float *)((char *) dst->data + i3*nb3 + i2*nb2); + int64_t m = OC; + int64_t n = OH * OW; + int64_t k = IC * KH * KW; - for (int i1 = 0; i1 < ne1; ++i1) { - for (int i0 = 0; i0 < ne0; ++i0) { - ggml_vec_dot_f16(ew0, dst_data + i1*ne0 + i0, - (ggml_fp16_t *) ((char *) src0->data + i2*nb03), - (ggml_fp16_t *) wdata + i3*nb3 + (i1*ne0 + i0)*ew0); - } - } - } + // [N, OC, OH, OW] = [OC, IC * KH * KW] x [N*OH*OW, IC * KH * KW] + for (int i = 0; i < N; i++) { + ggml_fp16_t * A = (ggml_fp16_t *)src0->data; // [m, k] + ggml_fp16_t * B = (ggml_fp16_t *)wdata + i * m * k; // [n, k] + float * C = (float *)dst->data + i * m * n; // [m * k] + + gemm_f16_out_f32(m, n, k, A, B, C, ith, nth); } } @@ -14570,6 +14781,48 @@ static void ggml_compute_forward_conv_2d( } } +static void ggml_compute_forward_conv_2d_stage_0( + const struct ggml_compute_params * params, + const struct ggml_tensor * src0, + const struct ggml_tensor * src1, + struct ggml_tensor * dst) { + switch (src0->type) { + case GGML_TYPE_F16: + { + ggml_compute_forward_conv_2d_stage_0_f32(params, src0, src1, dst); + } break; + case GGML_TYPE_F32: + { + GGML_ASSERT(false); + } break; + default: + { + GGML_ASSERT(false); + } break; + } +} + +static void ggml_compute_forward_conv_2d_stage_1( + const struct ggml_compute_params * params, + const struct ggml_tensor * src0, + const struct ggml_tensor * src1, + struct ggml_tensor * dst) { + switch (src0->type) { + case GGML_TYPE_F16: + { + ggml_compute_forward_conv_2d_stage_1_f16(params, src0, src1, dst); + } break; + case GGML_TYPE_F32: + { + GGML_ASSERT(false); + } break; + default: + { + GGML_ASSERT(false); + } break; + } +} + // ggml_compute_forward_conv_transpose_2d static void ggml_compute_forward_conv_transpose_2d( @@ -14628,6 +14881,8 @@ static void ggml_compute_forward_conv_transpose_2d( } } + memset(dst->data, 0, ggml_nbytes(dst)); + return; } @@ -16126,7 +16381,6 @@ static void ggml_compute_forward_add_rel_pos_f32( const int ip0 = dp*ith; const int ip1 = MIN(ip0 + dp, np); - for (int64_t i13 = ip0; i13 < ip1; ++i13) { for (int64_t i12 = 0; i12 < ne12; ++i12) { for (int64_t i11 = 0; i11 < ne11; ++i11) { @@ -16193,7 +16447,6 @@ static void ggml_compute_forward_map_unary_f32( } } - static void ggml_compute_forward_map_unary( const struct ggml_compute_params * params, const struct ggml_tensor * src0, @@ -16241,7 +16494,6 @@ static void ggml_compute_forward_map_binary_f32( } } - static void ggml_compute_forward_map_binary( const struct ggml_compute_params * params, const struct ggml_tensor * src0, @@ -16293,7 +16545,6 @@ static void ggml_compute_forward_map_custom2_f32( fun(dst, a, b); } - // ggml_compute_forward_map_custom3 static void ggml_compute_forward_map_custom3_f32( @@ -16568,7 +16819,6 @@ static void ggml_compute_forward_cross_entropy_loss_back_f32( ggml_vec_sub_f32(nc, ds0, ds0, s1); ggml_vec_scale_f32(nc, ds0, d[0] / (float) nr); - #ifndef NDEBUG for (int i = 0; i < nc; ++i) { assert(!isnan(ds0[i])); @@ -16596,7 +16846,6 @@ static void ggml_compute_forward_cross_entropy_loss_back( } } - ///////////////////////////////// static void ggml_compute_forward(struct ggml_compute_params * params, struct ggml_tensor * tensor) { @@ -16808,6 +17057,14 @@ static void ggml_compute_forward(struct ggml_compute_params * params, struct ggm { ggml_compute_forward_conv_2d(params, tensor->src[0], tensor->src[1], tensor); } break; + case GGML_OP_CONV_2D_STAGE_0: + { + ggml_compute_forward_conv_2d_stage_0(params, tensor->src[0], tensor->src[1], tensor); + } break; + case GGML_OP_CONV_2D_STAGE_1: + { + ggml_compute_forward_conv_2d_stage_1(params, tensor->src[0], tensor->src[1], tensor); + } break; case GGML_OP_CONV_TRANSPOSE_2D: { ggml_compute_forward_conv_transpose_2d(params, tensor->src[0], tensor->src[1], tensor); @@ -17737,11 +17994,19 @@ static void ggml_compute_backward(struct ggml_context * ctx, struct ggml_tensor { GGML_ASSERT(false); // TODO: not implemented } break; + case GGML_OP_CONV_TRANSPOSE_1D: + { + GGML_ASSERT(false); // TODO: not implemented + } break; case GGML_OP_CONV_2D: { GGML_ASSERT(false); // TODO: not implemented } break; - case GGML_OP_CONV_TRANSPOSE_1D: + case GGML_OP_CONV_2D_STAGE_0: + { + GGML_ASSERT(false); // TODO: not implemented + } break; + case GGML_OP_CONV_2D_STAGE_1: { GGML_ASSERT(false); // TODO: not implemented } break; @@ -18670,6 +18935,7 @@ struct ggml_cplan ggml_graph_plan(struct ggml_cgraph * cgraph, int n_threads) { const int64_t ne0 = node->ne[0]; const int64_t ne1 = node->ne[1]; const int64_t ne2 = node->ne[2]; + const int64_t ne3 = node->ne[3]; const int64_t nk = ne00*ne01; const int64_t ew0 = nk * ne02; @@ -18680,7 +18946,8 @@ struct ggml_cplan ggml_graph_plan(struct ggml_cgraph * cgraph, int n_threads) { if (node->src[0]->type == GGML_TYPE_F16 && node->src[1]->type == GGML_TYPE_F32) { - cur = sizeof(ggml_fp16_t)*(ne0*ne1*ew0); + // im2col: [N*OH*OW, IC*KH*KW] + cur = sizeof(ggml_fp16_t)*(ne3*ne0*ne1*ew0); } else if (node->src[0]->type == GGML_TYPE_F32 && node->src[1]->type == GGML_TYPE_F32) { cur = sizeof(float)* (ne10*ne11*ne12); @@ -18690,6 +18957,14 @@ struct ggml_cplan ggml_graph_plan(struct ggml_cgraph * cgraph, int n_threads) { work_size = MAX(work_size, cur); } break; + case GGML_OP_CONV_2D_STAGE_0: + { + n_tasks = n_threads; + } break; + case GGML_OP_CONV_2D_STAGE_1: + { + n_tasks = n_threads; + } break; case GGML_OP_CONV_TRANSPOSE_2D: { n_tasks = n_threads; @@ -19878,7 +20153,6 @@ static enum ggml_opt_result ggml_opt_adam( opt->loss_after = fx; - // check convergence if (fabsf(fx - fx_prev[0])/fx < params.adam.eps_f) { GGML_PRINT_DEBUG("converged\n"); diff --git a/ggml.h b/ggml.h index 16aaf169e..08bff5511 100644 --- a/ggml.h +++ b/ggml.h @@ -401,15 +401,16 @@ extern "C" { GGML_OP_ALIBI, GGML_OP_CLAMP, GGML_OP_CONV_1D, - GGML_OP_CONV_2D, + GGML_OP_CONV_1D_STAGE_0, // internal + GGML_OP_CONV_1D_STAGE_1, // internal GGML_OP_CONV_TRANSPOSE_1D, + GGML_OP_CONV_2D, + GGML_OP_CONV_2D_STAGE_0, // internal + GGML_OP_CONV_2D_STAGE_1, // internal GGML_OP_CONV_TRANSPOSE_2D, GGML_OP_POOL_1D, GGML_OP_POOL_2D, - GGML_OP_CONV_1D_STAGE_0, // internal - GGML_OP_CONV_1D_STAGE_1, // internal - GGML_OP_UPSCALE, // nearest interpolate GGML_OP_FLASH_ATTN, @@ -1020,9 +1021,9 @@ extern "C" { struct ggml_tensor * b, float eps); - // A: n columns, m rows - // B: n columns, p rows (i.e. we transpose it internally) - // result is m columns, p rows + // A: k columns, n rows => [ne03, ne02, n, k] + // B: k columns, m rows (i.e. we transpose it internally) => [ne03 * x, ne02 * y, m, k] + // result is n columns, m rows => [ne03 * x, ne02 * y, m, n] GGML_API struct ggml_tensor * ggml_mul_mat( struct ggml_context * ctx, struct ggml_tensor * a, From 1717521cdb976a2219888b0e5cba36e210eee9df Mon Sep 17 00:00:00 2001 From: Georgi Gerganov Date: Tue, 24 Oct 2023 23:08:20 +0300 Subject: [PATCH 45/48] server : do not block system prompt update (#3767) * server : do not block system prompt update * server : update state machine logic to process system prompts * server : minor --- examples/server/server.cpp | 57 +++++++++++++------------------------- 1 file changed, 20 insertions(+), 37 deletions(-) diff --git a/examples/server/server.cpp b/examples/server/server.cpp index 693f9b773..f52a928c8 100644 --- a/examples/server/server.cpp +++ b/examples/server/server.cpp @@ -454,7 +454,7 @@ struct llama_client_slot } void release() { - if (state == PROCESSING) + if (state == IDLE || state == PROCESSING) { t_token_generation = (ggml_time_us() - t_start_genereration) / 1e3; command = RELEASE; @@ -754,6 +754,7 @@ struct llama_server_context } slot->params.antiprompt.clear(); + const auto &stop = data.find("stop"); if (stop != data.end() && stop->is_array()) { @@ -867,7 +868,7 @@ struct llama_server_context kv_cache_clear(); - for (int32_t i = 0; i < batch.n_tokens; ++i) + for (int i = 0; i < (int) system_tokens.size(); ++i) { llama_batch_add(batch, system_tokens[i], i, { 0 }, false); } @@ -894,16 +895,8 @@ struct llama_server_context { slot.release(); } - wait_all_are_idle(); - all_slots_are_idle = true; - // wait until system prompt load system_need_update = true; - while (system_need_update) - { - std::this_thread::sleep_for(std::chrono::milliseconds(5)); - } - // system prompt loaded, continue } void process_system_prompt_data(const json &sys_props) { @@ -915,26 +908,6 @@ struct llama_server_context { notify_system_prompt_changed(); } - else - { - system_need_update = true; - } - } - - void wait_all_are_idle() { - bool wait = true; - while (wait) - { - wait = false; - for (auto &slot : slots) - { - if (!slot.available()) - { - wait = true; - break; - } - } - } } static size_t find_stopping_strings(const std::string &text, const size_t last_token_size, @@ -965,7 +938,6 @@ struct llama_server_context slot.has_next_token = false; } stop_pos = pos; - } } @@ -1444,7 +1416,7 @@ struct llama_server_context process_tasks(); // update the system prompt wait until all slots are idle state - if (system_need_update) + if (system_need_update && all_slots_are_idle) { LOG_TEE("updating system prompt\n"); update_system_prompt(); @@ -1498,7 +1470,7 @@ struct llama_server_context for (auto & slot : slots) { // release the slot - if (slot.state == PROCESSING && slot.command == RELEASE) + if (slot.command == RELEASE) { slot.state = IDLE; slot.command = NONE; @@ -1509,7 +1481,7 @@ struct llama_server_context continue; } - if (slot.state == IDLE || slot.command == RELEASE) + if (slot.state == IDLE) { continue; } @@ -1530,6 +1502,17 @@ struct llama_server_context { for (auto & slot : slots) { + const bool has_prompt = slot.prompt.is_array() || (slot.prompt.is_string() && !slot.prompt.get().empty()); + + // empty prompt passed -> release the slot and send empty response + if (slot.state == IDLE && slot.command == LOAD_PROMPT && !has_prompt) + { + slot.release(); + slot.print_timings(); + send_final_response(slot); + continue; + } + // need process the prompt if (slot.state == IDLE && slot.command == LOAD_PROMPT) { @@ -1749,8 +1732,8 @@ struct llama_server_context if (!process_token(result, slot)) { slot.release(); - send_final_response(slot); slot.print_timings(); + send_final_response(slot); } slot.i_batch = -1; @@ -2285,7 +2268,7 @@ int main(int argc, char **argv) if (!json_value(data, "stream", false)) { std::string completion_text; task_result result = llama.next_result(task_id); - if(!result.error && result.stop) { + if (!result.error && result.stop) { res.set_content(result.result_json.dump(-1, ' ', false, json::error_handler_t::replace), "application/json"); } else @@ -2312,7 +2295,7 @@ int main(int argc, char **argv) { return false; } - if(result.stop) { + if (result.stop) { break; } } else { From ad939626577cd25b462e8026cc543efb71528472 Mon Sep 17 00:00:00 2001 From: cebtenzzre Date: Tue, 24 Oct 2023 16:10:43 -0400 Subject: [PATCH 46/48] server : add parameter -tb N, --threads-batch N (#3584) (#3768) Co-authored-by: Michael Coppola Co-authored-by: Michael Coppola --- examples/server/server.cpp | 28 +++++++++++++++++++--------- 1 file changed, 19 insertions(+), 9 deletions(-) diff --git a/examples/server/server.cpp b/examples/server/server.cpp index f52a928c8..b4c4d0a20 100644 --- a/examples/server/server.cpp +++ b/examples/server/server.cpp @@ -1749,15 +1749,16 @@ static void server_print_usage(const char *argv0, const gpt_params ¶ms, printf("usage: %s [options]\n", argv0); printf("\n"); printf("options:\n"); - printf(" -h, --help show this help message and exit\n"); - printf(" -v, --verbose verbose output (default: %s)\n", server_verbose ? "enabled" : "disabled"); - printf(" -t N, --threads N number of threads to use during computation (default: %d)\n", params.n_threads); - printf(" -c N, --ctx-size N size of the prompt context (default: %d)\n", params.n_ctx); - printf(" --rope-freq-base N RoPE base frequency (default: loaded from model)\n"); - printf(" --rope-freq-scale N RoPE frequency scaling factor (default: loaded from model)\n"); - printf(" -b N, --batch-size N batch size for prompt processing (default: %d)\n", params.n_batch); - printf(" --memory-f32 use f32 instead of f16 for memory key+value (default: disabled)\n"); - printf(" not recommended: doubles context memory required and no measurable increase in quality\n"); + printf(" -h, --help show this help message and exit\n"); + printf(" -v, --verbose verbose output (default: %s)\n", server_verbose ? "enabled" : "disabled"); + printf(" -t N, --threads N number of threads to use during computation (default: %d)\n", params.n_threads); + printf(" -tb N, --threads-batch N number of threads to use during batch and prompt processing (default: same as --threads)\n"); + printf(" -c N, --ctx-size N size of the prompt context (default: %d)\n", params.n_ctx); + printf(" --rope-freq-base N RoPE base frequency (default: loaded from model)\n"); + printf(" --rope-freq-scale N RoPE frequency scaling factor (default: loaded from model)\n"); + printf(" -b N, --batch-size N batch size for prompt processing (default: %d)\n", params.n_batch); + printf(" --memory-f32 use f32 instead of f16 for memory key+value (default: disabled)\n"); + printf(" not recommended: doubles context memory required and no measurable increase in quality\n"); if (llama_mlock_supported()) { printf(" --mlock force system to keep model in RAM rather than swapping or compressing\n"); @@ -1907,6 +1908,15 @@ static void server_params_parse(int argc, char **argv, server_params &sparams, } params.n_threads = std::stoi(argv[i]); } + else if (arg == "--threads-batch" || arg == "-tb") + { + if (++i >= argc) + { + invalid_param = true; + break; + } + params.n_threads_batch = std::stoi(argv[i]); + } else if (arg == "-b" || arg == "--batch-size") { if (++i >= argc) From cc448774866e6479c750bd7c135cd8f92cedee67 Mon Sep 17 00:00:00 2001 From: Georgi Gerganov Date: Wed, 25 Oct 2023 10:09:16 +0300 Subject: [PATCH 47/48] log : disable pid in log filenames --- common/log.h | 35 ++++++++++++++++++----------------- 1 file changed, 18 insertions(+), 17 deletions(-) diff --git a/common/log.h b/common/log.h index 70e7e4ca2..d2c864cea 100644 --- a/common/log.h +++ b/common/log.h @@ -97,22 +97,23 @@ #define LOG_TEE_TARGET stderr #endif +// NOTE: currently disabled as it produces too many log files // Utility to obtain "pid" like unique process id and use it when creating log files. -inline std::string log_get_pid() -{ - static std::string pid; - if (pid.empty()) - { - // std::this_thread::get_id() is the most portable way of obtaining a "process id" - // it's not the same as "pid" but is unique enough to solve multiple instances - // trying to write to the same log. - std::stringstream ss; - ss << std::this_thread::get_id(); - pid = ss.str(); - } - - return pid; -} +//inline std::string log_get_pid() +//{ +// static std::string pid; +// if (pid.empty()) +// { +// // std::this_thread::get_id() is the most portable way of obtaining a "process id" +// // it's not the same as "pid" but is unique enough to solve multiple instances +// // trying to write to the same log. +// std::stringstream ss; +// ss << std::this_thread::get_id(); +// pid = ss.str(); +// } +// +// return pid; +//} // Utility function for generating log file names with unique id based on thread id. // invocation with log_filename_generator( "llama", "log" ) creates a string "llama..log" @@ -126,8 +127,8 @@ inline std::string log_filename_generator_impl(const std::string & log_file_base std::stringstream buf; buf << log_file_basename; - buf << "."; - buf << log_get_pid(); + //buf << "."; + //buf << log_get_pid(); buf << "."; buf << log_file_extension; From 6961c4bd0b5176e10ab03b35394f1e9eab761792 Mon Sep 17 00:00:00 2001 From: Georgi Gerganov Date: Wed, 25 Oct 2023 10:26:27 +0300 Subject: [PATCH 48/48] batched-bench : print params at start --- examples/batched-bench/batched-bench.cpp | 4 ++++ ggml-cuda.cu | 12 ++++++------ 2 files changed, 10 insertions(+), 6 deletions(-) diff --git a/examples/batched-bench/batched-bench.cpp b/examples/batched-bench/batched-bench.cpp index c552eaa73..43f9c971d 100644 --- a/examples/batched-bench/batched-bench.cpp +++ b/examples/batched-bench/batched-bench.cpp @@ -154,6 +154,10 @@ int main(int argc, char ** argv) { } } + LOG_TEE("\n"); + LOG_TEE("%s: n_kv_max = %d, is_pp_shared = %d, n_gpu_layers = %d, mmq = %d\n", __func__, n_kv_max, is_pp_shared, n_gpu_layers, mmq); + LOG_TEE("\n"); + LOG_TEE("|%6s | %6s | %4s | %6s | %8s | %8s | %8s | %8s | %8s | %8s |\n", "PP", "TG", "B", "N_KV", "T_PP s", "S_PP t/s", "T_TG s", "S_TG t/s", "T s", "S t/s"); LOG_TEE("|%6s-|-%6s-|-%4s-|-%6s-|-%8s-|-%8s-|-%8s-|-%8s-|-%8s-|-%8s-|\n", "------", "------", "----", "------", "--------", "--------", "--------", "--------", "--------", "--------"); diff --git a/ggml-cuda.cu b/ggml-cuda.cu index d1e874b6c..ba0cd5a7d 100644 --- a/ggml-cuda.cu +++ b/ggml-cuda.cu @@ -6254,16 +6254,15 @@ inline void ggml_cuda_op_mul_mat_cublas( const char * src1_ddq_i, float * dst_dd_i, const int64_t row_low, const int64_t row_high, const int64_t src1_ncols, const int64_t src1_padded_row_size, const cudaStream_t & stream) { - GGML_ASSERT(src0_dd_i != nullptr); + GGML_ASSERT(src0_dd_i != nullptr); GGML_ASSERT(src1_ddf_i != nullptr); - GGML_ASSERT(dst_dd_i != nullptr); - + GGML_ASSERT(dst_dd_i != nullptr); const int64_t ne00 = src0->ne[0]; - const int64_t ne10 = src1->ne[0]; const int64_t ne0 = dst->ne[0]; + const int64_t row_diff = row_high - row_low; int id; @@ -7223,12 +7222,13 @@ static void ggml_cuda_mul_mat(const ggml_tensor * src0, const ggml_tensor * src1 //printf("src1 is contiguous %d, transposed %d, type = %s, name = %s\n", ggml_is_contiguous(src1), ggml_is_transposed(src1), ggml_type_name(src1->type), src1->name); if (all_on_device && src0->type == GGML_TYPE_F16 && ggml_is_permuted(src0) && ggml_is_permuted(src1) && src1->ne[1] == 1) { - // KQ + // KQ single-batch ggml_cuda_mul_mat_vec_p021(src0, src1, dst); } else if (all_on_device && src0->type == GGML_TYPE_F16 && !ggml_is_contiguous(src0) && !ggml_is_transposed(src1) && src1->ne[1] == 1) { - // KQV + // KQV single-batch ggml_cuda_mul_mat_vec_nc(src0, src1, dst); } else if (all_on_device && src0->type == GGML_TYPE_F16 && src1->type == GGML_TYPE_F32 && !ggml_is_transposed(src0) && !ggml_is_transposed(src1) && src1->ne[2]*src1->ne[3] > 1) { + // KQ + KQV multi-batch ggml_cuda_mul_mat_mat_batched_cublas(src0, src1, dst); } else if (src0->type == GGML_TYPE_F32) { ggml_cuda_op_mul_mat(src0, src1, dst, ggml_cuda_op_mul_mat_cublas, false);

  • nA^SH$tz#Qo( zc_m({A_fg+NSq)8$B98L6oytxE0oIJkAn~ZOQtz`vHh@a0 zU#4mg8i&LL0ICe*!7o?eUjn*xNJ8l3VJhlWi~$W9<_-IW-<1Jb=R%#JeM(4GC7zyY zyydiF8IQ4=*V+s5&nva+YuwW-O?2tNos~K@xz`0B;R7bEU;A?E{qaYtN2Fa=WLHtYf$dWwJA?r=ByG}@K-uyQ3Mq63pE)G z3d~zxQm*?V{WUeh4cT~h`la?poNRAVlZUS0a|sPnuUN@JHKG@CLa54-TG1*!UF@7> zTHSrS5=cC{bjCu+W3e}-!zk7QSrOf|GtV9>{#S5!VHNQtm4p?{BFev4Aet^6ixgT@ z+}7;DZ9Gmi&_o;rF$BEbrAdc%O+yt250V-=h? zm9znZ=$0Fs3$@kdS(bSA_slKa^Zjwc4zJcx*B7Nse9Q>--uE%KhLY0-3VtQe3d1sf zQorol%$?;aA!5IHQM9^Y>Rw@LB|GMQd8~ciizMT=`0E{p$@g|ORa6|vzh$NRVHDY* z{JrsZV(2?g`GWrukad(dzW#AxD|p`3X)>5=yKe54yN18oUN9AqD!#+=)j}S;>~>&C zC(8z;c4~HHdl4`j$Xq8iKK#8ezFVH2y`9;$<{*@)frCAR8uMc(5KZ13Y{YnTTHjDf4b>AfQt|^(4GJGZA z@+8m=>M)giC3*l~X^4k62=%fH!OQK1co8F#%a{f#aO&M0dSTf-12pT7WpE5of=^&a zN05M*LjBkL$4#{ZOt#a2-T&^TDdR8*Cx2xpp1*Fp=l%9UeB=(6PO)UkU|!K13V4i) z-GESHaEF&7;K8-3U1k=4MI{74J%y7vYCy z$1RhHxPe@SMV5FGODJg}Z;BE=QFY{+mOM|T7r}vf8#F2*U7Vp~v=^tV@{c|tj6NEp z`bJW;%mkH#GHHQW+KNVd0GCub*>8tqyh@l*bsM+Fg&tHD=jw!Ulv7luWwB+Xfdzb* zRA;L94J+Sh=i?}a^HlF?NW}2%m{Ly4O?9^guC)hzs?xrdi-SAI$7{f=W3KLr1cCXx zA0HJs<*u{r-ee)DEfu=!$Qc`r5M#NPyJnxBEfaY_AUavzJHxrK^|m!2bx6@*gT$l@X0!ak4XqpPafCS%H; ztZ=?*xp>3niLVj{rLT1|>lUbAF*&-42e@b%@Iow&hvxf7k6O4}eVlT<17ri4m}U}F zp<++O5RXb;Xbf?wHFuZUCz2@jA~2*g(t1Xh=S!cRe$CESZ@rMhb_kTkij;p}@|Hig z=meLKgBf$BZ6Bh#ksYynroW%dP3VFLg`RG|V_~z=Xc&u?6`v$Ur~*b;^~m_!+3Byf zU-MU&;pimVdTqH)x$bz!dr>I1h|5iWtoP<aHSChYoNn~LQBg;!F;3qouTG)_(bRJ*g@N+w68Og){ww#0q&iYvL*oFD z8bvmd)28$fbEFbYN%fCU6Oqlxi*Cow^OkELEr2hD8~FAMJQ)l%Us~0Jn}QU`#ED;O z*R3<)hE;x%EYh91h(bQhuDBUSFBWy@RaV8appZ z$@pV6Lt3GCx5j(EkSPfWKxn#rwbVtFT~WDE{T&R2jH4j{`ZMF8o@!47?@CqN@w>M6 znOW{U?1$ey`)>QX7 zPctt3GM}?ff1YL2b|SXS-*4oIjr6*XSZUNFKK4+nR_t0YDIu)wBD>Ras}p@L&spRsnt z!%CKp(Ay&W_%TCU;1b8>E=Tudm*Vy4aBq$T>C)Q}TRu1(rOrSJOW~L>SGgMA;$`A^ zo=Apshg|{g~aF@iM!&l5Z+yZwxyx?|lOx5wh&+!ddtXX$cb~5%>5D3Lz zoLPx=cR<3nP?f0{j~)Ocio?VMt5byMV>}p?{{u^k0drLUhQ~7}C*u^qECtoN2Mk8Z^XgLyNDM+3T0lz zr*75S5ukn7yIik9kwZlU)TGJW0loRWEpBSlGJWym73`rO&HYKaT-yjQGQ49=q=`KL zLVLwOa(6w0e$cA1W93UEm67a%M`EAn$c6O+PlyVL?c%Qj6a5O*Yb`RPk!8FA0e)1x z+6&yP_!B^2HJ)VTvpP@2>C=ESb>gjd)2l&yAFAnetcDmyDkw_!Kwjc6>PqT+)bpHk zjDi~XViEe%F1rZDabEO8RkyNV9z>4g(a84VY{mS6kBU^%X(VK!1o8Bqkg`xTR@V`5 znAb81fm&gBDTgYgQQ5em#d#!l{PW-S*RS$vACZ<(l7cwQW3%T*TeI*0CUvw zC!Hv$$P9{-b|FZyP?R+#Ni;KNY!+eyNI{09adN>AxuQxJt}=@9jw14Rbhn(bK?Ow_ zK_^ttdjjh*HaNg8{v+vq4~l7t>b6=v7&(hah)~hVy$u7;ii1M9nK=-3Qt0Id4Sl2v zigLs$S1(Zr?z%}S6vROo;eLk7c5%X}tn`OTe%YRt{<+H}=KYc!zU)YE**(aumrVz7 zA1tyq0+pF=0Xd!A@Mb`4!56=GDzd%CBUWoT}t2*9u zivZ$ojWRGowijUd>l<({B{lxVF241qF^!(K?~_`NSga-&V`nflg0~KlAaQ0_+U3}Y zZa&6ekyn_!t}|6iT9I-MWJ4;pJ*oGyIkZ)f9p z-Z#r|xblNy$vYL{uQ?119jiW@eB0s)40fN1NVk8fDl;LH9(QP7V)(sKNHyL;IcyiV zTmjnuu^&gMTCs;%9=?cpDteK+XCH9bf^2ifJ;E(&t8 zMQ-)20Zbp*V`**6}CJCB>aAU<;l-z8hFJ|MJkmmu}Q9=r{n@I zNcF^fK5cKrF66S6*e|JU^sPWGA7({oip&Mv zP*ttFsd8t0)>lwus_cxdX>v-vFcf4H)AH%+QFPM^K3Ky5iZ#%L#*o_;Y`}wrBGzHR z*pBi65Fmc!c|aQiP4P(ZvD}uR#;gT;p8uHe_x$rdwxIwBzVy>Nh*ev>V4L5!fL9V| zb!`O{8W*EHi;D79l$Jr(K^(3n2OIm<)i1rSmsv>$Coi?%ialY{q&5O6D=wkT(pQ5t zx7wzLdwMfFk_+`XdR=fninzox7FxSPf0GI5Uv)skSD*BoV1^4!P(K}ylVpZ;oD^xI zc~&fDhzFNr8KoaX;XOcQZ0_7A?QvTKz31Q~Ug$flE5+d1kTDqFCb_gkMQGSjAkndu z62(eE{~qK{ADK(XX?TOWuv;{WiBHQYvwP7^5TsfCbS-YhVapXpo`2MycN84VW;#0nNhz0^c-i&6HaP{(Xb)6KeTav|} zCjCg9Qfwo|b@6RO2(3AO*>ik~4m|rIHBbho&a zL!ReoM(+?)SGflyVfY;sPabXqX~g<&wRhrLVIyoE`$_^;6C>Ovz*#eS!HG+q+Ro6! z`f#iC?@<_)ok7N8@~H6SD62#eJF#lGBl_=plfcJWGNAws=E5SSzFMv5g4tX?9&hdO zk^QO1Te8DTv1E+05a-T0BysRZbktErx4FjyS8GGz!4`CS|s?9@RNe@5n1$%i9| zG%`+fr;*ENVKEbmRZ<%t?EtJSgxTbNoDXS5abba}3PtZ>@Hi686j(UNZz2DUHTc*S z%cBEnaT){i z#Ba%5eDkV zlL;gAWT`y=`_3}Kl-Rl(+k|8Ga-|z>J$}D3K~VbF`L#XS&0<1@I232anUmis8riHf8$##S5#hpy|UuJS|{{P z341fd4gQ)?yH=12b;#iNOKE}4ugq~`WO9V6F1bXwXTKzS4S5b02(p!R)r02pJQJVn zJvkkSMg((l3f1W(ZM%aQ0HBOg?aR}LIcA9;Xf(prcoiD*AYTR6imoV}a?l$l1xtP0 zKK7e7G#qs-*&mNmvzcFyh4s!XM_vT36wlkg*vJS=Pzw0XB{ecujGFmPgS_! zVp+6U5#`Djo|OYss#WpFj)xj&ADg-_Ioq`-`KGWT2d0$aUK|={Y?YY2&Y0yRLV`9Q zIyVM%$grM7^tcchwx4Em!Lw7X@~7sV7@(ThL~WbX&_!++ik^%&gfjnmUEe{DIz5$g7Q%(XzRo`QXwPbMxCdyC%{VEBsy|+v`2+(DM zw($j}E{gLDLajQ~elPtQfPx43?%wbGF+`x>C zJypkIU}9mkoBV3GuLypg_kVeG0vzq8TM5cVW{OX&H>)cq)i4UkEV0203JMMbcMkN9 zm5u0+qsMmAb0f>D0N~4st9b)4#66<JkHi0<|<(-D`1m;xut<9TisA4{bHP1c?&pRC9@^t5dZnioyR? zIoo5>c%}uZQ$fC6L`~l^GE6+b2ISOsYL?wjmdPHbWXLtP6RYnAv=2(z!{l|wUxlaT z7KSJtlcu-)h&d$6vU)a8)c_21>e}AG9xr8oSl9p)N8qL)x!bVLw`KRI9Xx{mfHg(@V;YRR??J4_dh&MVU8Vh8260mf1$VbXnj zL32gyp7boU1ezdLRxU@yUVS8$7%FN!aATRfgw(fHu+8gG5 zlydQb^js`+i~@jhBCBJzR2}}Hu)_Gh*w=BLr`xmfMK!3XT(j&vP?$jBB9kV3AX9yr z+X}`R3~_e)Vtc^?a*bPDlngGD8h->^0-i|2%lPwGb}5WWsj0_(HP+jWtJ06TCzcRe z5Xc&zQ7+MOas7EC)n!E|41oGQdVj`}H32ny!U9B~Ldv0Rf26Awe7(`mn;vtfWa5j= zzO?kJ-gxA{_Q=m~`0k-wftZ5F1bF+E!w8=OI7_Wg?)klajl4QGFaq2th!cT4UFBpJ z)kP*sbFO{GZxUw!1;umZ5+p|PdMzn_vnHJEL3doX3Z$ytZ$*jE6HuMxg=76C5_Pk& zejRxnS%=UP(0umU=VKGBW;!cEYmQ_aC#s6$s7taUnen4mJZ!3NQ~n^Oy?b=M zT5y@J$jA|Wl8SIpSb35%UJ<9f$R~K-HEDFIjnc@*f1k$rVi}ZyTg+_cYNwL`aZ-Z5 z*Pij^8tTa;>&-XHcdhxa-I4Znq7{j}#MDqqafR`xYH$ldUt)1GBNjmyJkWB}@6`?w%kJIDBt7>&g)+gv z3`z|h7krA>A%Hsh#Yn7(e<7Tv5T^P3NbOy`?H)uz2wAYuBS3CSFx`b#6242{wQ|B5F4}>;_|CKK zT`!5*P-$=p(kVsmSfX9tIlYxg0Q&^Hg~tp;sStF~gVdZXPV3Y5;U`%E zO1NR1)`p@+PAbNxpL*lh(e~R;n3TZ=^?YJqCFJ;8+_C!5!JUnl^Mcvk_!wXLYW(}z z_QVrG77EHZYfH=SId?od9s>ehbGthrnE@-Ip%ruFq`l5P1XF6v+wG430{m2i|H9j+ zCxsW5fp04$RIDOZ>g^n73%V6cBspcjG}rA`d+m#(Q5o*KPK{A&icj0uedch%GQuTp z^>TU+87M%|tOHOFYBY%C0xX49zibMMia5a$;99w6$wd1~oCL>fw;QW8dFMb-`L zp1dARzkyd1ZK{&5z9Y5e0EA>>{u}{Lz*G5 zFAj^BLbcmy--@~CLnH*KWpOc!oX2g29Z0W^XTvZ>yNEl97|l~nadvf7)rD@}%}Y@+ z)m61(Q@BB}>Uvv`e_}(&&Xfb<$Df9;!W6iSmtt7 zc?8hJ$d}-TZ?vbnHKWeBPf7vs?=;cn(LS5Z*3{@K4+~MqE~5;BwnlTCqF9Y)1_bYmCUVa) ztie45ljo=j-ls4;*z)Q2mDoAFk=6tyta%~k?M=+bC=VQdR z;1};e zi#2iR2EdZ()(e5tynEK2r;*qt!>}t?2oNi|*)~iI0T`V-LOu%it&q9muzcCaueK-R zsNBsToKd6u2l0LKq;9s0aW-eCkG03VVhv2K$#<-C;ZomIoZ1|_ny3f?>dm^|Wp~7Q zpZfCNO=cdt*$1oi3_8K)vGw&zOqe#^HYKNV<5Qbs^3_32sf6=b@FZi8hzidPRN%N; zIz47q0MQ{pB*=khK%M0u=&$y3V;5wRu9SBHC(fe`DoB)E^l$u%zYj=EX1mcJi zREDKKkeB%r>T^P_X{wWO*uEoLm2#u5GP+?;_k1+Y!QZ}sg+-0!mCQ74pq5?LUMhSLaM?2 zDrEiRcyq6qE96Bc)->p@REu48Pa}9Jk@E2ggP75OD<0Uf+>$Ga@qnYBY0=5&UteM}vJBwLNI3Tu@ zw}f_H%*v3~Ud~Yhw39=^1#T~NvE2^R_V`--0Q%jEi98^^I$6KECnwaRX+mv|7(7Ok z&)`Zqg}qF^-i4KA+-kSt&0O?JkvO7hG82B6yP|BjgshPbgCiLa5x|?GLxAGn#t|z6 zZj${dRZ(Mc?#q%YN3T(t!O-I?e*B{#aqflJAJX}*-No#mb9cQS+ zBsX}XiMvV5JhBnueMDS*<$I@_!a*1$hoz?`CUMkO#@B)RCndtvCmOaBrmqH7IQtd3 zHX9EmRiVk=ZBJ&43`VT0_tFHNM6#_p56rP6gauvbr6GgDx1{6REGj_2&m?~PTj&iL zQ5`8W2OW$)!bPA4Hulu3ZQ=(?LC?My_v@*4E{iG9v}%(ae-e!0l>m+rO7&UE<-nX{ zaF7pzewm=S2@X&toY6^PJI;Dm`HE^-K8trDs@{+F3C+!z1y>7pjgJxd&3|*56GB(e z$xt;#qCf?49Q4MHCwB+PtVOTLj#UFy#|v1;2O+W)?OieIHl@+F@?m_tYJc9knMzeP zkVSuY*W<7zc@Iez)wrkE1$sJ|44;Sd^IGw{C0>O{S7zcL68-ce{`r^u>GQ}PSCU^ zc5*`ru5xGMQR{UO8&n<;T3-)%_THp`zn90TeU+5N{(B#tSShKVLnPY|P|`>BQDiPJ z4$1|DHcZX*VQB*e0z1MkNK}_3B=^I)!@*@n#xA3iy`(HmO0X*8P__1_ zvlqQGI-l_~UTe?C4^ud;JYW2{1t0n@uADyBLC!w-T6-+mnV~pePa1#T&N4_UHXK_& zbCqS9(hY?JH<1QNQ@@J`vi-sX*X9`Yov~@DP3r-Gg#!4em$|*D#aN**4Aa0oB@uGLz2SH8aqY?;5KlYFNd~+3DJV`Ir`+@i+aY&NoaXa$tU?2JRyA%`1}cS>z4ZYSWp_ zXQy9jzv0h<3|5m?g;KOf^xw%8va2B==SD~f%DJ+|)oQ^+*EgBINz9$mL)@mxmV>@M znt*1|<#lVJ+pP@PQ5-QF3cwv=yrO4x_b1Fa2v&N(ea+;12T4;~yqLmmm-+1`>*-uE_HXE&TRn7dUc`k@85IR|AlxnSpWPp!qW6u~A6D)Um zby?sbN0U@Yc+CJB^z-(6J1|HSm!QYBN=p?wmv+4yLI$9GY>CGShmTjwq%MCulC2o0 zj(b{c5&5b?b&@>ybhqPYA^z+kjpO?sRs=^DXarNN!n`EnllhWzYS0=fKgcowtSZ-Q zL{`IbB83c~c@%QO1+br?vY+w&*bD_$g%Kn;ifq9EEz<$lhlG=$?)^ILNO-$<&4uSS zdxeTQ!MpL!$9|*zdi;CRj*iS}d=EXtvBXONp!^uzd|^FiJ84G0^-hn>`meOEE|ru> zpgu#f^v0T##z^oz&RpGLuA7^Bz<^cz1q$!pD=|2JmYG%**$zCK0Prn7oXA}7-0erv zn|9>6MR;Mwi01l{jA)`4AMZ|U=LQq$aMm#ipI zB$B{L({$=+A6tz4U-ucojKwZTSh%|3SKBjjR8O|A#R8S;<(d#2r8sT)t3aWW%G2T> z$m1R0Ij<8%su0zLvx}#r>LGdjB!qfgpds~fAtyFgwbs^s#c5pUb}<^DNBe|0{S$6# zUQ}AMnu?qi6Yc#JV%^h{K7p{LO4A=d!uGE%(cv(!6&J3+2|(xO?#n~gS$r0wA71}o z@{rY+1guB~4Yt@;i3#>7Mvaexw^f`@-a}Dm`y=L71bMEuJ3)Z6)7RU}-iDINr#Zw$ zaMGk;$(W69XQd&VFUQ5XG)y&s592pTLFsm2Rnw4;X5QzHY zvSB)~D9bPxCdrk`1@H3Q*L}Zf*P>P$#_oFa0-uD!HS;tI)t5W|CWruaS93o>}6vTxjys3WuSHEtRgD1BtL*FG|_E{b2aQr;;Tb|V(kn>(b> z1}x~!kMGM|UAfO_oz$oxa(IF^-A;%nrDBnl(W~VAxJ~lf6|PBIYhrsQgdl{Ajd%^{ zDKW##?R*F+jxHkxOScCi$4O(MyIMi>nny`jiqjBq#gO6+Tv*c&qoTHyq{OOpvl=d3 zGN+;`i&U8}BdTl)Z;n-+HX(P+^dCz8(;Ve0q|}vi_LmiFXFpi^aXe&Wajx-`5`AmR z!8K)~8qUXd*AOjlN~Kbz7lTm01Bz^UMX)J#3Hxnxk?4aQpppaiEeU-;Pe$)6L2X5# zi^9L&Mm1ZLOlL8&!5@HmlnNCo?9oqDiBK{GMN@9os1`B#!O2c<((3QwxLU})FZCE= zbG==xDr!i@Arj-`c;t@Bwzz0|T+k{rg{5afmNc?u%767I`=CsMYw?2R&G)_Kys0*i zGn8BCDqU5R)niw!(1Cu|eW-@hS$|ky60_iTi;%EJF!2RdTq6@pmr4$KLAD z3OFAISCe&9FU1xbElpv0`3QqJetg$2eqh!Gqg7yb8b`LJ9Pg@LF3nv*U-30m5K+6>>?P)d`k0Y# z9eFAu6r5yfEO`0KrdjAprG~+kg4c^xvkj-$vRkZriD5JAfvo&gZ*&8ffSVjxzFi*1 zPBdC977XyVFda31_mi-%N-3ozddB5@>q8r;Y~9N3;b)9+3NqlDC8KS$$;bJFN(fS? zDhwBA+B;IYyRh!!!igCuj>FREWeA#gDHLy%B@(>U2jZA}&chk>Xf-LYiKxcM{=uP( z??_yH-;2>C-&`9PlU|Z}I6z-mQoDv@FgY3V45hjc<=-QbW>Y#WOH|Zu8b}9(cuhT3 zUYt+hc5hY?45mVWQGp)>U8s#+u<&Ku;Vj{93Gguhxx1YywE#;oDr{@QoLhIv_YWeX zK41205j2_D!(U#Czrc!^PC+<|G2Hu7cx|lft#%_m!%W|uOd3!bOJO&8=3Awmg?eij zh9fO(n(L=L>Zlb$?Tra`q-)SC0&SGz6RkwL(R&EwMrM3AWsx2JN^DDrX0=M;ZY7}v zZIlh?D;q~xkFB@QPDubalmh(uVyh<_mX3drv3u$gZ z4}bUPzpMXk@sIdcztrh&vj93p`xPXR%PIATDR0X944L)_w4lB^a{29Ok?H~>jxpMT z+0IU1ZKboJlAvLP+6`c;(GWS&0RL%LO4+E$px2horR6NLNvb0;Py?+=utxsMn%{n> zz3r7EU0uaatn4T@q=Hhj6SWYk{73A^-=AwweI<@r`&%_jd+M#H)I6H1F-%>09la76rrmXIoZY(YZSH^+$w{$~3DR(%7->9%Av+WH!r^k0o|3 zXg?gBk$w~Agh8Gck3^0EdyHKuD{)kU26|l0E&-ZBoZ_?w#c-}*o>oi*x>Qg1yOIt0 zbg9^>AhNoP$igpnJH3rKD;`RF_=jiTPbxu`k+(f33l6*~ zjvR0{{TvSQET?ol*)lq*q%)VovK&8cs830?aG~XcH!uTZ*YK4U)HS6MWgH>aasGO{ z9v^?Yo%5-#^$4VsK?Sa5T!4RXm&<*nCq$%Yh!UJ07BGvd@&a}1#?^#ZvK0MRd5xf< zMXxQZcYP(F(DK<_!^XQqlj)}H%~An``K>SYHA5ie0eb-Z0My%d5w$}{ziy3EaX z(wPRyFOv2u=-E!&6+L#x%kDXn`8TCPSpZ1&Fo@A+t{mF7=aK?T@bRJH>9s;E|B${Xw_Gwvv3wpIt4lDhv&giDM+3 zMa(7$sqC48#rJ4h!`mzDySx-W7`nI1L$iAcYM16Nv+D}zjwn@{U3DyB_me^p1$M0X zs8i&@u~cQJjWUSwR;`#*1qW74S>}~78Np_Xp1)XICaeqpORmhE{2+w7YFvsRWWfJ} zRZ`X_rVXHG5>?H<)L!$UA7FqxP$ZjoH_KzLxAXoWQUd=m?uEt{@lgK=_)y0uD24eL z=}_XKkhd3o%*}{!>W&x$7s?9mHjYg?)OcO9@(d6!^#`_hFaP{Ft&O#I>!!~GC^*mK z-Ig{RWyG$aL%aA3ygA|9o)w!;IQRycU!D~~Lgh1Y)t_pgyk{~UEA8g4`A@#q44TGi zLEuSIm>WH6ogCg<#`$3kDkW9cL?%A9C~g4B0hne!J>^sweo)#&i5#C0dC&Rx=g%HD@0^Z8L-~&1o;@Dd@e)-_2J&U zD7RHAbJd_q{i(z)@nz1Xq)RYE2}ws+6KuhfTY|MZw2JljK#)H6x|y_^Q4e$@7KqPJ zE%fOgP;x=KMP3{!mDs#%s?tqJCQP|TcWcA7p=#A6hDo>cqJs*ej!WE2lG{N7HOI@X zpQp$@n2MfYb&$>)Qo9Qf%W0G`HqT1-1SMCca<3;E)FOoOecEZUm}Ccl*n`dOVn|B6 z7YRTxzyllm{BKJz;s}7S2bP_(hel~N$=@h~^fq%5eLA90oHvCY*`(^(_Wn~rNAkBH z74rY!&CmB$OtE5SZll|3kCSy7#XiJkTP4JMu;!?hu6EL}${+L>pf8B)jOw8H!mQ=0 zkt+$FD*y#d<8K~Ju^+qAD+^v|t_5ixalq%~R>ajJCGTgw#bxaN?DUe73F6I6?C_(u zG%Q*-!XL&apOya76hkkKNvAIgp0YegNBNH60g_KPS6e_Zi6F%$N_@~^QF{c?JKZP_JIsC95_)2Ld7j&8QM z+)%A6hn>`89WBTB9RA0I=2U8~iX1C(X?)<}ch0`kzW7f3DBr&PRW|F2gFAG@o)uv+ zv??z8L0s{7!85v4nS-;@u6gU!5SM$a;7bVt3*xHN$kFrZkN{4U853#X@_^^Fff$(j zXG~o&gQNEc*sQ=G;-QLNZqFEjP|vK)P+;c2`D>SOBYF{51k$ zy58cEZYczE)2)S4 z2a7_(WznLOVx&VCB^)mtm9VN$M>h|>*70_;E#d1~E@wy`{`(N#WO9@TDuJASdGW`O z@dks!GKllO%E8?&-VGCqq#pfBrAqwB>%uqK?u%M+KgocD%BIE@L7kc4d(?6sGb#-b zGsw@-mCk-Cw;@7S3Mk@KYXKSSqtWdpYnQ>N7+Dou?;)CU>jgF^hOVTT@wT^u3;^QX zge8v)m!1IF9cxThkgmES$hP=3I;Uj9%^y(T3acbt1qal|2}8?1<-?h@JE*NPzokz~ zMS?3T6=$UlylA@iddlKqtCT06w`BeJQ3(koqWLC>Lsg0I-$*>bc_T1(!PWihR_HFw%AiI6><1`m0_E8w6wREfj*i>xJQmMCuxaY^E4 z{2joI)AXj6;@1b#qra1)$w-i;U08g-$Mo}Q@;j>I6X8{O!9n68?dbH6Ae#T6)?VxERO0+5)+*jDS{szyt_ZEq5JgByOPqSbJejT>FT$^~EQr*59 zU;VZAo;6RjQiZ;;^p1G%fBTp1wT*&}jXdd| zvWlFvbj=Y}KEeyVXSsjw!>`Ll*zAzPv28I`JmTpMHH>K-U1`^Yn#5~={=0EixHjpv zTxi#Wh{JpkbDApuH{$`)Xk}Z&Afn<=$rRMi>mBN29=!|Qx;h4G+4wq0Gi@KIX@5GM z?Me-P{D=v9M_EL%UbzFaL@qv94*m1`K^1F+92BP9k{yy+R+@FmQ7$Eg574D0;T`-D z&(L?JPb5vJx~@8cleYM1;eI$Go{qgr}JWsi3x(W-== z6Sn{q2&Tcrt1Tfxj(Hk05#sOM;99FjE-)YQyU!zkVo^`F_x%UF)>KzR-@Ie94st}& zUC*{BkKgg2RLHKQt9jML0aTDxaGG?d)!faTOM8A0nOL=4#8h00K4&T@W-dl;tn&mv z+#zA~Q|V^54k7*g4SGG-L@l9FC4U2Jrvvgu;K?(o?!w(e`OU#!3cST?;cKT(TvJQ( z`(~Pz#Ci5#J2r037)`d4){hz;VuJCWb$0mgLg=o#;}(u?)&cHctW(7_i~cxV^r68e z5Ta~r4l>BZx%QufBi6iMaK;R*vBjNfEN}xdd$%;uvwMJSsHfN-{^vNiZhmDB)&{0w z9=%2l<^wT7SEuF;f%Uv%RP}Kxv3#}KX&*l*b&gl4f}R=nf3N*^EOkhbD?V@U_#Y>V z<=|Ntb0c#YcAv%`Fu~|EW9hLu-czBgZ;9rfXy~jEpQ2evHKrma4buTD`Eii*Ylx>< z<1k6(XYsl0r2Z(vsZL&0NkrRCkdJu0SBf=B-;i`AH1uOuN9*)JX>}#g zqN95_4t@ke2-l!opdPY9bKpY+5!EQO#J}$#FGs03x9Zj6Yol2)cdvl)8V?3!%pX zFei18rZ}sviEBp;OcvZ&GsB z7q>2!hf#x-jLPW-P5mADqv}{dP}Ap%fuTyz5C8;C;&o@I>Q3OFc-&_EM1cSc_fys| zEJoXDHxS2cDyH{66&m1N&j&4C49zR>$23!}7RRI1Q!DWPn)1o^@Ue@Dz%P_if4KX? zQhI72$v^eqFO1*{(h7$nNjzx665}sw21**5H!lAaCWwz-XxHLz8Nmsf$=9k$wBYnk z+Emt@KL|AwBA|i!(NR*Cl$kyOBi;hC(i0a_$pR>(w(o_l89T-FgZ=HLj=?gg)U~_! zj7o!?2Zwruor{0Y+1Q~+DI*T-sw~66S-p6!eZxfC23;(lJsAmeF$i@TuV=sTS z#`TDB9hEc(71vL8d}&CGBs@1AWsE{W0@FtWOK>IQMk&cMgXScd9R$^BK>=7CA0vD| z%|=23$xJ0B!~5RJW~^ohfKagwdO}|z;WqK>!m^StsAE^HAIZ4O6Wid#4$9H@0+#%1 z$IMcgDQ17k6i0E)QZ93>(*&8+#YU|Ver8S>O2P@j7VScHN7b{4f4Y4Hb>wCjc2yr~ z-{CDCZb_lv;5=L~f#R=_u2PYUNJCXlGAjGOp<5Q5gYGr7;RQ8U!^tzhs$5yA-i6f0NZ+7i5>2Puy(kexD^Y`>{jUMg3NoZ@TXiK{V$cZKw-(Z~xB zwWOQ?aBefv+MM9VHpOL|3u-2j?pMME#A@IQ_VHuAJ|h_TO-iIv(+fI3NGRkn`pWny zK#=C#%b<-E#cFQQN)p_oqZ@RMSLR-TU``Xiq(f4LNfisNtrW;e#6GSjsNy(%K5ii! zP4p`-VtG%BX{oV(o0gEW!3l+!=r_kW>1L&GF9aRCT914F^WTe4%L*+~Ac9hd_TGjJ z;AQcj$w#;oc1TLgN~m)ku%duLEUUV?K?9CV9JtWVheG(4G58zpmbHtZt*v4o%}I$o zI;vLsxOc`cR8fD%g|!z0JN~_CfNI#BfxE?#Km5I)|6a?Mo(jg*#P2R$kwy+$!!F$K zU^FiBacMxLoa|o2Am1q70RMp`#7`&m*?Y7y?Q>JKBdy0}*6iUJ%alVd(t3lq7)2Pd z1~uLq`Q}hnB9Kf*V$k+C+x0l*9&2)J1_)-yT5afW2xgJ`SScspHXC%oqWlTea>|xT z%Q`i9JY07)dEq?p1l_arW-yq*3#`n^Y_gw4BDNL|PVpAMllnoYVK>|k{ z!>B~gSeFz;4|IAhq+al{+IfJ9G_!OM)aj$%NTyX1U0<o)qc(Q z;3H@>nP;e|$6FGa>yBOlCwqBLu@foRvjc^z4vG{nxl!ALs~1ax%{}9w0zWE2qwK(I zl6Yl8LEL0KGp70Y&leHZXny~KcAA=;6g%$&CJZl9It@>a%DrA2kSLRVgG@}AspLZQ zlPW2Q4g{~m2QoFwXV&&+Jz2|n$7BTJE+mdPSY&?@`yla#nRI?0s4Es%5R9v1&OVx+ zpz>cFq+3|-7S;Jo$3%k;;#P+WOYb&B3>kx*ZLB}Y^pcgG~ z5oPfO%t^%YUP?Arsn#)RZ*U>gFHt4Z#n=w{3$;K&n%tdI&rV56FOqK6qy(o@7u|d= z{(Aq{I0LD$B_>QLoKMtV zocMqk|Mz$u;b?VF$@@6qRWHV|_Ego}2a;hcZ@NT-ok1>}0@uFh$OVO3V&NlY2?Rmk zYhQ{F0znUo)9a&Brrq<8bQyJsOz9jskxR7=X30GY^D&>jZ{;7jNxY1_it_Y2kUGY4 z=n+uP6&DFnbXabBOyDbTr7}Pdc2YP%I=t`q z3i_&n%BRfk__<@5%B3I=!7BelY5TEB744ai@$NSFM{#$q)jXi{+igfD3vx>jj?)u- zG#F@R;i@dkp-EdZ9X6lB>(iQ7cIXe{?FX$`ALK_B6B{w8EPFw4@f=F1-A+i=Dv&Am zsHztyOMlbR?(_K8#!@t~nA0d$vkZh9p+?Yvw0Udf-%XRD`y9a)1qZu-U?kfj3l5=Sj?sSJp~Xs%&>&B3(1P(*#|`>03;itTujjujQ{UN=cz z93M_Y?2Gi{yJ^jQ+Ri=UTdApho*f{RqKrm{mMf{L7%S!|MQ~n-&0NFYvMF`DI+5R$ z@e(T$yI=R)mBoLMD^o}<9!S6MziGvC!iFKD6+DIB%x|fd?e#!;eqk<0jrHr_za)Pu z)`!(&`&Izz**~^t;|M2PO7EW57G=F0D-Admo`pC{FkxB%8l%$9(ySc^^ z*w4MyW=2B*wFukk5s^Pdq2e^exHxmxlQ&wfIM@ z^nGeDOX4BY3o8l3OqPqU9F3*X5Hj$B)7IP7c$e@np-u5fT9Ri7neZFs_l5NLQ2|)7 zxeuTaR8KthPFstok~Pr_ApEleF9&(Xn0FQAN3mpa7Do$9XKBH*S@`3R`|fg9hY6DG zw{*}5zQxgy5KBuu6PN_`V;XqGCK28#P6|J;Elb}NZK)Ds9_F?GUV5a;U#SwS8}svI zy@!89nN#p3FXXb^Gm%>@6av`e?=D>Ki8LWyMsm$4;qZjyi?xq#PsFFOQY=_;v)D@C zb;d%ZJT944rTD>T{aLO}XOl8q#&;vmy1Vr#4fAwONs$m2+`bzudZf8$X-RP9e=ji=I4Kj!C5cbspM zO^PQid+)2JgnCb=2S6UgU-r2WL1iiO{IF0$#%=l8BZ;G}vPosZY-L)6zWkEq^%yj; z2TwBEh>*r!LFd&-rmO1wRieRIDp=2HC|~w0FV%IV3wPPokS8j^OLpvCcg$aXnqgW4 zh%6LW&~xCl{7GSesR@Q9J>Ro9mEkwQl4->$9?Yivm0mPvvT=t91r$(fUCBeC6$L+H ztMpu$M>O7^;zGURITlCrd%E9yTj*QH`}(iyG#cD{!)5_sZP9-*;Uv#Rh4vC4c&2gB zA7d7j`LP#WqCnzBGG$y%h9XO0htQ(3-K3D?Sc1UZipjP=O>Q^VZoG#B#DHSVU6C+c z++AFvxZZ%xzpAgi*73<^usu3{A~LgL)7kdnIcaS^fk zyrG`fZg#k=8lHi6K5$hBGut<)Mdc6TH?EkX|NnQK5!;QmZy@dc4QN_w!D`Uap8@I3 zdycG;hBs-}DBoy{I&AM4*!$2e2oy(38=IR$J42y=emvb0@@Q}{adc@Clw8gzE&%wS+sl-pGJDE3$X5W6)fZ=$sqQot?hThvS{XR0Ob?fP}{jJ_oAH`s34TJE@F- z_;io_WVY!JP+$B-i4c=)mZ7Y)N#^WGN2EOrNEzRml5=bbb^v}0Sha~Uk*%?)FfWa^ zI*BWHA#^u`jN~7=)tYXL>>%%Go0JG=&X zKn?R=w)z`@WIaBF1BoVu&Wh2L#!L!dag>~lMbLHpl-=553A+H_MJ-}-vmH?VeZQ8g zHq`RYE#FjlxJ-}F?~yJAP*)B>@i;MtUyqib5$K5Jub~utp4~J`+lLkrSUUczGI(w2 z!QER~!6=uy@D!Svdbd&mtn&i2Ita2p{9`bRIQ2ViBZ%MID5cVPftCmHp>yrsSo5{E zamQQ6g`DJd#`b5!4hPB2DDWFvNycv4qBoU6WZK-G_N1yKHpm*8NR zNg!Z~-F}_Oj$c1VQ0?!hHG?=mF~BfB1U;P|O7~-a#G7=8la#swMO2(;F2_(A`i}*X zaCEU#^Q?4^CGv_{0EzY=aA1A|7Dn8l|HPbmZ5{=(-06(wkGCeZwxET5$;%F zOU#wgB&EF+d@QzCL)b>0Zaq+1SFprJyJ70zuz2jCz}XMuZx?0e#*wL!jin#n9{cse zk1*3+e5L-X-O=WD93Jqg3tF0oQXixcs za1JzEqbRUbjEK?4e%22DYN?-*@m}jHMv@AapMb!v1cQ~DDW$w!&x`JyNYlJgWXhF# zG%`<8K|j%+c+X3v@fRdO*ZNn)e(=nZC?=bFYh*nz2IJ?A|MT4fl4t|tGED=Ad{(QS z)x!Z;IB18JL(!+t0fQf$z<WrD|~#2pY> z>M7@VCRP+VZn4asoSL?oY;Dh{7x40V=z=bFLXy(XBUaUiH0&2?ARoUrm%A#>9G_O| z{b;Kk3Rc7MF`O7r-nNx7fK`<5#9Aqh2G$GNE6_C-$GtFkCSY=rd7LCNmOOpn1vN^E z?%qQ4-Xe}iOo&k~PRrh7%M?M%t+ zU3si}!H-LN&-tDo1(T&si)P9>fS7%zCrxC38s`ioTJ*`b6wIIc?!m){WjOu$(gG|# zq{sq^Z|3{`q0-iLCud>EdGoKjNh2`HWKvGfgCZ4fche{+q?Gk(Au3V;Co0y!Umq#<(RbpTh=eeq3MvaebW z4?qTvaxu}mlT1czJOPrZ8*4m4GoycKEu#`i1uRUQp1)nTPizj>H9dzcGL)l_0k;TG zH#1z;YR>aE@J(?jCG7o0RRrb~7^Simy#WnMK@r9-CJJ}t zxGJ1;-{lXjLlz~IVdXFFov?P)sWD*EqGSv-eG zU-4buMvwZuB{>#}3kpFirb3@6Ylay-YziVgon-J2yrZ5;U%CGdj^u%5<=N@4wKx2B z@Ch~?S3_A6&RvrjC^Ic!K1}4%Rz`2nPM>I>eDa=&4YSIzDd`bdcd8!n@%0F{zX4vY z2wNcs2LLMV{T#`onHG2sV)qpJW2-&t7g`!{Qbv;^Sq^DhW7MB+N9rv_OH1#WGM?h1 z+|o#g_#=zM7xHQV3JwvJmQ(j8xIMZ{WluP5 z_O*p2F_39Z=C49@)02wBX@Z3hVbSmTv1&oMo53K;hf|T>ZwHmhh;6M*HRS*ZbU4>e zK4e+Y1toMBG1kW?cSAgVC85f$5mAe&h0OtaxF|;+dU(tDoP|0^9^OT`Z+c>S3)4l! zI#z%yPS+1NdM2)}$XjN2cO`J zG{}W})@Q%s!J@nfv!9fb($sI6^qF*epFqdE|K1|ZlX3HHB%S@8cN1av5YAWHnimUk z$UjheR`KwbDP3vl-ffxuiaK@c2%#vo+ay*V16*xeVD4Kqh(~i!magOML51y5jySTt zdz6nZ^AYX4rQcn|_{ z%u%_%nFymY{=dmh{2%IFtN)>iZJfS7ek~Sw>#cStj*2t2bj150XWv{qCCP!t<%6GO ziI4n&N(Evdm4ot@?$G&R!xe~kqR^A4dl5@HPMJJ@`q4rLe8J3A*(q5;&->iaATH^`*?_*WU7hf>ypM-(aer#N z6zso*cj(vV!OQ8Z?3HR15tzYR7m{-P+`z3}W7s1K8WXfWBc%__dUN}{S z*G`6NBx%l63=}1-KrL@ype2 zqhwePIamHO5165hf(^-GF**2REm`?U27UaM>}R>Tel=b!0Y2Kg@8mPv$Eh)N=aOXsdVy<;4WqltI4)Au5Yx9A=l5f4?c;{;R>rfqQr+-ix2z| zM^yHAF`EVCyZzTXKH~rMKM#oMqm>{3qy79#Dqa4^A%mG}>4BKXu~TbRsC?f+2FGaf@_W&IZVfSz7n3-5Lg};75i_GoT{fx$`)Ri2 z#0Daynnp$m(Q3`-RIxWZF9cCt;XCwx3W^b;CL}T{5fZ#2HAsvlDG?;AH=k=?iQnVn zK3^;ZdfLo0IYVP{oNX(7{o32sF>C`7TI)A&?GTf)M*uJe(itm^LLW1QoaZ9M33xlW zAmqL1c=%-!D<;3Xl|)sA0Pe+0Fzg5r-L~z|0F+UJ_jucfqey~98`mS zCG_LRJ_e(XcgED3(uj$%(FI>s+nG5jNW=qTFGD*!_jUQOJrjS@Rh*4HbeQ0)t4(@K z3m3LZGYZf5jtTbtV-FDfS0@@Y!!cAm4DJNt@-}W!y_9-Qxci^^Zx{*FjC0Z{fZPtR zmFzvt7XOSf1mFA1)B7tpTE_#5jkbqDQ(`mZ8fQV3oQ&JSbPA~6Ht#bN4jS2|VW{+K z*quZrl(p~UrD(xz<^k|YbD9Bmv1FVfHek`W47h(5Ta?AIz1T`8{&GuqQ&9aPKF3Mz z31tc{0>i0uU%PpaFIyz&GPSzeCJNt_NqUH=jtF}bgxvPS_E~G+j7?y#DZ?q&vMlU; z#(zdo*kaQ-6hBgJ=gd49K5B%qoq}QsLdNH@@C&q{T&|ik+{<>!HB7LG8Ao;S>-im$ zXREt^gUedHp!pb+7|t!o?Ix%`0}nLM%Qsl45Rxxw4W3yVYXg29X29o4txXjQ@Mp0T z1-K0bNnSglb%RB?azp{LS53Z~U^>`M3{-$4q z{iMcW{)IdlK#TY^*k@KYl9n1f5b9csm5H|~QXNY|{UE|KJ4Q($g4E*MR9Jx|_z-q+ zl}GnY4+hju7p3D1P1=u3#)PaQ4W5q2VKAV<{BD$M4Nj|&kQcyJCXuQ#VPh9$&`jO= zWOC}wI0`Cs?;L3nYnEw?z9>?LGgcd;YVh0vx2Q*u(ADH43i#uKY_!|n2xdc}i;N@- zB-Oxq2g?awqY^HOuFn;}=qVrD^Psz2d3W<^{*P-hGCW>P2pRnsRubR2*j};2iJW{wA1MEz24bN-}mQZunn+Y43yX0s25LAbI^05!`Y-07I)Og^2sSIO~PVy+n=W z$M&#S3MI%~uCUpVulr&wkoF7zlK)}(z6jlpiq#9x9T)hsPZz86^sZMOdKtDT*I5Qu zfjiEt8LwHJ0hIpXrS_s%fY)?X#2U^9x;pK^j#Z_mxYN#u7}`LE;P~v6>9ZX?;a-vg z5agjnX#Wa+OS^_Y`xO#DtxvK-4JqN{1qF8htQZU-5mW>0AH!E0Cn+07# zWcrEAZhi=yIPmjW41W5Xs(UFxA*?^b94_fQM@3H1lQ3_s`NhuJ48eh27thD!t(mG& z*{HU%j%;26!JmC*6$e#yBy`eSp~-T7A_6aV+-aREYba`$(-7-aK5tqXnrCmz3a3`m z*PgXLyKTprEYd+Z>`{%9_Xm|%d`GlR`HAGz9WRV72T7Byb`&&0&gJR{*CoD!5yBMl zU{cJb8Uouzd(;|88Gi9dS^L4Fcx_74t*VpYJF+qLGUkr50fIu9{4P?LUvlkA{7K!% zG6LNbsSY}(^QNtBlQ;~=d1bGRSRH#ESBUNG^@8*R-CRHjgofgMfcF1EH4)PHDLLMiwF}9mO%0hs=cedvoJG#eaa1e6%<_u-Hob;P&v(<9sk^ z8B!hZS4@Iq%@nC+@SDY25eWpHi}a-rQTl}_+)^Po5_qrrZoo zgK|ys5X)U5SA0$fUni*zpfw^OHldL7YuHmq%a!w#x1};EGaezlXjn4jx>~n z6nyTb-sX7H7goDT?$c4m%2k+|U>anZ6su;gVz@e?G8#cvlVhW8nB$dz0ryB_djU!z zD?j4M?-XX+fI}9ul^`V*(;ArNc(Q_Q2brFEp}iH{Hv`-fW)VNbjlET#x%(QvI1L@M z5R{Wi)J~a_B{oV)lj?bEDp8LduvPV&zE5b}$$*i;@t8y(4>&tsz8T{@2^s zXQ$?gEv^gF&s#ehF<_!lnoGi1uo64~(K=Qha2d7sh>?#OKm1Sd;ku5`?-U=F1|3_r zhp6lh3 z;8)wPdgaW8MyIAPfg`=gIr@v&iXwr%@Fs%oIE8{V zf+&b%;zfWd*f*GE@o^mHz04ZNCI6Z9S4sQcesCyUrX;cVW=VM()1ke3JdTStN`q3C zCk*SO9;(Ais6y7d>Ee3NSZ-EBc+W>eLrA43N$ zR-+NrK{=V*DcqrW#w8gb*Ggvqhj_1^`!EUwl;+btzTvft^l192sGy)=5CC(rWE2LMa)T8Z-%5-MckVwGLcpn1$4 zNY#pdJS_Cgz$11F%y}Shb#3{+k~PU|68+BLFoCpEOx9!tWN{qMA^Gn5GV0d7$N_*dqr+ zlh!O30_UK1J4m6XOP_iFP;Y;wrck|$WOI0*n;jWRS4gGz2+vY`!33_u!Y`L`Bw16D zk{lrQNcB4Q(QQtJfS(=|$p1Y3?y{O&ZFtbcB_4sbAY9rjQ~(xyF%I~8?KP(y248Ds zAJz$g#0V+k4gR@=h40U<<6PKYQE^Q%uTi_RqHHpIv?Pe>PSfCYsOSswpPfF|o{IMo zpvts0iJUqO?maqrJ{uoIdX>ovLG84Dsg;(1=nq7=(~^`K|BAV3pG@S#+G%a5 z(@ZYv04vn?CF;4|GKd8#!i=P%n0NY3OBg3!M2yCVmn7Jtp#w`cXe z3NjU58_gII(~3!`^3zN^dGB2cq+)Ab3swmr|D>FsTzm+(UyN2vg9&L++X=~S@Gc5$ zs{=x^-WI4(Innm;56`|6;)+QfK3rXt_=#JB$>@!Pj}&U3C#xrfsRCEAiJsfw*H1V5 zTn`T4EW+*Y1u#AwMAfADvMRyful3l=kXu^9NM+{Z`Z6fKDMxEXq#Biv^hPg1RRvUM z1gWvRy3_CP5NpEZ8t>;B4w-?uJz=E9J0zA>3>WNL1f1_4mv*%pU6yW#h6+KcX+H)G zNB8+GakrQaBQYH;(u*u=^CQwm)a=6)d?fHsFK60Jm=%t?7j;-2JJqtNNNB4&c0m&* z_Rg^-Of&_8xR~)Or4Oy-BXSdJ2VNQ9dn*^W10>!F5Ow-DU!wno-^_U+jDy*+94`4= zl-sX3P-^M*NZ5hWz5OcLp}qx`I$WqSCm2-*$hseo!-bj#|3k6p^-@!S7ew$3Aw4Zqo~%%9Hbfb#oG_6X(E0m7$56$+gcxjY|s2 zMWPm%^L)vhe7C)C?gn?kGbNJc*Q|*N2w(d*;nT+U@G+sI;m+=_EdkB|I#=ON&F9Jp zlF|g~L|L$b-WDi5lm+S_Yd}?1>#Wor656l=iqDD>(5nhN%f>F%tndf%gHkXj-f}cW zDNq1c9uOstUgnTt4Y~7`e6PBvvob2-j37TJF6S|sqMvA;Lp3?67ItCW1U~zkr2~vFBNKB!j)+23jD<{JyVTx}Z<3>)IiI9A9w9Q~PfQRi zlCdwp#N6nS{+C{!hBD3W)6 zRp)AMRBtQXvLYOnDUNrEqKoy&hAqPXSF zH`+I1jlFSZPS4?j$;9&V<`kR@vWZvS059Z%rA1HZgoBBPDPO~gKBrFCyZ9z?SLx0a zLV`Q*nsAhJO;7yZZR}-@mGlQbhKo~ZtKtC-F-cHh04joD7{o16`-4YH?cS!SiB5Ya z4$i%r+{b}FOVe~OdQGv6+#u?c9$E28>cFz*2}zX+D7Zo0rQI)KqD{#%i5l-wJ^}4N z3Q(|O81%~EZ5C#!I^R;UM%QUUassXhFO!J`N~bz^&6Q_|x|X$5d=T|0D+=S~_L3iT zv(lTRp~ zl9Hw}0D)-GD6@(YlHdcvl6E94><+oI5&%A88_Q{aHOUw44V90}3-)l3D)gXIk-RaO z6VR}v)yS4BO$>XMn~`Jnm(9+~`tHezd5u4^HS5z2%N^M8=s}-@V|PdmKBV<)G>@xJ zhq1K7*ZRP!cmwoCuhdLa0?=)AmtVz8DKan%Y)*l|<1f#&594~t-YGKTO;xIbh#6DI z&N-4hyBsBJ(M96$kl!Dia*ZK^@mTJ#Q#X51+5LW`jPN`XXO!7*ZrNzJZpJ3NaweZE z?%4ouV6PR_QKl98C0?w$qim@|M4`YvdwAL?!P=JmhGdP>l4B3JHzl-N>*IrVe8ESF z{el2RtfW66YwM?Rp}QrVnvx7xrD|-&lMdQ-Ql?}bh=3v^aO<7v0SEc4Tiyl;BoPCWoo(nZ$UJ~^&&9MaB)Sqe| z$j@x7lG?8bK1c%oeBuU>TV0;w8FYXu#sV4SDVJr{T(q!JgT)`4LVctYg2~r{GU(C~ z8P}KkI)5FEy>|9hGXSdqp)gmy*X0D6exU#FzY-W+^$h;)Ked1BBP{=JtC3Z)Z-}S> zjUR*vx!!J>s8}2+Q+sFDoJ+%)k5aHFySFw%R0eijR0Vi@ziVgi&KDFMaD5pT?dTIa z%rQ}9-q~ltB-G6m2W@wML0H3ZH@3k2(paQB`YN$BUa6c+ZhYOAQ;act;K6v+Rb+Qu z9n!yTr_9F6iY#|<8+`2~F{}<(mT9Jlq5&wfIY{MGc0oIw7N@JHC#TjQ&{T8!6tSUb zQmhc&R1!hAC*Yz4ZgOEm6D&tiiDec%yjw5T1jm;tS-~g6K!kV|-3E)_cnC~0P1A@x zXvwp2q5RUP zO(zhdEc$pCUIeP#2ru&JFkOr(!R54HzET@T&llUELn|l`WFM#9gu9B};4}JYY2w5x z)SPy5F9U7Z#sw3hpd_xwd6JrXPD5UeRdgW^LVXtEe$MMyn+fsJ>Am<9A}yW_KML@% z3Q;GP=W}|ete{CY+N0Wx$OY3s;(b`Or2~pjQVZ>fde55xRbS?1Q8nJcRWByXl zCSS2FN5uAVSA0uvq5^4E6}J=u^N9FK6rCPc8O_~XmKu7`J=|1tWZt3hA!&<~vU@m8 zEaJ6s%gOZo@RNAW?T(GapFUEaO0W_WmbXSL9nz#@iq!~j%~l*o4nT&1nL_Q&i+)@8 z1UEwQB)Am`b%_+TFd%v+`rix*>3ZR++CAr(uIFgp-7I_rQ6*C=w(DkLpXjKAuM=cKSxKNZ{IReaAIfos`IdHY9F5%#ytKkR(=B0 z6#8<{e7J{W@G_)$e09htDxW4O7tf(lOqKKm`RH&K41^ZNDF~KV*1K}B;^&UpF={*R z|HJ=NmH&Tu_PND`x)G4R0e3t8*%RxmpeBce&3dM7yj2EEO)`w2PZ|cQx7;^nF@DCX zyrDuPDF3$m4Jl`_ULVyy7UvGIzq92=}Ozr-k!nNL!5q5KHC^6vaWQlv{S5m(LK- z+`tS=tTGG#%xy}Tg0G7o7~LI>4-Rwo61#Yw|4P>pO)8>grI}wf&)wfOOWXtA@=r=& zErcZ!L$EmbQqqQDDrG@Lzoi{WiHpy`lfA`8Y*L(l6x?&cxZ(RBv}fZxa+w>AG`w{Z z#net9BmDyZk(~ZOhm<+@5Kc$U=daYLzw$vK<*Ev&h?_)!8W_vXR7HQ zs6}+K5x1s7j5DkFR=eu8-R0h4suftYr`fX#Q&y568#4%VuKl)&!FT|KbZnqQHjCn{ z+(8bi=&f;@TyiH= z%D=AnLiO8Sl%?9FzgliZ#u@d+<~9QP$+`n>QY-~s4-=&qNEM?*4Hc;K3qnYq2Fodz z>DBr}PTipcbkEHs>k)4%K5}+S4nh1NZYf!xAbPapR1jyDTT-hdlSH(G2;~l~wOeVn z6H@#REmtZ;SSDLKkrl8W^=p-&+G}WEa)hx?$q%4ssXPY&dxB<=maYt1#+{Cwt|aB9$*ycgY%3Tk$h zU}EM;4*;!MdBFu>B!hgqxPRxZ9F0NxVzDmO17B<70%wE-gy;al6v^4k5C9rlyhXFy z%-j-mb6;rIn*%xJ9tPdv&U$yXZ0}h@t2Cu1j8}6tD_oeO8ZmczL(HO@Z!950)h(+7 zaLVSVST`y@JicwC2+xTYMdb0wAqKhCa0H}_f5b~YIw|M1CxX-xR24R{=iO9CZc7uF zgS$e6H_qkaTkYb1&mVwVy%e%^ttB90LZrrDr;SaSK8qsRYdeJY{g8FHd;~~^0*Xfx z^7mdgB)a`nlvHW0393m&1wQ9R1$+f#(%;5kS2K1CTp%z69Q-Z;aErG<7Q7|E3*|g7 z>9);o-3Fsv$6xVdWYZ*NG2IUF^>$`u*&C|Das2qfdj_czSho0sNmKP*Jp59-@n*bG zvop;UNVOR@4?ejq1V(q&Kq1Ho*)>6Z;h@SAr!yK|!Vl&dF#c$+Iwom@1Jp(IKKD3_ zRMQB)at;wv{zrd$OU{&kJV1NrkA#&qbvIV0{BeQJlVpq&RIRi1__f->L{qwaJBgC& zdU`_Lp)-&-?j31&P$G1;& zV_-`Ta?`5g!qO=0$ay=`siwdNcVNQct;XWvFcK=>Eg@ji9vOa7q4j8HNdi}Q03d7` z3+*x^9w*atn$fh+wWs1HKHWZ6Ujk}zT9N@M5!(c}`vd}?Z-*xPVycOJ&#d`*J2)I< z%VPhFphrdyH5aVja?fA;J4vuX51yX@bz{hcKJ;E zia)tCJ{a9aP}jaN8@siD0KdK{C@c+-iD_Rd1w_eRmYBg&)!K)+f|!MXIRljLy-+Nk z-cOGiA!vdU3m4Aolxxp+*j1d+A$H$#CYv;zTREutY>i$Jl026v^8wr(pU{>`F@y{N zD;NJyCcjMl!_xyZ98RD>wqB=&XMN17pgWfXF zcVgE&{1l(0s`fV(W=(0EVb+9Pox{S)+D~55@wM4}zeEKl$L|nR)`orXVthhi@v>eT zoCM#;nNAO7=N#(C7sVh-5~l!WI7cwcCZml@KSx!wBbsI zh&T1&ZB?Ikc6L*Gp^DGv=Xs?Oj#77b;sh@q;(rL^n&PJi|M))_--_i4`;k4?*_L8T zOBn~%nX$bf*mQ3X1DwzGkHtzm&g-lcm`Zo`dzY_Pvvcuf4gXN8hiz_x$hdb;AO)6d z-MWUO#qC+AG|}4}@OFje_xfO&V$vwz^r`qVZeltqmxTJRw`FfE=y9qiE)RF&eyV%9 zbhWO5Dli!})~WK0%&+_r+((G#)%KPt2Bjy5hBhp0-FJr=PJB!_2ZV^XikA-ki|Ezq z+{vHc(&~!1Q?cBw*tZVX=W!L=>SRLsQ~X(VXkIzOcXFJg>3a*C@jc65{97{Sg2lzx zS=T83jXKzgO|RHGy4)^#Cu-?PJS!Mc*vbsMV`*bia}4pZvr ziyy)t!2zp-TA&3%sRQK@QJEEeJd`w)*tzf9P6`z6KZlfIG`#E#?ns+mi)Sdx7q?uwcml{K3+dC+ zS3nLl-BEnN$|cNXpX}CyAcj~gl{D{-FPc#lP7~ZJ=t9d?8(xnj<@ANcpD z;}61+r#w*OeMb>j73VN^S1<~zR0x28%?9$S&iizn0t`yZF^voD?y-RM(1u)EESA20 z+)fO&MOf4-7llDNr+UBiNSvL#ytrdM#o=FU04|>FW_(90ENzil{yd`&I4IQXno&uw zAVj5NV|m)`Zs`z3-T5NgZ9?8^pECutoKh1+z+6U%AQf>6vTlM;2sgx61z27(#wAvl zT3wQ6nw=Kjp_SY;uZHgEPvcqGB=Y)v!=y#eG7-Asl4mTavm?t#mP9<61f3oPuQohB~}G{mg`J;L%a{6kgqAALux_AY(w|zl1QRgzehTJC6z%>fPDK;(u#}2E zVvGT-cs#Ai6~W(CfD>)>O0Z|pK8-SVYF?Q*KN|=tq3A6X$I|e(AZ1f5LHNoJq&OaPG>cCC&F3}(il?} zS*G4}2jFBcG_`bL3?fpw!&f-tcu+5~D&w1kt3}#$L`#T+?p(%6ftY#BO_`9nbtWCt zb&4AtAMe1y7hW)m4k0(!{2VEoLPydf@axj$o3jCNdPtI|+uL6C%Juf8xc-`u8*8OB ztBy}OMNKXn$6GYeJyl&~d|Q|yQ=RxY-TJInmGm%z0APN64WQPc367BlSV-uo_`6J# zxPD~TWc`=xN&m)DH#9v}Q>Q`=lm-_Xf#(h5L1h+MN`-C3o-ZEWYVQS=Hrqys1>}ho zq%$&)7()14|8$&6^L2I&12!RkoFAM_zBAsdF(1jjAPutshZ`O| zgKGw3y6qYPv33*>=$%61JyfO^>p+r$MEj|4+{)fwPsR6(V3wt|kL)Kxc|N|57GItf zt;+as$9pdxg5?eMuR_EQmyaU&_!QxSgM!HJo**NsNMWR36v_u0w@xs!0NN{(DDNix+3Dy@^gr>`#dwhHXX%m(RQHA`K8D;hk zx7llyhKZjrdI=ZAmyvU{A9*2uyos7%F>xt3+NB_lDw7IFy@i;#XC31yU&XA%w*m&0 zw**Bfj;~^FQFBtL35FmY3pCd4g3gF0SZIM@Ax5=sn=YC#PJ@8hi{6J!494U~@-~NQ z+w9j0<{fp<(&~zWfoP=<&k@m|A@CIxQNdIqVx%u#Oft$(BhnwA#EUgvleBh2Wch|* z!v5}0_A%^3HDx?3g zKiMzF?JVYf&^~s{r>sY-01a*{O9aXf?W!fAF>M}pG9}o-;Pc==;k?ccKOJF{eWjKdEFBij5Ta7c+i|cT`&fHAS4(ay z|Db+Kh5YAT;8yhp5E;9w;thz}J6=q)9u8!_c)n*oY3Qz z#@@-4V2vi?b&oC_* z5v13sGmgKBo@dp=A@_j}LEOdDJCD1c{7Ku(jGK~itMNH?>R8{t8nj|Y#&&E-;&#R; zK7UjZlRWzys&|iDgn=VRp!X}7WX6P)V)Y{^@ul!2H;CGX93~fr-T~zl#jH`do^Y7& z#%Nbn=>`3PASR?8Jcpk3I0Cg6J&Aptj@teBw~YDN<5gKVM5DcmK8gghHa;!WBtDHD zyN6ky_d!7;S#DYMCOfWH*`J*VJ?a1sVVL`cL8u?>Mg68QRT{n3!8{u zWa%k-Jd3I>w@t70itMjs2;3pIQsHw87=cWU*eo4N%CLEv;rS;tMFs)C#`SdkeXD(G z%Wq|*8~QCC_%`jj{I|~GRa_#*WOm1=1#h?J;$EvFB@UOm%H!1aH*CiMo~nblP_QQ$ zP^Hk2bYDC}OnP3 zAaE*%VkjDk9d>+PHY@2E5JyYp+oi0d5|w+|Qn>)9I4sd36|0cnKCRP>lnwo)Nq-{! zT;?Tfazm^i7c_+g_Y2p_D^y_4!a1Ye1&%PNAts#_N|8e=mF@#hfZoM;{(e^1m{{U9 zzX1mj9PnorC067YlA!7`7{u<-fjXb}fNCYe3CLx06|(@rewq?JUPJ|PVf>+J!%tOy zr+{YAT~$h={MEP6Rvo4hLZR2V`?Wh*KzEAEyhB$x?sQr_SfO4407*>4;*ZS~zL2CS z`>rL`%FBAaU~qTuSZdRXhV(x97!&dy_9Jg++i^`W5aRrm+>U?KIx0~leTq^s>NMae zL&E4vl`q8l@Kh?>(6le@i&ZRVgtC`=jpiWv;{Zu78CSunTA@n*+Obxk^NlCOTg0Jvd zIl{YRVJer5G9nTMmz?Q!^8tjaj=*V0Som@(t}`iq>Ks)lBg7m0Oncf-Q&a^!zJIZT z!Uoo1PEkz)USYkuD_|i^?jiJR5?^1ok(8?PAHnfB^Z4km+rr@OUn>ol&j2{~_ z7A~jllfjwS+iILWH?1`A)#W}sFRZb$K7Zic=(Z)LuC}Xp{15z-!uHD-qKbVNXV18%LMMc%mWw~)|LerXQVOA#ix-|_*f2>!sM@H^;1WS$9MmL z(~9@JVTQ!;M$iPyb^PQ!v)OOAw|y-*!Q!xMs@relYgw~q;4 zWlgutiqw;GlpHYGbkXRlWr!yZ2tIdkB9d5;-6aV`%aU@_h|=?d;06vK!@8Xo`{6{A z=DYC$u2$#EFG@Si(%7GM zMob^NQ8d#qL)he?_ZGpvB?Eb%Do|K5mblhdx8v9z{RQ4)te1nAIpAJP;0%3%H5lt! zd`~9GOJ$ANXi1N2^#vCXpJ`9WVFRj^LsMuyB<4>4mtdSl!}-XS(d^0pym%OI$A+i} zEL7@onKlUO;&=bWieZB-&8G9I3+nf3WJAr$YD0KAu>3Byh_Wtec~FlsDb|&wjNw)E*G&DEK48vE_?xYJ$pfx z+}DioMXlOD$GM5MGl8$0U#ft>YI6)u@l()ur^uU{!xwOZwMjttP?p}C2F~zA@=!tjQ>7~7)orDXr{+fNEdj|7wdG41i|w13*G?1Q<16Q z)tbWDegsaWVN^qNt?&4+Li7GKE(?%qyn~PcPqZgi{$Isgm2Ud?lDK>Pk982NFkS#C z;+3fOrA7-cw@<|Tuh(YtJBsj1-33#?OOv!4xsKH>(SdxzRMUuPc|37M0>#ApDWPb$ ziv@8L55lg<I_W?RZK{Fy1SBbOoC$WPBNB*b}Plh;dK|=7XgY(A@pTlMI=aVTMGxD9F%Z0RlEw; z_*_)yyua_etEQY7zWxP02{@DVPQN&AJLXD+83HbrPhd;RIY@r-5GYfj0TI4kj>uG3 z^<_+Wi)ZxAO&twKM=FWHvx+;A{g66C_u?qyN-OOROAXa{5A#&x>=b!T>GpJc@Ls%E zZ4Vf!9jpU9dn>-v(G(VDaIIrOpBksPvbb^vE@9}12fB*1$LBA9ve|hq@Vd@6-a>pyey%(;+xwkQ2|Y#i7=o*+Gw*RQvrDzh2pYI#@Eb!wwj^6_MffreNJ2q|&X zSFQ)!g+%qQs8s78={ zUgJS(?3ZfgbtDz4#Y^h7{0Q;F3o6{|H9-F<1n$FHCZ({F&xgz`5~3Ijy+e78i_nlA zx}{yKx{!_7z&5^5SqttyOlw`+wXd04l1H&hN+JBEJ%u(^Fdh4)!`lZxi5t@kbu3_M zQ33kjf80?}&%B}9Z8z;63Kc+P1;RgWy#8+B}FWTkkDbdf!iohixzkr z1;h%9+ojW*CWz+I`yc$G1QyitNl~95pKzVtjO?~7LHdUKVSTwhVH%R)Py$AQmbk#M zJz7s)U;QkSVV?Ni8|=+O`eBM%#k`_JdQdohGo?8Ew= zXbACeFOhfysEb(Qi!Zkq;zY03R!o#}6w3r)L`v}$h65(FVWu{6hh~IG3>)TkP8UP7 zqe?3AVQbywWlAxHEkSU`PWJ)CW3w#50J{3cGfVeJshod~eR0wZq^l<64xvQgm0lVj zQAa7B8iy?7;kkIH;zYz;kE-DTsq%HIaa@X0^=PL<!KaM@vDa)KbkICh59G6q&MP9nB^Fb1NzgVSY z9L+UDpEyUavGyb@6A|_G_MF$s$xpyfc_&+K(|=veWsY~D82ZcOXMn$$C1)iU2SkzT zVm|Zw69Ob~yAyT|)p0CizVQU9#D_4dUt zwHrPKLf<%4GQbMVgF;>u8>%Q{aw>Vrm))m!C{$uL$DO3umU=hsW}BJb?M$Gn zjy*A{)FQM>MEyM3Pq?Gz{{$k$UlKBLl)jm&WYe70W>?LI!lV+kDE;*nx-Q->AHX2? z7gU+f?^3QQFi^q~&y=QJkSwk7IwepAQ;NL zfwYJ6*4AnhqmWi1y_9M(T`85j-7^+J8zJ-iJFw6^XEftTgjjRH|*hEaNkY%oLDn8Gs36I!j?^hh zOq$vIzJ@aM7Y{kuTt0ngW4XOgHN*(QUOfC<`)qKCVm>|2mX}sXHY$avpiC8<^$E&| zQCLKIWn(eq{1=IS14MKwxd)r4!z~9gR||zb`h$BVX9_o-oEAV)@UPA?HcDdr`$UG~ zBAwD{BmUHuoo9BtCks6V}kSog3_KI^;OeHOpzCv&_H+QP6l^iL}qrEUb3qP z3m3y1CCfk>`ncScMGJ!@uUglxdCQn)@;&GEQZ7Jw%dz*>t~*mcZnn3AGl;_Uo&&M> zD`=1L?6dz7_HMkQ4{c}D!9uI;O2{vuMMa_$6ez0tx@sC@S!yU@hERANyWB6JRW)^4 zamVoORR~bWUi8$WEKGlAThOXvS>Xk?ch2$-PO);U&N?L>P-MD#w}@~2ykYWbFbbZJ zI(f&RL8!nH)%4ip-sGPtiKT(2!}VP6B0!WEelc#Cr1ejNEYh{d#do+(_lR0VLCO_7 zO=;j*h}ylNN{eKm7#F8Go+xLwW*!Ew8Y>FnS#^Y(8DanNP4d#{64B?OQ(pQbT<+4rm-n33}@!)dou_-(W5vLWT~6@lmB&lA-?$!@96m z=oA<(J|ggNnvav?-e=b*#!BI*;#VmY-J_|yCDcHiMq$Lx$njhZ>)-tslbcLbVM^j1 zSOkfmknhlgJw4U~Bg8|{tg|w5W6M>+L=T-ZCeuoA#f-YfEg5W*Aj%d>EshuOt0((> zysBEJh^8cDd;Ewxm9j~e2;P1OP{w1)>82@xZPt%0xcg2kxO2=qteFDpIAt`98j?(J zV*cB*-VqNY|En$kb zl&88=ZtI~gu(^yM-mNk6anDqYc8mTOBLkxF%du7WXj1ReTlM4oQf&8nyHNtB9RnS^ z@7{wFTtUsv+ASHm#9j7hg_tT`V~|Q9E-c2jrS1Hq8oOrV3$c?Di_s+{Z|M~foB_a- zU?Z+X399Z0AJ!d|cz-}+|Eu>MIr2=Rez<)mc5=gQDT%}H9>il*sRg;l1@gT@sNnFN z9(cY-f@xS%EYJL+7@{GRY_1^jnJ=yRwTi(^sH zSMy+I`HY@%D5-SW+lZuMyse@;6;AFFCSI-ZyUUiTS1WGh5EMCas7<&OC+82D7DS~} z>`^^(GcnjxLibE_S*#_`(dRhyA<;obkW~M}OZg{?&h-;RwLs@mGP`^WF~i zRMi5I?>0?a>*C@4c9iUn7|x3U+E&Npqa)|NX#8gak;zWv#44`$VWBcV_dfKoP{gI6 zPBlz-jW_rOTtnGI2qRw=;F=71SQ1%O9ZDaYgHUM|2}`n0hQ8UMm-rt{@0mbvw7k^{ zm3M&ZAE}U#YP_phfViIMu=pF% zn)Jeelodb}CNGjFct-vDsWOhQk#tL$L?)tJQ8hOX^WC3Nd>QLe1mq}w(Cxh(4;Jg- zB3Xh^I7@1d3py#;A9dxw=a;Wsi+^ifaoW(8js^I-zPfbjK0nG-fvj!;N#gI)FYh2~ z;%CWt&N;^tUgR`LtWSH+-1gE1f zDIPp3pKN+BEVoFm>HpWPJ&LKr1!Kn?2^$t?hOEBYR(;iI)+5GsE&(%lbXrPA70AZr z_2aO4B+FBnKxG1;{(G;tAyVxtj%0?PNGTOhySI18{_$y@XmsL~3bK>L)SR_T5cN)6?SKd}Pj-fIc*H{OZfbd3s#bE67tM~*1l$XOvPzG1UBqeCr zMYSVAntk%i*cyGfCV4VFMo@>%l#&N6^RbImf7Zw0SG z4JLg6j6|I(#OIyTV*6D2lw@k=NI;rkYSoScyaUd@>_eZ9NKEI&5kA6?>>VJK><#|@ zOnWNMV*$%^&_hD7_JM+vfwG&E1eF-vY{XWaMwk4)@5rm=>@t}?f)jUBmD z%&1jOs-WyYkp`Rmc$`5uiGlmE_UG$VDyZb%9%>!>YPo08I@C!WJh+n4=AAXw@%g3k z@7-P3sHFXVDQ=0!QaPLU*~L)l+a$Z~R+x9gJ`jv@@7*S)e~> z244(1_P)e&39VB7AHpH-Gkj43+vf_=mpN2OM7475&PvD%2HJSQ6RK=IY_1c(UA-6F&tg zsi6>1K`dm^BlI-=PSQd7gZ7&LI861fAq+HB53G|~2}&Y6NVmk^bsH$M%e>aQTn8@( z&aC}ZSB|htYN{OUH8S8%NlkXWpqgSu`qF@!f)qn#ofT^g3JTz+kHylaJsoP^yvwyf zCRshG1yGk#nc$?B)%^w3vm>)r+wDu6Ye8eBKL5qr+CjHxz*tW1-69VJ{Q*5pzBj&& zl%6Dow06Uig%@3?4h!mMwo&N8HWj3 z;!}5fbf?qVTjM+?HMkRAtM46X1tmdulZW1PyYwL+?WbX9*l7e^lLqdPVy)>ZWZe=3 znrP`+k?dP?L@-=3d4PcyOo+oOd|7&H0H%3w$xV+quBAoor%|)su3d|B(yj{gl6QC6 z;t(f2G%t-#l+&G-hy#p(kr#`a9@FdrjxB`S>y?T&f`xmFcgw%dSq^ld_N~MZJvo6L z;=u}GA}G?UrGqnN2*+8!`O#XxRTf#tTF zK7#zTOw~T3N;A<$nBzyq0$1S$!Q&+PqrYkwKMz_!e{2A6NFC|CiLxkd!=hT(fv@YFWxVMuM71&oL{Lji2+QOJA&MdbNsTV?L zed)a65{H6-zyaaP?3zxR=>B|{t@1;c7^+~b@vA`bEg^^`2YaV4AJ zn!LCuXZ0*BU7yfTkWvV1DL-=@?MRVu7!Yw}LTiF&y*njH}y3_;t~mwb7* zkn|ZbQM@_6)=A10^sDbpuuhd8GKciyth4kopQiTRM|IPW;;Q5P`mMxQ_DcA@N825f zl+pZ3EcaD>5FfMgC7eloWEB#6nP*%zI=`E*3D=NH+>awcP24M(hwCs2r9h>FB!<^u zF?hWldF5j~K4Xenw@*!qMN5}B*I~AWpRhMYtOh{{0q@=+Y8D@sVQ6T8V#0-Xiep$3 z0_}SKc|UdsgD`KK8tld># zYU`*{s#c*veE0}W;@q5I^s!q^WL8bY zbRa0F8R{ioMekg1Np%>-D3!f8%?`=}{5an}Q2`4N_KV+bXFl{5l+5v-Tnh`U@qJoM zvUVQ`tx`PkLOSi&e!>m}9U{6x8VJ#yl~^w>-7n3(t7~Q|-OdD-^Dpl?a?#-W_Y+j|m`*hx6;blG6L^(W}Xcf3ZgTA1{U2j4wv7* zA>VPECP*3HJW)raCHaT5YN#=V^sKqC8ip0SFNH$;g6Z=>OI_KjB$6I`F7+@swlX?P z$C+MSRg}Y%3_1#a+-z$%<0upp$KDK*>fd>-sV{;p(#%kiz&JDh==O8OL@Ew?z|6Sj z@s7_v(LNmi-oQW%mHzei6;oK7D4mRZ64=D!M{MCDJ+ol2+*TPT(~}ZK7@Zy|)GCWN zHl--Q8@}`0W!8GvE>z#84{=CQS|DFz*GqX6rr}J=y@RoJLE=74cQqh9e(D&twDNSC z(^PjSh=L*))edI4o3~tnS++mz8ot=@H%S8l8H`CE7 z*;%Hyc`%O6tMtn!m-nl<1<6c2cCLqGgD{ znmWYO>wPo5<=zlP&EShiK};MPfQvQf;dtEjx{)Jv(+qCWohSvyM~G*orsK~K+Vf97 z=_|88bZc`ggcb^{@=op&#Y(B7U$%~{yj>5e^OBq(?}9*?3Z{^5e$fGO5c;ZAA<$!j zeljRM44@!C@Me{Qkw%PdqcIUvu@8k3w*2MZ^(%9|YB|8Gydv2iYSm>cTS^ocuErcl z8Y)rfZ;g8DNS#;Wt!g0h3xDA3c&J5m)*4MsL7T|owM~Jq*A4_b|&XCJJxdMwX?(> zvTr^~Tz0-kpG)5h#D`;`ueZy7r{Z*u`pR0bl)?O*E`@zGR-IWv{yv5cMP2@R|4^wj zUo-x$WRO>f=iYtbbX;h133zmJcI4;;SMi9WlReKt&EpTxFaCoMHT=gL>>Ui_t*9B~ z^HMiT!h`PwpZ4;+oVoEubLsgZu^VKJ`6s5{o0fZmaqX5Y0Hwi*-kKNaVM4e&6z^S| zA;O0)*O5Ye6zO1U7E;*K3o!LMtrYSQ_Web7#-HVKm6Y$HE|-i$D?H zn8xTKyn}|cMj}#pI8IZV`M6j8N3OH#KCRMdoP@~lH#Sa%npt+2n&uY3lMo&XPpI#A zW!vZ|Rus+-YPcfRfK4fG?Pc_t!L^wm$t6DEJ2P!%I1~XP3Yp{EgSYmV4sj~I{c{H^ zv_en^1Le%%!|dGHh%Wws5(^Ed43oJ%Z@Za~=zD35iul&B2O9#k27f-@rYdbYfAKRi zQQfu6A@$x)2fJ z<-Yg$+nEB(wHMH%Z(n@7eemu0uq>D&26oA;b$>W+3EDYmL`)UHmx;)G2KJ55Znw)p zZpvQo1$j994uy^95Fu@6ndZIHZp2zOdYIX>euH}P!n}7=kMtIV@p0i>&JOqEv52HX z-rh?!K1pSbaPqNdienDTVXHZR%MejXsX6RH*_<&qGa zTAGJRTnAegU|Br+;^8~g1_#HgQ5Dh>Z69Ro-OMp*{Q1v*wtY5Mi4;CaOBdkId3r35 zen5Ak*f}&pT&Ggy;`f>X|CtEWEK$C_a$fX~zu!QJg6fP@MX;szqR^m5*u{g>jC1my zj*gB?jkcypq;yFFeUQOOq65X_>uDELX;Zdey6CcA*8I>7iktxU2Mww5Mb3geFAXVr z6+h#Ov1H<7suLUL!3AlFj3B|{Cta{EJ9BbPj}0(VGb!KY zZl-#fJ8}|>SvkzIFbOuedpW*LF~(`S(C@XUtbfmOW|5XleLA<=(z9E=Yis!9ZlpRt9UoE6v-{Dd~-|C*6^r}EeG zo=F1xk0X>#J1-CD?%9r=v^94+qnN*SznO>0R6<4Se*9tjd-3>txH9wq&3w*q7J-O6_SiC_uA~ z+ExzDf?@&mfO^*~t+1>aSP7U<2F*LXB@GC~CC;jcP(Ao+yA_{Af-kkl>s4tXdML4s zS5J7g58;q{qw{K#tzdl2YD#c#aMFuQIw!${97L|fbFL{_rz%DBlWOmP$*KG)K1CQt z*|R%E`E4l~Qv?>Ro`n!`h?@X#wsGaud_qq(87LROjU#v(7}%4h1qj;`8Xuf=LVxjT z>F!S^MexTVD?7isyMlJPr((N7*f`VzI3PdI7`R9v=58ADGE;lX_L`qy_g!2XsG5rEA z>#+k&csiNTH;>)Yzdg%FPVROJqg(f|3(-p z8P{=VKGHrM?1EOSt`5c?g`_+?K6=*^4Ux}9ilw39g(FB#GP1`jGfKHZMr9|@i-X2= z4_XRW7mL9RIx2xMs%#OA8Hl8iD@h=@GZ%FU6-xBuw$MkhAaKBYe8lImuO_EieW8A9 z(elU=Q^g4#ffUr^Y`XV7DN10oWdXp`Pqrsx`D9N%_^vPN77L6&VP4h74!r~7eUw%A z9^ymr<2(fqLQjpAtIf8%C_sx1VsT>{W|T|l5BIavVtx~g!B_!;5R{;Xs~ZS$1b^}; z?N4G2DCSvGP;e+r{P-ST3rntrr+_HVT%BvLaS`a4m@T=5Q5*GuSpPXtHnOa5H5z<=LCu0}H^Y$T6W_e5s|e zwu&8}0z_%})u4&+@9e3LbiiR%??2AnAHpqy5GjvVHru*S4YLI7AGEF^;T~!0w21xn zjLu;V;Lvx208YGRU4U5y=Yz!+WG?OGrWD%}qw3EzO?Qxod-Fey_6Xm4tijjs>jm~d z=5Mij*~BG!)yD^_i-L zlYSEpNXdd(28u14QR0RW0WB3AT+kCQpgVpumY^X>v9bs4%R%O$*^0?`SyWE_ui#{Di-Nta{%hk>k}=M{ z1g^rxmlCGHtUo%ujeNwxIx3IGdwMZehbH<&EE^bBl{D?`XKmXFSVm^`xY}3*-cQ_> zt@rEkv2bD4Hy$pI$9IM8?X!w>XYhniVnw)~MZJxW-|3N+Ak=UTcE?t*6`#ZiWrg4<>dgHTrq) z@)@FOUex#y!?dG^V?Sz^1@0iNCSoyD)rBIf{9+pO3f{`Q%PFqVQrJ(SYXLek`0R4k z!>SD7uj-E*TUSPqz`cKz#rv~3fp^+T0mxu>aqJkUeBVprSAD1uHjqWy0w$1_mb&Fo z7MPv~TrCH=;<_&*JLxCQ<6<##l>mTvYb(8A!^b2q98$zDuoZqSgW(sk`RCimXtmAzoIiREkix9APq=w~rSe)& z*ATHv&+}OjU_sapSHh1>bAhFb596S^mt}JG=!L&47ZFz^)`c%r9nJ-uzjA`w=uT$! zMslcqOx$n0A5w?&3OrID*lZF>e>6&~xC=5~A z5~JFHZx0QI1g`<(meD)=!sD^U*sprCX6G4M60d|zP%qPI3CH$e4R%{HCjqpNJOMV{08F55H(0MZ;94AEzqKk%DLXhp^;ZyC& z1T{VQ3eBecC&Kv|Fxg^umIE0V59JW0VXBUCr^}Tp7y+!t&%(eMSup&!BOPi*r?7Pi zChp4(0c%ruMwSd0H?FD1at8Gj&3!43QAmj;mxvhV&&a~X-!J};cJZx?Kfm~MQ&}|kn@tm5JY>cG-s{@dHMo87;dJ3H{yiry-X&{H z)QNShzvWRoLM5LM)-GY}KeWiiXe!;#1_3a0F30x(pnqh^qnc`2xledH1%G}fpH;FOS zyvc`1nv~9Un?&?*ka}Py9{2px7)PPYW*Q5d%hGr5<{J5-bdMy(wU}dMvV|F63?cbc zuf`+P82N|3bn+i=pUDdI?~r7O0bQ_IBxXaFW)C$`3XE~ToidZ4m}It_)C(uF6xzbW zs)HGhi6PNxBi?`wnU0(s_6jCHAX*B0c!BC*yQlnbfnJDiWS*++ixj{wL3S2(@YeIq-Pm+V!@z7C)$oQwc5HY^lUnT$Bec6d95h z@H#50MtD!u9F%f1%c`A)PWFL=i=!a|pnm^qPw+>q($Xnwy#u$Vu1Ma8e#J(kHV(Z@ zygn^3Lc3-8x7urQk>mtD$^@-d|)VYB&f_SFDj*9t-6*(|;{-2f%dkJ3up&S=56{Qz^TyqPpe4LZ zY`ONs?7fwI9$y3veG~Z?5}`NR%4`~jDn4JeX-QYo>&ewPfNan#JkG7bA#V!d@io=Q*kdm7EmQTbR<7i5cLwW2{Lt0~S#Pwp1D z41s_QhJR?t-~Ovs>5D%1}f){$M=dcGtHnDGFFhm#kZlpi8r&xfE ztGg{@s9iM^<1{ONtbP1BpSe;`>1;9jWLzvQZJxM^KRhPamkX8kSETrqO8Rct*s$E4 zF6IX=)eU^%Ora*9ITwYbN^JkpU$l!K#~T*|q2fov0s<&|D@y0bPqc4?@8dDjl*NDB z!JRvF=w}nrbUa_A7%OSf$!uatJ#f58+*tu;EwEP0QGunqy4J3Fe^=#or*$8l@>1EY zFg)BJ);!~-t}y?i62gBlm#UD8#O`#j#8tU@!>GZfA?qs~-l$w!h^c5dQ+}(YM13pc zYx@+KnrffQC7`{9vZ6)clN04yPElgUoj;>t zZ_oO;qG>I0dN)wT-@vY(Wgi;lEG_R@5>trc+76XLlryB>qa~Hf1u}TlGZA+(Hq_I) zl>8*#8Bz9bh~JO4Tk&AjDcx)vaCP&jL|XCh@S_Nt6YdI8s#In$E#i>)kH5PvJz|C& z4!g(wg0baR{lxTLC0Z#7pY)e+@M1gx83^+#PK{CSd%1#KMKX5R(K`{Gj5v3yd18Ir zZKGfe$(|{7TJiiR+^h0(&>pi>pW7f&7aj3plah9$c`4gM=EGpc;@12;Vh~t;z8Au_ zxs+8_459Y;v&?tF*S*8uy+vKW$TSBrkc5L-pv-a{0C1t=%Pl(c#2*ww0+X!F=Yd273^Z2OqD6l1~K z33gh$>0a*w;PglE^V(Ej2|8`hNyHr`cfN@O2L-uEY6Dk(A&oI8k3nrk*kb>YNqHFfZTB( z-943)<9V0vv(f9KyOgmSS?Oo72Xtl;WZS5{)YBAO$l@(Fy9)QyHW1B^oMpfYMJ&W) zmrdBbfe81I9G2A*132nDVR+$5Z2T~2qm@U9xYq`-bcg^G zeh;Y`51hP%V|!9g;gGpUle{?OKTq3E89I(I0yJMZ=c)Dw*(~EL?b+Bk!gm_)pxFbO z{JTC!HgzI3RkJHZmfhlbqh(%(JX{=@${5}auB6E?XlMUKv^g~anVP#9pWj$%e-uxU zNt%7H~yG!i~B6XIRw8tv=m3fbD6cSO#IYr~M?Y(%pS`!u~ zLNo4`Cn*kTTM5y63W}}zNk|`_T^_Ivl%WWb`M6hY0)R-1i_6y$%6U^)T7^XuKq)36!dY8yT!%+{CUYYfdY=Tfl6 z^!1cnTO_o7$FU2Alr7P9*r$iN5JWybg$qv7@{vYRez@ksf!c9fP$6+*^s>0a_(DZJ zthlfp0=JX8W(w3V$n?&FN-5;zs1#Rji;Qwjbj#5wk;mSu0*RI8hC)}|g?Ky&O*UKl z={@ZUjkKoB1Wd0{3}UKg>xV&SVrQt1_^I=GA}oow#~->ETt2piGWVTDpPtkV8j_3J zpyGsX6A&};q3nqPh->m!gI8YsWc!p4Q&ob(fdzluXji=RD+tV;QNexAnJut;K)S)7 zIqGe4%Q>U=fup%%7JH%-z>8bcy)C*D0i?-93a|$!&|2U=#)=YBK?82TI;xs6jtI9B zk!Qf4lQ3XBYe)T(7Z*%$hFiviKR>{$l3DhM402B0~y}4hrN^^cO zWSkP==w$M4SIv&RyU~u4;S$@v+Gq_qAx4%>>9Tr)lAGspdWzk;A9?tk&XX_T@H zC&Z^|D))*H5YL;luMP-h8raVVrGE};ZCH@BSr$y?KyHBBp5XXjz@5v&?T?l6G{y-5>d*g1PJ{JBUs`r?4c%@y> z0jkO=r$4h!3d&J|Xr71_R-+i{JExhYq7!mu$HeDjX#*C@#FjCl?;Cyj?tB6?n%9ZvB(?tnV7Yj>E(0Jq{wC57Qu7N{VZuz6%On z`4g)Wgl45pyW zW|O@NVY`H!bpIoDMv_yt&1Ulhm7*=#2z+rsz_Bew*o;uZK=t=-l6)w+(J!`b^DYLRR*k@m zW7ewUyIb%K)^Kb>0Eslw1-C_Ir{F+tP_JkPfh+rdO%>v5rBNm^L~P;3U613qgep>AJSc!l z%zOCge_NUizSUOZQ|ORf5SE|I1SRBa6k9>r6g8M{u)NS+B@{ITy==qL!J3`IA06pp##mJgP~8mmODeWMV2%I6X<%-&L+8?kA`lx4uiO1l)V(-=VBV75a|B7m6Mb&2~U%1?;4|5l=tQiRyNfA8P-9+*=*K3pyq8KFO8;&NyWnaie7_%$+-~Pt83?hJSV8`J zX+lZRbva(q^Fa6fXF~nby7B0XhflQ9Way7E4AkkwpTA4m@$9Tv!t{?&B*W*1GY!hY zB&1kCasT3OZ^9x+WkRF!#ZXUd`((XvviErpA*2ybrZfP^Vj6CN zP{dQKr2wdwn(?^O3UkbL|71y;UkENJ53rZUpDqb;NWtX1uij0%hDA`m_58^=mWb8> zrtT)OU&M*_a*_l>9~iEoj{iWkf)1R(F48fy%^4duP10E z#BEw@#u%ByvZ%9R-djm~lAht-?c=M)b7e6+@R=y0Dr8k0;x_cZUCWJDyRA}cS?Kbu z2nhu6Qz+?|oX#LK%=nV&4K$2Tm(a%*a22z>aH#CPI>~I8IA#e*5Az5o)iqS996}*3 z_#eT=u|4LMIF5UDt*yQh=g`ANbbAi&+h$d#BU5-Tze#P4%%HUYAiW!;k*kGI>mM~{ zhlowe|8jS+MekwLKnY4)?in0JK?mO@aN4`e}|l}HU1 z0_#Qj$9{Ncy)>`*G9QhHJYF7&^!rL2ARTz0fBxhAPyFKI;a!Yl`h3P}@q(6f{BUv) zBgd<0T>XlVA2!462@cf=v=cvC&JW&-e*rL?UnPugW#ItDyU9Nhtu4-MPa6iCKHk?) zCXu?5b3U;)9PG9DH>Xg*EWNdo%_;QxBAno@5bu~+x=0#(iky7eQIUlJi(=6i4^>o~ zOTdZ!TC5nI|3rJjZ_tcZdkq&4zXtqC>_wkSGv{SYE>sabRtP6ixO=Ba&ZAx+G&*$X z=XzIb7O>ydDaT0||=qeX0Q0KME-i$qyl^)Ai z7$p;{nhsFAKf*o$593L??-k3qhF71s5M9_wab?lyX=#yWsFT}zB&G~;=M1@zu^_^4 zwQUh$Rx)heAc;G|B1=*irizSfvtY#Tu z(xWu)`=qMn`1;Vn5>^XN+-X^#-o45Uv)`fAEkzv8=)8=}!s_L+s>;u-i0wukW}f9V z5Ve+HLzOvCaR%ZxzC}7R{E(v^q>@idPGKlabwMssbA8np5DSbz6mx*g^<=r~$f>Jv zL&48rq^MeTDfyzhHI>HrTF%wqv%6dVT}+Lz)rO%wEgj>wVF)h+{RE{<=0#No>$`EyFt1*Xe{UmPHzMMdxwtG17{r?$Kt9JUU?;M37OwtD)alRc#zsK)(Ro+X*ainIC}IC&5pt`^}Lw( zxi{JWH<+;=<==^Shykk437l5}++4oEyhTxPS$b3}G|=bTM;u|}J`DX9p?qwr&$d@V zR$cVJ#!Vy=nm#6`ZJqeHPsXc;Z$i8Urx1g{LThKS67t$XW$+nY_jIa}n zQ5L_1`WQu4+^sLFsRm6?gRQy{r{9s;N+l%IB3y?+iKmRo_^s62fin)rRkbRPaQk=} z*MkG4DSd~f>jHD8ACm-#*Q_HW1(jw)kFzNp6m*K1N)ShV`}lL552oLME|0(W!tv9z zl2kmJ97@7&#P|WnFbP5z0YrnJ-8*r#FMhJUU`C{7SQ?YKNswN}P-$Dn((_X9*H>3Og zWdO30*clcA%JJO~e$({-f^h0t0Y}ztC{yF`4fx0s_a}5fuB0L=_V#+5yB6isTSM40 zS;xWWTkT%_^G)kY>}8H6cKYc5YVPqg1Q0(Ne^Z|NSs%ooN8H?LQ%w@mJc|R9D zPy92T0ogOvqVA1d>! z`B%-mGbl(e+=~RMFodg0Afn)hMVyQWBqZjf0bNU@G$S+>|H{rB$@(_mY2I&6@A+Mpij*gdzRZ2o6Xr-5>vEO(GnS)Fn;6Em#K)HfB024P& zlZ6##n{J5x9Z@_7QzCuF$wJDM{MgI*O#6)QBTh)ko+`xxqsKwgYUZK(%{+`Rk7!3) z0u4yq-HeM!H`JNsU*OufnGThgIA8HzG#4RGyCjP$OQ@(0A1|ovFS>u`Cj7FdKesC0RS)EFD z31cVUpy(LF?z3{R>v+0^y7FKjstq`nppQVa1PGrxNP$t-Wq&MP{``Lq`3ChQPW`t@ zOGc2P?aQfw63+#jWAt?h5$z_S|uba-!ZTwZX{HLrWnvKbEZu zbNzYNSX96!tS-CD1Qn|bC|&_7YxL#0aWnSSVYKnUZdT?z7yJO~O#f4c1+bQ|VtbK# zR~DwM0BErHdC98k%@q0wk{X-gC&iG2Z>TUK$wLvk$ zri9>3F{r~L=LOe8T$Dw1L&STXA56Jw@eoFO@uk?N%A-<=3r4K_Q6xmiUYkqV5s5?O zi&uD!fO;|uVMG*DN<{?OZqd18hPL#^L}n&gNeH`vo4lwu+q&tsh6nO)?|2j>qCb}} zC?}v*b(bSHO(+KWJuB&Pjjv|hEArU%wsw`Z%|`v=3ox@OLUfG?}YjH9xGK-7$gr za0eaRry%9`{R;3qmN4YI}ATPXjXr zZuJM~2!58%!Wxqr{iju;K&g3=4Tv zBm|%Ie0DhzJQ$5D@bh`wBzHzMXjZ^j=}7E+jaCn9)5*lF>^7 zN#rnV{9Z9@3Jgkf);-x1Hj3XQI#5oRBV4l0i2yI<6UN8yg7q}edjQL1@T}({Pcty2 z;;7kK&{tvF9ALuv)2S!^Bn#wz)wY}_W&k3^XSJi9`Hl&k4RJ%hXbObf_S!gsnt`HI z_jN(&@>48V@aJlYD=XP2&3h>h$6<_nx6%HsMTY(2rL58L0a%1j?o4dWiy*6l(|zwnB@5t7$HwH80_KB)?#pK`gQ&$EV1X#q?A;M7#K2oEay0k_V_I6)8f?5bJpia{4a#xr^HSJXyS%PqbG}PJy0F zBA*}}_sHjilO$WsG5bZWTIS7nTEQk$c?UW6R^u%Gos;q8(zK|Z#%JB^Q$M#x$lGI$xV);#kf|Bw(gmI@jA=&vq*-X8sx2}hF~ z9E##=6BQYga}1sWoI7=2Qm}h1SAz@dgr|l@<{ie=MvKHdyZbTCTh}f7Lyhu|cl1uZ z8IFL_=z%{<*?tLDHOb`N2-siqN0?d1GS8MCx!N}047y3Bufz`%wSlk$=!{BX|3#q= z?aJa?LUt7VI6*=hq5b6tKlLVwkDa7O9{Bzr{8wT1tOB>%hHw5=Vh09|s2_9!e5v&p zuEML8EjsJnAB#VZ^@yCp>~_OF%H~bom)i?31lJ(!r+&2{1%vs4VA~HZV zc;3iOS`A1=R;om=c|H~kRuT?n5nDy@lm4qyC-x}CqI=&`AndB zBQQ-3o5-0xg>U~p4!76Xl~@ebEXB-Ngbm`u(_V*WLXQqf7}A?zF9{9CuV|C4cGF~* z*eha#hBFIa-qaYHo|d2;zv$Lrnr9ulnlY{|7g#)C;M*;)jGV4uNtC$70yHybDL}Xb z)~upE6$;IG`dGz`G_;MKYxG71@+_cge8lfG>dHH!!ilhG@t>kIq>p#Br~U`ERTnt; zo(%J2hT5A#7=_4sgC4uKC{XpGTyFO+k#V+Hl=KFQz?;Ib8-;;AaJ)Nsl`tIQ0O5fK&NSe$qv99(^HZaDOWgO4gYkACZ7CX^#+Me zyxpFQOGz0+&9Jz0+S4a!B)pf_18F;}s;!dR0kDMx21UwA3Z)2#7V_s7U^*zl(ka(NGIAPKU4zwsWj` zix#76tJ{9U$J)o@2SJ=lte!a@gtrbHs|U>^&n7JxuIi)&x^L@T7ghKcHCZs}j(6)c zNC-N~ejJy&$T_$gb*0t;$C}m6;o$txOwE+QMJ|WHjTwhd%@|>($3B)Z3B2HfYi%>= z|5|$@XO{Gc85+qrBKB2uFLnQnE|2wgAawB=R2SIhm_ezXQ9P7O#;PP^YdzdGSvBdD z4N^Go!A+uUUjC7af&V6#|6J{`!{`M?fl6)Qb*3f7K_bg9{?SK(*MlnVRnYMX5E>pE zOH3>KgCGfNa29#8TVN@;7CZ+%6h}ixJ>KJ zIyc=L<_odn=U-dKUvJBVjuXWpj&tdDZJvGPhQDKKf}R61o$(@OzitIL;Jl}etJI2d zS&D@9D-avxDQCq<*heB4`MbiG5k%7x4eFI`MYdAEQ<@rFqqVuC4Co#V3X3tq&AiVh zClp}vCQK=!^AyAz_L%!A(R8A$&TP3RZw z5+o`44O~n(-2ohg6P+?HFbVz%_b>vjYCP+Xpt8fB=8iL*w76Cv38 zk8}GT_Y7mL7vFCeKMArCTS-w*w4oldW*}JbzSO4nP- zA;~fB1TZvF6r}Fiyf}kZOee58!Q$%f)N_KddeY_xC9VH?c(pJlvgJpughqyV2~sz{ zF1J512Dd)cZha_T+>6_%$Ls&m2N36rX9=x??jY-mY9Adx-o$#aod%#stgsh$947nh zk{57lK{Z$0D&I3&f&qv*DndtQUFiyR3DTC6xCsayqsnua4?G=rXbZC+TTz&6mKR>g z6Ci}?e=Eva5lv#Nqc{Ge$$Ih7WVzYSN9E8r!PKymQC?)j&O*k1zGW;M4y>b~Xtg1C zHhQjMy9naa`!jY%3`Ua0ePZQ30AWb>pmU2NrOsS>9&mv5#~Q+Rnm9rt9y@2{7RldI z8CbmM5v_236I+G7f6A%mkKX~ha`AJY`JragaOdLoNYay%aL|!o5W&!IymVa1gp}u_ zJE*Y2Efynb{N&*_C-y_ZnTh&l`4hc>-Hp&*uV|D@+*_ka$ZZ^EX#vp`@iM8FxGb-= zKm2(78${lcWWN$e`jz%{&!6Pz5jPJ`&suAQJW+W5hJ~?%tDxsmWgD8-jX<=YWAn7qeUbjfA z70@J9tLLawIX5d?w#+sO>_9-7ps~O1k>+mIPu|wh34Kh6su^@1fe|dh;t-K6#iXmS zSDe_ICy>)k;@tcP_;iMK6sJtDS_APe9^Psnj+3CjVJ7Eg`4%Y(l#YnYUV_pW@<5Qc z*jqo447p%!5Y#A{I#vl%rleVR=rV$RXhVi9-};T~)`{~)H-vH-)wb%N%}B7v-uQk! z=8nZFffTGR3>!x|iL_vP1Sv34kJ7Z4zcrisVRBY*APY*M`#?<{PW>qX5yeJ91u52X z7MgIQJPf7RgB-UAoJ4!Zu4wdF@t(w1OToa-0_^6E$kwmU6a{s6($}LS^0}#}{-|Kc4{;}J4@+!p z%nW=cKa{%P(fq_4?JWrbJh*ilcHs>{x!nKehq+sTy`{5}DC&QeBFbvPV83&C0)9YqqPXYlGS~C>^ zqrMc>*tmfgyAeOp9s-O_=;8E7|ek5qOS1>;Aq&ks95HAswxBF{3EPzA|oKBgX&eky%!xPB%fm9ZZV z+qe&?{Jr@;KSvEYY7%&kIO{UN+aVlULMbqOCgNaf*{NQna((F|;n`l4K3Nh73if#8 zXgrLPS!qvrbPiS{-Ykow!c)&d;d>Z0c4MdGc=kWVzDZI(mT@-KF=XMu^*62XfE$?g>Oi{?NTnc+AGN+wNs*kV=$FexY{ED-Ge3cd{j*|b=+ zq6{*s_I6Zsma?mY1QnRg6A#*JmR6KfD?TX9ae1nE7j+g-MO@J8z}6H*RoA7xobjMW zY#o9g1fg0Yzukpz-jgn;omWx&4I;(fU=P0?S^Re=Nab0^AMI**h8+T7PJ`f&zS%B* z6hG+6DT;(HIZa8*yw2z2V;~8t`+Ix0^Sf6bLHTT~3TtnkP%Y*Y#_wri>Yy?3;wkO+iU1|`N`S3;F)9#1 zPWSp2i&bD)*vt3eNb}O}kSO#eRgPQ!r#bXC8e+#!>1a)b1qv8I$bD?Q%q1%bRBq07 zm<PMM8Rg{+V?6g$@Z9=p`*M5|^hlOiVsuVR2NYZprZm}Z zSGx5qC+PtA!ZKL$ZE2aoBF&QO{d`p1l^%stZGxA!KA(-SDH1bFe=$seTpY6m{8?B7 zX>G5I&6DXbm;h8>*OTaz;KI=f+964*>92pE5C24cI2T^FRsl>(IS8gR)wFdpC~n;l zOpNEiuqA4%Mq4iy63D_$M&<6$%jQ8b5?rVrF*jO$BxN1=jf-}jhSzPQ9t{6e2*n?U zX^EZj{oo5!{v_Sw$?3b?J@esoU+tAN+`+7hwPG5}A;ZY@^SAKFl;ST!Z(nJY-xSLe zbCSSY4^ah?G$bhgE$7$|+`w1iU_HNROZkY}c2ij=*wDVipo*fyQV{zJvUeG6xq=Qz zOF;RHQMRxIOCl&A)k{eyf@2BxQOIc}lUZ0+IWFdM#ccMHQr}3jRJPB9d1w)A+Ct@QJUHOTv<(Y@b_Q)VY{zFLgmLY+A}X{3g}_DclvXcO@tS za!zwjlue-&2IC#~OT;IZUmLX26v8DV4{9`F9)g4B^wkRv!Tc{$ANEYy5cgAIuk;A!QxYX<6}G#{5!5CzL!D+u`FcwiTH*w03(We9~9C3&*~l`tkw4%vBZ3`O;6 zGiyvt1IZLz^XUB#XsY|G_)!vw_XPu}_0A8xU;(k+!tP0pwe%l{xO;q4W?;eQ9BR7i zVYwpL;Ip$502`)=IOH^2w8TtaS=6&3@~qnIf$q{m}zkAA?e zoF7=(BOD?vImBLrReMw|3Asiofe9%?7q*nU7L-$%;jb^g7lcP+6x*7CM_g4FmSAi} zP!k@9P?hqEN1@tzLH47fTcNp+i7tn}Rz4#2rzzoRr7XwUl3@ zb}CRWh@`AXx$b>T3#d%r6091vF)M_Y^hN3)rDOG(_Stk1zjeW&A^o?-KZ4LbVwSrV z+>=~F(3;TA&%gi=|IhDQ0C4g5V!hhU>%J$~74$=t1*wEP1I1MUetcq9>^1^Or&5@H z#J0eW$EO8zacRl5QA9TO(1XTz<7I;mss+7Z9n=R@!Zp64sDd4aNgwbNf0HJimg!=P z(bM)51YI&*{B!MAyc!ROjUE^AINj;qI&b#b?W;D;E!$P)IL)RELQ7;U2mJ0?9WST) z1}p-X?PC5;?mA+)un4;uQ<#NX5hC72jxj3(p}Uukk8=Fit`${2RZAB+V#h_1;$uzx z8B8LDh%l$8>5WfDEfED@pzz(IK?Cl47%#5b(DUUJ!9WvI#lW$fE3`-n;OtUO&UMZpONaK)k`aX@@pn6P=7aBk;eU+syLjkz!=>CXHChQ; zp%Rg2nbo_8M9ws8_v=%%-CS!cmwmRqVV`mlahSSm#h2?ab&ks~dV{N-c8*Z2*`2Z1 z(x<`FOK^+F3#6)FC*L=~(|5{DHLeoOUopCZUxMzg^e2>OxE~H4C|ECz_{UCKbzKWh ziYSn)FJ)0u!~{~+<=anS9+`u@(!43vF$tYEJO<`d4S`>@-~DMk5!`W{H3f+ zROhDen~&)Dxv=?T@z6(-)@L+_{SWg>3eS%Z=~r#GOIz_>rUntiD=Y~|)>!BjZ2dZ5 zkn@m?tiMt=zG=u{NDoa}sOyC{JNhoT^<9pu2#>X!@x?dWtTc+~b%;7UBaux->#3}{)>0tN%Sa|%f?@QX70(H0=BzL&wCPci;ry5k zHAtDF18y^|;C`z~IJN?ss7JC*o)y(+;6EA1a=op`9tr9b{4ChE{VAG6hwWwrCrTw@ z>zub?np9AE`)XUeY3rK;)663-Aa!M%6c7kX&$7=WAx7+A` z{PcW#1~WOl(T(UrRjY{6azuktN*+g@SgCeLU>F!E<axKLaP(Z*i(c<6y-8c2Wc%Sjl;1I!k zMQU5aXT)7Ome?X?^u-+p%|P(BSkA&S{4_`nUcS*!4~pQrYGDuTC&9GcmBrB^sKZ%!h5$t5G%byA*345ur% z3Qv~IKCaVh)i9+zQ^^tln89(B#go1$;(=Qs#9x7ru;Y?Bz$zpBA*wqftW&Nt98T1o zraHe0Mx_dS@g?^ZPzmmjgIRi5)Vtq5M2JmGWEBnp-d_a~65`t=S%QAub}m6v(kFe+ zGuEvSp@a3&_|A_GPx*0JGjMFM`U*WaeDqu~B#tE`)qUe5U6tA>W=gi59!T$Y0tJ=T zegtV9dsDKWT+XbtP(I{-E>EaB#e30N?Ut%+VnEE_1bdv)05^%CUr_MT_ZWp{!*_Qw z8xr&J_e~o3YN#~Z)go_WS!>d7tqNF8<%aht$Yk%pTBHn`Qy z2K*BHJZSg4F91x2vkItP7d_23!pd+2{RQ(wd=*~-=f;wM80j2ukZ37`5!5(hlI(Ql z^_EZ@sTJKRUonD5J$zM{;!p*(VsfcHGBeWjwO zPx}0Zv;@{Ul_1x4dp-VnU;x7AlF6?qTH#N2vc!%gcV78_hnWU@QGwzN}0O!2#zO212&wAF{uf>W8$wstdHL$Yn#>KqGDW1>m~6FD3(vh6{(sPg@Gj@x+|wa=mE{hEGvKsy6@RfTpg}C zEbGM(ea8Vi3Mk``>-HSEXUo3}yeJl5AV@|{XLL^M2wL>3U1dc?7GWrE)Jj$yGD2mm zxOZG$NShU-AoLwny2>v;YH1B6>2pn>aYT=cu2nFQ<)xgXPh{8NZR!C=1>RU{MYtg? z^S5}hDnrUm5<-tvqmfR56x4X%iV#CM5Z5>hmP^$JIsOr@d)~_?V}#w?%$-&VD+kK5 zi5kiXkfT}&$G|Zc;vniOEi?>F3}Ws$W+%wyp3C@kw6b7h3E;daP3Q-{w-t@bOk)bY z)=OnW_6TK6^nD4u^tfQldc zDmyQun|Db(gz5mN%XqY7$uGa))m3h)vx}|9LCHw5(5^cHlbc5pT)*v$ZT0324}9y8 z<2+x=uwZnXI*J#4jzKtu^Tom`>JZ%_X4#Q)|50heN$NJW63uJQxKT4rDX^s(F|d{q zF~LLeQ1)${El}tj>4~T(MM?JcLbUvvxJ$oR#=-@dK7b5d3Ex=bbM%*u$4-t&S=UCA zN%*cE4_7w`O;rBsy+8}Vmi7=w&z)atP+7(tb8FmIaNAOV#|$AqOgQ(=_M1Pq z42f|xE}7w>H$%~2X-uCBJh;m#U^9~+~<6H_2A_Dp*~@=#`_X5)oqM*P-Y+xs0=fH!v1BGNq~W zbhbkhAN376rM?J?NTG8qx9cI5#E><`{8UT8vR~5ak(a*VTq{y!2rPeM%{AJ5SNT1y zh~F;~eKpc5)ujZ|qK0xoDyTT{chEouyFhK7HE(hDerTT2d(UXPq2b?Xs}^uvhD;Ei zr$tgsyUWq(haR_z;z3vDk&lI=mPME1la?3{&4PhtsY73JIbya69-f|EsaNIf`h?Q{ zlIob8YFH?ni+(llOjw9lXiHszHBF01+{j}Uf-LrMfoykT*0jEV=l$#p)Nf^TCc5Xi z@}nxUm}CHOo*PPHxx`tZ^3l@p=~mk50~@iwiF-r&E^&QdH&c8umoKz(TRb}R$ap7? z$PwN*K9KlYp6Z5(k}RS(7JHn-xvWgJ|8$8-c;LjnM`iKV&IS69H~!vi52U!e>@htk zQmv591T}!?glG!cl$iJt+&50rp|=V1E_b$NZI?1A5}Tq9Xcb$I8N=yMCr1BOICwp|#1Kmq{ALosl^*A$QCltPjOBPQ7-ZyTp zOUXWrEdkro+ z`*)a$n1$uq$@)LM-u^?#pb}kkOk}m>oaJ7Wh)u6Ilf&sm;Yv6RNSf3O-RxpwNr^ve+coE%$D&*I+2zgJnF_%}{{ZZ8TJPmF?#I92kjbqTE9fgf_q z(CPQ%%hc(W2zlYGtl66hHrq4US_P}yh!R|Bva#O^u84shPjP%yyWll{m%AN`6(lTr zDgH>l3Y}As(leqp@SBxJ+1EH!XV>YndvU0HxBBAU;G60~0e?VyI4;FJxR?jUbM1i# zdr1b#UI?Wgl~)MPDuYzqg>4i|z3}j?4pUKTOi}b#GDESo)aO3>K}ZOu5oV70WNYfn z7MkW#ZBGm`#-%ecSt7%;IBtr3#{T3*3xa7LltV3M)P4+B zvEB6$DNz_W@}}5KV8E9;NQp9z$)NJRQ6hqinI8rkEF6w;uRsl9MEZ-uS!i#@XK~tk zyA75zmW)xrhjBt!OcHMxV3e^4U0R6GXA;Auj-C18!%eL`+!8)qGpZ;(2KR;bxpJ?_ zW^c0Y!N?mMXPM-c%kERO!4AcKX^|%zehbmj7Gx%zRu4uh7;<0@Pl+M$pZzjqh1l9l z+hd+NQPbX*Kmos)Xx-9;}ui+uED>YPj<%bOEANQtOt5^LIGpQCOugUp*`+Tg^!fGY> z>k5LhwX1{%ZbzoLq=?4KNDMyY%sP>FarAFR*vE;c(ZOF;(+M`fHI8M)%Z8*}u0{tT z>UZB-;e!P72CBL^P9Ymaz0@?aKA~wo)1LP_oF(Pc-=M{)^8v!qUW{es7_#nObfoe@ z^>euj;)VF^Aw%=62G?ZpLoGH2pr;VJ91fb2sE8sBAQ>!rQKZ@aeEZaM z&&Ae|Gh6WR`h}6xYXR1NqG+?y)c%P!t-S7Kur;SpOF`gZ9C>>H~ICL?y*t5^HBpBlPQd6+e~rmX9N* zu-`+)AK%Q5q>sCM@jVlaNXM|}D4M|@6rMMJB4&h?X4#td`0I~;RmP07t136|$v*H- zEeTXf83gz#s(e^da|-J>xf^8<6za3Ellx7EyJ`)z#FsaqB`DtOlNPXD$(k zM`gzJVmT{Y_7u630`25Jhqu}-uQyA?CX(~^dM}XTrA1%t;`w&IT#89jkmaasEH($C zq4fpe)|fbv5f^X+pTesFyV-6m+Tx>-QIXB@=PZ`p=JgW87!5L7cqXh%4qQON)()7r zXFlBgI=8t})TMXGP`x&1*l720q^YsgifZ>8Rv7_G**b+Ir#5KD}HSJ-u%;auE-{HhksS@(D|y zD$#1n8UMQ%8dXz`2Rq)@xU99&2I{cR_SB9PD_n(u8@RQnh6ztV zJN(}_Cm{*D$_4Mo&hng+B`8j^B@@Jf`jP@cTorf=bmJw33x`$LT;jQ8U5b9WB5v*! zMv!-Hm+B^ACHQ{q(V8kBEwW?e7imRhTpMu0Pq2gZGMaCSTB$` zhN@Tc5PwVc=O_YFBz6}>ANsGcvN&5=1g>;37`Gocz->Q_&qDNiDb})QJ>!RE7QS?8 zUQl||qy(K-uR8S5LL^i5__bK09`|P?*l~~AR2&UQMzYt7#C!#;;hOlz5q7<_6)XFM`MC;}e?Bcvf3{c7$8p1L8G)Sn$bLg?jEfU#*W22>}#d#@rNnRbH zN0DvSLBt^<&fnY8m8QmNG# zo1!)6DXAMevu`2o<5r4}NV>}2qKW;i1(M#e+c*fdp#f=0^1JazfKI0`QI5 z^h*gvxm%Wl+u=tC9zZ%f#Xl75i*!(_{StG6)0Qmo1+HTWnOZ`fi(ML<_xRgT|4+Xk zBUiQDH{%CDjae#CXnrrn+(l~559vgCJFY;CE1DYhBMcq>u%#4mO=F%b86R%6z_P@X zkk$fl2}hbF%BP5_oLk}FmEgDrht5`de4xhh&Q&Ai%2vnlAAi4{{(UTtvST>ysVRG( zg{`6ul{=Iszn77nYO_*}g9_K?F=*c1(Yg)H)_w6Q3Sz-gORf<*{(NkTAW2d`F-B$E za=;`%X8CrxXNBJ(q9!4~l`P3TIOk}MP2Zn;i7}kSPM&KYJRPq&efV~J%0m#vppY+n zOg8N)VQ(cr_DZ)JiK5ey##mDLo#;U~jVBP|1N2x*v=eLwb}tITSbr~%Do zQU#fXNzchnOq0Sc`m%b>Z_}@l!o?U4nuz1$l350~5l@AGGdZy?l*^Cdto|L6gm+`v zB0&RR(r1BK@wL~Sts=md4|aTZWv{>Ygi0JgepKSvV-k>}HhSQKi?N?ExW|9le)DJf z!(X-2kK?1kn#0qTc}04fX*-_1CXMeuVq$1E@1IvyLz0$| zP7jLWDhy05!a9bu=S$)+_ncFC;{nOQ$zjMKn>q8^bmaxi7ULm~eo#ytM*8gbtB_Ru zVR^;z;|?L-y3hAI9Un7M1o#Lz;dcqptLZ;(O9P9DH;Xw}J{;M&7&Z%4dNl0fX)7UA zz_Fo7fdD_3k6r)9qo1_rVqIhmY7bwU-j}jOR*myqbEaoE6I9wMF%0?K3{yH(FZ?`S zp`~~8L*aLa#luw~Rar_vJ8#4ZKy(kzcujuTa=VpIk-FE6iie}LTbcg&U{|+05DkQ+ z@^aFXHv~ zh1^vXXrX@4=2@(aqA`FnsF10Af$Wu3Ylm=*dz)E2>$x-yaL!@KBAyPGxcs=M)-C?) z61@lV%^-F|SYz`UoKu9-YskJJ^82w6J-L~)9&u}M@)$59aEgE*Vi~xtFkY^U0zQ27 zcX6<>=$|;Tc+{`@r9D`z=|wJ~?1%hbQHQ-ihNJ7RU6NY9fyZ1ZUAzJEbZ1-f_%_>clJAE;ChwRbk;#wZdhbi2;BV3}$*zR_Ew&qeuULZP*s^ml7RsO%7jET5SMZ?y zJyPb=;zQw=WGwMyX}zV2#92HZtngKPMKqYEQd0JPFLSwE=99y`+5XsLSrysJNoAJj zaL*3V0lt|?x1+2QBUI&J?2o)NfbY_?pDZC+5dQ9!QeLd8O7dR{nB$lWl&+9~8bPKG zz~d#_iX~DU3xpPP$KCy^WvaUsJU6xk;}IWxx}AGJUN_vI7$0Jw@o?gBXxIfrQ?nJK zy}6;%o~cM2E(ew(R~KrGS9d5`NsYjyc#ub{wD}eecbrevO#IYGTOFDQs9*R-JavKp zH2qinLQxl<@^NuFheoM$@4APsBq%NkUK!t5g0;3BOP~ZSME6)WQrTHd@mzbd4E~t* zLA=7lpj9%eJF^gPx3~SbBbf@v{scd$${OyAZ7+g&tc8f2FWFYOETwQU*O|2o9hl!V zFVf)p7d1&zabP_0oQh7px*QOEJIH(;*@@|1Y}eMj5Izz?2nPd*uc5wKHSNt9g*iizui^YHj0j9X*t0T&g)+8TBg+sVpq)6WAGqpn^+%kk)5yJDs!64LIJl zG;ADEs3E29Uv&sYMB8`<$N~y0f28ldluxW2&hw+6#t%3h8|7$|v2&I7Kv5 zbRfkJ?`0K?j*-S6%g-O_0vSj358c~eFn{szaN{P2xlX4KUvGC}OscslYYegw^iNB2 z97H2DM9n&C@#g)ud^<8}5C3gR&41}rnP;mXuyhKx9@;H<71%aPnk-5%1i{X0Mb5Hl zHoL`ost*(48sZV2KyOmO#`!T+7RtlTLx3RoN?o95lEcY+SqG1zO2=XXZC+f)3X87d z?AuwE`{xzj7b?&5oh`t0!-P+Nw&U8hyT$_QyC8lbsWQq{I1af*(-}Zri=>+JpLv2O zD%dH?^@(<_P^RBiPygaygT8<079$}4pN$hhyd!RS2&L*rW(gW{UR^^cby31H$=)w* z_=pMF7MRyPZxRBkK_+afr?GclIJ_X-?0Vw*G8Uzw;z+iF!U}(j_(%8|5*&l(#UG@Oag%?ZbQYtYfE$z;0{Q(R~Pp*YPY5%v!)stYTJqK$kQ7VBVgxc0{@#gJzD`O!* zrf;e=^Vgw#>0zG&Nz7S;zSW^SWxSv6;qZHn-d=pruB8jK)V><)tJ3SVsbpWSww3UX zkePp!%w+RcPDFa{uR^+rXR!ShuASUhvmcT8;sd|``|bCC-|J6jO*GjQT5QaV<;@z% zyX~$&ib8rxD7}{DwAG#N?aJTgF}}#hfNVfA|6E=khat52An?p zlXfT6D$Q^`%x%g+B%|?6qPP<9L3qHEwPZ0mj1rT!I9z8-sy;6S!1~sG9;NpP%+mYKtkQ0wZKw%`B zDE)?YDcRoV&ixWcLUwuhc=p7W|o%*VEhOR-S zOYO4v7EJ&E9P>PV_(FRzevp5W%?V)DNZ}-qEM%0{5nl9#HP@xfr$s~x3k0|vDk`LB z^Z&#+1OYrQ1PvOCB70j2ZR>iU;*4-#C|IP&4m!*eL*{R{H$9qdE>DR+tkk>FSKw0@ z&l1qATp~K1G@@g_V4ov*l>7vF5U!gWE*q+9^fEpx;7{xnu0@iRdI93Auf)otRtyvX z6M$~SV8Ku00pwY;sTQH*`Oo^as47kCS;&D(XDjO;52BsCHN}cFyk&H=w+SqrJy63i z8f2y7+1Qs(u?egsS{oMj-P_y&5EzM`>6QWKMd62=hf9~CfOky2^X zgd1Ko{YqQ7wHE8UtiAGM7b!x`<))*=RyzHJN@(h7>6pUu6K4@`R+c*#uywEYy^3bZ zXfghHCn2+|p_FwcUMr|7I*;lb{3*LnrOGW1)LYWUlaq8qloqm)5`%w43|HO|b zZc=e-h!v@ZvV+%1YNj%#oeZf)W>`HCoWp*3JlOLB&ZpkJ2_3C;1W*b7rHU-@ z`=xwhLF6pNLt$iC)1J`|<8wC&`$7yPKA6E`7RmU5N&4@X2tam9?aZYaBq^`q?bUWM zUdq-VmCy^A2O`CsUPRi7x>K>yCm;h3yi%b4c<;#=RD{B!w|FL8z(2MP&qtlL^ z47r73ykWiJ@FC1j$17hbT~$*%0PGS{_Ufe^dK4aphw-oeua{Q=rhh_EG9BAfSLygX z{t+4OSUf?tq?Uh+-T$N5sGf-N5mjf3qChy0Fbd`p*>aWLS$rVkfT6_mRPMOs1w`bL zVBK@Qkpiib`$Vx9+8=wYZ^-LOKB_`E=j|zz`N)a_3L7Xd;eM=$E-kkcBIdu?8a6Nt z1Vc1Ku1HqIVDVlnbMv6nKG?7LJ7uruU$8ZUZ2{-#cpj2cAmVXx>7w+r+x$_2JwCMJ z!XTm_QtFvR33SlaQXt+9#YM0B{dCkLIdxPdvB%aTA=WP8tAZhmQoXE)j=7S=!@w6{ z*y*66r$pba=)gXhyW6|32@eq4$_qMBVpwA~w-8WqNV#uoP*EQFrLE5QDLx#RBa@|! zt)H=O@-n=TaP9}!!FulOS|Cv9T)%6VTZY!47Ib=|NZ*=1*sz8LUl0}Qp2v*PX!6gAKzWN>KpimJzVqRPaT>GHW)EHSUP+TC=Q5jW0)XRS_dC|rsx;~Ro5)MeZofKlh~NeN2A@)5C}xM@+)o?M)e$}P8y5kR>2T((6%Gj^;m&wc z;)H6|-dx1yZ$Jr;JtnvlXjA5qLe5yRKqn z*C1(G09h!O_9(p)ZgC~U6yxbvG1Q(@)D0n5>T(i~Bfu&epH2##o6Q0)ZH@=ZWxSGT z9Q!67p65WiiIq$xb&(n#{}D6`GJK}FA=U~*%n!f#vb)NlTSqpfd}_eB5yY4feYt@1 ze&nZLqE$8gsaQVs-LAZL8r~?$6)NvWMS|pePm6}$m;au4Y6mt8fkAY5Sq#5g-3M^- z{0mf;^hXG&fC?oZV(i;v8g;l#LtIS~NInz;n{m$l#m^wQ-_xkE{$!zsoU}cKzvpsj zKZcGj1M==)0Z@z&4;fkvndkXB~PdCac)I#R2s6_8FZ!l z7SeFoDOe;_{h5nceLuPvZ%3p$$d zH){N9*#=#dRL>O$_ln`Dn{TxnUcQBbE2y^P6gY(cG36D(njF|}LI1P}HCvV1RJOn?66 zb|F?o#egI-VyG8&JxL4$Rq0(n9 z`pJkCg4ke-QI(SD7`j?2RWV+y_u3D1`FLc{i0Z#$HsZeiFtngLXy|5k&s-_5R91rT zaOr)t#0FrmyRNWbs&h2SvH`3~MzEYr7~wH&(nt^^yjZJeZBzaC8_iwy(BPShco#Do zV-$rA7&zo`b#ZP%2`hGN6g0An@j|6w2EJ0R#b0twg5Q1<3QN3&fP}5doe|#}=l!Up z1h%^X`M`6&_Q|jt2y*WpP-$O2Xt!?9{f-Lm5MEpg5`ChOMu*l)=-79GRD` zJ^Lkf@Tn#xbQ&0dBLWZ4R(1UNO$E;=_;O_Dj%B*iq(l|E8~15MVhMIg3{qx zRed?oBuD;zf%yM5q^&!m#rIqvW1O(l-ts}q$LF8nKkk6YJK5Nz*bo)FD{&6k+1(N z|7riq-(UA>7GbJmP;sno-fCa+pLHt;oV1P7d709LSOoRbEr*%I3y|$aS-|sLhXx#b zi!Tbp%QNiNB=`I>`pm1>n<1Otto`(_g=YU~rg zA0YL$YW1v_nfus$ zM#X2}JN<`P&l$b@ki7VjzDR1u;@7el7Hfqu!eHYKEZmQVJlEHJIrdeckJMWzy$H9+l~tR>fdD;Z1^N)n>4So08H-_7V4c;0%&)w6tT16{zu+%^CU?n! zJj#qHsvk4sG00}(_xPo_a3v<&1c*E=KLf>4!x|6o*Ps`_7kF^L9Ed5bp1UEMjKVO! zVj8aut(AKu7CX^Bf@y*tD~1?352gdkXfDToPWED7d;bbGpI-ss6$SmttcV z3y8j=v;89Q!tCkT0!ahK#q!cvLdHqR!TTH=lSk;-f8bxs@3xQflB7%O~M1YQ6hd^ zguit8+Lf3^zqT&^MhW-#+UZZdao7eB11pr8tZUC%=%H~4!t+CKwPYla4^!%-=BHW5 zS#kW%eBtc8BKvOE1{h!!KzMef-8mx`R2e4FB$yuQ=ksGqs9ZyoW=xVS&I5k-B(Eyc zOD%&hJ!c+OB}%>}K90tt;I=k>l5bX{Wl_+)t!S_^5b)*QaxRpzyIZ1$H}s}aIq*a^ zKJeVmPAH|D(-Py8aFkCG7BSL_8IW4$20u6o`i?IjyIah=P+PL6q^Oi`t-{J(Z- z?!p@g1x}`{ApO`W#$v0YZd`(cjIH-LIW|GT9hSW8VL!T)>14mGk1}9xy2Lg!A+(E| zVc<2W%HGQjZR)cYOY)2|NU;EeK2vTobj#JE{a^*|lr|bv*z_n`etA3}T~FFImgtjL zHeC|@pXz}GLCt2s7-BRr{oW+nu>~Si<7O)3Fm0$Bs6a<$%VA*4|1#mPAMN$zWUlfK zPyQxoGglYH5J*9 z86zY2t5*{O~ z=wlvgfQ?b4qCWNcUN<8O{fl5_y%jZoQCQecNilbKT3$^>_!RkpT9kRhYu_so=BmzPb}JDdVbx-B zuqB0>0MniJd}!@eM6Nt#nb)|x$Bs9txvJr}7H-{IxPd>rv>FFyU3XU`KuTzF z!J{V5IoT?jlA~Mh91qTX@$Mf#d_)tj@5Zyiw|CkVPps!seW#wR9ydJ16VuiCw&ac_Zo{ zhw7JdylA@A)+fXZF;Db7{T%-NzYw%$kQ%4@QgI945Qgzv}ucuTTFe&6ol{SJv z`=rCP;M8K*%ddJ>2P!dM$DY3GJ;l{RL&nIjklQ>=ITQuE&~h)fi;J=RlsP%7=+#G% z<84cZs80ZHY>^UcFeW@M-RZz~n+*d6pn#r2+7h7^8-6)nEh$ei;8M3+tDcQY#cO`= zpu-xOsDyf03M8lGI%=hwu-(ZgQrcpL>~1|3T&T3ZwJ@muyH^fb8IoDsgEOC5sMCjB z^csszIK^mVS~uG5>({;W+-nNvUWj-!zZ;qdrI^ufj0N-L>CDf9#?y6A-NNd9ka{sR1dLi4JCJ*28=Ok+5fzqX$(=WwR{4PqYw2~n(a52>~$19?q>qnKlI4qGW zjANFP2BQy180t~Ek;*g@BtA_5_3WN{zZCE9Fpq52_(w+?wG6B{dz#2%>s`0+uR3Ag+=o^Jd=t- zcgOH3`_aGOK8V4B0Br52@4g7Lg6Jq+eaP?U+e`7>Wtt-c2NY+Lsji2eey2TS#oZaz zgC}a-bFRJTz3PsH05 z54mT!G+BBRl^e@?r+p^&YJD={LiCsdmN8F9Cnp=B#E2Fr54}$m6iaxO>iVMhAX4+^ zvZV`H9S?SK7jC#9Y2SDuqc|%$^Rq-C6OXee>6OT5Jq0mUNx>~n_V4$}3MT~>L8dRB)B(GeI3}W8ASwDF z7bI?knd4@lj9fa$AQlwXqNzEzmfB^50XlY674mn1M1HY2n=koemL+Dh~O4P`+-bUNC;w(5bQM_4J#S8e6k^(nsTA~q1XI@;qEad zN&NzNZ_Y5eM<=zpr5uXS2iDFlrT>ELTYzOD>8Lnj}l<2ed3V%_WDV=0u72%-$} z?e>IalV!uRJgPlq2%>6tkR^Vq4Q)r8B0F`^Dc*RY&0Q{bf9Rt$4XGJY^;AQ8RJR6@ zEB$7Y2Zp3+mp3#iiH*B_xm~^-W7dd;t@Hwb7{T*Tv?pS{ZUOt$vPQx)g2D`i4qL8l zudGiMrj=5Jd~h6U113g1v?u<`g)5wA?#E4>e!Du{964kabx|Gm`}=#%AcH_;cvqwe z3ShrZ1JTq>x==k{zNWgcG@cYw*K#AprVFuBsN7M>lc;U1;(K&z$#xB;TYU#Z2mw#G zxKT>^t~g=+UWZDvp(T0Ef38D<9wvGK5?!hy7nL#2cpbHr zfcTN_sKeEcZC8A>L2|ke+sD3Muyn9fSkvHlKq~`>Eo?8wgj#_~YA?9`)On=#(y@=( z10(4UcK=A@v%PH}ZM-DK%e0{mDOXybjW;0zCjAI!m_B&Yee-%{f00f#9@{@u+(PEcFT6-`lwa_s7_iig z`tJgmW1DG&`Tm{wFpwZxK_yJx>XaUOf#?OmT1fQw%`WG|7*lxmF{{MikX!ehlB_tH=PK&Dv^WQ^gssxd@RNd zGQvJf_+NzWF?Kay&0q;Q=R*R*SSi&60gtar|q1<%#nmk0D^S`{dMQ?l-32;|3b`!F-uj#yS9D_@W4J>TxU{q`SO_67P* zQaHg)CYcB1TJ-o<&k$zn3w7`d(f2+Mp`{GyLj0Rdz^X?R&El%NkDWj90B8}140s=V z42oI;C5yL{g#^*@E=Zs*_($&Bs`oiu8LsV$zhhY|D-O9G;j}tP$JEO2C;`sp322Cj zA@K-xmEN12SQG&_iN$Je<+ePKSOSWoF8ElT5Ykeo8oR-nYKbai09@q4KArw76dI+1 z@wkP>w&=&yc#sBp%IC1O6(I8CD1g!>him zN+bAX@r8bU%QR0PbdBM*sp6w!i*#Fv*2g2laG|;q)f3GlohN`G8C?r-*AGw^oe|Vk zM{Ir`legVI5(V0mLY8KwBhm2+CH&0ZrHZXLtr|~2e_t(&&MAo<5Db$u`D> z`;mY%?nW-jVRsW1R$64_oaPrv4kdj@neKviFX~P|Tha+R^LQOTRH-w)-j*(Tl2j<( zqXiC!C{_>p+o(8g5b+qf;s75}+)cXI#^Xs!<`O>sI=AD+;P;95>HQnu<1Q|JEuApo z)+=5zI!P#EjlIG^sZYPD?2s5(urTE}ibuh;5q@UzF2!nUJ?^DTG1G1u!k` z?e@~u!id*D2bawvd)yPK{+VWe1X}(XZx?2ySAVp*J0$qMHcC9>OndDJ-D}Mx4&7cs z_tuYq&G<^i1JvSRr!W)ljd8jAz85W~Y{3~gUJTfQYAN`3ob;R5+oc!^P&8YfhgtQ< z36no7A|14n_^gC=&gD6n(ZI8~&R}Eh^w+T`GFKa3mYxWmPunf`;{amqH{9Yog+Dyx z>MZY8(ysWV6tJ!(W2_`Eg_`ExDd;A`^QgGMo}M*xkmUlmr0lxVv8T#Q)`Q#B@TXbM zI5k{x$)J7A#V78W6JJ529QKj5D|b-*!rumYFF5?!n#UqO{tlN{SkE(3{2=jq;serh z*%gC^sV~GXlX1;;ef%v2HQ%v7-WWtD9wK;o&0q-PjD6&+D#PNnQYFQR6n}d7NZ?^6 zNp2A_g7|nHAg1-=L{Js~5+EL4Cr`d-)$uo{f89>`FG~TcdbS@EfiyMo17L!4M7uou z2p*HO-^v37fO*JY zx(yo37Fp%u(8y=V*@>$#Df~TH74p$~mvhTS-20FUMMzailRzT|4TRxUJqER~gBLWn z7Pz<)g^U%bnI;m?Fb~E?+duRfQ*=VX>sGy$0Vk3)kYKSn&}v{94O+Oq5(rH~T0%*- z$Zj_ik%w#!u~f(?mj@aaScL~f10UD`^S&ESI5xsdjJz^x=e3nthM?g=ZQal70)1|J zcBT*kiQ#-_mjJDc{_FyPZDswk?M8=`2ob;*@{1#flz4b?VEnk=$ub#8$Ro$RHX~6J zqr~M{jvi3N<0T38o|)TiFJCQ$=%Adgp%CE{9+Ji*H#H9dhC$}aO6g&T_g#9!sqNOv zwi0h?l;|v20iBvW;bVYf`Fk;9W=AX+Dh*;uAsTb9ZvpKH(9-AP0$z2iiie1XX1Xn9 zFjP$W*wG1p>-Z=WuiLfAZ~bV(2#p5H^)E(8S7h*4t9pUSz3|ho#?LHgoPptp7BI8> zj>&|91A@1mo(QVX&-KRStIzF_gZrP)exBm_YsA^YS4?06;r744hkmli%j1b&V zjnzRoyM#46cJ^FHpOn|GFcJeGA*96-YQa*^y|OV?7z zE0clGzYRzp%Q;c{qp%{++7E?-ry^h@;Zkg|`+bwvAnUaE;O*ZvMdkFNHv?Nrw4Aao zYj$(Rs>Qd%<^HoBtabwV!+8b3uu@yw>YYhxW#Og$>P!%}i-vg-7{Hp{KgzsOoB&bi ze1AOcWU|ECH`L)$*`0xfLs zkY|vGI4ZyoACmH)ixH=2dhJodzEs9}J-R|bDfl{?onH|F*v^o0G54$- z#gy18#%h=SQS#l=0Ch##&Ej#P5bkDV{P?fn|NFSJ;&R)LGoXTddY9dc;{!y0`m^|f zk@-SIAlw%M>ZIjith4-Gbjm@I#Y<>x-Lw^t5npvVeh@R@h4=ygeXnQ(kQf9lmPuhP zJdSvg_7BObit6kh;94+r=1Rv4zy%)vFn%B#VZ?W(-7blg=>wK^lpt^Ka$reY#vk6# z6~!a6!W&?3kCCmDaSv#C64(?YcyD!vIDG7nf46j>gg$+0 z?CqUCd~39Kmrq&b)NF&2redR^lGBMY#)S^OAOC))-TAz~*;&90!kWI5*U5+N?SYnL z-a!Q0kG(`>vk?MMX0RdKRr5XBo_@+-K#s{HdEq)$%3hzqr0a_z3ZwUQM2d*rny3X} zy|qB|Ek<%f;Mr!1H3F()~xf;R( zl29ifeO!u%D5MY%O&R|TWJ!klUb22`$VO4it8@*Ou!rOd^+_pZao`YrmWB;$4Vxd_RgN;K2e40k<-sY$5Drp0RqPv zXg;1b5MrzmHn(s-%xITIt57|v9grcu+{;q4B8j?_dX^@1aqJaOA*5pBWbNtY1!&%D z@uv>#+C!212Gygp2|TgU=2?BX7mkz-be#3fJE;Bq_-MbJug(YsR%kXNYW){x}%(^wL}QU6YUQ}FjO25Y!E*}SU|jr#{xl!ur!{c%D57?F2l2B{zvJR zNs8X_V#vf$EM#2;2!xLFVd_}rz;(@$c3{OHIpfy%0M`#9H;#DtO{*kK&~z_HRQYeK z0jWhHHC|NiX0E~$or~H!OzINg4pB@T7txC++p$K1=x_Un#a2if)ZO93f!kKb@-9kj zV9A<=3wPma?8&vBv`c^D{{43UzSl=SKvZ=Vxl$j+(hvHKe;SWO{6S(0FnUwU+_p{zjIW3nTyA}VC)7$Z9b%v?yBar@Ekv(DV=d}& zRXPQlP%N{eu+e(ax!YZ#R{w+}eQ-B44i)a@V4{vWw`rMlMfL5HGJquoXbcQrtI2oJ z-}Djn!P=tPEu|@n{bH>T0NSbMnrqP3dui8O8K=s^lKv{kytnXFBE&+xjDJdZq&TIk z24dv6CYt>R?Fk*H{dX%q5V!f47s-wW)VYTaYKMMiTFzlI)bX3lOznu zOV{3RPsUePmfGT4>Csl^x+fj^C3bLt~T~sUj<|t zjpJvTJRRf^&uh$jKl2qA+htErsr!iGVDD~c%ql>M5TT)L6y?} zJVr*OSy})|bjN5`+w(&mo_G++i_J~%pE3@7J^rfwoA|oK@w+WOAu$WLN}tLNDL$4i zMnSulBrt_Yy7xR&ei_(OPekG|*i zBnpsMTWh&6l9&YIQ@==;HE(UlP=P~6v6A|7@yjTx=gV>IaQ@;u_*SK(j|!WM7ZmB8 z>|LgOar|e zC0f|&_Uc+oEqkkwmURlX6QsnS_={?K)kBVQnrPQBV@v$w0#_I!nh_isBTyzcJ7@oI?fE!eYIkmlKs`_2p$Xe9<&(8?j33Fp|*anXTl19OXc4=td z(Vuu7%=UgW+NHhY^qK32#CguMcxHaV(a7U*OWpg z#}pq|nUFJ1Krw{_1Aw|Nup~xt(hhCm5b`06beyRD6<;X6aab$gtx@ZRCE;s0fa#-`Wbr+ zb$(qjXSs|DGZou~pb*R}LF7o_obC^egECI*p(1qflzOEoX14%$s?h=tuBS_3~ zwNosx#7EEWH?T>#1QoNB7b9ZQyv+5$%wv&G&i}L19h^$wRKk z8v}>XYeQ;rZ+tgDu-jSD^_*}p?^`I;+k$BJlQ}-=BI|5YNZ92$uZ;D~v}|w3nmegP z;$DWZ%9D>W+FZaHO06Sh$t4}f|L)%nfmNVv|9}1OfA=jX|Dy*QqKG3{M4tvj38G2W zU}NclR!lKfTLN2awg7$-F>A`!kYd`7v#~$lEn3PZ`5x#4u0@Ma3UEXGVqmYo-d>M? z6S!p(me8tA;t$sr+Zz@~(tjeU`lw!mT)@q;b6y+v2Ycj~F3>eF??OU#^h;`r>f^dT zURk@@+!|;)ISrY{Sy5|eNuvb1AZ z@l2WZl5WK!V&UE^x*uD-F=Hq3E@E;(3{)&Q-lK_a5eg-`zB;prGuFPwHEVeZBn8$~ zJaFm$K!UO`2s3TlvrOgyl;F{WaK*m7)k*-`k@0_SZ###F!!^@&BBJ}7DkmcHtW<`) z(TN3{#r)GEvgnC76lBG!-wKv;?5SMJWV2(1x@}4e3OM{~d{SjI*+^U}D|Yq83+)vf z7F-EsVO%FW+-+F=0CZt3uaK4ADrCJqF#q*JrRtXT-9*}!6woNnwBVs_v^V_GwR*KL9dXhP zzuZrJd{7}nhS8Fs?|4KspeMO6AKTJHIam)Ri`FM6T*8nwPDSgyw(J^Fen)ac&M{rDr)34o0x+hKD_Y1SsWM#zh+ej-eM zn$xFV=)Ekohq3|Cv3Fo68Z1=xe#651#h1t-WewLN4wL+fc@zoaW@Uqr`r~}7qjHES z+I){vmt4}bKt9i5KNNl?T%h0lStu0A-C3oZ@4$xJSPK<_OLYW7#ECA}k*L>C3M;-hafe}kX=!dImAfN{e^f0iLg$Z%DEnk=ZFM*VO5Nx72&D% zQWOkqzk1avxXz*5b8=tzU^~|<40?67oQNZ`Xgqa4kG87Pat#W82Npytq)Ec006M;w zl2grS^BI`7*J7gTh_oHjtUE@JOE&^Cwe z)*Y*wcEO~?-XkbTe{u%Ins$TwABloqF?fv%)LuP~BKU0nV$}rtr z9vWx6YaGwtD&_-UkIX8OeLNpA-A&p@D%0@&dj@D6p z%eOXAp`1NOmS~e7qrNd1o6(++EMFI!NM^`e0PC-7wHU? zRbubi2*H6i>3w?(#kN;mX#@c&24{0ZOdV8eBe)f1fakiF)P`6jVf|qi555Bwuo&>U z_NO@!O1S`c#amQWbJNJYU&fwE8q{d zQazy95*HG}nb&I(so^eU3^i=#*G|6`1C;Yf>OW5F3Z5+Oc5*Vr!>v+j*+JEHmG+R! zot2Y38zI1?tuid?I>kk6tj5M}nYbEZ@vALq_ZWk+jyePWS)SiGQHYtSN?YZ^JF*vG zaf-oxzE@8Ku$5tSC?iDpkJ=Nl05n(m1&mvNbGl2`&1O!xMcP+@rs|tXWWN#n1*v+v zYlYq`{sf+&ku5Hu9O`+8$&R7GpNW62wJY&3)utsFrn;l}gNWDPi}w#0t*DjEax$il`)u!qVyd+LjTL5Q-&tfxQ#t>PPU@~Ok~Lls%bsjE>AnU1@L zHhWL0bWSO3!{JaH!I%&TO$FH|C@L7qwOjHRNB2f;wKEK29CRpUw~I|#=j#ccBxyU8_U=t(3;8i@u$vwyLUeEpZ1BL--%J~iXt*8 zjx|<#8@}LRzGDH{!^6ZJ)v9l=u8l7*#oNfRhEyS)tuYGKA$pgh-5%+Ls?*t6w%=SI|IWEGLdt%+-4@hSp}lm=b!b8ra~x>L##|*{`&(#D~>L5rQmxm$8MmTP<2* zskt8Sg&5sK;^TgRtj_F!aJ4;}zs-AVsCyyUhor@|NdDyr>a(EYW{$%QUQV&Kt48#F(y2Oj)P$c zRU#uqd0h%(59beK1MsV}SJMrG?wY2;N5YjVIMgbp+w719a_WcdhBc$vW^?X=Le9zF zIDt7;H-b{mdXbQqi#(Tn+*nO`O1MJBq72c(JVwfMGQK{`vKK55O^u4zQ$0p5FUb6y zC5TwNQ?Dnbq2PKThJZ-4oeC{~yA?G%< z=i$8!>!=NmPdrYQ7Oxcf;KWpMK{}4ogrH(-W%Z)UWA?_W<8d?um&63N6%ly}4ypa* z<_UDXB}d#0UkV!_`S;&CX4+mS_GVQ?kY`Ii=$lJZDCWR za;WZ6{z#6;m`vAwLxZPSv(82+)^A|r6cQ0sE!^=~2!v=>G&6@F{v!3W96tcAI^#YB zty<2QdWXgAT@aBz$gJ%qb#tTaqHqe^=x^d{y&s$#fNrx)<=@maH*C~rKJlOS ziJ!BV@VU=C-JX6f1}~)OWuJl`l!8=|kFR)3-W&4xFX(W^e|>2AAnqZCRVAK(w=R(3 zWW4D+eRQ!Ol@dO-u*3Jd6DXm#l!LFpK+9E!i+t|MSQ1*E$Onj_)0N`UcPx`~ArA}9 zvzIXrSYaGfB&hhYqGIjVyW+;LLQIxX zRd>A>oIh&m=Glz0^GCU=boR<5z*Frxf3;^~d*w^a>P_xMXxDC*8eY12pf;-Eg)Xi> zgOz6lcEBwfU3_9gsMh!nLx1#-K6muuJQwRBLJ<8c!mM00;|vdusF8j2^62JlB({rG z2n5d68}V-vh~;k3DWtr-0c$AtC@PXewMYIWCQPJuB6A$WmJ&V~&5_O62G$ z+kJ{TEux-_Ke!i~rm=XeehJ50y?%(~%8lfub21$SEgEN|tnO9sl84^*6Y(L?&}y)p zr7pciSIU7oHm0qXL*!vN!&2)0 zrhrQhl%ki|-X7aHk@Ug)rPi_&h01B9M`g+7Zlh#NsLp)V;FS8%7`DQy^RZ>O8Dd>S z1#ZeJdR1?bK+yn0e9oWu{io;dw5$N_U5^VM3pEY!4$P+P(CxdV`kA{$WR>H&on$GY z>15@?Quf#tvPpW!ow#`3YXr?;?Pd{Ow4jo!(^TCjwcYf(T)$cErHKdgjXS*bCO zYkXy}Yod~k;ldhrKkI9*wp>&qg-)<3lpivx%J+I@lsbes9OD$GS;en zeD_?h5%|x#-zJ{deGC)W~GAcXPU58CJA;Hx0!Den}JtS*ej0>_)U`Eo6W&v7RIfccCEU2kv3KW|p^ zyNK_)9)G#-T%VSYfWRZ~3}86`{?+B~wg5=R2&7TH{@gy3S1n_;v&8}y*=zV}dnLZ{ z7J~0aYm{{mru^-rpU1)IjUY{&!6;%Ft%Y&uhg4kMGVO#SEN>!yCmQiEm%Lv&*xfiU zt$;|5Fc7ML7u}yK@=Cy~c1WQKI=sJAKfr`)Wm0dYS_}sY7LXF0xTey2Qi{vl491An z$-)=4%dH*Mn0T*yhlFur1r$iOvHvQw#j%QI7PdPo8{6;oQ*TOtL#Wch-C~K)+9jH6 z(LqN(;srXSS{mn!7}5gUo_`|V`lh&88K#Tkr^__FFN^YbF}Jap$e-|pEF*`8y%mqyP3 zD-Ng;usD?zOvY$$HS}kQF%tvU%bL}`8yTms;w}4IFe|+$OKc(@qaP!2E87@$CllRb zh5g*;gDcBsoVt-!h8`;YdPe#=$*ZRhF#?KhwBwd&rgg~L%YI^h{zoxi}~Ix5wYgVRK0>7~O{m7C;Uyg}m4f2Q|2B)){w$i%^s zomkDC85WBHc`K5n@i?3czFppqA6>Uw?t5ATimGnJ28&*s?9!#>wsd1H6!B)uFd71- zs>kAOf^Dnw`7SIx5(+xtUT`7$66Da!=i28#;{mSY&eR-Jw$m-r#(hR2ZRQSvOq4^! z!FeTSA@u1bV?s9vzR-JJ(ELt0CP!I{CT31M{qWJ>dC2Nsv{gKLTri_}Uuj={`uF@W zdE3+Cf;`cFKSpy-pNvtDHmKxt+H-<)31Bo%unxqgy=MjRZpZYuON#*>!FVh_1#=-CjD z`>ll3y)XIkq_})=9awDlFd}zOpAo2A3F`nr@jwDHy!!mtXQRtI;&y0}VQEn#NTuEi4 zb*@L?c+?fXiP;#Ha2v*f2nQd9>uHv85cPkMR*iW!$vm92e$+@$MP1vkX3Y~%4pWLx*NSWR*mpFBkI6G4R`dC8( zJ$N(ph)Qq#jLuj=Cn!1aC#@*B9hOL``{Z@u$bTOkWMiDpaew7iTQT0wvr$GH#|vkM z>zRM$KkZ-n`!kk|_V~|#^XLANPULe9**d{7{*2}47!@ChN)xm$A+y)6yR7?0^)|*w zDngrE|8>q9O@}krfN_)`98wb3Q56t*iYu-qFcvqEi}s7noO0g>I}(FcQkisFj7+>N zLHQP>o9*siZ_EO`Fv7?PV#1$sVVz-zJAJ&Vt|x z+dVDJbVNK!0e%GVzsBnwJ0hctAk_vYOHq4RbjU44va~}b|FXBWl_}!$vi5ceNJLt6uurqVCOM}^M*ur`I!_O>#~7wX zHBOwLvii6n&^Bs>$l^`6_Hhg|Af!dtW{_MpUa*dYVUfY%`@%Dnf>^l zZy9+{SX=;W{JWTh95%DVyDfRC)S?~h&g6tQW!DA-A*6>WgbmK=EyNu+Muf#HQ+s1r zlFTxek-i=A&nxXx900OKsQ}cw&EC26V0__v4cwvmsrzgwAc4wXios!XNgkJQ8B0pk zP2`cclJxqtG6g+FI<_a3f6obXiDvIqVDbhvKplO)1p90hWWLURWKI*@c7| z{{|j7AJahO#@XalRj%KPUD!7X7$N%}yp&k>O?73hNfP;RJ}BE%rEQS~Nvj9$g$=O? zgZ9k!4v#4tY2KPJOjiAW~ChkW=0Fu%{tv@i|R(O3=BF zN0%NwX5yuIH_Y9`RPvDW{;8dQj8DaynYfB>S=CEN8VrlQ=uBHU{4vm#5}yD z9f)?gc>6JP1h;BsK(g6E>7KU>{)`?d+UHVx^OE05YjQ%3$w`P36=>Qre*go(ybtQZ z+tpn))l1nP{JQcbZt@ZDAfDP=g1La>^(VxHwnBzcvoV&^sxwi)+y@CcU#(C!PRD~{ z_Tb%-p9SNLH9BM=k+Kr$kbjb=qEIpRm_v}+O{qST`5qD1VD{i?4r*W6?)ALIL8XQi zw3*Swn|0y=Iy0^#ZOWxFKaD@LxQ)wZ??CXzr%1?!K>1?@%0KqYu1OvW@e>T8w`z;c zze!ut!9|LBefhce_8*1*>=E(1e%vAYZY$GWQ1FUprD%c;i|4%X0+i4Afp;8agO_L9 z+wprHms}>?fn-EMd!*rQe2lV*N8btQ1Y46=?RDx-6q6__lHyJdT4uPQ4vv#Wu2lq) zDf;HVd>f73zayd-TLWnc0lY){)qkH+5u|Redj$x7DW|(8N6)fBO#>D0CDK@wrllyt z%gn7GS%1@0oUeG%drfv8POi`SK|B3b{P`9N=YZ&^rN!kGBUE=3ZB@;-s+3Nd}}` z_J0GB2~CVhY;E8m#mCQ@tHk(}I9!TRbjI<$SQcq(j&31X9rtTYCp(I+ z;{kv$r$369138s8hZm8|QiSnhd*y;94u4ySPu)`WeA}GVewh7^JManh_>Ok~dcNq# z&}gGm=89-uZEI_}dn!S4ei6zI3J9;Hgz>{|J<<_=s?;;mU#|)P@=-e^amHfm7TR@Pvi_jY@}UW!H!rI&;dpTMNl1 z%V@?b2{N_N!v6r`ayENa9Fh{4C?YGVkSo{?pVNLFM4x!bP=^Z5bV97D!O7Dl7;28T z1rSdFLPTcNNm)#|?IZvhvrqY(=+@a>_g6x&?hNGV`eIwXc_U`|g)g)(#J|tAPv41u zi3mcKI^l{)A#b7Q@F8$A|VKKCD=TGAx3wNuEjt;OV*H3?o})%qoEW#yMSfag3L)jgOBVdU*4Z=i=&vXFrB~=+RbA{j;gtzfd1#Y04 zAtZ1DpN&8DO{}@6CGPZGi%&|vM-eLgkIl~gb|TN4baqWki6%G=nB;x@OdqAd@%!<& z3KJU|`Kgyn_NprQ3Uax}6@n>0i z&f|P@cYGie!kiLBC4lm2Y@P%k8wzM*QSkfDD5vqJfjj%%7)bBM$}@b7Rux}Xqk?2? z#{Dtz6t!HK>}C18{2OP*d$*mwyzv%QysBU*#1;IN-fVFa`0hc;Yo2w^utF6T2$zx5 zUFMv(v|*Vt@5^1b4dApyU2X7OdIgi59ms@k5s zv^qsB#W{`|60Z`u!P+7T^p}dZ*c^J3$d~4P#!Qs^{s*7Qi=vJ}ngBqGPl&^nvBSDr znH1bAT88S7SSUEe%oVffJqEC*1>(IpuW<8T_8;-s@Fk1l0;R+J6$7zIsNq&3LOxOH zq+MfsdLUfXh~ob5#LND;EnoKvbVWk{5Wilr0&Y%-4(EhobEBVf5WgEQ`rsWg6#ZRs z#;M(i#ag=27MJ|j0cy%oitpyS58CVU)@rCYU~St-3n%=rkdJTC29WQ6;#z=?C!4A# zUhlYcNKh85-w_`Z=vJW|K8>F+HU6xPYvm%N>ysH4pNhtkGNB`svZOvP;3r*|*;QO) zN9jIG1QLtU>*)EfAIGjh%>HbMjG!<4jp>}LA)l#K%u!QOQqT(uYSn(Yfa9bR^StAP z0fof7&du$aO1#+O*l)aO+UCBOhV_kh)w&y1bkOc{yhCYXCixJ8F7JjPg0qKI;QMRWuviE-?-65dRa6*~5_ z-0|I;l(*Zqaf1>dRGTVv3{jC6Kz^X+M0YtWll%U_f)d{~uPOpHv&@4ivPFq5)sM6# zpH*kzC@EI7u0ade*KbhrhJ~_P1UZ5ZA#cA7Qp|r&%fCN!JJdqu^k>6=xB7#nX4G^d zLg;&18-xiTC?>WdKTsjJC4y6=qf|^g&INb}>^dwwhuIr zkoQ@u95cT0;D*XSfV{9RJs(@YG&C${An}QgfmNW69DUC-#0O-}C|!$zzw~N*IacR- zySBJ=V|6J6kp0>yrgDD^8;YB-Q4R~WQ{5r=m`9sxj)>z{z=twp>&4Zj-;n;EIUb$21Z_wX?y&ar{9VJ(KMjt^&;i-?rF_cOd!r@9;Nil7KWMh|C#p6T3gUP**K5x;?bsLWmIIlwiT@<4I}d z$7rTpkMv1*^^1H??M=1{D541`Xbz9Y>$c9en%O9)Ad~LOSNlezmF_#n3iiHb89Jbx z>1pdbdXL*(OH$lcmJ!`&ViyuktWQ!P?`Njj~jZj{GEy|(OF|Jv9VdZn_eC1p^7j- zVMQM1FT&B&OLygMQ7|j2CD`0D7Vi^aZM-VY~oM|FX@~OF}bTy0>0+jfsDiwZg zxyAG6^Fwv9;-FspJkko9lwX;l;9Y~s8_)rkMmua+B*&+q#f{%q0Y!P^g3_i z`+`9cYI{d|5IPhM=P6Q=jNB@JY63Py2>uDcal69}CA3}}jR7$e&_lBF0**gz&v`R+ z|Ki8~5yZhae33X6G#y(-Qs&D~=STng^gomMkH6i%PVICUrt@SoVsQj~w5$PG0gVA| z*P)DWo<97%eG`VsN+%vcc%ZDOJ9M3E&)vxp0B}Mp3boa<1gvp9mz-Or4uAmXxlzbl zxcEvNxQauG{f&A7APqZp&}y+Yq2Wk3P84&={gy)|jg>`D5!D5h!79aP+hY~ytf%sz zA?+KM5S&f?Jy{S>cwhc;Oz`pl$<4npd*Y_K?ivE-3ozCbmUBc4u(NUTPLW`G-I&$wu zDW_)cJR|D7?J<|+bcA3okXNC(`U+V9FEP+qG#G!!X*V`@0lOf(6_*sKYzXnZjr|S{ zC}ZgxE}_Q>UE-0Sd!n6tKUPJ3zR6w0wop1Fz+yjs7H@oG4xU4`aOBb&-E5aH$Ae|E z6JsDX7r*DidG~LG_mUU4f`OF)pNSw~V=CZX%126lBN;Sg5Vd1gE#2qPT`{QFSU%Jb zT{^sjU8s*n<$#a_Q{fc&TAY74#u+2wR+eyH_ftqQBh`MbfEL!IC$Vk8yTqX)$HISN zc{jJH8*oQrwJGIrrc5egVA`?TN8U2y1! zdF`Fe#L{8WT>_IVE7P^u0e-sZUCU8iE=r>~ zk*RlSf}>ytLAF*?qa%JXE~M2W5yg0+{*Lm<$z+KK5Mxuk zq6j}ethlsDkiy03OL5}<`)}g(R-i=7p%JTNB!*4uB;3B2ti{6Z^TcTSty4~^N->+g z`W51{m+c;?YF7qvl5q?Oh%#aytGmiaM+wO;v}-Z-Wi{N60n=!f1BQJ;ZXaOv^{ z4O!|m?T5YNn4i}k|6ix&>OW;oSsoJ)waj?jF}2Rx%ws3V)7@5sY!3t2b=f@KAau{6BBbTyjsGeUiOCR$^ z(BOMlhbDo-a;E=hJ$;*GGayd*MoaNqD@63yw7_R_BH$Q=3m> z^SGSSOH333L>I$FNME(6D_)g=S!09oj0<-VcW@(YAz~F0NSLQ?8G9vgMK6Lz#1e~+ zLa!))p8i+r0vl`I`}BCyG+5H}pjwxhc27K>SvuaQ5AU>3duNpH+9)l!&HxS;%BxFn zm_2cOJgR<8m_HzCLxX=kR!6C(7-COtd#T91BF}WP$vG(K+Vcls$^qBtYUS8Bne&{hB@QU1a3mFT6Rbk_` zOx{}h6#;B?>?M>w=j-5IDzeM5SC^$1<0S;&s~mGHh5cGy#rx3-B|WuptkZa$*Yk*o zUD`z##B-{=7|3`zGD3Y*eQ=jR`YqD&ompSB5$K7M2r=D(9gT@AxEC-j!Jo>oYOUHK z2@RI*U_1(SbGa?YV#9SxW(=6F{Ed)G_?zIa@e{2H4rl~3h!zRJqWxseq5yUa#q z9aTm2h#U;aU&Z9J-!e{H(@(_BL!V(@WNM|*Yupl%KiE-Z7+O_4SIw|Q|5r$$t@o=a#E-lhP{eGTu ztsHgbR#Wp6AU{+n=_tROO`s6|?GA1SXq=yRNSfUBK{qfh@>9@U=i|y*t;v4=M>;#sT7l@#M+l!T=@MmaV#Qw&!|FC^7H=eB0Zn7qD z=U*#gdLJ4ybQzu$-+aAgV-FQd%=Wh9FJEf6yl%p*XpCH&WG`S>wz5v=&9)L>oI0lq zB5^nUWC4k@gpQ#Fm6k%-kMX9OAD4rM(2};2{fKE(o53M-0#pRHssZSOi66Y~-Q!Sv zqn-Y`9RGgbUyqJ*@iyCgmNKd{pup9JYYMZ~rqheT9fq8xjl0#r06ONjQ)OGLQYjfN z_J4H?;KU=;J-@U@^)FDJf*Rfx@u9@*!1fsB}B|+$3r+u@+EJS^0MO#(oFb#9>J`^n<5#Ys}<4 zjdCl_FY`|q+N<$zG09?B@S(^yij?CeIGh|R^*66QI@d~eBLqjrSL+c^#XYzm zQ$w$feN|Ss_K8@a!2~quKD79FZ~CxrNRqlI)BCq*NGNIAzx2B=&kSBk+h|>M7BOnkGNwI8f!L(=v8tT)&f@>EX`;v}GOh$rA zU$t1!9U0BkhI9;lI)n)aNl88a94`{nZ#lk5mp%fake>r_qb5hC{0We;ute^4Bw@!6 z*J_g!YEMel6F%dIfS)C`1&)OHf8>#^;+a9)DEehvwN)`t?6TXhBVw}x{1DqAuySww zIx#>%equ*%ueHnZZ}8+2VXd~cTk#T2-~s+` z&1d4ss1ZYN+j<#IcvO3`2uXdgvF9aLvnZ)) zIB?!{5EqIMWWP`-@lICv)mXFMk(u>Pi2{PvQK<3ZMe@q;7KOCPP%?bf5jTkFT_29L5ho!ROk>nfD&T3Sc&eM#}5L9ivvMXfPAL->w7w#v41%2Si3xClG}>( zsm@1kW_*`;Z&YG2$+$8HJUxb`tYE1grBU<`V#Rx;gELOR^P4}5C-&_R37=M?9p^)= z-JR51svpHuuP)~v*FV+%N<&9JgwG4P+_`uDdCFJDrFIf`i>tD&c7#%uE(g(V+jCNu zFJYdW>+Rj@X{{53iuG!9x3tujVzn=?wYTQl^Dp=EdV*Oh>_fm*sJA;J&Wd&Gao`cO zMHSY>I;(zlmIeT#n7d;LFQ5v{sny31+oO--iyX(F)*y|q%3TRj$GF~$y}7m27T3IT zL>$1~o-MI<=f~B<-cz6_9=Td~ZpixB>tP};kI}u=$utNn7w_*8Xbg-S9A1t;ED$(k zqFOf*7jl262e@o;mCN!96t+57SD4z3z*v=tCN4kc|SEL=b?f45jsosiq zy*hJHd|B@y{YvOz65}2^Qp5^B|5SUzpXAHPRGiGW+9li6PU&NYeiKffP)j$V?%`p9 zK1fy2ZaLnBGn5xJTy3e^iH+Y0(a~KX(X8PIu`bB`w3vk_+7r*lBiGu^8?g|>^=^4o z6ckQ2;*VE&$hz0>cDrKK=M$GyJs0cL`w||O?P6%$(Gym$^9^K6unI9A;<5r&fM|47 z*Wb8|s^yrnIWaIyfYM*_77~419CG(8db6eHL>FOFbp9msgOrlNjneoW%~YKDHCQNm z6vg5q+Cp83lTcKC3{eu%WGae975VEX3#=YK~v!jqLb;KQ)cPl_r@P9drL_R@$ z??1NJV|f9IaPVW3dHO*z;s*MQ8F5f8Pk-tWFQbC!q!3biu00j&KZe-h&uvU5aNW`b z_e37-_u9zrqDnntM7n-+l9D!bX^nmA5W=IMTKHv`)L1tK?ogJwgu0aO1B|h`9uP;G zK76^NiaUza3ZjTruFW8QFb_SUk`Q_g??XGwsRnZ2Ilg{TdlMyi87f z&S}2|`W2H?$7^03tH@bNWSrL>D?GJnqc28!1`Ax`o6G({HgP~-2B{r6gnC|G|+P)4&<88prE z?NPm<>wj@?5gFE5z8U%CQHeADDgSBuuMh)u(9V#h9=`Uv*J+oqSX#L*^|Fu?catO< zCr0xGF2V-dD19C%FaUuaL@-y4f!bDxhrda#B#!8juV5g`{cd~oPkuVZKg0?a@X~ZS z7YWmm!2`K7>@ z56f*~^^JIBqFNwoGtG zFjw;8!IPAUhxF#|zML4P@HHeWh8pYmMtj3zsjdN{BY1&eK*;rXV=+`~ISJ?mM9cPp z!ukR_B0U2A_(FPt0uyMG5yH_)wR@wI9icO?GTk1NQppOXV%6@qX_^!{qvLf?7`*MM zSnkykcYqvcss?32n1o;K{Y4=k5o>z_WLxigaFiMn2FIJvz1^PnyE>c0(xrwJ+JPGL zA?M{?>*7aO;k$+G^_pBy_7bv)jmQ%ygq9>n9;RiuaBZ|T*Bb{b*@;6nJHEQMutr0s zlopQUeQ&A|R=!m$4(ZN!*RK&_mPQX5Oej_Vcm94a-8h`vRpnih9i@rJ(Kvm`xjO?h zivMz5K+Rmzk4}d@_m@dO(RjQuH&7Wdokg_Wag-10(!>7-y)ZrtGk8)SgF}2N_VDpX zkC@jt?ig`%m#asWoh=ry$)DpZl`?ywitY z;t8(@I{n|6%Y3^OYBT<&{}+>f{D0G4!BW+ea}3lwh!o9$feZkmy=ayGUmpFFM^7|1 z-H6qYd&g=G|Klg~^T%x56Y*lTsww@mRf`98V@uK%yzKyS1kUp)i zLX{X#2R)IeAFATgQoC&3KoHa`J}O?iIoX&+F5Kf$?~#LoJK$$ru(nzzMuXNL&MO){ zGE)5Gm$3(6@U|0gu;9f8t^j1vZwBZ#HbIDd_5XyhB?OLLE|`&A1%FXQqtSjmMl9rt zH(UkpAv5kZxFtwc7Oc=iXd5z~>er0Nvjmu@p040LsE;Ujh&ispFe_U7`S#?K7Thl~ z>XI15kG@cDCKYq3&zG~>OrZwepqz#kkY^1k0n`sBq6?Ltg!Rr+bKY$nHAFy;EJ9Bi}`TscU9 zAyb&svtY<8tePR#J|?ulp{+MIfM*Hsw0F_(O;iwERK6TsGkK}KR|iFg(Osij;4{$&TeQ3K&4n$VNq3Dd#|GG zg?y(K*473Syf;eEeA>Pm50S4^PbrSx*0xHK7->vZVO)ujI@${?q{AFrrR*r7oTXok zMWO0$o1kJ!QdjZNXYaIUlRYma3F{nB!)_eVy(d0OJA`UgrVm=4!V#R*z2bnG&yo(l zF7kRdmRH`GV$Kj2CHt^v97q2~LHhs0-n%{5l^tiE(SL$_re|VeURIUL?YgUqq>5FN zB^w05B1!-W0bo&Tl~g{spCW(*;X)FWsv|7h6JbZR$9|gbH(J)+k}b)SC0n-$68gX9 z_pOc0FHhOhIHo81#Zw(^@!;&U_u6aa%9Z)$mzh|nX@XpbWXc68!65$-a>nGcTfh); zIuMoPp5p18_c6|H*MYAe`^TC!FLXKFo^bc<>x3!p& zi^7_*T2KD#V;aZ)xATO;F_QtCJhWA?52fzc%zYi3B_R+l1qL8ZOEN3Y9ELANr$X z))59GdES<4m5TXRY!ZwfNO|`6RA7svte;%96(|~Ba*C5(;M_fNNE5M>5*YccMq7_I zX|2Z1cGAA57{$$Y>+KoK`oY$Hah3?TrGC2Ib}dPYhw*;S1^;Bt?H_yXPNbPmXB#*YsCLuQ@rju_>6UM)t>Ky_eH93s!z+4wgZ?P?>H^LS& z3IEAA+T-uU-QPlM=F*=(dPuy`5=A;>hymu#&&0&}QHTkO3`Z#ue5RE>Qgm2PHP}vV zOTDo#X4%XUJu>4yWW4`^@q}c)U>fO(0N9EQ3{(P2uTOtSMz`2}ijV}}sl7O6C5cu7=XvV!+Y@yZdHAUT?dD-W~; zGTX%^;%rIK;~29AI)}%GZA6|Itw$=qc|v<3Mclk2-a@f5C=*m5!)=uj4^$gP)Js@F z$N_wXSS~q+BtO(LkeDz6h`chHF zz0(IM!eTXD^q?^sw@knE8!@hxHW#akTXS?b2KoMT?c?!<5_U@+rDG6?(?T);-K$Mz zlze)C5#lMopo(hM;`R^*DiMM>Jm?k1l08=W=2A=;0ft@_!gs!g`hQP_Gb~~AbG{MXjWeD?4c<<$@eK?Zub^)JWP5xTmJPFyY4fVw+G+-1T1K!kFVs1zYx zii4<9I!r%5uS;$(MG(643wH4oD5!u3zSdqL?}%u8EQilqTJ=be?`E<}skbuUJ{51I z-{~Zc?-W$O$qP(if5EFRND6Rv{X?!-YpNf_x8ph?2B*G11;{4Jzqr>*9D&+U1hh8G-cpqyW}bHn&CXU(LfSaB524ha z2NX|JDbQc~X=}2bW02j*JM!^15J$QYrdnY0)rs*)<6@K2NH0F^u}Zao@GUHo`IXoJcuqtdYjj!1HWtQl z0W4{>Dpwd4Uh>XpOhK8cA9{NbeWhmaUO5DniL`F7Y_xtLKBX)yq{cto=oI(uVp4&1 z4y+Qik;c=DRNgU0zd)Ubk{=;~{4C<|x_~zY9y%X}rP}>4xLafCGpY>eLG5UNtsj|Is2*@m^fNY_75+?Y> z*1uj1{~^BQT8i8FzRFd;=TnJ$$rf?QiDEPvt@_*--)}F6=6|RCw)d4%ukbP`{$LAh zogx=hz4n9v^N0ZChl#t(n$#lE3OElr2{GV4{xo%=&5R2wI}b;qSG%$b0lH-<#3QYa z^{4806*o?Vci|B05J1@g8LpIz zEW9Uu?~F!F7|f16d-+7muw7%#79eaA6$ouZT3y-Ct2f(n9!gRYuAWW=c9M=I0<2&n zc?BVF3pd|vtMQB>E#kF!mz!-dgpC*JRkPyp;lmz740JCoo`9}BH}za=-ahJ5@8Rl`m^ zC>1fV%`f^R#r{KP!4>i-CZq(VCIJtQK-oc}bzO{ZeJOvPVe_kgdXM%sXluJTLFY@t{ zCGh}J&7P>f$t)oILJ~i47A0jqj1TdVIy~4?4CqdJdW0zz_aGNdl)6MesDzoBMW89O z^YOlbA0=UFva!J{VhmQU`-N)`iXXa7AyIW?yyuxYR+SX&jM&1*L*D)I$yuc|E8*dw zV3MQz!^XE5e6lUvobzpGiTB~)?pgWo_WVAzP1q_4QHq+!yNkDs^rV_zW*f)r5~)A& z-R~YipDP-x)91=d4l^I3eft89;jytfPGE?ng{Z=xXSpIB83&dLAs&R#i^w@D7PKsq2 zJzO+S1P`D$)kX~C)hER1bH6fi%vC%|*;UL%jzoav+Ku^=cs^P`#)epT&=`A^bctdd z&`FQAim4YqB;sy)K8@Y1^;mM0TVl-QLf!~L6u(ntsT5!I0I>}K$3rTp9a6dh6Y-E| zvQ>D6I{RsCbzEi(iM!`F|EK$dX>yGmBK7pDu{QEFUap}5mLyjGUOZp=EaR4(xX$@`%&p*Of3NxaP(GQD+om`aX2VyozQHa0gJ|*dYML>N`}(u7t0Ex zxgA=IZfoD6DCnUXS7_nWdf67S#Z%UyU7rjK82zFD6stG2mJP;B`iF|wLN@U%uoZfT zj#w#(#-|<@7N$zL!#XH7EkjrHG?p!X1Ppl7&$uv5;!ApHUiFu31v1V`ME8(z80tIT z`hDtiz8D{7QEn%;GBjm_9fT0a?Ipb-yf;k)z=bxT)``0JVuk=_F|0i#%@Di@zcs=~ z_@{S~w5B~qUD-)foDoMY1VSPVI^%o7uVYsh2@oe}M~>YGC^zh%ROfwQ$cXnCP%-Bb zmS8-nvmvLt1r6RsZbA%DoU^29q9ND)4&Am%eT;p4uN18MQccGoqSHw?_N9mj;C7cc zgfPaQu#Cf>;3wJ_u{10}+2%W9qwJIzht3kLyIP-qNER?-Kt_8S_c+UwbTL$`E;CHd zFjmvuR3JTj%)moYT$*FXvw#?(F#Nekanj#aIvN;}3&Y3?XeE748v^Ob!{ibHhgcpx ztMo-fT}vA$`nxN^@>l6JfLF6YO0bm{~~Tk4C|B3OsY=NFUIkWN}?>s z2ih5K6+fmEI4XT_MZw7qdJnZRUX;=q8;KSZAgJ_f z#RVzKmlP1$UD!17)0dimv-TftvD z4Ps3B2`>+Qb+L1+dfQ;aaSW-z=>utC<;aC2Lq4pn$Z)%8sPyqToKB5Xs)$^?76vBT zsSsL~~OBGoR$ieg6} ziGNek;*}WM4Pa(W$&d>{U+FOtIz67!<;1+w&MB5Fx4)OBi(Y0He%5A&i=Sl=6nY9&>yQ$EWJ42jZ>PibWS41Z=!2K3x^v zGGKg&2X$dC`OWb@K8Q*&J?wus?O`^}KM)j2fUyimx(1$)Z@Du*A`029Vb8e8(A#+? z+&;k+OJtC<-wF~HS`MFu-oP9#X&UZ$E!?V@dRkpxRzBWVgaLkSp3kq#|C#>#Z%7pK zg|ToF+~X9`&WIW%qBp^$+A6v2;tWF>CLid(#(EGaS&3ajj1bbi&|k|AQC9_vDy|6) zzr&X4F;c*2TPO*bir0bjfbi9h5VTKSOiV3E@c-uD187)&>0#pPV>}S-i}$+pM!OvU z2BEkd?}!8mJSSA`9}gN72RnX1-p8d7f3dW##%#0C*p>0A*GVd^jU@|mld-uE^LQfF zN*P!$Tai(*o((eeABv|4oXPT2w`*>v!sW_1k1LVTy;9)^l_UfbHWhLZFNxj~#7$w( z&?k7N0y^R&`bS&TQ=lWL*WHReGgg^wa!9?P8yF-4_JJm{j2tCuwZY-e@z+5JBQwKv}4l@kz0}QDHTS0g$gOz894^ zV@?#dhUtO%9KR+#`=4r`a5eD2l&m2Iz*}@(`~VXTLnvRKj6YHs<2@8?LN%2nwKX&a zG56e@N*ChH@ek%WRIAO-iwoMKzb|l9Kr7dPL*|A3*mjO(ZwQN15ypTLru6H0DRZ%;>!kR4vY@<1&E! z#kfoeX3bPty$=|G*&N@?nw(kl*rAkQ;Akd%#eBP&+(Txeo$dMhi;4+c@2P&fyKuR5 z8mMmv`DV0TY#+|r+H7y3-HO*BsGY*cuW0yU6KYvo&K=J9P&m;zW|Y_N)uO!s5_NIU zJggb@JB^27#8pp2(q!R#)GGtUT(j%ks!s;+N#11!%OEVs-)ry2FGRh1+e2BW3A|?b zf66m#040IOdV{7bW2;dxrs$=Tp`Jt@HML zEXxsC#<+s|-7(9h7%A_gM!r;Lzy%E7RLIQ}BhrKzo)*{9&PA@@)(bKDe|G+7|0*Nk z{87wl@7s_r_W7g#)bfKdgY%7xNZivh!inI2ah=5|kl;F~NHN_Q*Lp{r{Z4?#nkLWkDjM{tswa-#?L+_| zO+NlBt43v>;Np9S!^UHdiU-=$y(k!)E{Jf-Tk*J40A%5Uz9Tj{Qe8mHRTM^=# z6kjzlkW|e|u|;5Ot;8H*C|=E?HQ3U!WsEF~PL@9uRCSn30M0fHC^ij8A(hQ^YGIby z^dqhyn4t6N%B2iU62pldaz4W*w7Dkha9n%7cWAj4Cu|lu!cK=-lybh)O04A~fykA@ zmdu5J^2d+A-_mWS8RzRU3h6~_R?z~NXS@ctII9Sl#l=eA+AF4^R7;}rn%UR9L1^4z zKJOB--rSyK&cAAWM78NR;luQj>VEPjPzv%B%ccaLzmFX@`s+wyvJpjL z7@123I6#IrJ=bjpZ>T6bw9272KpqX9(}aq_{q#7F55*rkNs(30f!ePfNCdAa#7Y=Y zF=;S}n7~>NpR*hvB2&kd<54g|Nne)rRW@Fkd5l5EA*4GdK}h|iFlDi6kMX7|+h+yf z1%uy90TwD{76Q>TTa{E%&BRspFZNH?_f!?Kj0Amz1W;3?fVrG_6^P!T&MfLT6br1G zQp_K0iKtF~H|JzG1-{dzJ#0lYDETCzryqkcmbgfOt$8S`vl zt0qAFi}o$W)R1+A@lZ2DuOUk71p54Xv>%zsAu3FXJ|3BxsXoNYI7#BeN}G+5q2PPA zdrU?rrNtfr!YE|ffi_og*rj6GWfGSs83lh(j9p@KRNeO!%_|b!lIqlBk#Mo%*>mjd zSORIBqx9W}q!)iTVq5#R;8jvq9>y#;Dkl*ZBQQ9TKi>eL_aiYMN>~-2#J?x@byN&y zkebch87TQpd=}@U;tr~%ip?lGkCZoIwLFoLS29S^KvZVqTz+5 z5C}tacBBBr_Nybx7(~14t{ZxS-&OaKELR{3tK&nR@rDZkcSN6?PCr1!cGJKwvc##2n;Cz= zc|=KKrH0~`N$E20%LH;D%J?Y+E^z2L7i`h;Zdj%DkcZJwnoE&c{DD#%Z}xljVpCtPpyK2>q=u`WGb@{8k^B1n)<dtS5`|HR z@VG>-u`V#GRM4|nMg*rfQhJ_zQq4Ry34xVEAs9>Vy+of zUPba_T9oMgbKe1gaMJ5TcS2c6QBR5k3e1)~_^I&eCkJx=JsZ6=hV3;fPzW^8HASp3 zEL?6Hzn&g3>15(66;Eacs!}Z`qp;lQWFyPTEwmf)Y%CMWd8}G*mR-;b*!C3!!qlXy zvMqYWHpc0V%4mD_6~Fq-kh&1}9;&xmUhZRp9G6Kzu^5+DP)0<8oNXjMTYAeMb!O{@ z=Vl#4*sfc$)*5TT9b1Cm{3kh}J?IxtP=sgBMiRn+$%-aSgzyGfkzY=-f<+h>+KcV^ zcu#d4s8>?p75$kmIf`Z5k5MXxGI?r{80xceNdUgr{c7+NdPDJe>|!gahbUsw2^_|Q zFvJeuD+oyMBU7pL$7(U(3sV-X4kBD9v4o6JfD`=j8y*GWNZfJbLJEE#CL-0N%qdYy zR5Fc-%EicGD3i;V+vRu&<>Xb@#1pKFndJS)@(2;V>LK)s_8?3lPNMZTg8OkhI2I)L z<*}qSxf9na;2@aC3$|JKk?PGQQHiTB2nnC_v&Hz9U+Yy=WRjw;5Rl_n-CHc(oZ*G= zt0C|a&s7baNg<+btGBam{4oc%{vWt8zt(W`XqRuVwB=i_^}~w~otR@7z07+laRckG zguM2YBx%O064YIr3%_ETUkkA4!&?C0RMr-onlr+bgC}378_oHTt@wJVPi+AKo;|!Z z{O%9~Fr%Z9Urx<^afC{pN=_M|f2CAe!K%7mp@XT4&*+|E50)*Py(T>IuJ8CjyRO=$Bv~0ljR001gbL$rAa{t5<^$?;~`%eJz45I z2{ubeMcR0jI&?{a_S!abPMXs-U_kw?fK97q(zxtWcS=STA5uwV*Q$^jEx!qrDxNK44^d1Y>ck zI7=BQu`xB0PIaauY$+xKT>Y%X6X}`@8mr=S3C|<4oD{stUg1T)MaXEssJOS=OuUW` zvxTKlhKdouiwY4Wb+T+ZbP)7Q$^;+p|KYzI6wkj6pXb-V<*(JMzy2rx-+tp$@IIz6 z25zjYAk@l3?x6YBk#*VH*2XT`fyfT1|c<#_IB&&|$93K=$r~8hX3IY@rTg7O?mFK8;;>ip5YNOhQ{S6H5s2K4>w2OrKE2 zkFeGbi@H~i<@UCRNKGwNkWuc>w&!Epz2#iXp)yc;5Bx@#jpD#w@GD+J{U9F?GE75v-$0OdZvA zYFGBof$1TOv;XbFbdl9`{-fdl_Hz31!I}qFhK#oE<%E8|{DzB(afVNd$ae1x5Vlar z)V2k*-nWDj-#gO4_AZOI!jw_`-Y>JNeCN_YeoIv>l+OUKCPaPw5R;bEH90n)Z!gEZ zE#c6WLxqrQ@j#WRS58HxZWQ9dK9&DDX{JsSRf&n2B^|KFE3PT4KA9&(w4j0|3atZd zHGU{4;HU9{liCU8K-UT$axz@KyrUVoKbHju}QxlrBSIkw3GHO(dH;5P#V^|E5p4pcts@-(P!1tIijDm1J7M$ zsCawa5fW61Dz*=OC?{<9d|y_P9(xLT!w=N@w}yESgC{7vx% zLu{0q@$;BY%Ho}W?eWj!I~hsE2^5($mPTIdMru%E!6*#BJAIz;Hz7BJ&%_Atv|I6* zF1x2iB?vYu;kwSa+uHOtQysNqw1~>qWU}4mOYLgh5$q8kB8~GE^(w=mtjV35eLGa~ zXT7Qgs;CcQnz2p9GJAb;b2k)%EF>C;Fg=QZ|a5**&V=2Gxj9A`M_ zzP(HV3+MV|n3=fG`J>-%pNQQ{R#l1Fqa11hqTY@RM>A16#1?!uAz6tL-eo*^3(#(o zeU}iEUJEV;GAI0NN(5lvd?5sTvH?oEQToMQtz{%S^@GFD=p-S`Z^m=+O?F3l{)qv4 zgxM6YOOaU9*=7#Rge7T@#654(o0Q(TUpsyE=IdK0#m*$KiX2)JuA|{Hr~V1;8-G~E zqN@)8kJv-N_Az96xh|ly%uRbvR%(F-D*eaAp`9+sY4J+p)@AEAct&5PUuO)em!7hU z#D~Ro?KxI@3b8ocMJU0#L%x?+ z+O2qs&S4bYwv9zj4}S^IpW<4jViRhJ4RNrOUM&`r^Gitm71re6uad`r@jN8~YE%Ho zeD%K%@rq5NOga#!^t&%A+_Fxd6;X2*X4~z>nH6hvk)7n?ffw0Ku}tJrT(hCN+9qXSfF*-pFg2_0`)=T@oT zE`6lE;hB7M{^tCO3cbz6UV6IyfoEQM?y#i2VTO_sdzp1b@{hD}ZdH=}PP0fXr3w5# zI^nl{81y>As-zb3w2B6ZZ75Kuwv0yMad0uowI2@6^M-mxtX$kgxoI)_2qOMCzSQ3G zo4_3rN}oDbTYq*ot`)f_MuV+#klUIfW?%Gqa$>I;k@ep(wR(t&%~jZ}L-LofFkczj zue=?l1wB7=3~#hfzC(=S$=|_ciFZ?ZBCzDWOqr7AFpMNug4%KAc7hptAGo*!!$YA> zWhH%5V~7P)mH~<)E{9|(Nk2-a2$M6KE36vTzEi@Ksy*u^ zV8IpSVF~;bvg$>}{i^?hji$BF6NxRwu4FTW+$#K?XsIm1`IS(Nm}|YaFrKTMi7DbT zN?Qkyg5BpDAH5J?qFTowL@q(0e72e}O?y7M)Vx59MZRvH=Xq zUce9=rFv6BNCKxEOD>`Ex%N!4csQI$U@g*5mF*B35kyy3;~~VzzWkU5L;N34JyzK^ z)-)DQ3e@HHM)}EKJpO@Fg}xi>OxXmPD&9~q>`4{M6JfHmr<&sV9?D2J=w~WN-NeM6grp{2dLB^xxpd z#Y|!5%Eh)gFh^Ui3d8>Ip*cTc2?YSim4+fHVq!crU_nm=KPkO`@T!PAl+_Wv`?lojn~d-1ShmRk?Ml)DapKYnU)~OeqSl z25c4GKiJ`DEb_K@Dn+egtp)1ZRrhgbA=dCe8wDioa;q)O*^P&3Of;Y7<@h%ujp_t<`MCD&!o(`Q<_%9Unm}Vkth;(n_X)wi?NJK)1Y+3J-@_^a*stR zKw4{Zw{UV&lS;}NPW>Sm5L4y5!3xHkh|kyfG~EUTEwz^}AhEnFF;0~!SckbbvI9&4 z!q@!uMaBBUzPiqiP?Kw4L&Q-snu6BLS+M>w9_=cke5K|PnT1kko?JDxDj&t_&$+}h zA>oXJuE?CqLtV6U2?>Mu6Zh+$>-k^D7Um@dnyeS`l%dQ$yw;qI-?bJ%bd(h3ZJ>f6 z?)pIrfeK zKs?22O-r|x(5szlR3sDt0DC!xa)rW?F)bYSjp{bBPlOc|rv#HNeGes_#bsiV{bPI} zH|VGo(WEpfx+i^|ZJ_C)SBAHnaG#!U-M{dZi$p-W{p4VnoEmO&ZOQt6Li=k7LU%p%X(m^&*y90dMi#YkZP3d;XVre<|f_i>m-o89&YY9OyRW4DP!_b%N9Qt2exFkDRNs7@>{G_ zyzwq3Bl%cB8Ro(bPDpl#wR7I12__g5^hX9 z9?x}@2*@JB9!vl6r`yxm3>cg6fxoqG&MqN|XdrqZp579S##GWeirrQh@H)+a*g2<#FgRqTr0hV;S0W zly!+`!+q>#eZ0ax)-1sli|aZ?3nWjz^~QuX$M$jyVpjDij~ZN1o#r0oeA_Ih!73-Q zogc76936MQnx}Mn3{4Cr*>WDs*?6mK`WS3KbZXR?dBb33kK_Z{UERB~%*$Sf{%MOJ zo&dAYK@hj?!HM(l`nf9qqc-eueBN%?;-55`wqXlKegWJu?6{k-O#JBhc%R_L-P#Oh zQ9-KON}G5(k)w3GpZp0$(>xY7E0Dym{>V~6-vp$hSSz#b(=mrC3nEm>SI;Se?~@s+ zEEV16pm%o;v{xH56*0m=DklqlC|BYMKy$r&xSt>tf&_$Y<{`@v^D?`58}#hvo4$ZubGm! zO-Arv<+44HHBQP>-KFQtfreGI3fq!1th$?@lE;pp7B6uA=qai{#(OhcX=={U(j->l z$^X^Pe-Rr-T-%FY5*ET$+#gjKirL+18SUxOx5L;IZ;PWUyLL#o4nsqFQz($Uy`RQ# z=#=n!3_*(eBQbSKD(o0r%jHo>B=fd?jl|j5LyoA{1HB4YBZ!mzP1+-1*o`T*`!+! zb}4ZrAIM_^9oVCyN^gbX?c5J17}_TFKifVUw;tLFu|9d`%PU%quNftAtaj=ORMe7H zfr@PAdK=n5NBBkWp?FmWdzyA4_Q5M58^G|KAMoE}f{)I+Bj=@G>YX&mgN>iyar6ja z8l_;8|CK~mk5NTAs9{!){WYxT>XdgD27br5gl#Clhkc`>JwARUOSsf!ABzM~;E9Va z$6nx9ue7Tnm3Zz~V+KGc&VS*h$?8s=kbbcl_UaT_aRAnGazq%Q&tU8mHo-`(Uh^3k z-9L(}r7k zbc29`oni^~{&!4-?=r7q3$mADeUuk+Tp_EAIP<@c5b~oXLZLladl9P*?aVx*lQ>QE z(0J=Paq4R3$==o%+A%;)9w8{hT$tZ(Pro0Fv^w8rEx0|wqi-MUkI%Ii;^Ld__EJ0& z<8WOWB!wX`)Tla|Oi~$OoE9!F0VTB&si`#G1J8&lYHue_t&g|QdME7b1o>L*g!?#j z>HJB95z$YJ?D^;0b1!@5msCdps6S8HJy2G&ZOfds}HOEeIAQ=}OqEc7HnD#&fGdU4ms6t?Nrcv45Rc_*d(`jYmT z6kck;?o5;(^s3nDc#X$_m0F{@=Fb2tGPqAPn z#aLqeQoMgXjYRtas=SmHtxDpln z96hk(p$fXBSSl>E9S?*QtoBs#Q8l)v>X0v^9mva#0l{m)FLO;%MKQMylGA(K9>yc3 z-hL6cRZOS->W{n^1SnuHIrW786`jdYBh3S~X5c}`@+;@ogV|IihGNUSOR2utwb$Dn zKaVB@J(!k<20B9_jDu6(jQ9p#ZVXw>bjIiHaC|zn$7JRGn-0U5(Ddl&qG+nkpnbS| z2wCag!=5V&nI>YC+QS@=Cu_0TSD~LfkesXf+En*+)fo3nE@Kao66ah;)W)g5o{^#! z**zZg6(I} z@UO7;V&azD;(T1)jfM;aVtb%|O78ZMymwUOmgAE$VriwKj^q~9B&}sR(dC?32X1qi zXO8KNfsm7M)e^1#E#Sw$Iy=@LzL} zHi>C7DHw;=a6A{u{om6V>})B~rat)pJT<}RqJUw{?E^`qm|XFPC@u9%|E#AY>J&Im z;SQSS_v0#I_^Jad9RF|QkKKhP0F=OU3pb4NlcQXjaiHzam}PyCc6_I^J94l1?7TBNs>JQu4n;NiIO}hq^Io=(l zMCCGKfKUFoG>%i0C+xE5?7p9Z$pMK3)Z+IGJ*^Jt)SI)bVUdkIMcvi#6U9m^;3`ey z(10;IUV;h(f93nB{yKO{4L&LC8zO}eek`L!RjtP#vcIAq1%P^*2;XKa zWCk@r9H$)i4C#!7%;trZC#)BhrIi_|Nrzu?~`L0g6xO}C(5t7Ew_ZVrR z^eA&&O4lPrs~)E>gA}=P0wug3#w%jBbak61yNukq*i9tuaN5SF&Q~nJ%6%NQsmT3x z_I3cikR}3cvm=-QyAD}6E2+#&B8Z3C`QX_XJS%5!0W6sdRVSoIq8@e zJTrzX|6x-4sU44L-cw9Grc5@Zu@SUIZ8x>u;nV*Rhrz#8Cp=yS9P05`Z0Ok#^nX)c1 zfvd%@Vmdx&6q3evXIy!ns`CX_oy!4YOVy%JG`p)gO8>aJcajV)(t)M(n&x zS8A53x}kPsbvhmem$MrXK4aJEtZvs4tnve4vqwtCcE#IhSD<@gxd~0P!k& z0fg`%H$OfMHdxF9etuzC$jh7@q`S_UxtYJy*-{DH;OAwp4`1qBsTMj#sdZ$_gp84ZK&uBz%sxU+SKj#4 zG3G>Mz_ezQc8uTi)pk;{dgPMeY(i&={iA@r4-ts{Frbcd2PtDC#T&Lf{6nP&S3nyA zH^e+ltRk4w!L)DPPOaNBqKNT(u5st(V#NA_IAO}FyQkINNQRM9??-oAPDpRuakL+5 zM;}*WvH)Mjf%P1#g$y^cNubfh>?zE5P&UjS{kqzHO6qz~eX3XZ4=m`z?L+a;&$Q3P z3qAQiMIrrjmw!_&oisBMM$V2yipk`R$WB%4F2o8HL?Lb;pJSyQ`+;QkZVSRV^NDeY?6%<_wAI5S~G;88~krC+XjhRN%$^ z4dYcQ2DeYa2T$t?YgU8XBTzjzOS#tGjOE~fIXSc8(klv*#X`rf3hVpso;X<;HAdg#a4iksy#tAgf>Nl<{st9Q8D zvSBu}rgw?C1T&`!Ry`v}W2QGxE;Qq5lH;Tna!M3o$wQ!HWp8*_lFmEbm}GN|0;Nn} zk*PP^@@h<$2!_y`)$37_3wRn4Vx&;=}-!nhS+&~&R1)SL*E z%tLM2aQguGyE~HJ2v7#pV4Gd-sa$B+mf};-O-cvx{q`SY_AgPQJ1**Jh9$7GzQw{h zL8EV9jxZ;wz3@VN;e{A|=hvNo$77N`0w9Dr>d7VwBOTx;lHj=%chK|c0^#*WYmm0$ zdIao&7`IfIg#R~CQ|(AxKs#~ zwV=MCuHq}^L=_ImjooHU2R*$o8lR~Qn7m8|snVJ_m+?Q<_$GISWzwm2qrblSG#OKi=*?zU$9VQtb@@$o8QmgeyY zA`_d5snjgF;z98uE~%%?qW!T^W|UG2tbC0ODS=L~ZHgY`R1gv$%MCuwBb8m`U3Ui* z%kv8kiM%k>SPD5niLsDAFr7*#-77FR9w5|(CC9#th3e|m!3{qpuAgs5-ehWB0&qvujjfW8 z+>5Af9l_KktPrm*desl&J$fP`fwmYIChq1vh>gsz|3np{P82GLzoJ*nL0OY-sJ2{p zDs>feyY`+U5}C)&s2?{YB;m5QMISE&YS`RU;;FY@kLD~y?YTbfnz$UXFp zT{=w4=&`cthB3sIlM+iC29J|6E_F^-7GrC#_?H*$P0gnkL-`EbA;kiknQ*T1nObcC zRUY!IQ=yM*IItlnohix=6Jhl0F*n=Q58kA-DDDShWWiiNqC_rEN(ds!^d+2u34~rf zKyv+y3uhvMIF7D?eePKsx?hy%;8~wy88fx9Qj1J=nqE)7cK*Y5{tcvmgP$i5dMCA+$ujF!ET${X>t2u5(zxP@F>!p8U=EcY$VOj&8S4`{Dx~ZOWYW zpWvloH?pO3rZ2Fs4uZuC!D$_rIB4$)Op6q_L3JxIw$lSq*nN8dBEg^aPk_*vPlb4o zj{c`6pEh1W2@QpAjgA1miZ4|V;+Kzqp2HP)_`5@<=-KR;k>sFb#c?mQBeK8&8E!}ugAV)Npr#! z`LtBZAwRgAUmj3cBE~Q3C>+lCPD`~K_rzbJ6}vwnnTZesP|-sEx60}`YVdwTzvGk-%etFJz8UnsxT4)UvZOEvDM?t;3^3WLBXo69U5OmRQ0J_c{>`htt!z!U11Cs>^HfBUjpKx^e>v zt4Qt|q{On6iaCt3fddj&MAqcc+%5Z{J?_1Ke5 zIG*B^wW>ByJGGZPgdOHB4ap^KqrX&&DLZ;c{= zz6XF6r3`hbrk*)}bfvv=#XmVlMINSQD6&($IXb_Tv-u>sP(XI^@bgD^Ffz%6iwRIM z&ru9ii!wMTp&ZScdjN@ub9G#Ev&L83S zj?!%CM;54U`Z{==B!gNk02}Gm>Y9K`$cLQc+flK{K~K3gbMX>0Scj={LF};*JYJQ$ zi3ueZTv+k!8_Ld<5u$+`#&10GqE~ZFxH9cK&pYl7UxQe3-1{azb1drC0~LX*79&Q5 z+Ad-iSk~t}hgO^+3G_a;H(9Ew?XW=Hi?z<0=D_ zc~GNG%6F7lo&4;RiN9AdoT7O+mc2RP18rb0`rXll<6`h2-j|E?8 zx2?Jn(Ox*pd8kUl7H2Vp0_yiw&ju_Kp;;csEc}*@f_?Mry|Ra)tJic%(npJ4;uUsm z4uK8mzzKn~qS)^`ss{IXq2A5TZq3KvX-|7E93vxx&AE5x2T%YQAHQ?pba2PU13xc} z-Wf&sox-c&;&CgW>5}LyDB;)-l-tFqOKrZ0e;HpXwRv=!+C>?Zbjk8*N+^K$C2%R) zLrnLrwRX#|4o=D?du7g8*-Ig*N{D+me)xc@$^PN24sUA3`0dq33ofLlSa0tW3+H#3 zcMCO0OWIl!Wj~RAo!Gx}B7YED7a0~yQ^%d}cuZ2oNdx3P$S5|te{do#ITPZU7P}!j zy`Nz(_zjQ0Zn;zFnEM+NQ@R=shu0%L*@VR)Vt0$tlvbr%iRKj5qCKg_0OAftms-ZSHI?4#X zI7UB;UxT5JH!S63+3`5RoRtvEW^pkAfxaQV`!{wT_7x^KKOYs_2e#@f@falC1#Q26 z{*@AjROB~h9t1|GQ zf?oSIlN=K(~7R`dDEly=4@S5is*bRnlijCzU|S z*eIW9PsfOq7=t6{h#t{`ziI`yM!V=d8<&VWRUfdz(UralCpOKOQ~nm)tt_l^)@r%k zK0OZka>};RQy1HYy3SMosnGM(e=+{+?PjRyRVEJuIHsGaCn?o)c{G#(2bcF`t+YgB zM8GOUl+`x3>XjiyM!K(@V{+A$C4w&T9_e8&!>ucUm`+E4Ih&5JilOj+CtTuCN~G0&_h$N`$U2{on%YI@H$2BoXmwj3{UK&?~iwe~WnAP4n0bZ%M76eJ=aEN&FJ7co_xySFz*970N^TS`+q6*B$4 zZ`rB1wax`ioMz{5uFl6pSWs!u6k@8Cz8Jf$pB^#6+U&do)?9qu;Sk?vjZ?L*A1w7y&8w#)rq{biAXmzo_~l$6q3$F$6%}A@)oDoE+$Z9?2GtVJSU! z#gmT(3PVKHF)#FJ6C+*I7E{XxIc*Og#&aa)HmbXZPxJQt(L3!a|E@>IW30sOiYY$Z zZY}!NT&gIgoz=OOjZxu@Pkt6NH*QXd+>ADPDnC1eUHgCKpyJ8j9g6PpWuS7p$#EMg#d zUYFVpmqKo@Uhy}ijFd1J21r3pVYs?-zr7TXlDRv}ZUm5zm;=Wo=alE5GV#X0h$>%> zM~j?M36AT0_9?{6a`Jj*w6!m7D{xSQlq?+j()0`TsX{W#xNmt#8Mg_EG}%V#37Eqp6(npv)2;p6LQygomYplttuMCZY_q% z5M)ODi$egahtS}1*2fb9ChT1*Vcoe%yNQ*4_uckvC~itREdCu|4f;&$pX1{tDtnjoFYtntsLP;Tea$`y5~=z0s~*37MnN%&-0^K6Ltj ztljyeciX$~#(0iNcH!LLD3-wS7DyYa*3v1$61HW&6SM_hy0|o-)k=Tm@z+1+p;I~c z=x)pyRho0#ff8{PVx?FFI@;8sqZp*DY-i4jGx60J@kEm{9r&4T*H*py)Vtc1Gybr~ zJShY!wo42MpDY6ia8-_Kgq*B&@$U-#4iKC0M=Uvb=R_z#jFrv4Zsm&=$B$#~IOH#I zp)xbwdV&dQcC?O1MgU^99YTL1mL19c1#Ok3#2N39gi0Esq>#w z)1p9$9A>SB=h`RyB(@BopFj6LhDAa3swLmv&m*6THlpand{O`>ahh4=35YYsA!XT% zClxhJB(6>$_MM-MLD=@oz9rzp(W5PDf$50@{ZRHIkd2bdOEK?PUWiEWfBCf;$3a|- z|MktVlwbAkA^PU!19hxSKdj!VP_gn(QSiPM^rl>3VV39{J3_P!cK^)�MFvH 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

    EIk<1BuqtG%U9KgLQ@<%jfdmNVRRg&-ND19 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 literal 0 HcmV?d00001 diff --git a/tests/CMakeLists.txt b/tests/CMakeLists.txt index 61407e573..1c73de0a3 100644 --- a/tests/CMakeLists.txt +++ b/tests/CMakeLists.txt @@ -31,6 +31,7 @@ llama_test_executable (test-tokenizer-1-llama test-tokenizer-1-llama.cpp ${CMAKE llama_build_executable(test-tokenizer-1-bpe.cpp) llama_test_executable (test-tokenizer-1-falcon test-tokenizer-1-bpe.cpp ${CMAKE_CURRENT_SOURCE_DIR}/../models/ggml-vocab-falcon.gguf) llama_test_executable(test-tokenizer-1-aquila test-tokenizer-1-bpe.cpp ${CMAKE_CURRENT_SOURCE_DIR}/../models/ggml-vocab-aquila.gguf) +llama_test_executable(test-tokenizer-1-mpt test-tokenizer-1-bpe.cpp ${CMAKE_CURRENT_SOURCE_DIR}/../models/ggml-vocab-mpt.gguf) llama_build_and_test_executable(test-grammar-parser.cpp) llama_build_and_test_executable(test-llama-grammar.cpp) llama_build_and_test_executable(test-grad0.cpp) # SLOW From 438c2ca83045a00ef244093d27e9ed41a8cb4ea9 Mon Sep 17 00:00:00 2001 From: Georgi Gerganov Date: Sun, 22 Oct 2023 22:53:08 +0300 Subject: [PATCH 33/48] server : parallel decoding and multimodal (#3677) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * implementing parallel decoding in server example * crash fixed * save dev progress * refactored sampling function * completion endpoint working * multiple client support * grammar + no stream completion * cached prompt support * chat.mjs support cached prompt + some fixes * server ui now support multiple clients * unused change reverted * fixed timings per slot * add context swap * add changes to README.md * llava multimodal integration * fixed tokens probs * add multimodal input - alfa * refactor code + remove unused comments + improved README.md * fix compilation errors with llvm * notify the user from server ui that multimodality is unavialable * some ci fixes * fix ci make build undefined ref errors * fix long prompt than ctx proposed in #3639 * fixed premature end due stop word * context shift fixed * fix llava implementation * sync README.md changes * readme change * update api like OpenAI * multimodal support enabled by default * fix make bui;d errors * fix multiple clients * fix zig build * new sampling API * latest changes of sampling API * server : coding-style normalization * server : coding-style normalization (part 2) * server : remove beam-search functionality * server : bug fix in ingest_images n_tokens is incremented internally by llama_batch_add * server : use refs + use llama_batch_clear() * server : snake case * server : minor sync * added thread safe pipeline * server : bach has to be allocated for n_parallel sequences * server : no need for atomic int - already using mutex * server : logs + minor code style * server : fix multibyte handle in partial response (#3706) * fix image load + view image in chat * make : silence stb warnings * clip : link to ggml, not to llama * server : fix switch fallthrough * server : fix crash in Debug on macOS (I have no idea why this fixes it!?) * server : refactor ctx_sampling init + n_ctx + names * server : bug fix for prompt caching * Do not save/load image_data to localStorage * editorconfig : new line in index.html * server : completion requests remember slot_id * Update readme to document multimodal in server * server : minor style * Update readme to document multimodal in server * server : hide ctx_sampling->prev behind API (#3696) * server : apply fix from #3722 * server : fix slot reuse * server : add comment about changing slot_state to bool --------- Co-authored-by: FSSRepo Co-authored-by: Damian Stewart Co-authored-by: Steward Garcia <57494570+FSSRepo@users.noreply.github.com> Co-authored-by: Jhen-Jie Hong Co-authored-by: M. Yusuf Sarıgöz --- .gitignore | 1 + Makefile | 4 +- build.zig | 3 +- examples/llava/CMakeLists.txt | 2 +- examples/llava/clip.cpp | 4 +- examples/server/CMakeLists.txt | 2 +- examples/server/README.md | 36 + examples/server/api_like_OAI.py | 5 +- examples/server/chat.mjs | 11 + examples/server/index.html.hpp | 4052 +++++++++++++++-------------- examples/server/public/index.html | 115 +- examples/server/server.cpp | 2695 ++++++++++++------- 12 files changed, 3980 insertions(+), 2950 deletions(-) diff --git a/.gitignore b/.gitignore index 471cf90d5..545c28726 100644 --- a/.gitignore +++ b/.gitignore @@ -10,6 +10,7 @@ *.gcno *.gcda *.dot +*.bat *.metallib .DS_Store .build/ diff --git a/Makefile b/Makefile index 325ae747b..80179631f 100644 --- a/Makefile +++ b/Makefile @@ -605,8 +605,8 @@ embedding: examples/embedding/embedding.cpp build-info.h ggml. save-load-state: examples/save-load-state/save-load-state.cpp build-info.h ggml.o llama.o $(COMMON_DEPS) $(OBJS) $(CXX) $(CXXFLAGS) $(filter-out %.h,$^) -o $@ $(LDFLAGS) -server: examples/server/server.cpp examples/server/httplib.h examples/server/json.hpp examples/server/index.html.hpp examples/server/index.js.hpp examples/server/completion.js.hpp build-info.h ggml.o llama.o $(COMMON_DEPS) grammar-parser.o $(OBJS) - $(CXX) $(CXXFLAGS) -Iexamples/server $(filter-out %.h,$(filter-out %.hpp,$^)) -o $@ $(LDFLAGS) $(LWINSOCK2) +server: examples/server/server.cpp examples/server/httplib.h examples/server/json.hpp examples/server/index.html.hpp examples/server/index.js.hpp examples/server/completion.js.hpp examples/llava/clip.cpp examples/llava/clip.h common/stb_image.h build-info.h ggml.o llama.o $(COMMON_DEPS) grammar-parser.o $(OBJS) + $(CXX) $(CXXFLAGS) -Iexamples/server $(filter-out %.h,$(filter-out %.hpp,$^)) -o $@ $(LDFLAGS) $(LWINSOCK2) -Wno-cast-qual gguf: examples/gguf/gguf.cpp ggml.o llama.o $(OBJS) $(CXX) $(CXXFLAGS) $(filter-out %.h,$^) -o $@ $(LDFLAGS) diff --git a/build.zig b/build.zig index 0b74cee48..dcfa3dd6b 100644 --- a/build.zig +++ b/build.zig @@ -131,6 +131,7 @@ pub fn build(b: *std.build.Builder) !void { const sampling = make.obj("sampling", "common/sampling.cpp"); const grammar_parser = make.obj("grammar-parser", "common/grammar-parser.cpp"); const train = make.obj("train", "common/train.cpp"); + const clip = make.obj("clip", "examples/llava/clip.cpp"); _ = make.exe("main", "examples/main/main.cpp", &.{ ggml, ggml_alloc, ggml_backend, llama, common, sampling, console, grammar_parser }); _ = make.exe("quantize", "examples/quantize/quantize.cpp", &.{ ggml, ggml_alloc, ggml_backend, llama, common }); @@ -139,7 +140,7 @@ pub fn build(b: *std.build.Builder) !void { _ = make.exe("finetune", "examples/finetune/finetune.cpp", &.{ ggml, ggml_alloc, ggml_backend, llama, common, train }); _ = make.exe("train-text-from-scratch", "examples/train-text-from-scratch/train-text-from-scratch.cpp", &.{ ggml, ggml_alloc, ggml_backend, llama, common, train }); - const server = make.exe("server", "examples/server/server.cpp", &.{ ggml, ggml_alloc, ggml_backend, llama, common, sampling, grammar_parser }); + const server = make.exe("server", "examples/server/server.cpp", &.{ ggml, ggml_alloc, ggml_backend, llama, common, sampling, grammar_parser, clip }); if (server.target.isWindows()) { server.linkSystemLibrary("ws2_32"); } diff --git a/examples/llava/CMakeLists.txt b/examples/llava/CMakeLists.txt index d02e6ab46..2d7979ecd 100644 --- a/examples/llava/CMakeLists.txt +++ b/examples/llava/CMakeLists.txt @@ -1,7 +1,7 @@ set(TARGET clip) add_library(${TARGET} clip.cpp clip.h) install(TARGETS ${TARGET} LIBRARY) -target_link_libraries(${TARGET} PRIVATE common llama ${CMAKE_THREAD_LIBS_INIT}) +target_link_libraries(${TARGET} PRIVATE common ggml ${CMAKE_THREAD_LIBS_INIT}) target_compile_features(${TARGET} PRIVATE cxx_std_11) if (NOT MSVC) target_compile_options(${TARGET} PRIVATE -Wno-cast-qual) # stb_image.h diff --git a/examples/llava/clip.cpp b/examples/llava/clip.cpp index 1ae9077b4..61932e659 100644 --- a/examples/llava/clip.cpp +++ b/examples/llava/clip.cpp @@ -610,8 +610,8 @@ struct clip_ctx * clip_model_load(const char * fname, const int verbosity = 1) { int idx_mean = get_key_idx(ctx, KEY_IMAGE_MEAN); int idx_std = get_key_idx(ctx, KEY_IMAGE_STD); for (int i = 0; i < 3; ++i) { - new_clip->image_mean[i] = *((float *)gguf_get_arr_data(ctx, idx_mean)); - new_clip->image_std[i] = *((float *)gguf_get_arr_data(ctx, idx_std)); + new_clip->image_mean[i] = *((const float *)gguf_get_arr_data(ctx, idx_mean)); + new_clip->image_std[i] = *((const float *)gguf_get_arr_data(ctx, idx_std)); } if (verbosity >= 2) { diff --git a/examples/server/CMakeLists.txt b/examples/server/CMakeLists.txt index 3782f9b80..a23ddcc55 100644 --- a/examples/server/CMakeLists.txt +++ b/examples/server/CMakeLists.txt @@ -6,7 +6,7 @@ install(TARGETS ${TARGET} RUNTIME) target_compile_definitions(${TARGET} PRIVATE SERVER_VERBOSE=$ ) -target_link_libraries(${TARGET} PRIVATE common llama ${CMAKE_THREAD_LIBS_INIT}) +target_link_libraries(${TARGET} PRIVATE common llama clip ${CMAKE_THREAD_LIBS_INIT}) if (WIN32) TARGET_LINK_LIBRARIES(${TARGET} PRIVATE ws2_32) endif() diff --git a/examples/server/README.md b/examples/server/README.md index 9f0ace3d7..715007735 100644 --- a/examples/server/README.md +++ b/examples/server/README.md @@ -24,6 +24,10 @@ Command line options: - `--port`: Set the port to listen. Default: `8080`. - `--path`: path from which to serve static files (default examples/server/public) - `--embedding`: Enable embedding extraction, Default: disabled. +- `-np N`, `--parallel N`: Set the number of slots for process requests (default: 1) +- `-cb`, `--cont-batching`: enable continuous batching (a.k.a dynamic batching) (default: disabled) +- `-spf FNAME`, `--system-prompt-file FNAME` Set a file to load "a system prompt (initial prompt of all slots), this is useful for chat applications. [See more](#change-system-prompt-on-runtime) +- `--mmproj MMPROJ_FILE`: Path to a multimodal projector file for LLaVA. ## Build @@ -158,6 +162,8 @@ node index.js `n_probs`: If greater than 0, the response also contains the probabilities of top N tokens for each generated token (default: 0) + `image_data`: An array of objects to hold base64-encoded image `data` and its `id`s to be reference in `prompt`. You can determine the place of the image in the prompt as in the following: `USER:[img-12]Describe the image in detail.\nASSISTANT:` In this case, `[img-12]` will be replaced by the embeddings of the image id 12 in the following `image_data` array: `{..., "image_data": [{"data": "", "id": 12}]}`. Use `image_data` only with multimodal models, e.g., LLaVA. + *Result JSON:* Note: When using streaming mode (`stream`) only `content` and `stop` will be returned until end of completion. @@ -188,6 +194,12 @@ node index.js `truncated`: Boolean indicating if the context size was exceeded during generation, i.e. the number of tokens provided in the prompt (`tokens_evaluated`) plus tokens generated (`tokens predicted`) exceeded the context size (`n_ctx`) + `slot_id`: Assign the completion task to an specific slot. If is -1 the task will be assigned to a Idle slot (default: -1) + + `cache_prompt`: Save the prompt and generation for avoid reprocess entire prompt if a part of this isn't change (default: false) + + `system_prompt`: Change the system prompt (initial prompt of all slots), this is useful for chat applications. [See more](#change-system-prompt-on-runtime) + - **POST** `/tokenize`: Tokenize a given text. *Options:* @@ -218,8 +230,32 @@ node index.js It also accepts all the options of `/completion` except `stream` and `prompt`. +- **GET** `/props`: Return the required assistant name and anti-prompt to generate the prompt in case you have specified a system prompt for all slots. + ## More examples +### Change system prompt on runtime + +To use the server example to serve multiple chat-type clients while keeping the same system prompt, you can utilize the option `system_prompt` to achieve that. This only needs to be done once to establish it. + +`prompt`: Specify a context that you want all connecting clients to respect. + +`anti_prompt`: Specify the word you want to use to instruct the model to stop. This must be sent to each client through the `/props` endpoint. + +`assistant_name`: The bot's name is necessary for each customer to generate the prompt. This must be sent to each client through the `/props` endpoint. + +```json +{ + "system_prompt": { + "prompt": "Transcript of a never ending dialog, where the User interacts with an Assistant.\nThe Assistant is helpful, kind, honest, good at writing, and never fails to answer the User's requests immediately and with precision.\nUser: Recommend a nice restaurant in the area.\nAssistant: I recommend the restaurant \"The Golden Duck\". It is a 5 star restaurant with a great view of the city. The food is delicious and the service is excellent. The prices are reasonable and the portions are generous. The restaurant is located at 123 Main Street, New York, NY 10001. The phone number is (212) 555-1234. The hours are Monday through Friday from 11:00 am to 10:00 pm. The restaurant is closed on Saturdays and Sundays.\nUser: Who is Richard Feynman?\nAssistant: Richard Feynman was an American physicist who is best known for his work in quantum mechanics and particle physics. He was awarded the Nobel Prize in Physics in 1965 for his contributions to the development of quantum electrodynamics. He was a popular lecturer and author, and he wrote several books, including \"Surely You're Joking, Mr. Feynman!\" and \"What Do You Care What Other People Think?\".\nUser:", + "anti_prompt": "User:", + "assistant_name": "Assistant:" + } +} +``` + +**NOTE**: You can do this automatically when starting the server by simply creating a .json file with these options and using the CLI option `-spf FNAME` or `--system-prompt-file FNAME`. + ### Interactive mode Check the sample in [chat.mjs](chat.mjs). diff --git a/examples/server/api_like_OAI.py b/examples/server/api_like_OAI.py index 14d2dcf65..313e1a965 100755 --- a/examples/server/api_like_OAI.py +++ b/examples/server/api_like_OAI.py @@ -8,6 +8,7 @@ import json app = Flask(__name__) +slot_id = -1 parser = argparse.ArgumentParser(description="An example of using server.cpp with a similar API to OAI. It must be used together with server.cpp.") parser.add_argument("--chat-prompt", type=str, help="the top prompt in chat completions(default: 'A chat between a curious user and an artificial intelligence assistant. The assistant follows the given rules no matter what.\\n')", default='A chat between a curious user and an artificial intelligence assistant. The assistant follows the given rules no matter what.\\n') @@ -77,7 +78,8 @@ def make_postData(body, chat=False, stream=False): if(is_present(body, "stop")): postData["stop"] += body["stop"] postData["n_keep"] = -1 postData["stream"] = stream - + postData["cache_prompt"] = True + postData["slot_id"] = slot_id return postData def make_resData(data, chat=False, promptToken=[]): @@ -128,6 +130,7 @@ def make_resData_stream(data, chat=False, time_now = 0, start=False): } ] } + slot_id = data["slot_id"] if (chat): if (start): resData["choices"][0]["delta"] = { diff --git a/examples/server/chat.mjs b/examples/server/chat.mjs index 87f4d2926..219ebb51a 100644 --- a/examples/server/chat.mjs +++ b/examples/server/chat.mjs @@ -7,6 +7,11 @@ const args = process.argv.slice(2); const grammarJsonSchemaFile = args.find( (_, index) => args[index - 1] === "--grammar-json-schema" ); + +const no_cached_prompt = args.find( + (_, index) => args[index - 1] === "--no-cache-prompt" +) ?? "false"; + const grammarFile = args.find((_, index) => args[index - 1] === "--grammar"); // Example usage: function,arguments @@ -30,6 +35,9 @@ if (grammarFile) { grammar = readFileSync(grammarFile, 'utf-8') } +// for cached prompt +let slot_id = -1; + const API_URL = 'http://127.0.0.1:8080' const chat = [ @@ -76,6 +84,8 @@ async function chat_completion(question) { top_p: 0.9, n_keep: n_keep, n_predict: 256, + cache_prompt: no_cached_prompt === "false", + slot_id: slot_id, stop: ["\n### Human:"], // stop completion after generating this grammar, stream: true, @@ -92,6 +102,7 @@ async function chat_completion(question) { const t = Buffer.from(chunk).toString('utf8') if (t.startsWith('data: ')) { const message = JSON.parse(t.substring(6)) + slot_id = message.slot_id answer += message.content process.stdout.write(message.content) if (message.stop) { diff --git a/examples/server/index.html.hpp b/examples/server/index.html.hpp index 58e3387d1..5d3bdfbdd 100644 --- a/examples/server/index.html.hpp +++ b/examples/server/index.html.hpp @@ -186,351 +186,369 @@ unsigned char index_html[] = { 0x64, 0x2d, 0x63, 0x6f, 0x6c, 0x6f, 0x72, 0x3a, 0x20, 0x23, 0x32, 0x32, 0x32, 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x63, 0x6f, 0x6c, 0x6f, 0x72, 0x3a, 0x20, 0x23, 0x64, 0x64, 0x64, 0x3b, 0x0a, 0x20, 0x20, - 0x20, 0x20, 0x7d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x63, 0x6f, 0x64, 0x65, - 0x20, 0x7b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x66, 0x6f, 0x6e, - 0x74, 0x2d, 0x66, 0x61, 0x6d, 0x69, 0x6c, 0x79, 0x3a, 0x20, 0x6d, 0x6f, - 0x6e, 0x6f, 0x73, 0x70, 0x61, 0x63, 0x65, 0x3b, 0x0a, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x70, 0x61, 0x64, 0x64, 0x69, 0x6e, 0x67, 0x3a, 0x20, - 0x30, 0x2e, 0x31, 0x65, 0x6d, 0x20, 0x30, 0x2e, 0x33, 0x65, 0x6d, 0x3b, - 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x62, 0x6f, 0x72, 0x64, 0x65, - 0x72, 0x2d, 0x72, 0x61, 0x64, 0x69, 0x75, 0x73, 0x3a, 0x20, 0x33, 0x70, - 0x78, 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x7d, 0x0a, 0x0a, 0x20, 0x20, - 0x20, 0x20, 0x66, 0x69, 0x65, 0x6c, 0x64, 0x73, 0x65, 0x74, 0x20, 0x6c, - 0x61, 0x62, 0x65, 0x6c, 0x20, 0x7b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x6d, 0x61, 0x72, 0x67, 0x69, 0x6e, 0x3a, 0x20, 0x30, 0x2e, 0x35, - 0x65, 0x6d, 0x20, 0x30, 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x64, 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, 0x3a, 0x20, 0x62, 0x6c, 0x6f, - 0x63, 0x6b, 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x7d, 0x0a, 0x0a, 0x20, + 0x20, 0x20, 0x7d, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x63, 0x6f, 0x64, + 0x65, 0x20, 0x7b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x66, 0x6f, + 0x6e, 0x74, 0x2d, 0x66, 0x61, 0x6d, 0x69, 0x6c, 0x79, 0x3a, 0x20, 0x6d, + 0x6f, 0x6e, 0x6f, 0x73, 0x70, 0x61, 0x63, 0x65, 0x3b, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x70, 0x61, 0x64, 0x64, 0x69, 0x6e, 0x67, 0x3a, + 0x20, 0x30, 0x2e, 0x31, 0x65, 0x6d, 0x20, 0x30, 0x2e, 0x33, 0x65, 0x6d, + 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x62, 0x6f, 0x72, 0x64, + 0x65, 0x72, 0x2d, 0x72, 0x61, 0x64, 0x69, 0x75, 0x73, 0x3a, 0x20, 0x33, + 0x70, 0x78, 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x7d, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x66, 0x69, 0x65, 0x6c, 0x64, 0x73, 0x65, 0x74, 0x20, - 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x2e, 0x73, 0x6c, 0x69, 0x6d, 0x20, 0x7b, - 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x6d, 0x61, 0x72, 0x67, 0x69, - 0x6e, 0x3a, 0x20, 0x30, 0x20, 0x30, 0x2e, 0x35, 0x65, 0x6d, 0x3b, 0x0a, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x64, 0x69, 0x73, 0x70, 0x6c, 0x61, - 0x79, 0x3a, 0x20, 0x69, 0x6e, 0x6c, 0x69, 0x6e, 0x65, 0x3b, 0x0a, 0x20, - 0x20, 0x20, 0x20, 0x7d, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x68, 0x65, - 0x61, 0x64, 0x65, 0x72, 0x2c, 0x20, 0x66, 0x6f, 0x6f, 0x74, 0x65, 0x72, - 0x20, 0x7b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x74, 0x65, 0x78, - 0x74, 0x2d, 0x61, 0x6c, 0x69, 0x67, 0x6e, 0x3a, 0x20, 0x63, 0x65, 0x6e, - 0x74, 0x65, 0x72, 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x7d, 0x0a, 0x0a, - 0x20, 0x20, 0x20, 0x20, 0x66, 0x6f, 0x6f, 0x74, 0x65, 0x72, 0x20, 0x7b, - 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x66, 0x6f, 0x6e, 0x74, 0x2d, - 0x73, 0x69, 0x7a, 0x65, 0x3a, 0x20, 0x38, 0x30, 0x25, 0x3b, 0x0a, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x63, 0x6f, 0x6c, 0x6f, 0x72, 0x3a, 0x20, - 0x23, 0x38, 0x38, 0x38, 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x7d, 0x0a, + 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x20, 0x7b, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x6d, 0x61, 0x72, 0x67, 0x69, 0x6e, 0x3a, 0x20, 0x30, 0x2e, + 0x35, 0x65, 0x6d, 0x20, 0x30, 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x64, 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, 0x3a, 0x20, 0x62, 0x6c, + 0x6f, 0x63, 0x6b, 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x7d, 0x0a, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x66, 0x69, 0x65, 0x6c, 0x64, 0x73, 0x65, 0x74, + 0x20, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x2e, 0x73, 0x6c, 0x69, 0x6d, 0x20, + 0x7b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x6d, 0x61, 0x72, 0x67, + 0x69, 0x6e, 0x3a, 0x20, 0x30, 0x20, 0x30, 0x2e, 0x35, 0x65, 0x6d, 0x3b, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x64, 0x69, 0x73, 0x70, 0x6c, + 0x61, 0x79, 0x3a, 0x20, 0x69, 0x6e, 0x6c, 0x69, 0x6e, 0x65, 0x3b, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x7d, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x68, + 0x65, 0x61, 0x64, 0x65, 0x72, 0x2c, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x66, + 0x6f, 0x6f, 0x74, 0x65, 0x72, 0x20, 0x7b, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x74, 0x65, 0x78, 0x74, 0x2d, 0x61, 0x6c, 0x69, 0x67, 0x6e, + 0x3a, 0x20, 0x63, 0x65, 0x6e, 0x74, 0x65, 0x72, 0x3b, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x7d, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x66, 0x6f, 0x6f, + 0x74, 0x65, 0x72, 0x20, 0x7b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x66, 0x6f, 0x6e, 0x74, 0x2d, 0x73, 0x69, 0x7a, 0x65, 0x3a, 0x20, 0x38, + 0x30, 0x25, 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x63, 0x6f, + 0x6c, 0x6f, 0x72, 0x3a, 0x20, 0x23, 0x38, 0x38, 0x38, 0x3b, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x7d, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x2e, 0x6d, + 0x6f, 0x64, 0x65, 0x2d, 0x63, 0x68, 0x61, 0x74, 0x20, 0x74, 0x65, 0x78, + 0x74, 0x61, 0x72, 0x65, 0x61, 0x5b, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x70, + 0x72, 0x6f, 0x6d, 0x70, 0x74, 0x5d, 0x20, 0x7b, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x68, 0x65, 0x69, 0x67, 0x68, 0x74, 0x3a, 0x20, 0x34, + 0x2e, 0x35, 0x65, 0x6d, 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x7d, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x2e, 0x6d, 0x6f, 0x64, 0x65, 0x2d, 0x63, - 0x68, 0x61, 0x74, 0x20, 0x74, 0x65, 0x78, 0x74, 0x61, 0x72, 0x65, 0x61, - 0x5b, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x70, 0x72, 0x6f, 0x6d, 0x70, 0x74, - 0x5d, 0x20, 0x7b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x68, 0x65, - 0x69, 0x67, 0x68, 0x74, 0x3a, 0x20, 0x34, 0x2e, 0x35, 0x65, 0x6d, 0x3b, - 0x0a, 0x20, 0x20, 0x20, 0x20, 0x7d, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, - 0x2e, 0x6d, 0x6f, 0x64, 0x65, 0x2d, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, - 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x74, 0x65, 0x78, 0x74, 0x61, 0x72, 0x65, - 0x61, 0x5b, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x70, 0x72, 0x6f, 0x6d, 0x70, - 0x74, 0x5d, 0x20, 0x7b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x68, - 0x65, 0x69, 0x67, 0x68, 0x74, 0x3a, 0x20, 0x31, 0x30, 0x65, 0x6d, 0x3b, - 0x0a, 0x20, 0x20, 0x20, 0x20, 0x7d, 0x0a, 0x0a, 0x0a, 0x20, 0x20, 0x20, - 0x20, 0x40, 0x6b, 0x65, 0x79, 0x66, 0x72, 0x61, 0x6d, 0x65, 0x73, 0x20, - 0x6c, 0x6f, 0x61, 0x64, 0x69, 0x6e, 0x67, 0x2d, 0x62, 0x67, 0x2d, 0x77, - 0x69, 0x70, 0x65, 0x20, 0x7b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x74, 0x65, + 0x78, 0x74, 0x61, 0x72, 0x65, 0x61, 0x5b, 0x6e, 0x61, 0x6d, 0x65, 0x3d, + 0x70, 0x72, 0x6f, 0x6d, 0x70, 0x74, 0x5d, 0x20, 0x7b, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x68, 0x65, 0x69, 0x67, 0x68, 0x74, 0x3a, 0x20, + 0x31, 0x30, 0x65, 0x6d, 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x7d, 0x0a, + 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x40, 0x6b, 0x65, 0x79, 0x66, 0x72, + 0x61, 0x6d, 0x65, 0x73, 0x20, 0x6c, 0x6f, 0x61, 0x64, 0x69, 0x6e, 0x67, + 0x2d, 0x62, 0x67, 0x2d, 0x77, 0x69, 0x70, 0x65, 0x20, 0x7b, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x30, 0x25, 0x20, 0x7b, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x62, 0x61, 0x63, 0x6b, 0x67, 0x72, + 0x6f, 0x75, 0x6e, 0x64, 0x2d, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, + 0x6e, 0x3a, 0x20, 0x30, 0x25, 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x7d, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x31, 0x30, 0x30, 0x25, 0x20, 0x7b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x62, 0x61, 0x63, 0x6b, 0x67, 0x72, 0x6f, 0x75, 0x6e, 0x64, 0x2d, - 0x70, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x3a, 0x20, 0x30, 0x25, - 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x7d, 0x0a, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x31, 0x30, 0x30, 0x25, 0x20, 0x7b, 0x0a, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x62, 0x61, 0x63, 0x6b, 0x67, - 0x72, 0x6f, 0x75, 0x6e, 0x64, 0x2d, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x69, - 0x6f, 0x6e, 0x3a, 0x20, 0x31, 0x30, 0x30, 0x25, 0x3b, 0x0a, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x7d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x7d, 0x0a, - 0x0a, 0x20, 0x20, 0x20, 0x20, 0x2e, 0x6c, 0x6f, 0x61, 0x64, 0x69, 0x6e, - 0x67, 0x20, 0x7b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x2d, 0x2d, + 0x70, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x3a, 0x20, 0x31, 0x30, + 0x30, 0x25, 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x7d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x7d, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x2e, + 0x6c, 0x6f, 0x61, 0x64, 0x69, 0x6e, 0x67, 0x20, 0x7b, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x2d, 0x2d, 0x6c, 0x6f, 0x61, 0x64, 0x69, 0x6e, + 0x67, 0x2d, 0x63, 0x6f, 0x6c, 0x6f, 0x72, 0x2d, 0x31, 0x3a, 0x20, 0x23, + 0x65, 0x65, 0x65, 0x65, 0x65, 0x65, 0x30, 0x30, 0x3b, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x2d, 0x2d, 0x6c, 0x6f, 0x61, 0x64, 0x69, 0x6e, + 0x67, 0x2d, 0x63, 0x6f, 0x6c, 0x6f, 0x72, 0x2d, 0x32, 0x3a, 0x20, 0x23, + 0x65, 0x65, 0x65, 0x65, 0x65, 0x65, 0x66, 0x66, 0x3b, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x62, 0x61, 0x63, 0x6b, 0x67, 0x72, 0x6f, 0x75, + 0x6e, 0x64, 0x2d, 0x73, 0x69, 0x7a, 0x65, 0x3a, 0x20, 0x35, 0x30, 0x25, + 0x20, 0x31, 0x30, 0x30, 0x25, 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x62, 0x61, 0x63, 0x6b, 0x67, 0x72, 0x6f, 0x75, 0x6e, 0x64, 0x2d, + 0x69, 0x6d, 0x61, 0x67, 0x65, 0x3a, 0x20, 0x6c, 0x69, 0x6e, 0x65, 0x61, + 0x72, 0x2d, 0x67, 0x72, 0x61, 0x64, 0x69, 0x65, 0x6e, 0x74, 0x28, 0x39, + 0x30, 0x64, 0x65, 0x67, 0x2c, 0x20, 0x76, 0x61, 0x72, 0x28, 0x2d, 0x2d, 0x6c, 0x6f, 0x61, 0x64, 0x69, 0x6e, 0x67, 0x2d, 0x63, 0x6f, 0x6c, 0x6f, - 0x72, 0x2d, 0x31, 0x3a, 0x20, 0x23, 0x65, 0x65, 0x65, 0x65, 0x65, 0x65, - 0x30, 0x30, 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x2d, 0x2d, + 0x72, 0x2d, 0x31, 0x29, 0x2c, 0x20, 0x76, 0x61, 0x72, 0x28, 0x2d, 0x2d, 0x6c, 0x6f, 0x61, 0x64, 0x69, 0x6e, 0x67, 0x2d, 0x63, 0x6f, 0x6c, 0x6f, - 0x72, 0x2d, 0x32, 0x3a, 0x20, 0x23, 0x65, 0x65, 0x65, 0x65, 0x65, 0x65, - 0x66, 0x66, 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x62, 0x61, - 0x63, 0x6b, 0x67, 0x72, 0x6f, 0x75, 0x6e, 0x64, 0x2d, 0x73, 0x69, 0x7a, - 0x65, 0x3a, 0x20, 0x35, 0x30, 0x25, 0x20, 0x31, 0x30, 0x30, 0x25, 0x3b, - 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x62, 0x61, 0x63, 0x6b, 0x67, - 0x72, 0x6f, 0x75, 0x6e, 0x64, 0x2d, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x3a, - 0x20, 0x6c, 0x69, 0x6e, 0x65, 0x61, 0x72, 0x2d, 0x67, 0x72, 0x61, 0x64, - 0x69, 0x65, 0x6e, 0x74, 0x28, 0x39, 0x30, 0x64, 0x65, 0x67, 0x2c, 0x20, - 0x76, 0x61, 0x72, 0x28, 0x2d, 0x2d, 0x6c, 0x6f, 0x61, 0x64, 0x69, 0x6e, - 0x67, 0x2d, 0x63, 0x6f, 0x6c, 0x6f, 0x72, 0x2d, 0x31, 0x29, 0x2c, 0x20, - 0x76, 0x61, 0x72, 0x28, 0x2d, 0x2d, 0x6c, 0x6f, 0x61, 0x64, 0x69, 0x6e, - 0x67, 0x2d, 0x63, 0x6f, 0x6c, 0x6f, 0x72, 0x2d, 0x32, 0x29, 0x2c, 0x20, - 0x76, 0x61, 0x72, 0x28, 0x2d, 0x2d, 0x6c, 0x6f, 0x61, 0x64, 0x69, 0x6e, - 0x67, 0x2d, 0x63, 0x6f, 0x6c, 0x6f, 0x72, 0x2d, 0x31, 0x29, 0x29, 0x3b, - 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x61, 0x6e, 0x69, 0x6d, 0x61, - 0x74, 0x69, 0x6f, 0x6e, 0x3a, 0x20, 0x6c, 0x6f, 0x61, 0x64, 0x69, 0x6e, - 0x67, 0x2d, 0x62, 0x67, 0x2d, 0x77, 0x69, 0x70, 0x65, 0x20, 0x32, 0x73, - 0x20, 0x6c, 0x69, 0x6e, 0x65, 0x61, 0x72, 0x20, 0x69, 0x6e, 0x66, 0x69, - 0x6e, 0x69, 0x74, 0x65, 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x7d, 0x0a, - 0x0a, 0x20, 0x20, 0x20, 0x20, 0x40, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x20, - 0x28, 0x70, 0x72, 0x65, 0x66, 0x65, 0x72, 0x73, 0x2d, 0x63, 0x6f, 0x6c, - 0x6f, 0x72, 0x2d, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x65, 0x3a, 0x20, 0x64, - 0x61, 0x72, 0x6b, 0x29, 0x20, 0x7b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x2e, 0x6c, 0x6f, 0x61, 0x64, 0x69, 0x6e, 0x67, 0x20, 0x7b, 0x0a, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x2d, 0x2d, 0x6c, 0x6f, - 0x61, 0x64, 0x69, 0x6e, 0x67, 0x2d, 0x63, 0x6f, 0x6c, 0x6f, 0x72, 0x2d, - 0x31, 0x3a, 0x20, 0x23, 0x32, 0x32, 0x32, 0x32, 0x32, 0x32, 0x30, 0x30, - 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x2d, 0x2d, + 0x72, 0x2d, 0x32, 0x29, 0x2c, 0x20, 0x76, 0x61, 0x72, 0x28, 0x2d, 0x2d, 0x6c, 0x6f, 0x61, 0x64, 0x69, 0x6e, 0x67, 0x2d, 0x63, 0x6f, 0x6c, 0x6f, - 0x72, 0x2d, 0x32, 0x3a, 0x20, 0x23, 0x32, 0x32, 0x32, 0x32, 0x32, 0x32, - 0x66, 0x66, 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x7d, 0x0a, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x2e, 0x70, 0x6f, 0x70, 0x6f, 0x76, - 0x65, 0x72, 0x2d, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x20, 0x7b, - 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x62, 0x61, 0x63, - 0x6b, 0x67, 0x72, 0x6f, 0x75, 0x6e, 0x64, 0x2d, 0x63, 0x6f, 0x6c, 0x6f, - 0x72, 0x3a, 0x20, 0x62, 0x6c, 0x61, 0x63, 0x6b, 0x3b, 0x0a, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x7d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x7d, 0x0a, - 0x20, 0x20, 0x3c, 0x2f, 0x73, 0x74, 0x79, 0x6c, 0x65, 0x3e, 0x0a, 0x0a, - 0x20, 0x20, 0x3c, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x20, 0x74, 0x79, - 0x70, 0x65, 0x3d, 0x22, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x22, 0x3e, - 0x0a, 0x20, 0x20, 0x20, 0x20, 0x69, 0x6d, 0x70, 0x6f, 0x72, 0x74, 0x20, - 0x7b, 0x43, 0x6f, 0x6d, 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x2c, 0x20, - 0x63, 0x6f, 0x6d, 0x70, 0x75, 0x74, 0x65, 0x64, 0x2c, 0x20, 0x68, 0x2c, - 0x20, 0x68, 0x74, 0x6d, 0x6c, 0x2c, 0x20, 0x72, 0x65, 0x6e, 0x64, 0x65, - 0x72, 0x2c, 0x20, 0x73, 0x69, 0x67, 0x6e, 0x61, 0x6c, 0x2c, 0x20, 0x75, - 0x73, 0x65, 0x45, 0x66, 0x66, 0x65, 0x63, 0x74, 0x2c, 0x20, 0x75, 0x73, - 0x65, 0x52, 0x65, 0x66, 0x2c, 0x20, 0x75, 0x73, 0x65, 0x53, 0x69, 0x67, - 0x6e, 0x61, 0x6c, 0x7d, 0x20, 0x66, 0x72, 0x6f, 0x6d, 0x20, 0x27, 0x2f, - 0x69, 0x6e, 0x64, 0x65, 0x78, 0x2e, 0x6a, 0x73, 0x27, 0x3b, 0x0a, 0x0a, - 0x20, 0x20, 0x20, 0x20, 0x69, 0x6d, 0x70, 0x6f, 0x72, 0x74, 0x20, 0x7b, - 0x6c, 0x6c, 0x61, 0x6d, 0x61, 0x7d, 0x20, 0x66, 0x72, 0x6f, 0x6d, 0x20, - 0x27, 0x2f, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x69, 0x6f, 0x6e, - 0x2e, 0x6a, 0x73, 0x27, 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x69, 0x6d, - 0x70, 0x6f, 0x72, 0x74, 0x20, 0x7b, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, - 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x74, 0x65, 0x72, 0x7d, 0x20, 0x66, - 0x72, 0x6f, 0x6d, 0x20, 0x27, 0x2f, 0x6a, 0x73, 0x6f, 0x6e, 0x2d, 0x73, - 0x63, 0x68, 0x65, 0x6d, 0x61, 0x2d, 0x74, 0x6f, 0x2d, 0x67, 0x72, 0x61, - 0x6d, 0x6d, 0x61, 0x72, 0x2e, 0x6d, 0x6a, 0x73, 0x27, 0x3b, 0x0a, 0x0a, - 0x20, 0x20, 0x20, 0x20, 0x63, 0x6f, 0x6e, 0x73, 0x74, 0x20, 0x73, 0x65, - 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x20, 0x3d, 0x20, 0x73, 0x69, 0x67, 0x6e, - 0x61, 0x6c, 0x28, 0x7b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x70, - 0x72, 0x6f, 0x6d, 0x70, 0x74, 0x3a, 0x20, 0x22, 0x54, 0x68, 0x69, 0x73, - 0x20, 0x69, 0x73, 0x20, 0x61, 0x20, 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, - 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x62, 0x65, 0x74, 0x77, 0x65, - 0x65, 0x6e, 0x20, 0x55, 0x73, 0x65, 0x72, 0x20, 0x61, 0x6e, 0x64, 0x20, - 0x4c, 0x6c, 0x61, 0x6d, 0x61, 0x2c, 0x20, 0x61, 0x20, 0x66, 0x72, 0x69, - 0x65, 0x6e, 0x64, 0x6c, 0x79, 0x20, 0x63, 0x68, 0x61, 0x74, 0x62, 0x6f, - 0x74, 0x2e, 0x20, 0x4c, 0x6c, 0x61, 0x6d, 0x61, 0x20, 0x69, 0x73, 0x20, - 0x68, 0x65, 0x6c, 0x70, 0x66, 0x75, 0x6c, 0x2c, 0x20, 0x6b, 0x69, 0x6e, - 0x64, 0x2c, 0x20, 0x68, 0x6f, 0x6e, 0x65, 0x73, 0x74, 0x2c, 0x20, 0x67, - 0x6f, 0x6f, 0x64, 0x20, 0x61, 0x74, 0x20, 0x77, 0x72, 0x69, 0x74, 0x69, - 0x6e, 0x67, 0x2c, 0x20, 0x61, 0x6e, 0x64, 0x20, 0x6e, 0x65, 0x76, 0x65, - 0x72, 0x20, 0x66, 0x61, 0x69, 0x6c, 0x73, 0x20, 0x74, 0x6f, 0x20, 0x61, - 0x6e, 0x73, 0x77, 0x65, 0x72, 0x20, 0x61, 0x6e, 0x79, 0x20, 0x72, 0x65, - 0x71, 0x75, 0x65, 0x73, 0x74, 0x73, 0x20, 0x69, 0x6d, 0x6d, 0x65, 0x64, - 0x69, 0x61, 0x74, 0x65, 0x6c, 0x79, 0x20, 0x61, 0x6e, 0x64, 0x20, 0x77, - 0x69, 0x74, 0x68, 0x20, 0x70, 0x72, 0x65, 0x63, 0x69, 0x73, 0x69, 0x6f, - 0x6e, 0x2e, 0x22, 0x2c, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x74, - 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x3a, 0x20, 0x22, 0x7b, 0x7b, - 0x70, 0x72, 0x6f, 0x6d, 0x70, 0x74, 0x7d, 0x7d, 0x5c, 0x6e, 0x5c, 0x6e, - 0x7b, 0x7b, 0x68, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x7d, 0x7d, 0x5c, - 0x6e, 0x7b, 0x7b, 0x63, 0x68, 0x61, 0x72, 0x7d, 0x7d, 0x3a, 0x22, 0x2c, - 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x68, 0x69, 0x73, 0x74, 0x6f, - 0x72, 0x79, 0x54, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x3a, 0x20, - 0x22, 0x7b, 0x7b, 0x6e, 0x61, 0x6d, 0x65, 0x7d, 0x7d, 0x3a, 0x20, 0x7b, - 0x7b, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x7d, 0x7d, 0x22, 0x2c, - 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x74, 0x72, 0x61, 0x6e, 0x73, - 0x63, 0x72, 0x69, 0x70, 0x74, 0x3a, 0x20, 0x5b, 0x5d, 0x2c, 0x0a, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3a, 0x20, 0x22, - 0x63, 0x68, 0x61, 0x74, 0x22, 0x2c, 0x20, 0x20, 0x2f, 0x2f, 0x20, 0x22, - 0x63, 0x68, 0x61, 0x74, 0x22, 0x20, 0x7c, 0x20, 0x22, 0x63, 0x6f, 0x6d, - 0x70, 0x6c, 0x65, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x0a, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x63, 0x68, 0x61, 0x72, 0x3a, 0x20, 0x22, 0x4c, 0x6c, - 0x61, 0x6d, 0x61, 0x22, 0x2c, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x75, 0x73, 0x65, 0x72, 0x3a, 0x20, 0x22, 0x55, 0x73, 0x65, 0x72, 0x22, - 0x2c, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x7d, 0x29, 0x0a, 0x0a, 0x20, 0x20, - 0x20, 0x20, 0x63, 0x6f, 0x6e, 0x73, 0x74, 0x20, 0x70, 0x61, 0x72, 0x61, - 0x6d, 0x73, 0x20, 0x3d, 0x20, 0x73, 0x69, 0x67, 0x6e, 0x61, 0x6c, 0x28, - 0x7b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x6e, 0x5f, 0x70, 0x72, - 0x65, 0x64, 0x69, 0x63, 0x74, 0x3a, 0x20, 0x34, 0x30, 0x30, 0x2c, 0x0a, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x74, 0x65, 0x6d, 0x70, 0x65, 0x72, - 0x61, 0x74, 0x75, 0x72, 0x65, 0x3a, 0x20, 0x30, 0x2e, 0x37, 0x2c, 0x0a, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x72, 0x65, 0x70, 0x65, 0x61, 0x74, - 0x5f, 0x6c, 0x61, 0x73, 0x74, 0x5f, 0x6e, 0x3a, 0x20, 0x32, 0x35, 0x36, - 0x2c, 0x20, 0x2f, 0x2f, 0x20, 0x30, 0x20, 0x3d, 0x20, 0x64, 0x69, 0x73, - 0x61, 0x62, 0x6c, 0x65, 0x20, 0x70, 0x65, 0x6e, 0x61, 0x6c, 0x74, 0x79, - 0x2c, 0x20, 0x2d, 0x31, 0x20, 0x3d, 0x20, 0x63, 0x6f, 0x6e, 0x74, 0x65, - 0x78, 0x74, 0x20, 0x73, 0x69, 0x7a, 0x65, 0x0a, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x72, 0x65, 0x70, 0x65, 0x61, 0x74, 0x5f, 0x70, 0x65, 0x6e, - 0x61, 0x6c, 0x74, 0x79, 0x3a, 0x20, 0x31, 0x2e, 0x31, 0x38, 0x2c, 0x20, - 0x2f, 0x2f, 0x20, 0x31, 0x2e, 0x30, 0x20, 0x3d, 0x20, 0x64, 0x69, 0x73, + 0x72, 0x2d, 0x31, 0x29, 0x29, 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x61, 0x6e, 0x69, 0x6d, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3a, 0x20, + 0x6c, 0x6f, 0x61, 0x64, 0x69, 0x6e, 0x67, 0x2d, 0x62, 0x67, 0x2d, 0x77, + 0x69, 0x70, 0x65, 0x20, 0x32, 0x73, 0x20, 0x6c, 0x69, 0x6e, 0x65, 0x61, + 0x72, 0x20, 0x69, 0x6e, 0x66, 0x69, 0x6e, 0x69, 0x74, 0x65, 0x3b, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x7d, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x40, + 0x6d, 0x65, 0x64, 0x69, 0x61, 0x20, 0x28, 0x70, 0x72, 0x65, 0x66, 0x65, + 0x72, 0x73, 0x2d, 0x63, 0x6f, 0x6c, 0x6f, 0x72, 0x2d, 0x73, 0x63, 0x68, + 0x65, 0x6d, 0x65, 0x3a, 0x20, 0x64, 0x61, 0x72, 0x6b, 0x29, 0x20, 0x7b, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x2e, 0x6c, 0x6f, 0x61, 0x64, + 0x69, 0x6e, 0x67, 0x20, 0x7b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x2d, 0x2d, 0x6c, 0x6f, 0x61, 0x64, 0x69, 0x6e, 0x67, 0x2d, + 0x63, 0x6f, 0x6c, 0x6f, 0x72, 0x2d, 0x31, 0x3a, 0x20, 0x23, 0x32, 0x32, + 0x32, 0x32, 0x32, 0x32, 0x30, 0x30, 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x2d, 0x2d, 0x6c, 0x6f, 0x61, 0x64, 0x69, 0x6e, + 0x67, 0x2d, 0x63, 0x6f, 0x6c, 0x6f, 0x72, 0x2d, 0x32, 0x3a, 0x20, 0x23, + 0x32, 0x32, 0x32, 0x32, 0x32, 0x32, 0x66, 0x66, 0x3b, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x7d, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x2e, 0x70, 0x6f, 0x70, 0x6f, 0x76, 0x65, 0x72, 0x2d, 0x63, 0x6f, + 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x20, 0x7b, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x62, 0x61, 0x63, 0x6b, 0x67, 0x72, 0x6f, 0x75, + 0x6e, 0x64, 0x2d, 0x63, 0x6f, 0x6c, 0x6f, 0x72, 0x3a, 0x20, 0x62, 0x6c, + 0x61, 0x63, 0x6b, 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x7d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x7d, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x73, + 0x74, 0x79, 0x6c, 0x65, 0x3e, 0x0a, 0x0a, 0x20, 0x20, 0x3c, 0x73, 0x63, + 0x72, 0x69, 0x70, 0x74, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x6d, + 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x22, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x69, 0x6d, 0x70, 0x6f, 0x72, 0x74, 0x20, 0x7b, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x68, 0x74, 0x6d, 0x6c, 0x2c, 0x20, 0x68, 0x2c, 0x20, + 0x73, 0x69, 0x67, 0x6e, 0x61, 0x6c, 0x2c, 0x20, 0x65, 0x66, 0x66, 0x65, + 0x63, 0x74, 0x2c, 0x20, 0x63, 0x6f, 0x6d, 0x70, 0x75, 0x74, 0x65, 0x64, + 0x2c, 0x20, 0x72, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x2c, 0x20, 0x75, 0x73, + 0x65, 0x53, 0x69, 0x67, 0x6e, 0x61, 0x6c, 0x2c, 0x20, 0x75, 0x73, 0x65, + 0x45, 0x66, 0x66, 0x65, 0x63, 0x74, 0x2c, 0x20, 0x75, 0x73, 0x65, 0x52, + 0x65, 0x66, 0x2c, 0x20, 0x43, 0x6f, 0x6d, 0x70, 0x6f, 0x6e, 0x65, 0x6e, + 0x74, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x7d, 0x20, 0x66, 0x72, 0x6f, 0x6d, + 0x20, 0x27, 0x2f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x2e, 0x6a, 0x73, 0x27, + 0x3b, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x69, 0x6d, 0x70, 0x6f, 0x72, + 0x74, 0x20, 0x7b, 0x20, 0x6c, 0x6c, 0x61, 0x6d, 0x61, 0x20, 0x7d, 0x20, + 0x66, 0x72, 0x6f, 0x6d, 0x20, 0x27, 0x2f, 0x63, 0x6f, 0x6d, 0x70, 0x6c, + 0x65, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x6a, 0x73, 0x27, 0x3b, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x69, 0x6d, 0x70, 0x6f, 0x72, 0x74, 0x20, 0x7b, 0x20, + 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, + 0x74, 0x65, 0x72, 0x20, 0x7d, 0x20, 0x66, 0x72, 0x6f, 0x6d, 0x20, 0x27, + 0x2f, 0x6a, 0x73, 0x6f, 0x6e, 0x2d, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, + 0x2d, 0x74, 0x6f, 0x2d, 0x67, 0x72, 0x61, 0x6d, 0x6d, 0x61, 0x72, 0x2e, + 0x6d, 0x6a, 0x73, 0x27, 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x6c, 0x65, + 0x74, 0x20, 0x73, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x65, 0x64, 0x5f, 0x69, + 0x6d, 0x61, 0x67, 0x65, 0x20, 0x3d, 0x20, 0x66, 0x61, 0x6c, 0x73, 0x65, + 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x76, 0x61, 0x72, 0x20, 0x73, 0x6c, + 0x6f, 0x74, 0x5f, 0x69, 0x64, 0x20, 0x3d, 0x20, 0x2d, 0x31, 0x3b, 0x0a, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x63, 0x6f, 0x6e, 0x73, 0x74, 0x20, 0x73, + 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x20, 0x3d, 0x20, 0x73, 0x69, 0x67, + 0x6e, 0x61, 0x6c, 0x28, 0x7b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x70, 0x72, 0x6f, 0x6d, 0x70, 0x74, 0x3a, 0x20, 0x22, 0x54, 0x68, 0x69, + 0x73, 0x20, 0x69, 0x73, 0x20, 0x61, 0x20, 0x63, 0x6f, 0x6e, 0x76, 0x65, + 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x62, 0x65, 0x74, 0x77, + 0x65, 0x65, 0x6e, 0x20, 0x55, 0x73, 0x65, 0x72, 0x20, 0x61, 0x6e, 0x64, + 0x20, 0x4c, 0x6c, 0x61, 0x6d, 0x61, 0x2c, 0x20, 0x61, 0x20, 0x66, 0x72, + 0x69, 0x65, 0x6e, 0x64, 0x6c, 0x79, 0x20, 0x63, 0x68, 0x61, 0x74, 0x62, + 0x6f, 0x74, 0x2e, 0x20, 0x4c, 0x6c, 0x61, 0x6d, 0x61, 0x20, 0x69, 0x73, + 0x20, 0x68, 0x65, 0x6c, 0x70, 0x66, 0x75, 0x6c, 0x2c, 0x20, 0x6b, 0x69, + 0x6e, 0x64, 0x2c, 0x20, 0x68, 0x6f, 0x6e, 0x65, 0x73, 0x74, 0x2c, 0x20, + 0x67, 0x6f, 0x6f, 0x64, 0x20, 0x61, 0x74, 0x20, 0x77, 0x72, 0x69, 0x74, + 0x69, 0x6e, 0x67, 0x2c, 0x20, 0x61, 0x6e, 0x64, 0x20, 0x6e, 0x65, 0x76, + 0x65, 0x72, 0x20, 0x66, 0x61, 0x69, 0x6c, 0x73, 0x20, 0x74, 0x6f, 0x20, + 0x61, 0x6e, 0x73, 0x77, 0x65, 0x72, 0x20, 0x61, 0x6e, 0x79, 0x20, 0x72, + 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x73, 0x20, 0x69, 0x6d, 0x6d, 0x65, + 0x64, 0x69, 0x61, 0x74, 0x65, 0x6c, 0x79, 0x20, 0x61, 0x6e, 0x64, 0x20, + 0x77, 0x69, 0x74, 0x68, 0x20, 0x70, 0x72, 0x65, 0x63, 0x69, 0x73, 0x69, + 0x6f, 0x6e, 0x2e, 0x22, 0x2c, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x74, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x3a, 0x20, 0x22, 0x7b, + 0x7b, 0x70, 0x72, 0x6f, 0x6d, 0x70, 0x74, 0x7d, 0x7d, 0x5c, 0x6e, 0x5c, + 0x6e, 0x7b, 0x7b, 0x68, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x7d, 0x7d, + 0x5c, 0x6e, 0x7b, 0x7b, 0x63, 0x68, 0x61, 0x72, 0x7d, 0x7d, 0x3a, 0x22, + 0x2c, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x68, 0x69, 0x73, 0x74, + 0x6f, 0x72, 0x79, 0x54, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x3a, + 0x20, 0x22, 0x7b, 0x7b, 0x6e, 0x61, 0x6d, 0x65, 0x7d, 0x7d, 0x3a, 0x20, + 0x7b, 0x7b, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x7d, 0x7d, 0x22, + 0x2c, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x74, 0x72, 0x61, 0x6e, + 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x3a, 0x20, 0x5b, 0x5d, 0x2c, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3a, 0x20, + 0x22, 0x63, 0x68, 0x61, 0x74, 0x22, 0x2c, 0x20, 0x20, 0x2f, 0x2f, 0x20, + 0x22, 0x63, 0x68, 0x61, 0x74, 0x22, 0x20, 0x7c, 0x20, 0x22, 0x63, 0x6f, + 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x63, 0x68, 0x61, 0x72, 0x3a, 0x20, 0x22, 0x4c, + 0x6c, 0x61, 0x6d, 0x61, 0x22, 0x2c, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x75, 0x73, 0x65, 0x72, 0x3a, 0x20, 0x22, 0x55, 0x73, 0x65, 0x72, + 0x22, 0x2c, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x69, 0x6d, 0x61, + 0x67, 0x65, 0x5f, 0x73, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x65, 0x64, 0x3a, + 0x20, 0x27, 0x27, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x7d, 0x29, 0x0a, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x63, 0x6f, 0x6e, 0x73, 0x74, 0x20, 0x70, 0x61, + 0x72, 0x61, 0x6d, 0x73, 0x20, 0x3d, 0x20, 0x73, 0x69, 0x67, 0x6e, 0x61, + 0x6c, 0x28, 0x7b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x6e, 0x5f, + 0x70, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x3a, 0x20, 0x34, 0x30, 0x30, + 0x2c, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x74, 0x65, 0x6d, 0x70, + 0x65, 0x72, 0x61, 0x74, 0x75, 0x72, 0x65, 0x3a, 0x20, 0x30, 0x2e, 0x37, + 0x2c, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x72, 0x65, 0x70, 0x65, + 0x61, 0x74, 0x5f, 0x6c, 0x61, 0x73, 0x74, 0x5f, 0x6e, 0x3a, 0x20, 0x32, + 0x35, 0x36, 0x2c, 0x20, 0x2f, 0x2f, 0x20, 0x30, 0x20, 0x3d, 0x20, 0x64, + 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x20, 0x70, 0x65, 0x6e, 0x61, 0x6c, + 0x74, 0x79, 0x2c, 0x20, 0x2d, 0x31, 0x20, 0x3d, 0x20, 0x63, 0x6f, 0x6e, + 0x74, 0x65, 0x78, 0x74, 0x20, 0x73, 0x69, 0x7a, 0x65, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x72, 0x65, 0x70, 0x65, 0x61, 0x74, 0x5f, 0x70, + 0x65, 0x6e, 0x61, 0x6c, 0x74, 0x79, 0x3a, 0x20, 0x31, 0x2e, 0x31, 0x38, + 0x2c, 0x20, 0x2f, 0x2f, 0x20, 0x31, 0x2e, 0x30, 0x20, 0x3d, 0x20, 0x64, + 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x74, 0x6f, 0x70, 0x5f, 0x6b, 0x3a, 0x20, 0x34, 0x30, 0x2c, + 0x20, 0x2f, 0x2f, 0x20, 0x3c, 0x3d, 0x20, 0x30, 0x20, 0x74, 0x6f, 0x20, + 0x75, 0x73, 0x65, 0x20, 0x76, 0x6f, 0x63, 0x61, 0x62, 0x20, 0x73, 0x69, + 0x7a, 0x65, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x74, 0x6f, 0x70, + 0x5f, 0x70, 0x3a, 0x20, 0x30, 0x2e, 0x35, 0x2c, 0x20, 0x2f, 0x2f, 0x20, + 0x31, 0x2e, 0x30, 0x20, 0x3d, 0x20, 0x64, 0x69, 0x73, 0x61, 0x62, 0x6c, + 0x65, 0x64, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x74, 0x66, 0x73, + 0x5f, 0x7a, 0x3a, 0x20, 0x31, 0x2e, 0x30, 0x2c, 0x20, 0x2f, 0x2f, 0x20, + 0x31, 0x2e, 0x30, 0x20, 0x3d, 0x20, 0x64, 0x69, 0x73, 0x61, 0x62, 0x6c, + 0x65, 0x64, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x74, 0x79, 0x70, + 0x69, 0x63, 0x61, 0x6c, 0x5f, 0x70, 0x3a, 0x20, 0x31, 0x2e, 0x30, 0x2c, + 0x20, 0x2f, 0x2f, 0x20, 0x31, 0x2e, 0x30, 0x20, 0x3d, 0x20, 0x64, 0x69, + 0x73, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x70, 0x72, 0x65, 0x73, 0x65, 0x6e, 0x63, 0x65, 0x5f, 0x70, 0x65, + 0x6e, 0x61, 0x6c, 0x74, 0x79, 0x3a, 0x20, 0x30, 0x2e, 0x30, 0x2c, 0x20, + 0x2f, 0x2f, 0x20, 0x30, 0x2e, 0x30, 0x20, 0x3d, 0x20, 0x64, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x74, 0x6f, 0x70, 0x5f, 0x6b, 0x3a, 0x20, 0x34, 0x30, 0x2c, 0x20, 0x2f, - 0x2f, 0x20, 0x3c, 0x3d, 0x20, 0x30, 0x20, 0x74, 0x6f, 0x20, 0x75, 0x73, - 0x65, 0x20, 0x76, 0x6f, 0x63, 0x61, 0x62, 0x20, 0x73, 0x69, 0x7a, 0x65, - 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x74, 0x6f, 0x70, 0x5f, 0x70, - 0x3a, 0x20, 0x30, 0x2e, 0x35, 0x2c, 0x20, 0x2f, 0x2f, 0x20, 0x31, 0x2e, - 0x30, 0x20, 0x3d, 0x20, 0x64, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x64, - 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x74, 0x66, 0x73, 0x5f, 0x7a, - 0x3a, 0x20, 0x31, 0x2e, 0x30, 0x2c, 0x20, 0x2f, 0x2f, 0x20, 0x31, 0x2e, - 0x30, 0x20, 0x3d, 0x20, 0x64, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x64, - 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x74, 0x79, 0x70, 0x69, 0x63, - 0x61, 0x6c, 0x5f, 0x70, 0x3a, 0x20, 0x31, 0x2e, 0x30, 0x2c, 0x20, 0x2f, - 0x2f, 0x20, 0x31, 0x2e, 0x30, 0x20, 0x3d, 0x20, 0x64, 0x69, 0x73, 0x61, - 0x62, 0x6c, 0x65, 0x64, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x70, - 0x72, 0x65, 0x73, 0x65, 0x6e, 0x63, 0x65, 0x5f, 0x70, 0x65, 0x6e, 0x61, - 0x6c, 0x74, 0x79, 0x3a, 0x20, 0x30, 0x2e, 0x30, 0x2c, 0x20, 0x2f, 0x2f, - 0x20, 0x30, 0x2e, 0x30, 0x20, 0x3d, 0x20, 0x64, 0x69, 0x73, 0x61, 0x62, - 0x6c, 0x65, 0x64, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x66, 0x72, - 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x79, 0x5f, 0x70, 0x65, 0x6e, 0x61, - 0x6c, 0x74, 0x79, 0x3a, 0x20, 0x30, 0x2e, 0x30, 0x2c, 0x20, 0x2f, 0x2f, - 0x20, 0x30, 0x2e, 0x30, 0x20, 0x3d, 0x20, 0x64, 0x69, 0x73, 0x61, 0x62, - 0x6c, 0x65, 0x64, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x6d, 0x69, - 0x72, 0x6f, 0x73, 0x74, 0x61, 0x74, 0x3a, 0x20, 0x30, 0x2c, 0x20, 0x2f, - 0x2f, 0x20, 0x30, 0x2f, 0x31, 0x2f, 0x32, 0x0a, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x6d, 0x69, 0x72, 0x6f, 0x73, 0x74, 0x61, 0x74, 0x5f, 0x74, - 0x61, 0x75, 0x3a, 0x20, 0x35, 0x2c, 0x20, 0x2f, 0x2f, 0x20, 0x74, 0x61, - 0x72, 0x67, 0x65, 0x74, 0x20, 0x65, 0x6e, 0x74, 0x72, 0x6f, 0x70, 0x79, - 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x6d, 0x69, 0x72, 0x6f, 0x73, - 0x74, 0x61, 0x74, 0x5f, 0x65, 0x74, 0x61, 0x3a, 0x20, 0x30, 0x2e, 0x31, - 0x2c, 0x20, 0x2f, 0x2f, 0x20, 0x6c, 0x65, 0x61, 0x72, 0x6e, 0x69, 0x6e, - 0x67, 0x20, 0x72, 0x61, 0x74, 0x65, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x67, 0x72, 0x61, 0x6d, 0x6d, 0x61, 0x72, 0x3a, 0x20, 0x27, 0x27, - 0x2c, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x6e, 0x5f, 0x70, 0x72, - 0x6f, 0x62, 0x73, 0x3a, 0x20, 0x30, 0x2c, 0x20, 0x2f, 0x2f, 0x20, 0x6e, - 0x6f, 0x20, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x69, 0x6f, 0x6e, - 0x5f, 0x70, 0x72, 0x6f, 0x62, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x69, - 0x65, 0x73, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x7d, 0x29, 0x0a, 0x0a, 0x20, - 0x20, 0x20, 0x20, 0x2f, 0x2a, 0x20, 0x53, 0x54, 0x41, 0x52, 0x54, 0x3a, - 0x20, 0x53, 0x75, 0x70, 0x70, 0x6f, 0x72, 0x74, 0x20, 0x66, 0x6f, 0x72, - 0x20, 0x73, 0x74, 0x6f, 0x72, 0x69, 0x6e, 0x67, 0x20, 0x70, 0x72, 0x6f, - 0x6d, 0x70, 0x74, 0x20, 0x74, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, - 0x73, 0x20, 0x61, 0x6e, 0x64, 0x20, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x65, - 0x74, 0x65, 0x72, 0x73, 0x20, 0x69, 0x6e, 0x20, 0x62, 0x6f, 0x72, 0x77, - 0x73, 0x65, 0x72, 0x20, 0x4c, 0x6f, 0x63, 0x61, 0x6c, 0x53, 0x74, 0x6f, - 0x72, 0x61, 0x67, 0x65, 0x20, 0x2a, 0x2f, 0x0a, 0x0a, 0x20, 0x20, 0x20, - 0x20, 0x63, 0x6f, 0x6e, 0x73, 0x74, 0x20, 0x6c, 0x6f, 0x63, 0x61, 0x6c, - 0x5f, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x5f, 0x73, 0x74, 0x6f, - 0x72, 0x61, 0x67, 0x65, 0x4b, 0x65, 0x79, 0x20, 0x3d, 0x20, 0x22, 0x6c, - 0x6c, 0x61, 0x6d, 0x61, 0x63, 0x70, 0x70, 0x5f, 0x73, 0x65, 0x72, 0x76, - 0x65, 0x72, 0x5f, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x5f, 0x73, 0x74, 0x6f, - 0x72, 0x61, 0x67, 0x65, 0x22, 0x3b, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, - 0x66, 0x75, 0x6e, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x6c, 0x6f, 0x63, + 0x66, 0x72, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x79, 0x5f, 0x70, 0x65, + 0x6e, 0x61, 0x6c, 0x74, 0x79, 0x3a, 0x20, 0x30, 0x2e, 0x30, 0x2c, 0x20, + 0x2f, 0x2f, 0x20, 0x30, 0x2e, 0x30, 0x20, 0x3d, 0x20, 0x64, 0x69, 0x73, + 0x61, 0x62, 0x6c, 0x65, 0x64, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x6d, 0x69, 0x72, 0x6f, 0x73, 0x74, 0x61, 0x74, 0x3a, 0x20, 0x30, 0x2c, + 0x20, 0x2f, 0x2f, 0x20, 0x30, 0x2f, 0x31, 0x2f, 0x32, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x6d, 0x69, 0x72, 0x6f, 0x73, 0x74, 0x61, 0x74, + 0x5f, 0x74, 0x61, 0x75, 0x3a, 0x20, 0x35, 0x2c, 0x20, 0x2f, 0x2f, 0x20, + 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x20, 0x65, 0x6e, 0x74, 0x72, 0x6f, + 0x70, 0x79, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x6d, 0x69, 0x72, + 0x6f, 0x73, 0x74, 0x61, 0x74, 0x5f, 0x65, 0x74, 0x61, 0x3a, 0x20, 0x30, + 0x2e, 0x31, 0x2c, 0x20, 0x2f, 0x2f, 0x20, 0x6c, 0x65, 0x61, 0x72, 0x6e, + 0x69, 0x6e, 0x67, 0x20, 0x72, 0x61, 0x74, 0x65, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x67, 0x72, 0x61, 0x6d, 0x6d, 0x61, 0x72, 0x3a, 0x20, + 0x27, 0x27, 0x2c, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x6e, 0x5f, + 0x70, 0x72, 0x6f, 0x62, 0x73, 0x3a, 0x20, 0x30, 0x2c, 0x20, 0x2f, 0x2f, + 0x20, 0x6e, 0x6f, 0x20, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x69, + 0x6f, 0x6e, 0x5f, 0x70, 0x72, 0x6f, 0x62, 0x61, 0x62, 0x69, 0x6c, 0x69, + 0x74, 0x69, 0x65, 0x73, 0x2c, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x69, 0x6d, 0x61, 0x67, 0x65, 0x5f, 0x64, 0x61, 0x74, 0x61, 0x3a, 0x20, + 0x5b, 0x5d, 0x2c, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x63, 0x61, + 0x63, 0x68, 0x65, 0x5f, 0x70, 0x72, 0x6f, 0x6d, 0x70, 0x74, 0x3a, 0x20, + 0x74, 0x72, 0x75, 0x65, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x7d, 0x29, 0x0a, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x2f, 0x2a, 0x20, 0x53, 0x54, 0x41, 0x52, + 0x54, 0x3a, 0x20, 0x53, 0x75, 0x70, 0x70, 0x6f, 0x72, 0x74, 0x20, 0x66, + 0x6f, 0x72, 0x20, 0x73, 0x74, 0x6f, 0x72, 0x69, 0x6e, 0x67, 0x20, 0x70, + 0x72, 0x6f, 0x6d, 0x70, 0x74, 0x20, 0x74, 0x65, 0x6d, 0x70, 0x6c, 0x61, + 0x74, 0x65, 0x73, 0x20, 0x61, 0x6e, 0x64, 0x20, 0x70, 0x61, 0x72, 0x61, + 0x6d, 0x65, 0x74, 0x65, 0x72, 0x73, 0x20, 0x69, 0x6e, 0x20, 0x62, 0x6f, + 0x72, 0x77, 0x73, 0x65, 0x72, 0x20, 0x4c, 0x6f, 0x63, 0x61, 0x6c, 0x53, + 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x20, 0x2a, 0x2f, 0x0a, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x63, 0x6f, 0x6e, 0x73, 0x74, 0x20, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x5f, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x5f, 0x73, - 0x65, 0x74, 0x44, 0x61, 0x74, 0x61, 0x46, 0x72, 0x6f, 0x6d, 0x4f, 0x62, - 0x6a, 0x65, 0x63, 0x74, 0x28, 0x74, 0x61, 0x67, 0x2c, 0x20, 0x63, 0x6f, - 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x29, 0x20, 0x7b, 0x0a, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x53, 0x74, 0x6f, 0x72, - 0x61, 0x67, 0x65, 0x2e, 0x73, 0x65, 0x74, 0x49, 0x74, 0x65, 0x6d, 0x28, + 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x4b, 0x65, 0x79, 0x20, 0x3d, 0x20, + 0x22, 0x6c, 0x6c, 0x61, 0x6d, 0x61, 0x63, 0x70, 0x70, 0x5f, 0x73, 0x65, + 0x72, 0x76, 0x65, 0x72, 0x5f, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x5f, 0x73, + 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x22, 0x3b, 0x0a, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x66, 0x75, 0x6e, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x6c, + 0x6f, 0x63, 0x61, 0x6c, 0x5f, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, + 0x5f, 0x73, 0x65, 0x74, 0x44, 0x61, 0x74, 0x61, 0x46, 0x72, 0x6f, 0x6d, + 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x28, 0x74, 0x61, 0x67, 0x2c, 0x20, + 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x29, 0x20, 0x7b, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x53, 0x74, + 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, 0x73, 0x65, 0x74, 0x49, 0x74, 0x65, + 0x6d, 0x28, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x5f, 0x73, 0x74, 0x6f, 0x72, + 0x61, 0x67, 0x65, 0x5f, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x4b, + 0x65, 0x79, 0x20, 0x2b, 0x20, 0x27, 0x2f, 0x27, 0x20, 0x2b, 0x20, 0x74, + 0x61, 0x67, 0x2c, 0x20, 0x4a, 0x53, 0x4f, 0x4e, 0x2e, 0x73, 0x74, 0x72, + 0x69, 0x6e, 0x67, 0x69, 0x66, 0x79, 0x28, 0x63, 0x6f, 0x6e, 0x74, 0x65, + 0x6e, 0x74, 0x29, 0x29, 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x7d, 0x0a, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x66, 0x75, 0x6e, 0x63, 0x74, 0x69, 0x6f, + 0x6e, 0x20, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x5f, 0x73, 0x74, 0x6f, 0x72, + 0x61, 0x67, 0x65, 0x5f, 0x73, 0x65, 0x74, 0x44, 0x61, 0x74, 0x61, 0x46, + 0x72, 0x6f, 0x6d, 0x52, 0x61, 0x77, 0x54, 0x65, 0x78, 0x74, 0x28, 0x74, + 0x61, 0x67, 0x2c, 0x20, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x29, + 0x20, 0x7b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x6c, 0x6f, 0x63, + 0x61, 0x6c, 0x53, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, 0x73, 0x65, + 0x74, 0x49, 0x74, 0x65, 0x6d, 0x28, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x5f, + 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x5f, 0x73, 0x74, 0x6f, 0x72, + 0x61, 0x67, 0x65, 0x4b, 0x65, 0x79, 0x20, 0x2b, 0x20, 0x27, 0x2f, 0x27, + 0x20, 0x2b, 0x20, 0x74, 0x61, 0x67, 0x2c, 0x20, 0x63, 0x6f, 0x6e, 0x74, + 0x65, 0x6e, 0x74, 0x29, 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x7d, 0x0a, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x66, 0x75, 0x6e, 0x63, 0x74, 0x69, 0x6f, + 0x6e, 0x20, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x5f, 0x73, 0x74, 0x6f, 0x72, + 0x61, 0x67, 0x65, 0x5f, 0x67, 0x65, 0x74, 0x44, 0x61, 0x74, 0x61, 0x41, + 0x73, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x28, 0x74, 0x61, 0x67, 0x29, + 0x20, 0x7b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x63, 0x6f, 0x6e, + 0x73, 0x74, 0x20, 0x69, 0x74, 0x65, 0x6d, 0x20, 0x3d, 0x20, 0x6c, 0x6f, + 0x63, 0x61, 0x6c, 0x53, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, 0x67, + 0x65, 0x74, 0x49, 0x74, 0x65, 0x6d, 0x28, 0x6c, 0x6f, 0x63, 0x61, 0x6c, + 0x5f, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x5f, 0x73, 0x74, 0x6f, + 0x72, 0x61, 0x67, 0x65, 0x4b, 0x65, 0x79, 0x20, 0x2b, 0x20, 0x27, 0x2f, + 0x27, 0x20, 0x2b, 0x20, 0x74, 0x61, 0x67, 0x29, 0x3b, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x69, 0x66, 0x20, 0x28, 0x21, 0x69, 0x74, 0x65, + 0x6d, 0x29, 0x20, 0x7b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x72, 0x65, 0x74, 0x75, 0x72, 0x6e, 0x20, 0x6e, 0x75, 0x6c, 0x6c, + 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x7d, 0x20, 0x65, 0x6c, + 0x73, 0x65, 0x20, 0x7b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x72, 0x65, 0x74, 0x75, 0x72, 0x6e, 0x20, 0x4a, 0x53, 0x4f, 0x4e, + 0x2e, 0x70, 0x61, 0x72, 0x73, 0x65, 0x28, 0x69, 0x74, 0x65, 0x6d, 0x29, + 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x7d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x7d, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x66, 0x75, 0x6e, + 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x5f, + 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x5f, 0x67, 0x65, 0x74, 0x44, + 0x61, 0x74, 0x61, 0x41, 0x73, 0x52, 0x61, 0x77, 0x54, 0x65, 0x78, 0x74, + 0x28, 0x74, 0x61, 0x67, 0x29, 0x20, 0x7b, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x63, 0x6f, 0x6e, 0x73, 0x74, 0x20, 0x69, 0x74, 0x65, 0x6d, + 0x20, 0x3d, 0x20, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x53, 0x74, 0x6f, 0x72, + 0x61, 0x67, 0x65, 0x2e, 0x67, 0x65, 0x74, 0x49, 0x74, 0x65, 0x6d, 0x28, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x5f, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x5f, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x4b, 0x65, 0x79, 0x20, 0x2b, 0x20, 0x27, 0x2f, 0x27, 0x20, 0x2b, 0x20, 0x74, 0x61, 0x67, - 0x2c, 0x20, 0x4a, 0x53, 0x4f, 0x4e, 0x2e, 0x73, 0x74, 0x72, 0x69, 0x6e, - 0x67, 0x69, 0x66, 0x79, 0x28, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, - 0x29, 0x29, 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x7d, 0x0a, 0x0a, 0x20, - 0x20, 0x20, 0x20, 0x66, 0x75, 0x6e, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x20, - 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x5f, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, - 0x65, 0x5f, 0x73, 0x65, 0x74, 0x44, 0x61, 0x74, 0x61, 0x46, 0x72, 0x6f, - 0x6d, 0x52, 0x61, 0x77, 0x54, 0x65, 0x78, 0x74, 0x28, 0x74, 0x61, 0x67, - 0x2c, 0x20, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x29, 0x20, 0x7b, - 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x6c, 0x6f, 0x63, 0x61, 0x6c, - 0x53, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, 0x73, 0x65, 0x74, 0x49, - 0x74, 0x65, 0x6d, 0x28, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x5f, 0x73, 0x74, - 0x6f, 0x72, 0x61, 0x67, 0x65, 0x5f, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, - 0x65, 0x4b, 0x65, 0x79, 0x20, 0x2b, 0x20, 0x27, 0x2f, 0x27, 0x20, 0x2b, - 0x20, 0x74, 0x61, 0x67, 0x2c, 0x20, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, - 0x74, 0x29, 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x7d, 0x0a, 0x0a, 0x20, - 0x20, 0x20, 0x20, 0x66, 0x75, 0x6e, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x20, - 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x5f, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, - 0x65, 0x5f, 0x67, 0x65, 0x74, 0x44, 0x61, 0x74, 0x61, 0x41, 0x73, 0x4f, - 0x62, 0x6a, 0x65, 0x63, 0x74, 0x28, 0x74, 0x61, 0x67, 0x29, 0x20, 0x7b, - 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x63, 0x6f, 0x6e, 0x73, 0x74, - 0x20, 0x69, 0x74, 0x65, 0x6d, 0x20, 0x3d, 0x20, 0x6c, 0x6f, 0x63, 0x61, - 0x6c, 0x53, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, 0x67, 0x65, 0x74, - 0x49, 0x74, 0x65, 0x6d, 0x28, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x5f, 0x73, - 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x5f, 0x73, 0x74, 0x6f, 0x72, 0x61, - 0x67, 0x65, 0x4b, 0x65, 0x79, 0x20, 0x2b, 0x20, 0x27, 0x2f, 0x27, 0x20, - 0x2b, 0x20, 0x74, 0x61, 0x67, 0x29, 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x69, 0x66, 0x20, 0x28, 0x21, 0x69, 0x74, 0x65, 0x6d, 0x29, - 0x20, 0x7b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x72, - 0x65, 0x74, 0x75, 0x72, 0x6e, 0x20, 0x6e, 0x75, 0x6c, 0x6c, 0x3b, 0x0a, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x7d, 0x20, 0x65, 0x6c, 0x73, 0x65, - 0x20, 0x7b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x72, - 0x65, 0x74, 0x75, 0x72, 0x6e, 0x20, 0x4a, 0x53, 0x4f, 0x4e, 0x2e, 0x70, - 0x61, 0x72, 0x73, 0x65, 0x28, 0x69, 0x74, 0x65, 0x6d, 0x29, 0x3b, 0x0a, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x7d, 0x0a, 0x20, 0x20, 0x20, 0x20, - 0x7d, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x66, 0x75, 0x6e, 0x63, 0x74, - 0x69, 0x6f, 0x6e, 0x20, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x5f, 0x73, 0x74, - 0x6f, 0x72, 0x61, 0x67, 0x65, 0x5f, 0x67, 0x65, 0x74, 0x44, 0x61, 0x74, - 0x61, 0x41, 0x73, 0x52, 0x61, 0x77, 0x54, 0x65, 0x78, 0x74, 0x28, 0x74, - 0x61, 0x67, 0x29, 0x20, 0x7b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x63, 0x6f, 0x6e, 0x73, 0x74, 0x20, 0x69, 0x74, 0x65, 0x6d, 0x20, 0x3d, - 0x20, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x53, 0x74, 0x6f, 0x72, 0x61, 0x67, - 0x65, 0x2e, 0x67, 0x65, 0x74, 0x49, 0x74, 0x65, 0x6d, 0x28, 0x6c, 0x6f, - 0x63, 0x61, 0x6c, 0x5f, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x5f, - 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x4b, 0x65, 0x79, 0x20, 0x2b, - 0x20, 0x27, 0x2f, 0x27, 0x20, 0x2b, 0x20, 0x74, 0x61, 0x67, 0x29, 0x3b, - 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x69, 0x66, 0x20, 0x28, 0x21, - 0x69, 0x74, 0x65, 0x6d, 0x29, 0x20, 0x7b, 0x0a, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x72, 0x65, 0x74, 0x75, 0x72, 0x6e, 0x20, 0x6e, - 0x75, 0x6c, 0x6c, 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x7d, - 0x20, 0x65, 0x6c, 0x73, 0x65, 0x20, 0x7b, 0x0a, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x72, 0x65, 0x74, 0x75, 0x72, 0x6e, 0x20, 0x69, - 0x74, 0x65, 0x6d, 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x7d, - 0x0a, 0x20, 0x20, 0x20, 0x20, 0x7d, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, - 0x2f, 0x2f, 0x20, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x20, 0x61, 0x20, - 0x63, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x20, 0x66, 0x6f, - 0x72, 0x20, 0x75, 0x73, 0x65, 0x72, 0x20, 0x74, 0x65, 0x6d, 0x70, 0x6c, - 0x61, 0x74, 0x65, 0x73, 0x20, 0x61, 0x6e, 0x64, 0x20, 0x73, 0x65, 0x74, - 0x74, 0x69, 0x6e, 0x67, 0x73, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x63, - 0x6f, 0x6e, 0x73, 0x74, 0x20, 0x73, 0x61, 0x76, 0x65, 0x64, 0x55, 0x73, - 0x65, 0x72, 0x54, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x73, 0x20, - 0x3d, 0x20, 0x73, 0x69, 0x67, 0x6e, 0x61, 0x6c, 0x28, 0x7b, 0x7d, 0x29, - 0x0a, 0x20, 0x20, 0x20, 0x20, 0x63, 0x6f, 0x6e, 0x73, 0x74, 0x20, 0x73, - 0x65, 0x6c, 0x65, 0x63, 0x74, 0x65, 0x64, 0x55, 0x73, 0x65, 0x72, 0x54, - 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x20, 0x3d, 0x20, 0x73, 0x69, - 0x67, 0x6e, 0x61, 0x6c, 0x28, 0x7b, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3a, - 0x20, 0x27, 0x27, 0x2c, 0x20, 0x74, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, - 0x65, 0x3a, 0x20, 0x7b, 0x20, 0x73, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, - 0x3a, 0x20, 0x7b, 0x7d, 0x2c, 0x20, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x73, - 0x3a, 0x20, 0x7b, 0x7d, 0x20, 0x7d, 0x20, 0x7d, 0x29, 0x0a, 0x0a, 0x20, - 0x20, 0x20, 0x20, 0x2f, 0x2f, 0x20, 0x6c, 0x65, 0x74, 0x27, 0x73, 0x20, - 0x69, 0x6d, 0x70, 0x6f, 0x72, 0x74, 0x20, 0x6c, 0x6f, 0x63, 0x61, 0x6c, - 0x6c, 0x79, 0x20, 0x73, 0x61, 0x76, 0x65, 0x64, 0x20, 0x74, 0x65, 0x6d, + 0x29, 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x69, 0x66, 0x20, + 0x28, 0x21, 0x69, 0x74, 0x65, 0x6d, 0x29, 0x20, 0x7b, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x72, 0x65, 0x74, 0x75, 0x72, 0x6e, + 0x20, 0x6e, 0x75, 0x6c, 0x6c, 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x7d, 0x20, 0x65, 0x6c, 0x73, 0x65, 0x20, 0x7b, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x72, 0x65, 0x74, 0x75, 0x72, 0x6e, + 0x20, 0x69, 0x74, 0x65, 0x6d, 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x7d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x7d, 0x0a, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x2f, 0x2f, 0x20, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x20, + 0x61, 0x20, 0x63, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x20, + 0x66, 0x6f, 0x72, 0x20, 0x75, 0x73, 0x65, 0x72, 0x20, 0x74, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x73, 0x20, 0x61, 0x6e, 0x64, 0x20, 0x73, - 0x65, 0x74, 0x74, 0x69, 0x6e, 0x67, 0x73, 0x20, 0x69, 0x66, 0x20, 0x74, - 0x68, 0x65, 0x72, 0x65, 0x20, 0x61, 0x72, 0x65, 0x20, 0x61, 0x6e, 0x79, - 0x0a, 0x20, 0x20, 0x20, 0x20, 0x2f, 0x2f, 0x20, 0x75, 0x73, 0x65, 0x72, - 0x20, 0x74, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x73, 0x20, 0x61, - 0x6e, 0x64, 0x20, 0x73, 0x65, 0x74, 0x74, 0x69, 0x6e, 0x67, 0x73, 0x20, - 0x61, 0x72, 0x65, 0x20, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x64, 0x20, 0x69, - 0x6e, 0x20, 0x6f, 0x6e, 0x65, 0x20, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, - 0x0a, 0x20, 0x20, 0x20, 0x20, 0x2f, 0x2f, 0x20, 0x69, 0x6e, 0x20, 0x66, - 0x6f, 0x72, 0x6d, 0x20, 0x6f, 0x66, 0x20, 0x7b, 0x20, 0x22, 0x74, 0x65, - 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x6e, 0x61, 0x6d, 0x65, 0x22, 0x3a, - 0x20, 0x22, 0x74, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x64, 0x61, - 0x74, 0x61, 0x22, 0x20, 0x7d, 0x20, 0x61, 0x6e, 0x64, 0x20, 0x7b, 0x20, - 0x22, 0x73, 0x65, 0x74, 0x74, 0x69, 0x6e, 0x67, 0x73, 0x74, 0x65, 0x6d, - 0x70, 0x6c, 0x61, 0x74, 0x65, 0x6e, 0x61, 0x6d, 0x65, 0x22, 0x3a, 0x22, - 0x73, 0x65, 0x74, 0x74, 0x69, 0x6e, 0x67, 0x73, 0x64, 0x61, 0x74, 0x61, - 0x22, 0x20, 0x7d, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x63, 0x6f, 0x6e, - 0x73, 0x6f, 0x6c, 0x65, 0x2e, 0x6c, 0x6f, 0x67, 0x28, 0x27, 0x49, 0x6d, - 0x70, 0x6f, 0x72, 0x74, 0x69, 0x6e, 0x67, 0x20, 0x73, 0x61, 0x76, 0x65, - 0x64, 0x20, 0x74, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x73, 0x27, - 0x29, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x6c, 0x65, 0x74, 0x20, 0x69, - 0x6d, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x64, 0x54, 0x65, 0x6d, 0x70, 0x6c, - 0x61, 0x74, 0x65, 0x73, 0x20, 0x3d, 0x20, 0x6c, 0x6f, 0x63, 0x61, 0x6c, - 0x5f, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x5f, 0x67, 0x65, 0x74, - 0x44, 0x61, 0x74, 0x61, 0x41, 0x73, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, - 0x28, 0x27, 0x75, 0x73, 0x65, 0x72, 0x5f, 0x74, 0x65, 0x6d, 0x70, 0x6c, - 0x61, 0x74, 0x65, 0x73, 0x27, 0x29, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, - 0x69, 0x66, 0x20, 0x28, 0x69, 0x6d, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x64, - 0x54, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x73, 0x29, 0x20, 0x7b, - 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x2f, 0x2f, 0x20, 0x73, 0x61, + 0x65, 0x74, 0x74, 0x69, 0x6e, 0x67, 0x73, 0x0a, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x63, 0x6f, 0x6e, 0x73, 0x74, 0x20, 0x73, 0x61, 0x76, 0x65, 0x64, + 0x55, 0x73, 0x65, 0x72, 0x54, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, + 0x73, 0x20, 0x3d, 0x20, 0x73, 0x69, 0x67, 0x6e, 0x61, 0x6c, 0x28, 0x7b, + 0x7d, 0x29, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x63, 0x6f, 0x6e, 0x73, 0x74, + 0x20, 0x73, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x65, 0x64, 0x55, 0x73, 0x65, + 0x72, 0x54, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x20, 0x3d, 0x20, + 0x73, 0x69, 0x67, 0x6e, 0x61, 0x6c, 0x28, 0x7b, 0x20, 0x6e, 0x61, 0x6d, + 0x65, 0x3a, 0x20, 0x27, 0x27, 0x2c, 0x20, 0x74, 0x65, 0x6d, 0x70, 0x6c, + 0x61, 0x74, 0x65, 0x3a, 0x20, 0x7b, 0x20, 0x73, 0x65, 0x73, 0x73, 0x69, + 0x6f, 0x6e, 0x3a, 0x20, 0x7b, 0x7d, 0x2c, 0x20, 0x70, 0x61, 0x72, 0x61, + 0x6d, 0x73, 0x3a, 0x20, 0x7b, 0x7d, 0x20, 0x7d, 0x20, 0x7d, 0x29, 0x0a, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x2f, 0x2f, 0x20, 0x6c, 0x65, 0x74, 0x27, + 0x73, 0x20, 0x69, 0x6d, 0x70, 0x6f, 0x72, 0x74, 0x20, 0x6c, 0x6f, 0x63, + 0x61, 0x6c, 0x6c, 0x79, 0x20, 0x73, 0x61, 0x76, 0x65, 0x64, 0x20, 0x74, + 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x73, 0x20, 0x61, 0x6e, 0x64, + 0x20, 0x73, 0x65, 0x74, 0x74, 0x69, 0x6e, 0x67, 0x73, 0x20, 0x69, 0x66, + 0x20, 0x74, 0x68, 0x65, 0x72, 0x65, 0x20, 0x61, 0x72, 0x65, 0x20, 0x61, + 0x6e, 0x79, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x2f, 0x2f, 0x20, 0x75, 0x73, + 0x65, 0x72, 0x20, 0x74, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x73, + 0x20, 0x61, 0x6e, 0x64, 0x20, 0x73, 0x65, 0x74, 0x74, 0x69, 0x6e, 0x67, + 0x73, 0x20, 0x61, 0x72, 0x65, 0x20, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x64, + 0x20, 0x69, 0x6e, 0x20, 0x6f, 0x6e, 0x65, 0x20, 0x6f, 0x62, 0x6a, 0x65, + 0x63, 0x74, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x2f, 0x2f, 0x20, 0x69, 0x6e, + 0x20, 0x66, 0x6f, 0x72, 0x6d, 0x20, 0x6f, 0x66, 0x20, 0x7b, 0x20, 0x22, + 0x74, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x6e, 0x61, 0x6d, 0x65, + 0x22, 0x3a, 0x20, 0x22, 0x74, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, + 0x64, 0x61, 0x74, 0x61, 0x22, 0x20, 0x7d, 0x20, 0x61, 0x6e, 0x64, 0x20, + 0x7b, 0x20, 0x22, 0x73, 0x65, 0x74, 0x74, 0x69, 0x6e, 0x67, 0x73, 0x74, + 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x6e, 0x61, 0x6d, 0x65, 0x22, + 0x3a, 0x22, 0x73, 0x65, 0x74, 0x74, 0x69, 0x6e, 0x67, 0x73, 0x64, 0x61, + 0x74, 0x61, 0x22, 0x20, 0x7d, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x63, + 0x6f, 0x6e, 0x73, 0x6f, 0x6c, 0x65, 0x2e, 0x6c, 0x6f, 0x67, 0x28, 0x27, + 0x49, 0x6d, 0x70, 0x6f, 0x72, 0x74, 0x69, 0x6e, 0x67, 0x20, 0x73, 0x61, 0x76, 0x65, 0x64, 0x20, 0x74, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, - 0x73, 0x20, 0x77, 0x65, 0x72, 0x65, 0x20, 0x73, 0x75, 0x63, 0x63, 0x65, - 0x73, 0x73, 0x66, 0x75, 0x6c, 0x79, 0x20, 0x69, 0x6d, 0x70, 0x6f, 0x72, - 0x74, 0x65, 0x64, 0x2e, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x63, 0x6f, 0x6e, 0x73, 0x6f, 0x6c, 0x65, 0x2e, 0x6c, 0x6f, 0x67, 0x28, - 0x27, 0x50, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x20, + 0x73, 0x27, 0x29, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x6c, 0x65, 0x74, + 0x20, 0x69, 0x6d, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x64, 0x54, 0x65, 0x6d, + 0x70, 0x6c, 0x61, 0x74, 0x65, 0x73, 0x20, 0x3d, 0x20, 0x6c, 0x6f, 0x63, + 0x61, 0x6c, 0x5f, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x5f, 0x67, + 0x65, 0x74, 0x44, 0x61, 0x74, 0x61, 0x41, 0x73, 0x4f, 0x62, 0x6a, 0x65, + 0x63, 0x74, 0x28, 0x27, 0x75, 0x73, 0x65, 0x72, 0x5f, 0x74, 0x65, 0x6d, + 0x70, 0x6c, 0x61, 0x74, 0x65, 0x73, 0x27, 0x29, 0x0a, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x69, 0x66, 0x20, 0x28, 0x69, 0x6d, 0x70, 0x6f, 0x72, 0x74, + 0x65, 0x64, 0x54, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x73, 0x29, + 0x20, 0x7b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x2f, 0x2f, 0x20, 0x73, 0x61, 0x76, 0x65, 0x64, 0x20, 0x74, 0x65, 0x6d, 0x70, 0x6c, 0x61, - 0x74, 0x65, 0x73, 0x20, 0x61, 0x6e, 0x64, 0x20, 0x75, 0x70, 0x64, 0x61, - 0x74, 0x69, 0x6e, 0x67, 0x20, 0x64, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, - 0x20, 0x74, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x27, 0x29, 0x0a, + 0x74, 0x65, 0x73, 0x20, 0x77, 0x65, 0x72, 0x65, 0x20, 0x73, 0x75, 0x63, + 0x63, 0x65, 0x73, 0x73, 0x66, 0x75, 0x6c, 0x79, 0x20, 0x69, 0x6d, 0x70, + 0x6f, 0x72, 0x74, 0x65, 0x64, 0x2e, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x63, 0x6f, 0x6e, 0x73, 0x6f, 0x6c, 0x65, 0x2e, 0x6c, 0x6f, + 0x67, 0x28, 0x27, 0x50, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x69, 0x6e, + 0x67, 0x20, 0x73, 0x61, 0x76, 0x65, 0x64, 0x20, 0x74, 0x65, 0x6d, 0x70, + 0x6c, 0x61, 0x74, 0x65, 0x73, 0x20, 0x61, 0x6e, 0x64, 0x20, 0x75, 0x70, + 0x64, 0x61, 0x74, 0x69, 0x6e, 0x67, 0x20, 0x64, 0x65, 0x66, 0x61, 0x75, + 0x6c, 0x74, 0x20, 0x74, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x27, + 0x29, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x70, 0x61, 0x72, 0x61, + 0x6d, 0x73, 0x2e, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x20, 0x3d, 0x20, 0x7b, + 0x20, 0x2e, 0x2e, 0x2e, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x2e, 0x76, + 0x61, 0x6c, 0x75, 0x65, 0x2c, 0x20, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x5f, + 0x64, 0x61, 0x74, 0x61, 0x3a, 0x20, 0x5b, 0x5d, 0x20, 0x7d, 0x3b, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x2f, 0x2f, 0x63, 0x6f, 0x6e, 0x73, 0x6f, 0x6c, 0x65, 0x2e, 0x6c, 0x6f, 0x67, 0x28, 0x69, 0x6d, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x64, 0x54, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, @@ -608,515 +626,639 @@ unsigned char index_html[] = { 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x2e, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x20, 0x3d, 0x20, 0x74, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x2e, 0x73, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x73, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x2e, 0x76, 0x61, 0x6c, 0x75, + 0x65, 0x20, 0x3d, 0x20, 0x7b, 0x20, 0x2e, 0x2e, 0x2e, 0x73, 0x65, 0x73, + 0x73, 0x69, 0x6f, 0x6e, 0x2e, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x2c, 0x20, + 0x69, 0x6d, 0x61, 0x67, 0x65, 0x5f, 0x73, 0x65, 0x6c, 0x65, 0x63, 0x74, + 0x65, 0x64, 0x3a, 0x20, 0x27, 0x27, 0x20, 0x7d, 0x3b, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x2e, 0x76, + 0x61, 0x6c, 0x75, 0x65, 0x20, 0x3d, 0x20, 0x74, 0x2e, 0x64, 0x61, 0x74, + 0x61, 0x2e, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x3b, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x2e, 0x76, + 0x61, 0x6c, 0x75, 0x65, 0x20, 0x3d, 0x20, 0x7b, 0x20, 0x2e, 0x2e, 0x2e, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x2e, 0x76, 0x61, 0x6c, 0x75, 0x65, - 0x20, 0x3d, 0x20, 0x74, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x2e, 0x70, 0x61, - 0x72, 0x61, 0x6d, 0x73, 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x7d, 0x0a, - 0x0a, 0x20, 0x20, 0x20, 0x20, 0x66, 0x75, 0x6e, 0x63, 0x74, 0x69, 0x6f, - 0x6e, 0x20, 0x75, 0x73, 0x65, 0x72, 0x54, 0x65, 0x6d, 0x70, 0x6c, 0x61, - 0x74, 0x65, 0x52, 0x65, 0x73, 0x65, 0x74, 0x54, 0x6f, 0x44, 0x65, 0x66, - 0x61, 0x75, 0x6c, 0x74, 0x41, 0x6e, 0x64, 0x41, 0x70, 0x70, 0x6c, 0x79, - 0x28, 0x29, 0x20, 0x7b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x75, - 0x73, 0x65, 0x72, 0x54, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x52, - 0x65, 0x73, 0x65, 0x74, 0x54, 0x6f, 0x44, 0x65, 0x66, 0x61, 0x75, 0x6c, - 0x74, 0x28, 0x29, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x75, 0x73, - 0x65, 0x72, 0x54, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x41, 0x70, - 0x70, 0x6c, 0x79, 0x28, 0x73, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x65, 0x64, - 0x55, 0x73, 0x65, 0x72, 0x54, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, - 0x2e, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x29, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x2c, 0x20, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x5f, 0x64, 0x61, 0x74, 0x61, + 0x3a, 0x20, 0x5b, 0x5d, 0x20, 0x7d, 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x7d, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x66, 0x75, 0x6e, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x75, 0x73, 0x65, 0x72, 0x54, 0x65, 0x6d, 0x70, - 0x6c, 0x61, 0x74, 0x65, 0x4c, 0x6f, 0x61, 0x64, 0x41, 0x6e, 0x64, 0x41, - 0x70, 0x70, 0x6c, 0x79, 0x41, 0x75, 0x74, 0x6f, 0x73, 0x61, 0x76, 0x65, - 0x64, 0x28, 0x29, 0x20, 0x7b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x2f, 0x2f, 0x20, 0x67, 0x65, 0x74, 0x20, 0x61, 0x75, 0x74, 0x6f, 0x73, - 0x61, 0x76, 0x65, 0x64, 0x20, 0x6c, 0x61, 0x73, 0x74, 0x20, 0x75, 0x73, - 0x65, 0x64, 0x20, 0x74, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x0a, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x6c, 0x65, 0x74, 0x20, 0x6c, 0x61, - 0x73, 0x74, 0x55, 0x73, 0x65, 0x64, 0x54, 0x65, 0x6d, 0x70, 0x6c, 0x61, - 0x74, 0x65, 0x20, 0x3d, 0x20, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x5f, 0x73, - 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x5f, 0x67, 0x65, 0x74, 0x44, 0x61, - 0x74, 0x61, 0x41, 0x73, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x28, 0x27, - 0x75, 0x73, 0x65, 0x72, 0x5f, 0x74, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, - 0x65, 0x73, 0x5f, 0x6c, 0x61, 0x73, 0x74, 0x27, 0x29, 0x0a, 0x0a, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x69, 0x66, 0x20, 0x28, 0x6c, 0x61, 0x73, + 0x6c, 0x61, 0x74, 0x65, 0x52, 0x65, 0x73, 0x65, 0x74, 0x54, 0x6f, 0x44, + 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x41, 0x6e, 0x64, 0x41, 0x70, 0x70, + 0x6c, 0x79, 0x28, 0x29, 0x20, 0x7b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x75, 0x73, 0x65, 0x72, 0x54, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, + 0x65, 0x52, 0x65, 0x73, 0x65, 0x74, 0x54, 0x6f, 0x44, 0x65, 0x66, 0x61, + 0x75, 0x6c, 0x74, 0x28, 0x29, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x75, 0x73, 0x65, 0x72, 0x54, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, + 0x41, 0x70, 0x70, 0x6c, 0x79, 0x28, 0x73, 0x65, 0x6c, 0x65, 0x63, 0x74, + 0x65, 0x64, 0x55, 0x73, 0x65, 0x72, 0x54, 0x65, 0x6d, 0x70, 0x6c, 0x61, + 0x74, 0x65, 0x2e, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x29, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x7d, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x66, 0x75, 0x6e, + 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x75, 0x73, 0x65, 0x72, 0x54, 0x65, + 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x4c, 0x6f, 0x61, 0x64, 0x41, 0x6e, + 0x64, 0x41, 0x70, 0x70, 0x6c, 0x79, 0x41, 0x75, 0x74, 0x6f, 0x73, 0x61, + 0x76, 0x65, 0x64, 0x28, 0x29, 0x20, 0x7b, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x2f, 0x2f, 0x20, 0x67, 0x65, 0x74, 0x20, 0x61, 0x75, 0x74, + 0x6f, 0x73, 0x61, 0x76, 0x65, 0x64, 0x20, 0x6c, 0x61, 0x73, 0x74, 0x20, + 0x75, 0x73, 0x65, 0x64, 0x20, 0x74, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, + 0x65, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x6c, 0x65, 0x74, 0x20, + 0x6c, 0x61, 0x73, 0x74, 0x55, 0x73, 0x65, 0x64, 0x54, 0x65, 0x6d, 0x70, + 0x6c, 0x61, 0x74, 0x65, 0x20, 0x3d, 0x20, 0x6c, 0x6f, 0x63, 0x61, 0x6c, + 0x5f, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x5f, 0x67, 0x65, 0x74, + 0x44, 0x61, 0x74, 0x61, 0x41, 0x73, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, + 0x28, 0x27, 0x75, 0x73, 0x65, 0x72, 0x5f, 0x74, 0x65, 0x6d, 0x70, 0x6c, + 0x61, 0x74, 0x65, 0x73, 0x5f, 0x6c, 0x61, 0x73, 0x74, 0x27, 0x29, 0x0a, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x69, 0x66, 0x20, 0x28, 0x6c, + 0x61, 0x73, 0x74, 0x55, 0x73, 0x65, 0x64, 0x54, 0x65, 0x6d, 0x70, 0x6c, + 0x61, 0x74, 0x65, 0x29, 0x20, 0x7b, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x63, 0x6f, 0x6e, 0x73, 0x6f, 0x6c, 0x65, 0x2e, + 0x6c, 0x6f, 0x67, 0x28, 0x27, 0x41, 0x75, 0x74, 0x6f, 0x73, 0x61, 0x76, + 0x65, 0x64, 0x20, 0x74, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x20, + 0x66, 0x6f, 0x75, 0x6e, 0x64, 0x2c, 0x20, 0x72, 0x65, 0x73, 0x74, 0x6f, + 0x72, 0x69, 0x6e, 0x67, 0x27, 0x29, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x73, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x65, 0x64, + 0x55, 0x73, 0x65, 0x72, 0x54, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, + 0x2e, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x20, 0x3d, 0x20, 0x6c, 0x61, 0x73, 0x74, 0x55, 0x73, 0x65, 0x64, 0x54, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, - 0x65, 0x29, 0x20, 0x7b, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x63, 0x6f, 0x6e, 0x73, 0x6f, 0x6c, 0x65, 0x2e, 0x6c, 0x6f, - 0x67, 0x28, 0x27, 0x41, 0x75, 0x74, 0x6f, 0x73, 0x61, 0x76, 0x65, 0x64, - 0x20, 0x74, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x20, 0x66, 0x6f, - 0x75, 0x6e, 0x64, 0x2c, 0x20, 0x72, 0x65, 0x73, 0x74, 0x6f, 0x72, 0x69, - 0x6e, 0x67, 0x27, 0x29, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x73, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x65, 0x64, 0x55, 0x73, - 0x65, 0x72, 0x54, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x2e, 0x76, - 0x61, 0x6c, 0x75, 0x65, 0x20, 0x3d, 0x20, 0x6c, 0x61, 0x73, 0x74, 0x55, - 0x73, 0x65, 0x64, 0x54, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x0a, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x7d, 0x0a, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x65, 0x6c, 0x73, 0x65, 0x20, 0x7b, 0x0a, 0x0a, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x63, 0x6f, 0x6e, 0x73, 0x6f, 0x6c, - 0x65, 0x2e, 0x6c, 0x6f, 0x67, 0x28, 0x27, 0x4e, 0x6f, 0x20, 0x61, 0x75, - 0x74, 0x6f, 0x73, 0x61, 0x76, 0x65, 0x64, 0x20, 0x74, 0x65, 0x6d, 0x70, - 0x6c, 0x61, 0x74, 0x65, 0x20, 0x66, 0x6f, 0x75, 0x6e, 0x64, 0x2c, 0x20, - 0x75, 0x73, 0x69, 0x6e, 0x67, 0x20, 0x64, 0x65, 0x66, 0x61, 0x75, 0x6c, - 0x74, 0x20, 0x74, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x27, 0x29, - 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x2f, 0x2f, 0x20, - 0x6e, 0x6f, 0x20, 0x61, 0x75, 0x74, 0x6f, 0x73, 0x61, 0x76, 0x65, 0x64, - 0x20, 0x6c, 0x61, 0x73, 0x74, 0x20, 0x75, 0x73, 0x65, 0x64, 0x20, 0x74, - 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x20, 0x77, 0x61, 0x73, 0x20, - 0x66, 0x6f, 0x75, 0x6e, 0x64, 0x2c, 0x20, 0x73, 0x6f, 0x20, 0x6c, 0x6f, - 0x61, 0x64, 0x20, 0x66, 0x72, 0x6f, 0x6d, 0x20, 0x64, 0x65, 0x66, 0x61, - 0x75, 0x6c, 0x74, 0x2e, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x75, 0x73, 0x65, 0x72, 0x54, 0x65, 0x6d, 0x70, 0x6c, 0x61, - 0x74, 0x65, 0x52, 0x65, 0x73, 0x65, 0x74, 0x54, 0x6f, 0x44, 0x65, 0x66, - 0x61, 0x75, 0x6c, 0x74, 0x28, 0x29, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x7d, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x63, 0x6f, - 0x6e, 0x73, 0x6f, 0x6c, 0x65, 0x2e, 0x6c, 0x6f, 0x67, 0x28, 0x27, 0x41, - 0x70, 0x70, 0x6c, 0x79, 0x69, 0x6e, 0x67, 0x20, 0x74, 0x65, 0x6d, 0x70, - 0x6c, 0x61, 0x74, 0x65, 0x27, 0x29, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x2f, 0x2f, 0x20, 0x61, 0x6e, 0x64, 0x20, 0x75, 0x70, 0x64, 0x61, - 0x74, 0x65, 0x20, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x20, - 0x64, 0x61, 0x74, 0x61, 0x20, 0x66, 0x72, 0x6f, 0x6d, 0x20, 0x74, 0x65, - 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x73, 0x0a, 0x0a, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x75, 0x73, 0x65, 0x72, 0x54, 0x65, 0x6d, 0x70, 0x6c, - 0x61, 0x74, 0x65, 0x41, 0x70, 0x70, 0x6c, 0x79, 0x28, 0x73, 0x65, 0x6c, - 0x65, 0x63, 0x74, 0x65, 0x64, 0x55, 0x73, 0x65, 0x72, 0x54, 0x65, 0x6d, - 0x70, 0x6c, 0x61, 0x74, 0x65, 0x2e, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x29, - 0x0a, 0x20, 0x20, 0x20, 0x20, 0x7d, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, - 0x2f, 0x2f, 0x63, 0x6f, 0x6e, 0x73, 0x6f, 0x6c, 0x65, 0x2e, 0x6c, 0x6f, - 0x67, 0x28, 0x73, 0x61, 0x76, 0x65, 0x64, 0x55, 0x73, 0x65, 0x72, 0x54, - 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x73, 0x2e, 0x76, 0x61, 0x6c, - 0x75, 0x65, 0x29, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x2f, 0x2f, 0x63, 0x6f, - 0x6e, 0x73, 0x6f, 0x6c, 0x65, 0x2e, 0x6c, 0x6f, 0x67, 0x28, 0x73, 0x65, - 0x6c, 0x65, 0x63, 0x74, 0x65, 0x64, 0x55, 0x73, 0x65, 0x72, 0x54, 0x65, - 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x2e, 0x76, 0x61, 0x6c, 0x75, 0x65, - 0x29, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x66, 0x75, 0x6e, 0x63, 0x74, - 0x69, 0x6f, 0x6e, 0x20, 0x75, 0x73, 0x65, 0x72, 0x54, 0x65, 0x6d, 0x70, - 0x6c, 0x61, 0x74, 0x65, 0x41, 0x75, 0x74, 0x6f, 0x73, 0x61, 0x76, 0x65, - 0x28, 0x29, 0x20, 0x7b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x63, - 0x6f, 0x6e, 0x73, 0x6f, 0x6c, 0x65, 0x2e, 0x6c, 0x6f, 0x67, 0x28, 0x27, - 0x54, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x20, 0x41, 0x75, 0x74, - 0x6f, 0x73, 0x61, 0x76, 0x65, 0x2e, 0x2e, 0x2e, 0x27, 0x29, 0x0a, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x69, 0x66, 0x20, 0x28, 0x73, 0x65, 0x6c, - 0x65, 0x63, 0x74, 0x65, 0x64, 0x55, 0x73, 0x65, 0x72, 0x54, 0x65, 0x6d, - 0x70, 0x6c, 0x61, 0x74, 0x65, 0x2e, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x2e, - 0x6e, 0x61, 0x6d, 0x65, 0x20, 0x3d, 0x3d, 0x20, 0x27, 0x64, 0x65, 0x66, - 0x61, 0x75, 0x6c, 0x74, 0x27, 0x29, 0x20, 0x7b, 0x0a, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x2f, 0x2f, 0x20, 0x77, 0x65, 0x20, 0x64, - 0x6f, 0x6e, 0x27, 0x74, 0x20, 0x77, 0x61, 0x6e, 0x74, 0x20, 0x74, 0x6f, - 0x20, 0x73, 0x61, 0x76, 0x65, 0x20, 0x6f, 0x76, 0x65, 0x72, 0x20, 0x64, - 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x20, 0x74, 0x65, 0x6d, 0x70, 0x6c, - 0x61, 0x74, 0x65, 0x2c, 0x20, 0x73, 0x6f, 0x20, 0x6c, 0x65, 0x74, 0x27, - 0x73, 0x20, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x20, 0x61, 0x20, 0x6e, - 0x65, 0x77, 0x20, 0x6f, 0x6e, 0x65, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x65, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x7d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x65, 0x6c, 0x73, 0x65, 0x20, 0x7b, 0x0a, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x63, 0x6f, 0x6e, 0x73, + 0x6f, 0x6c, 0x65, 0x2e, 0x6c, 0x6f, 0x67, 0x28, 0x27, 0x4e, 0x6f, 0x20, + 0x61, 0x75, 0x74, 0x6f, 0x73, 0x61, 0x76, 0x65, 0x64, 0x20, 0x74, 0x65, + 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x20, 0x66, 0x6f, 0x75, 0x6e, 0x64, + 0x2c, 0x20, 0x75, 0x73, 0x69, 0x6e, 0x67, 0x20, 0x64, 0x65, 0x66, 0x61, + 0x75, 0x6c, 0x74, 0x20, 0x74, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, + 0x27, 0x29, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x2f, + 0x2f, 0x20, 0x6e, 0x6f, 0x20, 0x61, 0x75, 0x74, 0x6f, 0x73, 0x61, 0x76, + 0x65, 0x64, 0x20, 0x6c, 0x61, 0x73, 0x74, 0x20, 0x75, 0x73, 0x65, 0x64, + 0x20, 0x74, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x20, 0x77, 0x61, + 0x73, 0x20, 0x66, 0x6f, 0x75, 0x6e, 0x64, 0x2c, 0x20, 0x73, 0x6f, 0x20, + 0x6c, 0x6f, 0x61, 0x64, 0x20, 0x66, 0x72, 0x6f, 0x6d, 0x20, 0x64, 0x65, + 0x66, 0x61, 0x75, 0x6c, 0x74, 0x2e, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x75, 0x73, 0x65, 0x72, 0x54, 0x65, 0x6d, 0x70, + 0x6c, 0x61, 0x74, 0x65, 0x52, 0x65, 0x73, 0x65, 0x74, 0x54, 0x6f, 0x44, + 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x28, 0x29, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x7d, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x63, 0x6f, 0x6e, 0x73, 0x6f, 0x6c, 0x65, 0x2e, 0x6c, 0x6f, 0x67, 0x28, + 0x27, 0x41, 0x70, 0x70, 0x6c, 0x79, 0x69, 0x6e, 0x67, 0x20, 0x74, 0x65, + 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x27, 0x29, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x2f, 0x2f, 0x20, 0x61, 0x6e, 0x64, 0x20, 0x75, 0x70, + 0x64, 0x61, 0x74, 0x65, 0x20, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, + 0x6c, 0x20, 0x64, 0x61, 0x74, 0x61, 0x20, 0x66, 0x72, 0x6f, 0x6d, 0x20, + 0x74, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x73, 0x0a, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x75, 0x73, 0x65, 0x72, 0x54, 0x65, 0x6d, + 0x70, 0x6c, 0x61, 0x74, 0x65, 0x41, 0x70, 0x70, 0x6c, 0x79, 0x28, 0x73, + 0x65, 0x6c, 0x65, 0x63, 0x74, 0x65, 0x64, 0x55, 0x73, 0x65, 0x72, 0x54, + 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x2e, 0x76, 0x61, 0x6c, 0x75, + 0x65, 0x29, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x7d, 0x0a, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x2f, 0x2f, 0x63, 0x6f, 0x6e, 0x73, 0x6f, 0x6c, 0x65, 0x2e, + 0x6c, 0x6f, 0x67, 0x28, 0x73, 0x61, 0x76, 0x65, 0x64, 0x55, 0x73, 0x65, + 0x72, 0x54, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x73, 0x2e, 0x76, + 0x61, 0x6c, 0x75, 0x65, 0x29, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x2f, 0x2f, + 0x63, 0x6f, 0x6e, 0x73, 0x6f, 0x6c, 0x65, 0x2e, 0x6c, 0x6f, 0x67, 0x28, + 0x73, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x65, 0x64, 0x55, 0x73, 0x65, 0x72, + 0x54, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x2e, 0x76, 0x61, 0x6c, + 0x75, 0x65, 0x29, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x66, 0x75, 0x6e, + 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x75, 0x73, 0x65, 0x72, 0x54, 0x65, + 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x41, 0x75, 0x74, 0x6f, 0x73, 0x61, + 0x76, 0x65, 0x28, 0x29, 0x20, 0x7b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x63, 0x6f, 0x6e, 0x73, 0x6f, 0x6c, 0x65, 0x2e, 0x6c, 0x6f, 0x67, + 0x28, 0x27, 0x54, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x20, 0x41, + 0x75, 0x74, 0x6f, 0x73, 0x61, 0x76, 0x65, 0x2e, 0x2e, 0x2e, 0x27, 0x29, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x69, 0x66, 0x20, 0x28, 0x73, + 0x65, 0x6c, 0x65, 0x63, 0x74, 0x65, 0x64, 0x55, 0x73, 0x65, 0x72, 0x54, + 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x2e, 0x76, 0x61, 0x6c, 0x75, + 0x65, 0x2e, 0x6e, 0x61, 0x6d, 0x65, 0x20, 0x3d, 0x3d, 0x20, 0x27, 0x64, + 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x27, 0x29, 0x20, 0x7b, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x2f, 0x2f, 0x20, 0x77, 0x65, + 0x20, 0x64, 0x6f, 0x6e, 0x27, 0x74, 0x20, 0x77, 0x61, 0x6e, 0x74, 0x20, + 0x74, 0x6f, 0x20, 0x73, 0x61, 0x76, 0x65, 0x20, 0x6f, 0x76, 0x65, 0x72, + 0x20, 0x64, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x20, 0x74, 0x65, 0x6d, + 0x70, 0x6c, 0x61, 0x74, 0x65, 0x2c, 0x20, 0x73, 0x6f, 0x20, 0x6c, 0x65, + 0x74, 0x27, 0x73, 0x20, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x20, 0x61, + 0x20, 0x6e, 0x65, 0x77, 0x20, 0x6f, 0x6e, 0x65, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x6c, 0x65, 0x74, 0x20, 0x6e, 0x65, 0x77, + 0x54, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x4e, 0x61, 0x6d, 0x65, + 0x20, 0x3d, 0x20, 0x27, 0x55, 0x73, 0x65, 0x72, 0x54, 0x65, 0x6d, 0x70, + 0x6c, 0x61, 0x74, 0x65, 0x2d, 0x27, 0x20, 0x2b, 0x20, 0x44, 0x61, 0x74, + 0x65, 0x2e, 0x6e, 0x6f, 0x77, 0x28, 0x29, 0x2e, 0x74, 0x6f, 0x53, 0x74, + 0x72, 0x69, 0x6e, 0x67, 0x28, 0x29, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x6c, 0x65, 0x74, 0x20, 0x6e, 0x65, 0x77, 0x54, 0x65, - 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x20, 0x3d, - 0x20, 0x27, 0x55, 0x73, 0x65, 0x72, 0x54, 0x65, 0x6d, 0x70, 0x6c, 0x61, - 0x74, 0x65, 0x2d, 0x27, 0x20, 0x2b, 0x20, 0x44, 0x61, 0x74, 0x65, 0x2e, - 0x6e, 0x6f, 0x77, 0x28, 0x29, 0x2e, 0x74, 0x6f, 0x53, 0x74, 0x72, 0x69, - 0x6e, 0x67, 0x28, 0x29, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x6c, 0x65, 0x74, 0x20, 0x6e, 0x65, 0x77, 0x54, 0x65, 0x6d, 0x70, - 0x6c, 0x61, 0x74, 0x65, 0x20, 0x3d, 0x20, 0x7b, 0x20, 0x27, 0x6e, 0x61, - 0x6d, 0x65, 0x27, 0x3a, 0x20, 0x6e, 0x65, 0x77, 0x54, 0x65, 0x6d, 0x70, - 0x6c, 0x61, 0x74, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x2c, 0x20, 0x27, 0x64, - 0x61, 0x74, 0x61, 0x27, 0x3a, 0x20, 0x7b, 0x20, 0x27, 0x73, 0x65, 0x73, - 0x73, 0x69, 0x6f, 0x6e, 0x27, 0x3a, 0x20, 0x73, 0x65, 0x73, 0x73, 0x69, - 0x6f, 0x6e, 0x2e, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x2c, 0x20, 0x27, 0x70, - 0x61, 0x72, 0x61, 0x6d, 0x73, 0x27, 0x3a, 0x20, 0x70, 0x61, 0x72, 0x61, - 0x6d, 0x73, 0x2e, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x20, 0x7d, 0x20, 0x7d, - 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x63, 0x6f, - 0x6e, 0x73, 0x6f, 0x6c, 0x65, 0x2e, 0x6c, 0x6f, 0x67, 0x28, 0x27, 0x53, - 0x61, 0x76, 0x69, 0x6e, 0x67, 0x20, 0x61, 0x73, 0x20, 0x27, 0x20, 0x2b, - 0x20, 0x6e, 0x65, 0x77, 0x54, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, - 0x4e, 0x61, 0x6d, 0x65, 0x29, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x2f, 0x2f, 0x20, 0x73, 0x61, 0x76, 0x65, 0x20, 0x69, - 0x6e, 0x20, 0x74, 0x68, 0x65, 0x20, 0x61, 0x75, 0x74, 0x6f, 0x73, 0x61, - 0x76, 0x65, 0x20, 0x73, 0x6c, 0x6f, 0x74, 0x0a, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x5f, 0x73, 0x74, - 0x6f, 0x72, 0x61, 0x67, 0x65, 0x5f, 0x73, 0x65, 0x74, 0x44, 0x61, 0x74, - 0x61, 0x46, 0x72, 0x6f, 0x6d, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x28, - 0x27, 0x75, 0x73, 0x65, 0x72, 0x5f, 0x74, 0x65, 0x6d, 0x70, 0x6c, 0x61, - 0x74, 0x65, 0x73, 0x5f, 0x6c, 0x61, 0x73, 0x74, 0x27, 0x2c, 0x20, 0x6e, - 0x65, 0x77, 0x54, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x29, 0x0a, - 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x2f, 0x2f, 0x20, - 0x61, 0x6e, 0x64, 0x20, 0x6c, 0x6f, 0x61, 0x64, 0x20, 0x69, 0x74, 0x20, - 0x62, 0x61, 0x63, 0x6b, 0x20, 0x61, 0x6e, 0x64, 0x20, 0x61, 0x70, 0x70, - 0x6c, 0x79, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x75, - 0x73, 0x65, 0x72, 0x54, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x4c, - 0x6f, 0x61, 0x64, 0x41, 0x6e, 0x64, 0x41, 0x70, 0x70, 0x6c, 0x79, 0x41, - 0x75, 0x74, 0x6f, 0x73, 0x61, 0x76, 0x65, 0x64, 0x28, 0x29, 0x0a, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x7d, 0x20, 0x65, 0x6c, 0x73, 0x65, 0x20, - 0x7b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x6c, 0x6f, - 0x63, 0x61, 0x6c, 0x5f, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x5f, - 0x73, 0x65, 0x74, 0x44, 0x61, 0x74, 0x61, 0x46, 0x72, 0x6f, 0x6d, 0x4f, - 0x62, 0x6a, 0x65, 0x63, 0x74, 0x28, 0x27, 0x75, 0x73, 0x65, 0x72, 0x5f, - 0x74, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x73, 0x5f, 0x6c, 0x61, - 0x73, 0x74, 0x27, 0x2c, 0x20, 0x7b, 0x20, 0x27, 0x6e, 0x61, 0x6d, 0x65, - 0x27, 0x3a, 0x20, 0x73, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x65, 0x64, 0x55, - 0x73, 0x65, 0x72, 0x54, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x2e, - 0x76, 0x61, 0x6c, 0x75, 0x65, 0x2e, 0x6e, 0x61, 0x6d, 0x65, 0x2c, 0x20, + 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x20, 0x3d, 0x20, 0x7b, 0x20, 0x27, + 0x6e, 0x61, 0x6d, 0x65, 0x27, 0x3a, 0x20, 0x6e, 0x65, 0x77, 0x54, 0x65, + 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x2c, 0x20, 0x27, 0x64, 0x61, 0x74, 0x61, 0x27, 0x3a, 0x20, 0x7b, 0x20, 0x27, 0x73, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x27, 0x3a, 0x20, 0x73, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x2e, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x2c, 0x20, 0x27, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x27, 0x3a, 0x20, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x2e, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x20, 0x7d, - 0x20, 0x7d, 0x29, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x7d, 0x0a, - 0x20, 0x20, 0x20, 0x20, 0x7d, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x63, - 0x6f, 0x6e, 0x73, 0x6f, 0x6c, 0x65, 0x2e, 0x6c, 0x6f, 0x67, 0x28, 0x27, - 0x43, 0x68, 0x65, 0x63, 0x6b, 0x69, 0x6e, 0x67, 0x20, 0x66, 0x6f, 0x72, - 0x20, 0x61, 0x75, 0x74, 0x6f, 0x73, 0x61, 0x76, 0x65, 0x64, 0x20, 0x6c, - 0x61, 0x73, 0x74, 0x20, 0x75, 0x73, 0x65, 0x64, 0x20, 0x74, 0x65, 0x6d, - 0x70, 0x6c, 0x61, 0x74, 0x65, 0x27, 0x29, 0x0a, 0x20, 0x20, 0x20, 0x20, - 0x75, 0x73, 0x65, 0x72, 0x54, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, - 0x4c, 0x6f, 0x61, 0x64, 0x41, 0x6e, 0x64, 0x41, 0x70, 0x70, 0x6c, 0x79, - 0x41, 0x75, 0x74, 0x6f, 0x73, 0x61, 0x76, 0x65, 0x64, 0x28, 0x29, 0x0a, - 0x0a, 0x20, 0x20, 0x20, 0x20, 0x2f, 0x2a, 0x20, 0x45, 0x4e, 0x44, 0x3a, - 0x20, 0x53, 0x75, 0x70, 0x70, 0x6f, 0x72, 0x74, 0x20, 0x66, 0x6f, 0x72, - 0x20, 0x73, 0x74, 0x6f, 0x72, 0x69, 0x6e, 0x67, 0x20, 0x70, 0x72, 0x6f, - 0x6d, 0x70, 0x74, 0x20, 0x74, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, - 0x73, 0x20, 0x61, 0x6e, 0x64, 0x20, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x65, - 0x74, 0x65, 0x72, 0x73, 0x20, 0x69, 0x6e, 0x20, 0x62, 0x72, 0x6f, 0x77, - 0x73, 0x65, 0x72, 0x73, 0x20, 0x4c, 0x6f, 0x63, 0x61, 0x6c, 0x53, 0x74, - 0x6f, 0x72, 0x61, 0x67, 0x65, 0x20, 0x2a, 0x2f, 0x0a, 0x0a, 0x20, 0x20, - 0x20, 0x20, 0x63, 0x6f, 0x6e, 0x73, 0x74, 0x20, 0x6c, 0x6c, 0x61, 0x6d, - 0x61, 0x53, 0x74, 0x61, 0x74, 0x73, 0x20, 0x3d, 0x20, 0x73, 0x69, 0x67, - 0x6e, 0x61, 0x6c, 0x28, 0x6e, 0x75, 0x6c, 0x6c, 0x29, 0x0a, 0x20, 0x20, - 0x20, 0x20, 0x63, 0x6f, 0x6e, 0x73, 0x74, 0x20, 0x63, 0x6f, 0x6e, 0x74, - 0x72, 0x6f, 0x6c, 0x6c, 0x65, 0x72, 0x20, 0x3d, 0x20, 0x73, 0x69, 0x67, - 0x6e, 0x61, 0x6c, 0x28, 0x6e, 0x75, 0x6c, 0x6c, 0x29, 0x0a, 0x0a, 0x20, - 0x20, 0x20, 0x20, 0x2f, 0x2f, 0x20, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, - 0x74, 0x6c, 0x79, 0x20, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, - 0x6e, 0x67, 0x20, 0x61, 0x20, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, - 0x69, 0x6f, 0x6e, 0x3f, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x63, 0x6f, 0x6e, - 0x73, 0x74, 0x20, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6e, - 0x67, 0x20, 0x3d, 0x20, 0x63, 0x6f, 0x6d, 0x70, 0x75, 0x74, 0x65, 0x64, - 0x28, 0x28, 0x29, 0x20, 0x3d, 0x3e, 0x20, 0x63, 0x6f, 0x6e, 0x74, 0x72, - 0x6f, 0x6c, 0x6c, 0x65, 0x72, 0x2e, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x20, - 0x21, 0x3d, 0x20, 0x6e, 0x75, 0x6c, 0x6c, 0x29, 0x0a, 0x0a, 0x20, 0x20, - 0x20, 0x20, 0x2f, 0x2f, 0x20, 0x68, 0x61, 0x73, 0x20, 0x74, 0x68, 0x65, - 0x20, 0x75, 0x73, 0x65, 0x72, 0x20, 0x73, 0x74, 0x61, 0x72, 0x74, 0x65, - 0x64, 0x20, 0x61, 0x20, 0x63, 0x68, 0x61, 0x74, 0x3f, 0x0a, 0x20, 0x20, - 0x20, 0x20, 0x63, 0x6f, 0x6e, 0x73, 0x74, 0x20, 0x63, 0x68, 0x61, 0x74, - 0x53, 0x74, 0x61, 0x72, 0x74, 0x65, 0x64, 0x20, 0x3d, 0x20, 0x63, 0x6f, - 0x6d, 0x70, 0x75, 0x74, 0x65, 0x64, 0x28, 0x28, 0x29, 0x20, 0x3d, 0x3e, - 0x20, 0x73, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x2e, 0x76, 0x61, 0x6c, - 0x75, 0x65, 0x2e, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x63, 0x72, 0x69, 0x70, - 0x74, 0x2e, 0x6c, 0x65, 0x6e, 0x67, 0x74, 0x68, 0x20, 0x3e, 0x20, 0x30, - 0x29, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x63, 0x6f, 0x6e, 0x73, 0x74, - 0x20, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x55, - 0x70, 0x64, 0x61, 0x74, 0x65, 0x20, 0x3d, 0x20, 0x28, 0x74, 0x72, 0x61, - 0x6e, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x29, 0x20, 0x3d, 0x3e, 0x20, - 0x7b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x73, 0x65, 0x73, 0x73, - 0x69, 0x6f, 0x6e, 0x2e, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x20, 0x3d, 0x20, - 0x7b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x2e, 0x2e, - 0x2e, 0x73, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x2e, 0x76, 0x61, 0x6c, - 0x75, 0x65, 0x2c, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x74, 0x72, 0x61, 0x6e, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x0a, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x7d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x7d, - 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x2f, 0x2f, 0x20, 0x73, 0x69, 0x6d, - 0x70, 0x6c, 0x65, 0x20, 0x74, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, - 0x20, 0x72, 0x65, 0x70, 0x6c, 0x61, 0x63, 0x65, 0x0a, 0x20, 0x20, 0x20, - 0x20, 0x63, 0x6f, 0x6e, 0x73, 0x74, 0x20, 0x74, 0x65, 0x6d, 0x70, 0x6c, - 0x61, 0x74, 0x65, 0x20, 0x3d, 0x20, 0x28, 0x73, 0x74, 0x72, 0x2c, 0x20, - 0x65, 0x78, 0x74, 0x72, 0x61, 0x53, 0x65, 0x74, 0x74, 0x69, 0x6e, 0x67, - 0x73, 0x29, 0x20, 0x3d, 0x3e, 0x20, 0x7b, 0x0a, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x6c, 0x65, 0x74, 0x20, 0x73, 0x65, 0x74, 0x74, 0x69, 0x6e, - 0x67, 0x73, 0x20, 0x3d, 0x20, 0x73, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, - 0x2e, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x69, 0x66, 0x20, 0x28, 0x65, 0x78, 0x74, 0x72, 0x61, 0x53, - 0x65, 0x74, 0x74, 0x69, 0x6e, 0x67, 0x73, 0x29, 0x20, 0x7b, 0x0a, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x73, 0x65, 0x74, 0x74, 0x69, - 0x6e, 0x67, 0x73, 0x20, 0x3d, 0x20, 0x7b, 0x20, 0x2e, 0x2e, 0x2e, 0x73, - 0x65, 0x74, 0x74, 0x69, 0x6e, 0x67, 0x73, 0x2c, 0x20, 0x2e, 0x2e, 0x2e, - 0x65, 0x78, 0x74, 0x72, 0x61, 0x53, 0x65, 0x74, 0x74, 0x69, 0x6e, 0x67, - 0x73, 0x20, 0x7d, 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x7d, - 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x72, 0x65, 0x74, 0x75, 0x72, - 0x6e, 0x20, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x28, 0x73, 0x74, 0x72, - 0x29, 0x2e, 0x72, 0x65, 0x70, 0x6c, 0x61, 0x63, 0x65, 0x41, 0x6c, 0x6c, - 0x28, 0x2f, 0x5c, 0x7b, 0x5c, 0x7b, 0x28, 0x2e, 0x2a, 0x3f, 0x29, 0x5c, - 0x7d, 0x5c, 0x7d, 0x2f, 0x67, 0x2c, 0x20, 0x28, 0x5f, 0x2c, 0x20, 0x6b, - 0x65, 0x79, 0x29, 0x20, 0x3d, 0x3e, 0x20, 0x74, 0x65, 0x6d, 0x70, 0x6c, - 0x61, 0x74, 0x65, 0x28, 0x73, 0x65, 0x74, 0x74, 0x69, 0x6e, 0x67, 0x73, - 0x5b, 0x6b, 0x65, 0x79, 0x5d, 0x29, 0x29, 0x3b, 0x0a, 0x20, 0x20, 0x20, - 0x20, 0x7d, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x61, 0x73, 0x79, 0x6e, - 0x63, 0x20, 0x66, 0x75, 0x6e, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x72, - 0x75, 0x6e, 0x4c, 0x6c, 0x61, 0x6d, 0x61, 0x28, 0x70, 0x72, 0x6f, 0x6d, - 0x70, 0x74, 0x2c, 0x20, 0x6c, 0x6c, 0x61, 0x6d, 0x61, 0x50, 0x61, 0x72, - 0x61, 0x6d, 0x73, 0x2c, 0x20, 0x63, 0x68, 0x61, 0x72, 0x29, 0x20, 0x7b, - 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x63, 0x6f, 0x6e, 0x73, 0x74, - 0x20, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x74, 0x4d, 0x65, 0x73, 0x73, - 0x61, 0x67, 0x65, 0x73, 0x20, 0x3d, 0x20, 0x5b, 0x5d, 0x3b, 0x0a, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x63, 0x6f, 0x6e, 0x73, 0x74, 0x20, 0x68, - 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x20, 0x3d, 0x20, 0x73, 0x65, 0x73, - 0x73, 0x69, 0x6f, 0x6e, 0x2e, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x2e, 0x74, - 0x72, 0x61, 0x6e, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x3b, 0x0a, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x69, 0x66, 0x20, 0x28, 0x63, 0x6f, 0x6e, + 0x20, 0x7d, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x63, 0x6f, 0x6e, 0x73, 0x6f, 0x6c, 0x65, 0x2e, 0x6c, 0x6f, 0x67, 0x28, + 0x27, 0x53, 0x61, 0x76, 0x69, 0x6e, 0x67, 0x20, 0x61, 0x73, 0x20, 0x27, + 0x20, 0x2b, 0x20, 0x6e, 0x65, 0x77, 0x54, 0x65, 0x6d, 0x70, 0x6c, 0x61, + 0x74, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x29, 0x0a, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x2f, 0x2f, 0x20, 0x73, 0x61, 0x76, 0x65, + 0x20, 0x69, 0x6e, 0x20, 0x74, 0x68, 0x65, 0x20, 0x61, 0x75, 0x74, 0x6f, + 0x73, 0x61, 0x76, 0x65, 0x20, 0x73, 0x6c, 0x6f, 0x74, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x5f, + 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x5f, 0x73, 0x65, 0x74, 0x44, + 0x61, 0x74, 0x61, 0x46, 0x72, 0x6f, 0x6d, 0x4f, 0x62, 0x6a, 0x65, 0x63, + 0x74, 0x28, 0x27, 0x75, 0x73, 0x65, 0x72, 0x5f, 0x74, 0x65, 0x6d, 0x70, + 0x6c, 0x61, 0x74, 0x65, 0x73, 0x5f, 0x6c, 0x61, 0x73, 0x74, 0x27, 0x2c, + 0x20, 0x6e, 0x65, 0x77, 0x54, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, + 0x29, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x2f, + 0x2f, 0x20, 0x61, 0x6e, 0x64, 0x20, 0x6c, 0x6f, 0x61, 0x64, 0x20, 0x69, + 0x74, 0x20, 0x62, 0x61, 0x63, 0x6b, 0x20, 0x61, 0x6e, 0x64, 0x20, 0x61, + 0x70, 0x70, 0x6c, 0x79, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x75, 0x73, 0x65, 0x72, 0x54, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, + 0x65, 0x4c, 0x6f, 0x61, 0x64, 0x41, 0x6e, 0x64, 0x41, 0x70, 0x70, 0x6c, + 0x79, 0x41, 0x75, 0x74, 0x6f, 0x73, 0x61, 0x76, 0x65, 0x64, 0x28, 0x29, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x7d, 0x20, 0x65, 0x6c, 0x73, + 0x65, 0x20, 0x7b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x5f, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, + 0x65, 0x5f, 0x73, 0x65, 0x74, 0x44, 0x61, 0x74, 0x61, 0x46, 0x72, 0x6f, + 0x6d, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x28, 0x27, 0x75, 0x73, 0x65, + 0x72, 0x5f, 0x74, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x73, 0x5f, + 0x6c, 0x61, 0x73, 0x74, 0x27, 0x2c, 0x20, 0x7b, 0x20, 0x27, 0x6e, 0x61, + 0x6d, 0x65, 0x27, 0x3a, 0x20, 0x73, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x65, + 0x64, 0x55, 0x73, 0x65, 0x72, 0x54, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, + 0x65, 0x2e, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x2e, 0x6e, 0x61, 0x6d, 0x65, + 0x2c, 0x20, 0x27, 0x64, 0x61, 0x74, 0x61, 0x27, 0x3a, 0x20, 0x7b, 0x20, + 0x27, 0x73, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x27, 0x3a, 0x20, 0x73, + 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x2e, 0x76, 0x61, 0x6c, 0x75, 0x65, + 0x2c, 0x20, 0x27, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x27, 0x3a, 0x20, + 0x70, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x2e, 0x76, 0x61, 0x6c, 0x75, 0x65, + 0x20, 0x7d, 0x20, 0x7d, 0x29, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x7d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x7d, 0x0a, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x63, 0x6f, 0x6e, 0x73, 0x6f, 0x6c, 0x65, 0x2e, 0x6c, 0x6f, 0x67, + 0x28, 0x27, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x69, 0x6e, 0x67, 0x20, 0x66, + 0x6f, 0x72, 0x20, 0x61, 0x75, 0x74, 0x6f, 0x73, 0x61, 0x76, 0x65, 0x64, + 0x20, 0x6c, 0x61, 0x73, 0x74, 0x20, 0x75, 0x73, 0x65, 0x64, 0x20, 0x74, + 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x27, 0x29, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x75, 0x73, 0x65, 0x72, 0x54, 0x65, 0x6d, 0x70, 0x6c, 0x61, + 0x74, 0x65, 0x4c, 0x6f, 0x61, 0x64, 0x41, 0x6e, 0x64, 0x41, 0x70, 0x70, + 0x6c, 0x79, 0x41, 0x75, 0x74, 0x6f, 0x73, 0x61, 0x76, 0x65, 0x64, 0x28, + 0x29, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x2f, 0x2a, 0x20, 0x45, 0x4e, + 0x44, 0x3a, 0x20, 0x53, 0x75, 0x70, 0x70, 0x6f, 0x72, 0x74, 0x20, 0x66, + 0x6f, 0x72, 0x20, 0x73, 0x74, 0x6f, 0x72, 0x69, 0x6e, 0x67, 0x20, 0x70, + 0x72, 0x6f, 0x6d, 0x70, 0x74, 0x20, 0x74, 0x65, 0x6d, 0x70, 0x6c, 0x61, + 0x74, 0x65, 0x73, 0x20, 0x61, 0x6e, 0x64, 0x20, 0x70, 0x61, 0x72, 0x61, + 0x6d, 0x65, 0x74, 0x65, 0x72, 0x73, 0x20, 0x69, 0x6e, 0x20, 0x62, 0x72, + 0x6f, 0x77, 0x73, 0x65, 0x72, 0x73, 0x20, 0x4c, 0x6f, 0x63, 0x61, 0x6c, + 0x53, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x20, 0x2a, 0x2f, 0x0a, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x63, 0x6f, 0x6e, 0x73, 0x74, 0x20, 0x6c, 0x6c, + 0x61, 0x6d, 0x61, 0x53, 0x74, 0x61, 0x74, 0x73, 0x20, 0x3d, 0x20, 0x73, + 0x69, 0x67, 0x6e, 0x61, 0x6c, 0x28, 0x6e, 0x75, 0x6c, 0x6c, 0x29, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x63, 0x6f, 0x6e, 0x73, 0x74, 0x20, 0x63, 0x6f, + 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x6c, 0x65, 0x72, 0x20, 0x3d, 0x20, 0x73, + 0x69, 0x67, 0x6e, 0x61, 0x6c, 0x28, 0x6e, 0x75, 0x6c, 0x6c, 0x29, 0x0a, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x2f, 0x2f, 0x20, 0x63, 0x75, 0x72, 0x72, + 0x65, 0x6e, 0x74, 0x6c, 0x79, 0x20, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, + 0x74, 0x69, 0x6e, 0x67, 0x20, 0x61, 0x20, 0x63, 0x6f, 0x6d, 0x70, 0x6c, + 0x65, 0x74, 0x69, 0x6f, 0x6e, 0x3f, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x63, + 0x6f, 0x6e, 0x73, 0x74, 0x20, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, + 0x69, 0x6e, 0x67, 0x20, 0x3d, 0x20, 0x63, 0x6f, 0x6d, 0x70, 0x75, 0x74, + 0x65, 0x64, 0x28, 0x28, 0x29, 0x20, 0x3d, 0x3e, 0x20, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x6c, 0x65, 0x72, 0x2e, 0x76, 0x61, 0x6c, 0x75, - 0x65, 0x29, 0x20, 0x7b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x74, 0x68, 0x72, 0x6f, 0x77, 0x20, 0x6e, 0x65, 0x77, 0x20, 0x45, - 0x72, 0x72, 0x6f, 0x72, 0x28, 0x22, 0x61, 0x6c, 0x72, 0x65, 0x61, 0x64, - 0x79, 0x20, 0x72, 0x75, 0x6e, 0x6e, 0x69, 0x6e, 0x67, 0x22, 0x29, 0x3b, + 0x65, 0x20, 0x21, 0x3d, 0x20, 0x6e, 0x75, 0x6c, 0x6c, 0x29, 0x0a, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x2f, 0x2f, 0x20, 0x68, 0x61, 0x73, 0x20, 0x74, + 0x68, 0x65, 0x20, 0x75, 0x73, 0x65, 0x72, 0x20, 0x73, 0x74, 0x61, 0x72, + 0x74, 0x65, 0x64, 0x20, 0x61, 0x20, 0x63, 0x68, 0x61, 0x74, 0x3f, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x63, 0x6f, 0x6e, 0x73, 0x74, 0x20, 0x63, 0x68, + 0x61, 0x74, 0x53, 0x74, 0x61, 0x72, 0x74, 0x65, 0x64, 0x20, 0x3d, 0x20, + 0x63, 0x6f, 0x6d, 0x70, 0x75, 0x74, 0x65, 0x64, 0x28, 0x28, 0x29, 0x20, + 0x3d, 0x3e, 0x20, 0x73, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x2e, 0x76, + 0x61, 0x6c, 0x75, 0x65, 0x2e, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x63, 0x72, + 0x69, 0x70, 0x74, 0x2e, 0x6c, 0x65, 0x6e, 0x67, 0x74, 0x68, 0x20, 0x3e, + 0x20, 0x30, 0x29, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x63, 0x6f, 0x6e, + 0x73, 0x74, 0x20, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x63, 0x72, 0x69, 0x70, + 0x74, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x20, 0x3d, 0x20, 0x28, 0x74, + 0x72, 0x61, 0x6e, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x29, 0x20, 0x3d, + 0x3e, 0x20, 0x7b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x73, 0x65, + 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x2e, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x20, + 0x3d, 0x20, 0x7b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x2e, 0x2e, 0x2e, 0x73, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x2e, 0x76, + 0x61, 0x6c, 0x75, 0x65, 0x2c, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x7d, 0x0a, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x6c, 0x65, - 0x72, 0x2e, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x20, 0x3d, 0x20, 0x6e, 0x65, - 0x77, 0x20, 0x41, 0x62, 0x6f, 0x72, 0x74, 0x43, 0x6f, 0x6e, 0x74, 0x72, - 0x6f, 0x6c, 0x6c, 0x65, 0x72, 0x28, 0x29, 0x3b, 0x0a, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x66, 0x6f, 0x72, 0x20, 0x61, 0x77, 0x61, 0x69, 0x74, - 0x20, 0x28, 0x63, 0x6f, 0x6e, 0x73, 0x74, 0x20, 0x63, 0x68, 0x75, 0x6e, - 0x6b, 0x20, 0x6f, 0x66, 0x20, 0x6c, 0x6c, 0x61, 0x6d, 0x61, 0x28, 0x70, - 0x72, 0x6f, 0x6d, 0x70, 0x74, 0x2c, 0x20, 0x6c, 0x6c, 0x61, 0x6d, 0x61, - 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x2c, 0x20, 0x7b, 0x63, 0x6f, 0x6e, - 0x74, 0x72, 0x6f, 0x6c, 0x6c, 0x65, 0x72, 0x3a, 0x20, 0x63, 0x6f, 0x6e, - 0x74, 0x72, 0x6f, 0x6c, 0x6c, 0x65, 0x72, 0x2e, 0x76, 0x61, 0x6c, 0x75, - 0x65, 0x7d, 0x29, 0x29, 0x20, 0x7b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x63, 0x6f, 0x6e, 0x73, 0x74, 0x20, 0x64, 0x61, 0x74, - 0x61, 0x20, 0x3d, 0x20, 0x63, 0x68, 0x75, 0x6e, 0x6b, 0x2e, 0x64, 0x61, - 0x74, 0x61, 0x3b, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x69, 0x66, 0x20, 0x28, 0x64, 0x61, 0x74, 0x61, 0x2e, 0x73, 0x74, - 0x6f, 0x70, 0x29, 0x20, 0x7b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x77, 0x68, 0x69, 0x6c, 0x65, 0x20, 0x28, 0x0a, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x74, 0x4d, 0x65, 0x73, 0x73, 0x61, - 0x67, 0x65, 0x73, 0x2e, 0x6c, 0x65, 0x6e, 0x67, 0x74, 0x68, 0x20, 0x3e, - 0x20, 0x30, 0x20, 0x26, 0x26, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, - 0x74, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x5b, 0x63, 0x75, + 0x20, 0x7d, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x2f, 0x2f, 0x20, 0x73, + 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x20, 0x74, 0x65, 0x6d, 0x70, 0x6c, 0x61, + 0x74, 0x65, 0x20, 0x72, 0x65, 0x70, 0x6c, 0x61, 0x63, 0x65, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x63, 0x6f, 0x6e, 0x73, 0x74, 0x20, 0x74, 0x65, 0x6d, + 0x70, 0x6c, 0x61, 0x74, 0x65, 0x20, 0x3d, 0x20, 0x28, 0x73, 0x74, 0x72, + 0x2c, 0x20, 0x65, 0x78, 0x74, 0x72, 0x61, 0x53, 0x65, 0x74, 0x74, 0x69, + 0x6e, 0x67, 0x73, 0x29, 0x20, 0x3d, 0x3e, 0x20, 0x7b, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x6c, 0x65, 0x74, 0x20, 0x73, 0x65, 0x74, 0x74, + 0x69, 0x6e, 0x67, 0x73, 0x20, 0x3d, 0x20, 0x73, 0x65, 0x73, 0x73, 0x69, + 0x6f, 0x6e, 0x2e, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3b, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x69, 0x66, 0x20, 0x28, 0x65, 0x78, 0x74, 0x72, + 0x61, 0x53, 0x65, 0x74, 0x74, 0x69, 0x6e, 0x67, 0x73, 0x29, 0x20, 0x7b, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x73, 0x65, 0x74, + 0x74, 0x69, 0x6e, 0x67, 0x73, 0x20, 0x3d, 0x20, 0x7b, 0x20, 0x2e, 0x2e, + 0x2e, 0x73, 0x65, 0x74, 0x74, 0x69, 0x6e, 0x67, 0x73, 0x2c, 0x20, 0x2e, + 0x2e, 0x2e, 0x65, 0x78, 0x74, 0x72, 0x61, 0x53, 0x65, 0x74, 0x74, 0x69, + 0x6e, 0x67, 0x73, 0x20, 0x7d, 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x7d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x72, 0x65, 0x74, + 0x75, 0x72, 0x6e, 0x20, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x28, 0x73, + 0x74, 0x72, 0x29, 0x2e, 0x72, 0x65, 0x70, 0x6c, 0x61, 0x63, 0x65, 0x41, + 0x6c, 0x6c, 0x28, 0x2f, 0x5c, 0x7b, 0x5c, 0x7b, 0x28, 0x2e, 0x2a, 0x3f, + 0x29, 0x5c, 0x7d, 0x5c, 0x7d, 0x2f, 0x67, 0x2c, 0x20, 0x28, 0x5f, 0x2c, + 0x20, 0x6b, 0x65, 0x79, 0x29, 0x20, 0x3d, 0x3e, 0x20, 0x74, 0x65, 0x6d, + 0x70, 0x6c, 0x61, 0x74, 0x65, 0x28, 0x73, 0x65, 0x74, 0x74, 0x69, 0x6e, + 0x67, 0x73, 0x5b, 0x6b, 0x65, 0x79, 0x5d, 0x29, 0x29, 0x3b, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x7d, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x61, 0x73, + 0x79, 0x6e, 0x63, 0x20, 0x66, 0x75, 0x6e, 0x63, 0x74, 0x69, 0x6f, 0x6e, + 0x20, 0x72, 0x75, 0x6e, 0x4c, 0x6c, 0x61, 0x6d, 0x61, 0x28, 0x70, 0x72, + 0x6f, 0x6d, 0x70, 0x74, 0x2c, 0x20, 0x6c, 0x6c, 0x61, 0x6d, 0x61, 0x50, + 0x61, 0x72, 0x61, 0x6d, 0x73, 0x2c, 0x20, 0x63, 0x68, 0x61, 0x72, 0x29, + 0x20, 0x7b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x63, 0x6f, 0x6e, + 0x73, 0x74, 0x20, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x74, 0x4d, 0x65, + 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x20, 0x3d, 0x20, 0x5b, 0x5d, 0x3b, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x63, 0x6f, 0x6e, 0x73, 0x74, + 0x20, 0x68, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x20, 0x3d, 0x20, 0x73, + 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x2e, 0x76, 0x61, 0x6c, 0x75, 0x65, + 0x2e, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x3b, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x69, 0x66, 0x20, 0x28, 0x63, + 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x6c, 0x65, 0x72, 0x2e, 0x76, 0x61, + 0x6c, 0x75, 0x65, 0x29, 0x20, 0x7b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x74, 0x68, 0x72, 0x6f, 0x77, 0x20, 0x6e, 0x65, 0x77, + 0x20, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x28, 0x22, 0x61, 0x6c, 0x72, 0x65, + 0x61, 0x64, 0x79, 0x20, 0x72, 0x75, 0x6e, 0x6e, 0x69, 0x6e, 0x67, 0x22, + 0x29, 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x7d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, + 0x6c, 0x65, 0x72, 0x2e, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x20, 0x3d, 0x20, + 0x6e, 0x65, 0x77, 0x20, 0x41, 0x62, 0x6f, 0x72, 0x74, 0x43, 0x6f, 0x6e, + 0x74, 0x72, 0x6f, 0x6c, 0x6c, 0x65, 0x72, 0x28, 0x29, 0x3b, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x66, 0x6f, 0x72, 0x20, 0x61, 0x77, 0x61, + 0x69, 0x74, 0x20, 0x28, 0x63, 0x6f, 0x6e, 0x73, 0x74, 0x20, 0x63, 0x68, + 0x75, 0x6e, 0x6b, 0x20, 0x6f, 0x66, 0x20, 0x6c, 0x6c, 0x61, 0x6d, 0x61, + 0x28, 0x70, 0x72, 0x6f, 0x6d, 0x70, 0x74, 0x2c, 0x20, 0x6c, 0x6c, 0x61, + 0x6d, 0x61, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x2c, 0x20, 0x7b, 0x20, + 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x6c, 0x65, 0x72, 0x3a, 0x20, + 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x6c, 0x65, 0x72, 0x2e, 0x76, + 0x61, 0x6c, 0x75, 0x65, 0x20, 0x7d, 0x29, 0x29, 0x20, 0x7b, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x63, 0x6f, 0x6e, 0x73, 0x74, + 0x20, 0x64, 0x61, 0x74, 0x61, 0x20, 0x3d, 0x20, 0x63, 0x68, 0x75, 0x6e, + 0x6b, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x3b, 0x0a, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x69, 0x66, 0x20, 0x28, 0x64, 0x61, 0x74, + 0x61, 0x2e, 0x73, 0x74, 0x6f, 0x70, 0x29, 0x20, 0x7b, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x77, 0x68, 0x69, 0x6c, + 0x65, 0x20, 0x28, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x74, 0x4d, + 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x2e, 0x6c, 0x65, 0x6e, 0x67, + 0x74, 0x68, 0x20, 0x3e, 0x20, 0x30, 0x20, 0x26, 0x26, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x74, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, - 0x73, 0x2e, 0x6c, 0x65, 0x6e, 0x67, 0x74, 0x68, 0x20, 0x2d, 0x20, 0x31, - 0x5d, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x2e, 0x6d, 0x61, - 0x74, 0x63, 0x68, 0x28, 0x2f, 0x5c, 0x6e, 0x24, 0x2f, 0x29, 0x20, 0x21, - 0x3d, 0x20, 0x6e, 0x75, 0x6c, 0x6c, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x29, 0x20, 0x7b, 0x0a, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x63, - 0x75, 0x72, 0x72, 0x65, 0x6e, 0x74, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, - 0x65, 0x73, 0x2e, 0x70, 0x6f, 0x70, 0x28, 0x29, 0x3b, 0x0a, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x7d, 0x0a, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x74, 0x72, 0x61, 0x6e, - 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, - 0x28, 0x5b, 0x2e, 0x2e, 0x2e, 0x68, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, - 0x2c, 0x20, 0x5b, 0x63, 0x68, 0x61, 0x72, 0x2c, 0x20, 0x63, 0x75, 0x72, - 0x72, 0x65, 0x6e, 0x74, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, - 0x5d, 0x5d, 0x29, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x63, 0x6f, 0x6e, 0x73, 0x6f, 0x6c, 0x65, 0x2e, 0x6c, 0x6f, - 0x67, 0x28, 0x22, 0x43, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x69, 0x6f, - 0x6e, 0x20, 0x66, 0x69, 0x6e, 0x69, 0x73, 0x68, 0x65, 0x64, 0x3a, 0x20, - 0x27, 0x22, 0x2c, 0x20, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x74, 0x4d, - 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x2e, 0x6d, 0x61, 0x70, 0x28, - 0x6d, 0x73, 0x67, 0x20, 0x3d, 0x3e, 0x20, 0x6d, 0x73, 0x67, 0x2e, 0x63, - 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x29, 0x2e, 0x6a, 0x6f, 0x69, 0x6e, - 0x28, 0x27, 0x27, 0x29, 0x2c, 0x20, 0x22, 0x27, 0x2c, 0x20, 0x73, 0x75, - 0x6d, 0x6d, 0x61, 0x72, 0x79, 0x3a, 0x20, 0x22, 0x2c, 0x20, 0x64, 0x61, - 0x74, 0x61, 0x29, 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x7d, 0x20, 0x65, 0x6c, 0x73, 0x65, 0x20, 0x7b, 0x0a, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x63, 0x75, 0x72, 0x72, - 0x65, 0x6e, 0x74, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x2e, - 0x70, 0x75, 0x73, 0x68, 0x28, 0x64, 0x61, 0x74, 0x61, 0x29, 0x3b, 0x0a, + 0x73, 0x5b, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x74, 0x4d, 0x65, 0x73, + 0x73, 0x61, 0x67, 0x65, 0x73, 0x2e, 0x6c, 0x65, 0x6e, 0x67, 0x74, 0x68, + 0x20, 0x2d, 0x20, 0x31, 0x5d, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, + 0x74, 0x2e, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x28, 0x2f, 0x5c, 0x6e, 0x24, + 0x2f, 0x29, 0x20, 0x21, 0x3d, 0x20, 0x6e, 0x75, 0x6c, 0x6c, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x29, 0x20, 0x7b, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x74, 0x4d, 0x65, 0x73, 0x73, + 0x61, 0x67, 0x65, 0x73, 0x2e, 0x70, 0x6f, 0x70, 0x28, 0x29, 0x3b, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x7d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x28, 0x5b, 0x2e, 0x2e, 0x2e, 0x68, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x2c, 0x20, 0x5b, 0x63, 0x68, 0x61, 0x72, 0x2c, 0x20, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x74, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x5d, 0x5d, 0x29, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x7d, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x69, 0x66, 0x20, 0x28, 0x64, 0x61, 0x74, 0x61, 0x2e, 0x74, 0x69, - 0x6d, 0x69, 0x6e, 0x67, 0x73, 0x29, 0x20, 0x7b, 0x0a, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x6c, 0x6c, 0x61, 0x6d, 0x61, - 0x53, 0x74, 0x61, 0x74, 0x73, 0x2e, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x20, - 0x3d, 0x20, 0x64, 0x61, 0x74, 0x61, 0x2e, 0x74, 0x69, 0x6d, 0x69, 0x6e, - 0x67, 0x73, 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x7d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x7d, 0x0a, 0x0a, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, - 0x6c, 0x65, 0x72, 0x2e, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x20, 0x3d, 0x20, - 0x6e, 0x75, 0x6c, 0x6c, 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x7d, 0x0a, - 0x0a, 0x20, 0x20, 0x20, 0x20, 0x2f, 0x2f, 0x20, 0x73, 0x65, 0x6e, 0x64, - 0x20, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x20, 0x74, 0x6f, 0x20, - 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x63, - 0x6f, 0x6e, 0x73, 0x74, 0x20, 0x63, 0x68, 0x61, 0x74, 0x20, 0x3d, 0x20, - 0x61, 0x73, 0x79, 0x6e, 0x63, 0x20, 0x28, 0x6d, 0x73, 0x67, 0x29, 0x20, - 0x3d, 0x3e, 0x20, 0x7b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x69, - 0x66, 0x20, 0x28, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x6c, 0x65, - 0x72, 0x2e, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x29, 0x20, 0x7b, 0x0a, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x63, 0x6f, 0x6e, 0x73, 0x6f, - 0x6c, 0x65, 0x2e, 0x6c, 0x6f, 0x67, 0x28, 0x27, 0x61, 0x6c, 0x72, 0x65, - 0x61, 0x64, 0x79, 0x20, 0x72, 0x75, 0x6e, 0x6e, 0x69, 0x6e, 0x67, 0x2e, - 0x2e, 0x2e, 0x27, 0x29, 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x72, 0x65, 0x74, 0x75, 0x72, 0x6e, 0x3b, 0x0a, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x7d, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x55, - 0x70, 0x64, 0x61, 0x74, 0x65, 0x28, 0x5b, 0x2e, 0x2e, 0x2e, 0x73, 0x65, + 0x20, 0x20, 0x20, 0x20, 0x63, 0x6f, 0x6e, 0x73, 0x6f, 0x6c, 0x65, 0x2e, + 0x6c, 0x6f, 0x67, 0x28, 0x22, 0x43, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, + 0x69, 0x6f, 0x6e, 0x20, 0x66, 0x69, 0x6e, 0x69, 0x73, 0x68, 0x65, 0x64, + 0x3a, 0x20, 0x27, 0x22, 0x2c, 0x20, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, + 0x74, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x2e, 0x6d, 0x61, + 0x70, 0x28, 0x6d, 0x73, 0x67, 0x20, 0x3d, 0x3e, 0x20, 0x6d, 0x73, 0x67, + 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x29, 0x2e, 0x6a, 0x6f, + 0x69, 0x6e, 0x28, 0x27, 0x27, 0x29, 0x2c, 0x20, 0x22, 0x27, 0x2c, 0x20, + 0x73, 0x75, 0x6d, 0x6d, 0x61, 0x72, 0x79, 0x3a, 0x20, 0x22, 0x2c, 0x20, + 0x64, 0x61, 0x74, 0x61, 0x29, 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x7d, 0x20, 0x65, 0x6c, 0x73, 0x65, 0x20, 0x7b, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x63, 0x75, + 0x72, 0x72, 0x65, 0x6e, 0x74, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, + 0x73, 0x2e, 0x70, 0x75, 0x73, 0x68, 0x28, 0x64, 0x61, 0x74, 0x61, 0x29, + 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x73, 0x6c, 0x6f, 0x74, 0x5f, 0x69, 0x64, 0x20, 0x3d, 0x20, 0x64, 0x61, + 0x74, 0x61, 0x2e, 0x73, 0x6c, 0x6f, 0x74, 0x5f, 0x69, 0x64, 0x3b, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x69, 0x66, + 0x20, 0x28, 0x73, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x65, 0x64, 0x5f, 0x69, + 0x6d, 0x61, 0x67, 0x65, 0x20, 0x26, 0x26, 0x20, 0x21, 0x64, 0x61, 0x74, + 0x61, 0x2e, 0x6d, 0x75, 0x6c, 0x74, 0x69, 0x6d, 0x6f, 0x64, 0x61, 0x6c, + 0x29, 0x20, 0x7b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x61, 0x6c, 0x65, 0x72, 0x74, 0x28, 0x22, 0x54, + 0x68, 0x65, 0x20, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x20, 0x77, 0x61, + 0x73, 0x20, 0x6e, 0x6f, 0x74, 0x20, 0x63, 0x6f, 0x6d, 0x70, 0x69, 0x6c, + 0x65, 0x64, 0x20, 0x66, 0x6f, 0x72, 0x20, 0x6d, 0x75, 0x6c, 0x74, 0x69, + 0x6d, 0x6f, 0x64, 0x61, 0x6c, 0x20, 0x6f, 0x72, 0x20, 0x74, 0x68, 0x65, + 0x20, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x20, 0x70, 0x72, 0x6f, 0x6a, 0x65, + 0x63, 0x74, 0x6f, 0x72, 0x20, 0x63, 0x61, 0x6e, 0x27, 0x74, 0x20, 0x62, + 0x65, 0x20, 0x6c, 0x6f, 0x61, 0x64, 0x65, 0x64, 0x2e, 0x22, 0x29, 0x3b, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x72, 0x65, 0x74, 0x75, 0x72, 0x6e, 0x3b, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x7d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x74, 0x72, 0x61, 0x6e, 0x73, + 0x63, 0x72, 0x69, 0x70, 0x74, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x28, + 0x5b, 0x2e, 0x2e, 0x2e, 0x68, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x2c, + 0x20, 0x5b, 0x63, 0x68, 0x61, 0x72, 0x2c, 0x20, 0x63, 0x75, 0x72, 0x72, + 0x65, 0x6e, 0x74, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x5d, + 0x5d, 0x29, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x7d, + 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x69, 0x66, + 0x20, 0x28, 0x64, 0x61, 0x74, 0x61, 0x2e, 0x74, 0x69, 0x6d, 0x69, 0x6e, + 0x67, 0x73, 0x29, 0x20, 0x7b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x6c, 0x6c, 0x61, 0x6d, 0x61, 0x53, 0x74, 0x61, + 0x74, 0x73, 0x2e, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x20, 0x3d, 0x20, 0x64, + 0x61, 0x74, 0x61, 0x2e, 0x74, 0x69, 0x6d, 0x69, 0x6e, 0x67, 0x73, 0x3b, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x7d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x7d, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x6c, 0x65, 0x72, + 0x2e, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x20, 0x3d, 0x20, 0x6e, 0x75, 0x6c, + 0x6c, 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x7d, 0x0a, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x2f, 0x2f, 0x20, 0x73, 0x65, 0x6e, 0x64, 0x20, 0x6d, 0x65, + 0x73, 0x73, 0x61, 0x67, 0x65, 0x20, 0x74, 0x6f, 0x20, 0x73, 0x65, 0x72, + 0x76, 0x65, 0x72, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x63, 0x6f, 0x6e, 0x73, + 0x74, 0x20, 0x63, 0x68, 0x61, 0x74, 0x20, 0x3d, 0x20, 0x61, 0x73, 0x79, + 0x6e, 0x63, 0x20, 0x28, 0x6d, 0x73, 0x67, 0x29, 0x20, 0x3d, 0x3e, 0x20, + 0x7b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x69, 0x66, 0x20, 0x28, + 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x6c, 0x65, 0x72, 0x2e, 0x76, + 0x61, 0x6c, 0x75, 0x65, 0x29, 0x20, 0x7b, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x63, 0x6f, 0x6e, 0x73, 0x6f, 0x6c, 0x65, 0x2e, + 0x6c, 0x6f, 0x67, 0x28, 0x27, 0x61, 0x6c, 0x72, 0x65, 0x61, 0x64, 0x79, + 0x20, 0x72, 0x75, 0x6e, 0x6e, 0x69, 0x6e, 0x67, 0x2e, 0x2e, 0x2e, 0x27, + 0x29, 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x72, + 0x65, 0x74, 0x75, 0x72, 0x6e, 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x7d, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x74, 0x72, + 0x61, 0x6e, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x55, 0x70, 0x64, 0x61, + 0x74, 0x65, 0x28, 0x5b, 0x2e, 0x2e, 0x2e, 0x73, 0x65, 0x73, 0x73, 0x69, + 0x6f, 0x6e, 0x2e, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x2e, 0x74, 0x72, 0x61, + 0x6e, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x2c, 0x20, 0x5b, 0x22, 0x7b, + 0x7b, 0x75, 0x73, 0x65, 0x72, 0x7d, 0x7d, 0x22, 0x2c, 0x20, 0x6d, 0x73, + 0x67, 0x5d, 0x5d, 0x29, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x6c, 0x65, 0x74, 0x20, 0x70, 0x72, 0x6f, 0x6d, 0x70, 0x74, 0x20, 0x3d, + 0x20, 0x74, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x28, 0x73, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x2e, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x2e, - 0x74, 0x72, 0x61, 0x6e, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x2c, 0x20, - 0x5b, 0x22, 0x7b, 0x7b, 0x75, 0x73, 0x65, 0x72, 0x7d, 0x7d, 0x22, 0x2c, - 0x20, 0x6d, 0x73, 0x67, 0x5d, 0x5d, 0x29, 0x0a, 0x0a, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x63, 0x6f, 0x6e, 0x73, 0x74, 0x20, 0x70, 0x72, 0x6f, - 0x6d, 0x70, 0x74, 0x20, 0x3d, 0x20, 0x74, 0x65, 0x6d, 0x70, 0x6c, 0x61, - 0x74, 0x65, 0x28, 0x73, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x2e, 0x76, - 0x61, 0x6c, 0x75, 0x65, 0x2e, 0x74, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, - 0x65, 0x2c, 0x20, 0x7b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x3a, 0x20, 0x6d, 0x73, - 0x67, 0x2c, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x68, - 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x3a, 0x20, 0x73, 0x65, 0x73, 0x73, - 0x69, 0x6f, 0x6e, 0x2e, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x2e, 0x74, 0x72, - 0x61, 0x6e, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x2e, 0x66, 0x6c, 0x61, - 0x74, 0x4d, 0x61, 0x70, 0x28, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x28, 0x5b, 0x6e, 0x61, 0x6d, 0x65, 0x2c, 0x20, - 0x64, 0x61, 0x74, 0x61, 0x5d, 0x29, 0x20, 0x3d, 0x3e, 0x0a, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x74, 0x65, - 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x28, 0x0a, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x73, 0x65, - 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x2e, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x2e, - 0x68, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x54, 0x65, 0x6d, 0x70, 0x6c, - 0x61, 0x74, 0x65, 0x2c, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x7b, 0x0a, 0x20, 0x20, 0x20, + 0x74, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x2c, 0x20, 0x7b, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x6d, 0x65, 0x73, 0x73, + 0x61, 0x67, 0x65, 0x3a, 0x20, 0x6d, 0x73, 0x67, 0x2c, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x68, 0x69, 0x73, 0x74, 0x6f, 0x72, + 0x79, 0x3a, 0x20, 0x73, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x2e, 0x76, + 0x61, 0x6c, 0x75, 0x65, 0x2e, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x63, 0x72, + 0x69, 0x70, 0x74, 0x2e, 0x66, 0x6c, 0x61, 0x74, 0x4d, 0x61, 0x70, 0x28, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x28, + 0x5b, 0x6e, 0x61, 0x6d, 0x65, 0x2c, 0x20, 0x64, 0x61, 0x74, 0x61, 0x5d, + 0x29, 0x20, 0x3d, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x74, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, + 0x65, 0x28, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x73, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, + 0x2e, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x2e, 0x68, 0x69, 0x73, 0x74, 0x6f, + 0x72, 0x79, 0x54, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x2c, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x2c, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x6d, - 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x3a, 0x20, 0x41, 0x72, 0x72, 0x61, - 0x79, 0x2e, 0x69, 0x73, 0x41, 0x72, 0x72, 0x61, 0x79, 0x28, 0x64, 0x61, - 0x74, 0x61, 0x29, 0x20, 0x3f, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x7b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x6e, 0x61, 0x6d, 0x65, + 0x2c, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, + 0x65, 0x3a, 0x20, 0x41, 0x72, 0x72, 0x61, 0x79, 0x2e, 0x69, 0x73, 0x41, + 0x72, 0x72, 0x61, 0x79, 0x28, 0x64, 0x61, 0x74, 0x61, 0x29, 0x20, 0x3f, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x64, 0x61, 0x74, 0x61, 0x2e, + 0x6d, 0x61, 0x70, 0x28, 0x6d, 0x73, 0x67, 0x20, 0x3d, 0x3e, 0x20, 0x6d, + 0x73, 0x67, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x29, 0x2e, + 0x6a, 0x6f, 0x69, 0x6e, 0x28, 0x27, 0x27, 0x29, 0x2e, 0x72, 0x65, 0x70, + 0x6c, 0x61, 0x63, 0x65, 0x28, 0x2f, 0x5e, 0x5c, 0x73, 0x2f, 0x2c, 0x20, + 0x27, 0x27, 0x29, 0x20, 0x3a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x64, 0x61, 0x74, 0x61, 0x2e, 0x6d, 0x61, 0x70, 0x28, 0x6d, 0x73, 0x67, - 0x20, 0x3d, 0x3e, 0x20, 0x6d, 0x73, 0x67, 0x2e, 0x63, 0x6f, 0x6e, 0x74, - 0x65, 0x6e, 0x74, 0x29, 0x2e, 0x6a, 0x6f, 0x69, 0x6e, 0x28, 0x27, 0x27, - 0x29, 0x2e, 0x72, 0x65, 0x70, 0x6c, 0x61, 0x63, 0x65, 0x28, 0x2f, 0x5e, - 0x5c, 0x73, 0x2f, 0x2c, 0x20, 0x27, 0x27, 0x29, 0x20, 0x3a, 0x0a, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x64, 0x61, 0x74, 0x61, 0x2c, 0x0a, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x7d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x29, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x29, 0x2e, 0x6a, 0x6f, 0x69, 0x6e, 0x28, 0x22, 0x5c, 0x6e, 0x22, - 0x29, 0x2c, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x7d, 0x29, 0x3b, - 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x61, 0x77, 0x61, 0x69, + 0x64, 0x61, 0x74, 0x61, 0x2c, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x7d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x29, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x29, 0x2e, 0x6a, 0x6f, + 0x69, 0x6e, 0x28, 0x22, 0x5c, 0x6e, 0x22, 0x29, 0x2c, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x7d, 0x29, 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x69, 0x66, 0x20, 0x28, 0x73, 0x65, 0x6c, 0x65, 0x63, 0x74, + 0x65, 0x64, 0x5f, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x29, 0x20, 0x7b, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x70, 0x72, 0x6f, 0x6d, + 0x70, 0x74, 0x20, 0x3d, 0x20, 0x60, 0x41, 0x20, 0x63, 0x68, 0x61, 0x74, + 0x20, 0x62, 0x65, 0x74, 0x77, 0x65, 0x65, 0x6e, 0x20, 0x61, 0x20, 0x63, + 0x75, 0x72, 0x69, 0x6f, 0x75, 0x73, 0x20, 0x68, 0x75, 0x6d, 0x61, 0x6e, + 0x20, 0x61, 0x6e, 0x64, 0x20, 0x61, 0x6e, 0x20, 0x61, 0x72, 0x74, 0x69, + 0x66, 0x69, 0x63, 0x69, 0x61, 0x6c, 0x20, 0x69, 0x6e, 0x74, 0x65, 0x6c, + 0x6c, 0x69, 0x67, 0x65, 0x6e, 0x63, 0x65, 0x20, 0x61, 0x73, 0x73, 0x69, + 0x73, 0x74, 0x61, 0x6e, 0x74, 0x2e, 0x20, 0x54, 0x68, 0x65, 0x20, 0x61, + 0x73, 0x73, 0x69, 0x73, 0x74, 0x61, 0x6e, 0x74, 0x20, 0x67, 0x69, 0x76, + 0x65, 0x73, 0x20, 0x68, 0x65, 0x6c, 0x70, 0x66, 0x75, 0x6c, 0x2c, 0x20, + 0x64, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x65, 0x64, 0x2c, 0x20, 0x61, 0x6e, + 0x64, 0x20, 0x70, 0x6f, 0x6c, 0x69, 0x74, 0x65, 0x20, 0x61, 0x6e, 0x73, + 0x77, 0x65, 0x72, 0x73, 0x20, 0x74, 0x6f, 0x20, 0x74, 0x68, 0x65, 0x20, + 0x68, 0x75, 0x6d, 0x61, 0x6e, 0x27, 0x73, 0x20, 0x71, 0x75, 0x65, 0x73, + 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2e, 0x5c, 0x6e, 0x55, 0x53, 0x45, 0x52, + 0x3a, 0x5b, 0x69, 0x6d, 0x67, 0x2d, 0x31, 0x30, 0x5d, 0x24, 0x7b, 0x6d, + 0x73, 0x67, 0x7d, 0x5c, 0x6e, 0x41, 0x53, 0x53, 0x49, 0x53, 0x54, 0x41, + 0x4e, 0x54, 0x3a, 0x60, 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x7d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x61, 0x77, 0x61, 0x69, 0x74, 0x20, 0x72, 0x75, 0x6e, 0x4c, 0x6c, 0x61, 0x6d, 0x61, 0x28, 0x70, 0x72, 0x6f, 0x6d, 0x70, 0x74, 0x2c, 0x20, 0x7b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x2e, 0x2e, 0x2e, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x2e, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x2c, 0x0a, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x73, 0x74, 0x6f, 0x70, 0x3a, 0x20, - 0x5b, 0x22, 0x3c, 0x2f, 0x73, 0x3e, 0x22, 0x2c, 0x20, 0x74, 0x65, 0x6d, - 0x70, 0x6c, 0x61, 0x74, 0x65, 0x28, 0x22, 0x7b, 0x7b, 0x63, 0x68, 0x61, - 0x72, 0x7d, 0x7d, 0x3a, 0x22, 0x29, 0x2c, 0x20, 0x74, 0x65, 0x6d, 0x70, - 0x6c, 0x61, 0x74, 0x65, 0x28, 0x22, 0x7b, 0x7b, 0x75, 0x73, 0x65, 0x72, - 0x7d, 0x7d, 0x3a, 0x22, 0x29, 0x5d, 0x2c, 0x0a, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x7d, 0x2c, 0x20, 0x22, 0x7b, 0x7b, 0x63, 0x68, 0x61, 0x72, - 0x7d, 0x7d, 0x22, 0x29, 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x7d, 0x0a, - 0x0a, 0x20, 0x20, 0x20, 0x20, 0x63, 0x6f, 0x6e, 0x73, 0x74, 0x20, 0x72, - 0x75, 0x6e, 0x43, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x69, 0x6f, 0x6e, - 0x20, 0x3d, 0x20, 0x61, 0x73, 0x79, 0x6e, 0x63, 0x20, 0x28, 0x29, 0x20, - 0x3d, 0x3e, 0x20, 0x7b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x69, - 0x66, 0x20, 0x28, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x6c, 0x65, - 0x72, 0x2e, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x29, 0x20, 0x7b, 0x0a, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x63, 0x6f, 0x6e, 0x73, 0x6f, - 0x6c, 0x65, 0x2e, 0x6c, 0x6f, 0x67, 0x28, 0x27, 0x61, 0x6c, 0x72, 0x65, - 0x61, 0x64, 0x79, 0x20, 0x72, 0x75, 0x6e, 0x6e, 0x69, 0x6e, 0x67, 0x2e, - 0x2e, 0x2e, 0x27, 0x29, 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x72, 0x65, 0x74, 0x75, 0x72, 0x6e, 0x3b, 0x0a, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x7d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x63, 0x6f, 0x6e, 0x73, 0x74, 0x20, 0x7b, 0x70, 0x72, 0x6f, 0x6d, 0x70, - 0x74, 0x7d, 0x20, 0x3d, 0x20, 0x73, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, - 0x2e, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, - 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x28, 0x5b, 0x2e, 0x2e, 0x2e, 0x73, - 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x2e, 0x76, 0x61, 0x6c, 0x75, 0x65, - 0x2e, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x2c, - 0x20, 0x5b, 0x22, 0x22, 0x2c, 0x20, 0x70, 0x72, 0x6f, 0x6d, 0x70, 0x74, - 0x5d, 0x5d, 0x29, 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x61, - 0x77, 0x61, 0x69, 0x74, 0x20, 0x72, 0x75, 0x6e, 0x4c, 0x6c, 0x61, 0x6d, - 0x61, 0x28, 0x70, 0x72, 0x6f, 0x6d, 0x70, 0x74, 0x2c, 0x20, 0x7b, 0x0a, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x2e, 0x2e, 0x2e, 0x70, - 0x61, 0x72, 0x61, 0x6d, 0x73, 0x2e, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x2c, - 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x73, 0x74, 0x6f, - 0x70, 0x3a, 0x20, 0x5b, 0x5d, 0x2c, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x7d, 0x2c, 0x20, 0x22, 0x22, 0x29, 0x3b, 0x0a, 0x20, 0x20, 0x20, - 0x20, 0x7d, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x63, 0x6f, 0x6e, 0x73, - 0x74, 0x20, 0x73, 0x74, 0x6f, 0x70, 0x20, 0x3d, 0x20, 0x28, 0x65, 0x29, - 0x20, 0x3d, 0x3e, 0x20, 0x7b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x65, 0x2e, 0x70, 0x72, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x44, 0x65, 0x66, - 0x61, 0x75, 0x6c, 0x74, 0x28, 0x29, 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x69, 0x66, 0x20, 0x28, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x6f, - 0x6c, 0x6c, 0x65, 0x72, 0x2e, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x29, 0x20, - 0x7b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x63, 0x6f, - 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x6c, 0x65, 0x72, 0x2e, 0x76, 0x61, 0x6c, - 0x75, 0x65, 0x2e, 0x61, 0x62, 0x6f, 0x72, 0x74, 0x28, 0x29, 0x3b, 0x0a, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x63, 0x6f, 0x6e, 0x74, - 0x72, 0x6f, 0x6c, 0x6c, 0x65, 0x72, 0x2e, 0x76, 0x61, 0x6c, 0x75, 0x65, - 0x20, 0x3d, 0x20, 0x6e, 0x75, 0x6c, 0x6c, 0x3b, 0x0a, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x7d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x7d, 0x0a, 0x0a, - 0x20, 0x20, 0x20, 0x20, 0x63, 0x6f, 0x6e, 0x73, 0x74, 0x20, 0x72, 0x65, - 0x73, 0x65, 0x74, 0x20, 0x3d, 0x20, 0x28, 0x65, 0x29, 0x20, 0x3d, 0x3e, - 0x20, 0x7b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x73, 0x74, 0x6f, - 0x70, 0x28, 0x65, 0x29, 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x74, 0x72, 0x61, 0x6e, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x55, 0x70, - 0x64, 0x61, 0x74, 0x65, 0x28, 0x5b, 0x5d, 0x29, 0x3b, 0x0a, 0x20, 0x20, - 0x20, 0x20, 0x7d, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x66, 0x75, 0x6e, - 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, - 0x65, 0x49, 0x6e, 0x70, 0x75, 0x74, 0x28, 0x29, 0x20, 0x7b, 0x0a, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x63, 0x6f, 0x6e, 0x73, 0x74, 0x20, 0x6d, - 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x20, 0x3d, 0x20, 0x75, 0x73, 0x65, - 0x53, 0x69, 0x67, 0x6e, 0x61, 0x6c, 0x28, 0x22, 0x22, 0x29, 0x0a, 0x0a, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x63, 0x6f, 0x6e, 0x73, 0x74, 0x20, - 0x73, 0x75, 0x62, 0x6d, 0x69, 0x74, 0x20, 0x3d, 0x20, 0x28, 0x65, 0x29, - 0x20, 0x3d, 0x3e, 0x20, 0x7b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x73, 0x74, 0x6f, 0x70, 0x28, 0x65, 0x29, 0x3b, 0x0a, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x63, 0x68, 0x61, 0x74, 0x28, - 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x61, 0x6c, 0x75, - 0x65, 0x29, 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x61, 0x6c, 0x75, - 0x65, 0x20, 0x3d, 0x20, 0x22, 0x22, 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x7d, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x63, - 0x6f, 0x6e, 0x73, 0x74, 0x20, 0x65, 0x6e, 0x74, 0x65, 0x72, 0x53, 0x75, - 0x62, 0x6d, 0x69, 0x74, 0x73, 0x20, 0x3d, 0x20, 0x28, 0x65, 0x76, 0x65, - 0x6e, 0x74, 0x29, 0x20, 0x3d, 0x3e, 0x20, 0x7b, 0x0a, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x69, 0x66, 0x20, 0x28, 0x65, 0x76, 0x65, - 0x6e, 0x74, 0x2e, 0x77, 0x68, 0x69, 0x63, 0x68, 0x20, 0x3d, 0x3d, 0x3d, - 0x20, 0x31, 0x33, 0x20, 0x26, 0x26, 0x20, 0x21, 0x65, 0x76, 0x65, 0x6e, - 0x74, 0x2e, 0x73, 0x68, 0x69, 0x66, 0x74, 0x4b, 0x65, 0x79, 0x29, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x73, 0x6c, 0x6f, 0x74, 0x5f, 0x69, + 0x64, 0x3a, 0x20, 0x73, 0x6c, 0x6f, 0x74, 0x5f, 0x69, 0x64, 0x2c, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x73, 0x74, 0x6f, 0x70, + 0x3a, 0x20, 0x5b, 0x22, 0x3c, 0x2f, 0x73, 0x3e, 0x22, 0x2c, 0x20, 0x74, + 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x28, 0x22, 0x7b, 0x7b, 0x63, + 0x68, 0x61, 0x72, 0x7d, 0x7d, 0x3a, 0x22, 0x29, 0x2c, 0x20, 0x74, 0x65, + 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x28, 0x22, 0x7b, 0x7b, 0x75, 0x73, + 0x65, 0x72, 0x7d, 0x7d, 0x3a, 0x22, 0x29, 0x5d, 0x2c, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x7d, 0x2c, 0x20, 0x22, 0x7b, 0x7b, 0x63, 0x68, + 0x61, 0x72, 0x7d, 0x7d, 0x22, 0x29, 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x7d, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x63, 0x6f, 0x6e, 0x73, 0x74, + 0x20, 0x72, 0x75, 0x6e, 0x43, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x69, + 0x6f, 0x6e, 0x20, 0x3d, 0x20, 0x61, 0x73, 0x79, 0x6e, 0x63, 0x20, 0x28, + 0x29, 0x20, 0x3d, 0x3e, 0x20, 0x7b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x69, 0x66, 0x20, 0x28, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, + 0x6c, 0x65, 0x72, 0x2e, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x29, 0x20, 0x7b, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x63, 0x6f, 0x6e, + 0x73, 0x6f, 0x6c, 0x65, 0x2e, 0x6c, 0x6f, 0x67, 0x28, 0x27, 0x61, 0x6c, + 0x72, 0x65, 0x61, 0x64, 0x79, 0x20, 0x72, 0x75, 0x6e, 0x6e, 0x69, 0x6e, + 0x67, 0x2e, 0x2e, 0x2e, 0x27, 0x29, 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x72, 0x65, 0x74, 0x75, 0x72, 0x6e, 0x3b, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x7d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x63, 0x6f, 0x6e, 0x73, 0x74, 0x20, 0x7b, 0x20, 0x70, 0x72, + 0x6f, 0x6d, 0x70, 0x74, 0x20, 0x7d, 0x20, 0x3d, 0x20, 0x73, 0x65, 0x73, + 0x73, 0x69, 0x6f, 0x6e, 0x2e, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3b, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x63, + 0x72, 0x69, 0x70, 0x74, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x28, 0x5b, + 0x2e, 0x2e, 0x2e, 0x73, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x2e, 0x76, + 0x61, 0x6c, 0x75, 0x65, 0x2e, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x63, 0x72, + 0x69, 0x70, 0x74, 0x2c, 0x20, 0x5b, 0x22, 0x22, 0x2c, 0x20, 0x70, 0x72, + 0x6f, 0x6d, 0x70, 0x74, 0x5d, 0x5d, 0x29, 0x3b, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x61, 0x77, 0x61, 0x69, 0x74, 0x20, 0x72, 0x75, 0x6e, + 0x4c, 0x6c, 0x61, 0x6d, 0x61, 0x28, 0x70, 0x72, 0x6f, 0x6d, 0x70, 0x74, + 0x2c, 0x20, 0x7b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x2e, 0x2e, 0x2e, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x2e, 0x76, 0x61, + 0x6c, 0x75, 0x65, 0x2c, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x73, 0x6c, 0x6f, 0x74, 0x5f, 0x69, 0x64, 0x3a, 0x20, 0x73, 0x6c, + 0x6f, 0x74, 0x5f, 0x69, 0x64, 0x2c, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x73, 0x74, 0x6f, 0x70, 0x3a, 0x20, 0x5b, 0x5d, 0x2c, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x7d, 0x2c, 0x20, 0x22, 0x22, + 0x29, 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x7d, 0x0a, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x63, 0x6f, 0x6e, 0x73, 0x74, 0x20, 0x73, 0x74, 0x6f, 0x70, + 0x20, 0x3d, 0x20, 0x28, 0x65, 0x29, 0x20, 0x3d, 0x3e, 0x20, 0x7b, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x65, 0x2e, 0x70, 0x72, 0x65, 0x76, + 0x65, 0x6e, 0x74, 0x44, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x28, 0x29, + 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x69, 0x66, 0x20, 0x28, + 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x6c, 0x65, 0x72, 0x2e, 0x76, + 0x61, 0x6c, 0x75, 0x65, 0x29, 0x20, 0x7b, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x6c, + 0x65, 0x72, 0x2e, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x2e, 0x61, 0x62, 0x6f, + 0x72, 0x74, 0x28, 0x29, 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x6c, 0x65, 0x72, + 0x2e, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x20, 0x3d, 0x20, 0x6e, 0x75, 0x6c, + 0x6c, 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x7d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x7d, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x63, 0x6f, + 0x6e, 0x73, 0x74, 0x20, 0x72, 0x65, 0x73, 0x65, 0x74, 0x20, 0x3d, 0x20, + 0x28, 0x65, 0x29, 0x20, 0x3d, 0x3e, 0x20, 0x7b, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x73, 0x74, 0x6f, 0x70, 0x28, 0x65, 0x29, 0x3b, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x63, + 0x72, 0x69, 0x70, 0x74, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x28, 0x5b, + 0x5d, 0x29, 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x7d, 0x0a, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x63, 0x6f, 0x6e, 0x73, 0x74, 0x20, 0x75, 0x70, 0x6c, + 0x6f, 0x61, 0x64, 0x49, 0x6d, 0x61, 0x67, 0x65, 0x20, 0x3d, 0x20, 0x28, + 0x65, 0x29, 0x20, 0x3d, 0x3e, 0x20, 0x7b, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x65, 0x2e, 0x70, 0x72, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x44, + 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x28, 0x29, 0x3b, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, + 0x2e, 0x67, 0x65, 0x74, 0x45, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x42, + 0x79, 0x49, 0x64, 0x28, 0x22, 0x66, 0x69, 0x6c, 0x65, 0x49, 0x6e, 0x70, + 0x75, 0x74, 0x22, 0x29, 0x2e, 0x63, 0x6c, 0x69, 0x63, 0x6b, 0x28, 0x29, + 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x64, 0x6f, 0x63, 0x75, + 0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x67, 0x65, 0x74, 0x45, 0x6c, 0x65, 0x6d, + 0x65, 0x6e, 0x74, 0x42, 0x79, 0x49, 0x64, 0x28, 0x22, 0x66, 0x69, 0x6c, + 0x65, 0x49, 0x6e, 0x70, 0x75, 0x74, 0x22, 0x29, 0x2e, 0x61, 0x64, 0x64, + 0x45, 0x76, 0x65, 0x6e, 0x74, 0x4c, 0x69, 0x73, 0x74, 0x65, 0x6e, 0x65, + 0x72, 0x28, 0x22, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x22, 0x2c, 0x20, + 0x66, 0x75, 0x6e, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x28, 0x65, 0x76, + 0x65, 0x6e, 0x74, 0x29, 0x20, 0x7b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x63, 0x6f, 0x6e, 0x73, 0x74, 0x20, 0x73, 0x65, 0x6c, + 0x65, 0x63, 0x74, 0x65, 0x64, 0x46, 0x69, 0x6c, 0x65, 0x20, 0x3d, 0x20, + 0x65, 0x76, 0x65, 0x6e, 0x74, 0x2e, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, + 0x2e, 0x66, 0x69, 0x6c, 0x65, 0x73, 0x5b, 0x30, 0x5d, 0x3b, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x69, 0x66, 0x20, 0x28, 0x73, + 0x65, 0x6c, 0x65, 0x63, 0x74, 0x65, 0x64, 0x46, 0x69, 0x6c, 0x65, 0x29, + 0x20, 0x7b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x63, 0x6f, 0x6e, 0x73, 0x74, 0x20, 0x72, 0x65, 0x61, 0x64, 0x65, + 0x72, 0x20, 0x3d, 0x20, 0x6e, 0x65, 0x77, 0x20, 0x46, 0x69, 0x6c, 0x65, + 0x52, 0x65, 0x61, 0x64, 0x65, 0x72, 0x28, 0x29, 0x3b, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x72, 0x65, 0x61, 0x64, + 0x65, 0x72, 0x2e, 0x6f, 0x6e, 0x6c, 0x6f, 0x61, 0x64, 0x20, 0x3d, 0x20, + 0x66, 0x75, 0x6e, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x28, 0x29, 0x20, 0x7b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x73, 0x75, 0x62, 0x6d, 0x69, 0x74, 0x28, 0x65, 0x76, 0x65, 0x6e, 0x74, - 0x29, 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x7d, - 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x7d, 0x0a, 0x0a, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x72, 0x65, 0x74, 0x75, 0x72, 0x6e, 0x20, 0x68, - 0x74, 0x6d, 0x6c, 0x60, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x3c, 0x66, 0x6f, 0x72, 0x6d, 0x20, 0x6f, 0x6e, 0x73, 0x75, 0x62, - 0x6d, 0x69, 0x74, 0x3d, 0x24, 0x7b, 0x73, 0x75, 0x62, 0x6d, 0x69, 0x74, - 0x7d, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x3c, 0x64, 0x69, 0x76, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x74, 0x65, 0x78, 0x74, - 0x61, 0x72, 0x65, 0x61, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x63, 0x6c, 0x61, 0x73, - 0x73, 0x4e, 0x61, 0x6d, 0x65, 0x3d, 0x24, 0x7b, 0x67, 0x65, 0x6e, 0x65, - 0x72, 0x61, 0x74, 0x69, 0x6e, 0x67, 0x2e, 0x76, 0x61, 0x6c, 0x75, 0x65, - 0x20, 0x3f, 0x20, 0x22, 0x6c, 0x6f, 0x61, 0x64, 0x69, 0x6e, 0x67, 0x22, - 0x20, 0x3a, 0x20, 0x6e, 0x75, 0x6c, 0x6c, 0x7d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x63, 0x6f, 0x6e, 0x73, 0x74, 0x20, 0x69, 0x6d, 0x61, 0x67, + 0x65, 0x5f, 0x64, 0x61, 0x74, 0x61, 0x20, 0x3d, 0x20, 0x72, 0x65, 0x61, + 0x64, 0x65, 0x72, 0x2e, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x6f, 0x6e, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x3d, 0x24, 0x7b, 0x28, 0x65, - 0x29, 0x20, 0x3d, 0x3e, 0x20, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, - 0x2e, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x20, 0x3d, 0x20, 0x65, 0x2e, 0x74, - 0x61, 0x72, 0x67, 0x65, 0x74, 0x2e, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x7d, - 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x6f, 0x6e, 0x6b, 0x65, 0x79, 0x70, 0x72, 0x65, - 0x73, 0x73, 0x3d, 0x24, 0x7b, 0x65, 0x6e, 0x74, 0x65, 0x72, 0x53, 0x75, - 0x62, 0x6d, 0x69, 0x74, 0x73, 0x7d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x70, 0x6c, - 0x61, 0x63, 0x65, 0x68, 0x6f, 0x6c, 0x64, 0x65, 0x72, 0x3d, 0x22, 0x53, - 0x61, 0x79, 0x20, 0x73, 0x6f, 0x6d, 0x65, 0x74, 0x68, 0x69, 0x6e, 0x67, - 0x2e, 0x2e, 0x2e, 0x22, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x72, 0x6f, 0x77, 0x73, - 0x3d, 0x32, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, - 0x74, 0x65, 0x78, 0x74, 0x22, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x76, 0x61, 0x6c, - 0x75, 0x65, 0x3d, 0x22, 0x24, 0x7b, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, - 0x65, 0x7d, 0x22, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x64, 0x69, 0x76, 0x3e, 0x0a, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x64, - 0x69, 0x76, 0x20, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x3d, 0x22, 0x72, 0x69, - 0x67, 0x68, 0x74, 0x22, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x62, 0x75, 0x74, 0x74, 0x6f, - 0x6e, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x73, 0x75, 0x62, 0x6d, - 0x69, 0x74, 0x22, 0x20, 0x64, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x64, + 0x73, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x2e, 0x76, 0x61, 0x6c, 0x75, + 0x65, 0x20, 0x3d, 0x20, 0x7b, 0x20, 0x2e, 0x2e, 0x2e, 0x73, 0x65, 0x73, + 0x73, 0x69, 0x6f, 0x6e, 0x2e, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x2c, 0x20, + 0x69, 0x6d, 0x61, 0x67, 0x65, 0x5f, 0x73, 0x65, 0x6c, 0x65, 0x63, 0x74, + 0x65, 0x64, 0x3a, 0x20, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x5f, 0x64, 0x61, + 0x74, 0x61, 0x20, 0x7d, 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x73, + 0x2e, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x20, 0x3d, 0x20, 0x7b, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x2e, 0x2e, 0x2e, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x2e, 0x76, + 0x61, 0x6c, 0x75, 0x65, 0x2c, 0x20, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x5f, + 0x64, 0x61, 0x74, 0x61, 0x3a, 0x20, 0x5b, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x7b, 0x20, 0x64, 0x61, 0x74, 0x61, 0x3a, 0x20, 0x69, 0x6d, 0x61, 0x67, + 0x65, 0x5f, 0x64, 0x61, 0x74, 0x61, 0x2e, 0x72, 0x65, 0x70, 0x6c, 0x61, + 0x63, 0x65, 0x28, 0x2f, 0x64, 0x61, 0x74, 0x61, 0x3a, 0x69, 0x6d, 0x61, + 0x67, 0x65, 0x5c, 0x2f, 0x5b, 0x5e, 0x3b, 0x5d, 0x2b, 0x3b, 0x62, 0x61, + 0x73, 0x65, 0x36, 0x34, 0x2c, 0x2f, 0x2c, 0x20, 0x27, 0x27, 0x29, 0x2c, + 0x20, 0x69, 0x64, 0x3a, 0x20, 0x31, 0x30, 0x20, 0x7d, 0x5d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x7d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x7d, + 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x73, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x65, 0x64, 0x5f, 0x69, 0x6d, 0x61, + 0x67, 0x65, 0x20, 0x3d, 0x20, 0x74, 0x72, 0x75, 0x65, 0x3b, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x72, 0x65, 0x61, + 0x64, 0x65, 0x72, 0x2e, 0x72, 0x65, 0x61, 0x64, 0x41, 0x73, 0x44, 0x61, + 0x74, 0x61, 0x55, 0x52, 0x4c, 0x28, 0x73, 0x65, 0x6c, 0x65, 0x63, 0x74, + 0x65, 0x64, 0x46, 0x69, 0x6c, 0x65, 0x29, 0x3b, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x7d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x7d, 0x29, 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x7d, 0x0a, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x66, 0x75, 0x6e, 0x63, 0x74, 0x69, 0x6f, 0x6e, + 0x20, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x49, 0x6e, 0x70, 0x75, + 0x74, 0x28, 0x29, 0x20, 0x7b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x63, 0x6f, 0x6e, 0x73, 0x74, 0x20, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, + 0x65, 0x20, 0x3d, 0x20, 0x75, 0x73, 0x65, 0x53, 0x69, 0x67, 0x6e, 0x61, + 0x6c, 0x28, 0x22, 0x22, 0x29, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x63, 0x6f, 0x6e, 0x73, 0x74, 0x20, 0x73, 0x75, 0x62, 0x6d, 0x69, + 0x74, 0x20, 0x3d, 0x20, 0x28, 0x65, 0x29, 0x20, 0x3d, 0x3e, 0x20, 0x7b, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x73, 0x74, 0x6f, + 0x70, 0x28, 0x65, 0x29, 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x63, 0x68, 0x61, 0x74, 0x28, 0x6d, 0x65, 0x73, 0x73, 0x61, + 0x67, 0x65, 0x2e, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x29, 0x3b, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x6d, 0x65, 0x73, 0x73, 0x61, + 0x67, 0x65, 0x2e, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x20, 0x3d, 0x20, 0x22, + 0x22, 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x7d, 0x0a, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x63, 0x6f, 0x6e, 0x73, 0x74, 0x20, + 0x65, 0x6e, 0x74, 0x65, 0x72, 0x53, 0x75, 0x62, 0x6d, 0x69, 0x74, 0x73, + 0x20, 0x3d, 0x20, 0x28, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x29, 0x20, 0x3d, + 0x3e, 0x20, 0x7b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x69, 0x66, 0x20, 0x28, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x2e, 0x77, 0x68, + 0x69, 0x63, 0x68, 0x20, 0x3d, 0x3d, 0x3d, 0x20, 0x31, 0x33, 0x20, 0x26, + 0x26, 0x20, 0x21, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x2e, 0x73, 0x68, 0x69, + 0x66, 0x74, 0x4b, 0x65, 0x79, 0x29, 0x20, 0x7b, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x73, 0x75, 0x62, 0x6d, 0x69, + 0x74, 0x28, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x29, 0x3b, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x7d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x7d, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x72, + 0x65, 0x74, 0x75, 0x72, 0x6e, 0x20, 0x68, 0x74, 0x6d, 0x6c, 0x60, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x66, 0x6f, 0x72, + 0x6d, 0x20, 0x6f, 0x6e, 0x73, 0x75, 0x62, 0x6d, 0x69, 0x74, 0x3d, 0x24, + 0x7b, 0x73, 0x75, 0x62, 0x6d, 0x69, 0x74, 0x7d, 0x3e, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x64, 0x69, 0x76, + 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x74, 0x65, 0x78, 0x74, 0x61, 0x72, 0x65, 0x61, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x4e, 0x61, 0x6d, 0x65, 0x3d, 0x24, 0x7b, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6e, - 0x67, 0x2e, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x7d, 0x3e, 0x53, 0x65, 0x6e, - 0x64, 0x3c, 0x2f, 0x62, 0x75, 0x74, 0x74, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, + 0x67, 0x2e, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x20, 0x3f, 0x20, 0x22, 0x6c, + 0x6f, 0x61, 0x64, 0x69, 0x6e, 0x67, 0x22, 0x20, 0x3a, 0x20, 0x6e, 0x75, + 0x6c, 0x6c, 0x7d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x6f, 0x6e, 0x69, 0x6e, 0x70, + 0x75, 0x74, 0x3d, 0x24, 0x7b, 0x28, 0x65, 0x29, 0x20, 0x3d, 0x3e, 0x20, + 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x61, 0x6c, 0x75, + 0x65, 0x20, 0x3d, 0x20, 0x65, 0x2e, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, + 0x2e, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x7d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x6f, + 0x6e, 0x6b, 0x65, 0x79, 0x70, 0x72, 0x65, 0x73, 0x73, 0x3d, 0x24, 0x7b, + 0x65, 0x6e, 0x74, 0x65, 0x72, 0x53, 0x75, 0x62, 0x6d, 0x69, 0x74, 0x73, + 0x7d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x70, 0x6c, 0x61, 0x63, 0x65, 0x68, 0x6f, + 0x6c, 0x64, 0x65, 0x72, 0x3d, 0x22, 0x53, 0x61, 0x79, 0x20, 0x73, 0x6f, + 0x6d, 0x65, 0x74, 0x68, 0x69, 0x6e, 0x67, 0x2e, 0x2e, 0x2e, 0x22, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x72, 0x6f, 0x77, 0x73, 0x3d, 0x32, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x74, 0x65, 0x78, 0x74, 0x22, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3d, 0x22, 0x24, + 0x7b, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x7d, 0x22, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x2f, + 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x2f, 0x64, 0x69, 0x76, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x64, 0x69, 0x76, 0x20, 0x63, 0x6c, + 0x61, 0x73, 0x73, 0x3d, 0x22, 0x72, 0x69, 0x67, 0x68, 0x74, 0x22, 0x3e, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x62, 0x75, 0x74, 0x74, 0x6f, 0x6e, 0x20, 0x74, 0x79, 0x70, + 0x65, 0x3d, 0x22, 0x73, 0x75, 0x62, 0x6d, 0x69, 0x74, 0x22, 0x20, 0x64, + 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x3d, 0x24, 0x7b, 0x67, 0x65, + 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6e, 0x67, 0x2e, 0x76, 0x61, 0x6c, + 0x75, 0x65, 0x7d, 0x3e, 0x53, 0x65, 0x6e, 0x64, 0x3c, 0x2f, 0x62, 0x75, + 0x74, 0x74, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x62, 0x75, 0x74, 0x74, 0x6f, + 0x6e, 0x20, 0x6f, 0x6e, 0x63, 0x6c, 0x69, 0x63, 0x6b, 0x3d, 0x24, 0x7b, + 0x75, 0x70, 0x6c, 0x6f, 0x61, 0x64, 0x49, 0x6d, 0x61, 0x67, 0x65, 0x7d, + 0x3e, 0x55, 0x70, 0x6c, 0x6f, 0x61, 0x64, 0x20, 0x49, 0x6d, 0x61, 0x67, + 0x65, 0x3c, 0x2f, 0x62, 0x75, 0x74, 0x74, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x62, 0x75, 0x74, 0x74, 0x6f, 0x6e, 0x20, 0x6f, 0x6e, 0x63, 0x6c, 0x69, 0x63, 0x6b, 0x3d, 0x24, 0x7b, 0x73, 0x74, 0x6f, 0x70, 0x7d, 0x20, 0x64, @@ -1238,28 +1380,39 @@ unsigned char index_html[] = { 0x74, 0x65, 0x78, 0x74, 0x3d, 0x24, 0x7b, 0x74, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x28, 0x74, 0x65, 0x78, 0x74, 0x29, 0x7d, 0x20, 0x2f, 0x3e, 0x60, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x7d, - 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x69, 0x66, 0x28, - 0x75, 0x73, 0x65, 0x72, 0x29, 0x20, 0x7b, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x69, 0x66, 0x20, + 0x28, 0x75, 0x73, 0x65, 0x72, 0x29, 0x20, 0x7b, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x72, 0x65, 0x74, 0x75, 0x72, + 0x6e, 0x20, 0x68, 0x74, 0x6d, 0x6c, 0x60, 0x3c, 0x70, 0x20, 0x6b, 0x65, + 0x79, 0x3d, 0x24, 0x7b, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x7d, 0x3e, 0x3c, + 0x73, 0x74, 0x72, 0x6f, 0x6e, 0x67, 0x3e, 0x24, 0x7b, 0x74, 0x65, 0x6d, + 0x70, 0x6c, 0x61, 0x74, 0x65, 0x28, 0x75, 0x73, 0x65, 0x72, 0x29, 0x7d, + 0x3a, 0x3c, 0x2f, 0x73, 0x74, 0x72, 0x6f, 0x6e, 0x67, 0x3e, 0x20, 0x24, + 0x7b, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x7d, 0x3c, 0x2f, 0x70, + 0x3e, 0x60, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x7d, + 0x20, 0x65, 0x6c, 0x73, 0x65, 0x20, 0x7b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x72, 0x65, 0x74, 0x75, 0x72, 0x6e, 0x20, 0x68, 0x74, 0x6d, 0x6c, 0x60, 0x3c, 0x70, 0x20, 0x6b, 0x65, 0x79, - 0x3d, 0x24, 0x7b, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x7d, 0x3e, 0x3c, 0x73, - 0x74, 0x72, 0x6f, 0x6e, 0x67, 0x3e, 0x24, 0x7b, 0x74, 0x65, 0x6d, 0x70, - 0x6c, 0x61, 0x74, 0x65, 0x28, 0x75, 0x73, 0x65, 0x72, 0x29, 0x7d, 0x3a, - 0x3c, 0x2f, 0x73, 0x74, 0x72, 0x6f, 0x6e, 0x67, 0x3e, 0x20, 0x24, 0x7b, + 0x3d, 0x24, 0x7b, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x7d, 0x3e, 0x24, 0x7b, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x7d, 0x3c, 0x2f, 0x70, 0x3e, - 0x60, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x7d, 0x20, - 0x65, 0x6c, 0x73, 0x65, 0x20, 0x7b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x72, 0x65, 0x74, 0x75, 0x72, 0x6e, 0x20, - 0x68, 0x74, 0x6d, 0x6c, 0x60, 0x3c, 0x70, 0x20, 0x6b, 0x65, 0x79, 0x3d, - 0x24, 0x7b, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x7d, 0x3e, 0x24, 0x7b, 0x6d, - 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x7d, 0x3c, 0x2f, 0x70, 0x3e, 0x60, - 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x7d, 0x0a, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x7d, 0x3b, 0x0a, 0x0a, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x72, 0x65, 0x74, 0x75, 0x72, 0x6e, 0x20, 0x68, 0x74, - 0x6d, 0x6c, 0x60, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x3c, 0x73, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x69, 0x64, 0x3d, - 0x22, 0x63, 0x68, 0x61, 0x74, 0x22, 0x20, 0x72, 0x65, 0x66, 0x3d, 0x24, - 0x7b, 0x63, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x7d, 0x3e, + 0x60, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x7d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x7d, 0x3b, 0x0a, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x72, 0x65, 0x74, 0x75, 0x72, 0x6e, 0x20, 0x68, + 0x74, 0x6d, 0x6c, 0x60, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x73, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x69, 0x64, + 0x3d, 0x22, 0x63, 0x68, 0x61, 0x74, 0x22, 0x20, 0x72, 0x65, 0x66, 0x3d, + 0x24, 0x7b, 0x63, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x7d, + 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x69, 0x6d, 0x67, 0x20, 0x73, 0x74, 0x79, 0x6c, 0x65, 0x3d, 0x22, + 0x77, 0x69, 0x64, 0x74, 0x68, 0x3a, 0x20, 0x36, 0x30, 0x25, 0x3b, 0x24, + 0x7b, 0x21, 0x73, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x2e, 0x76, 0x61, + 0x6c, 0x75, 0x65, 0x2e, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x5f, 0x73, 0x65, + 0x6c, 0x65, 0x63, 0x74, 0x65, 0x64, 0x20, 0x3f, 0x20, 0x60, 0x64, 0x69, + 0x73, 0x70, 0x6c, 0x61, 0x79, 0x3a, 0x20, 0x6e, 0x6f, 0x6e, 0x65, 0x3b, + 0x60, 0x20, 0x3a, 0x20, 0x60, 0x60, 0x7d, 0x22, 0x20, 0x73, 0x72, 0x63, + 0x3d, 0x22, 0x24, 0x7b, 0x73, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x2e, + 0x76, 0x61, 0x6c, 0x75, 0x65, 0x2e, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x5f, + 0x73, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x65, 0x64, 0x7d, 0x22, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x24, 0x7b, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x2e, 0x66, 0x6c, 0x61, 0x74, 0x4d, 0x61, 0x70, 0x28, 0x63, 0x68, 0x61, 0x74, 0x4c, 0x69, @@ -1344,703 +1497,704 @@ unsigned char index_html[] = { 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x2e, 0x72, 0x65, 0x64, 0x75, 0x63, 0x65, 0x28, 0x28, 0x61, 0x63, 0x63, 0x2c, 0x20, 0x63, 0x75, 0x72, 0x2c, 0x20, 0x69, 0x29, 0x20, 0x3d, - 0x3e, 0x20, 0x28, 0x7b, 0x2e, 0x2e, 0x2e, 0x61, 0x63, 0x63, 0x2c, 0x20, - 0x5b, 0x63, 0x75, 0x72, 0x2e, 0x74, 0x72, 0x69, 0x6d, 0x28, 0x29, 0x5d, - 0x3a, 0x20, 0x69, 0x7d, 0x29, 0x2c, 0x20, 0x7b, 0x7d, 0x29, 0x0a, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x29, 0x0a, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x63, 0x6f, 0x6e, - 0x76, 0x65, 0x72, 0x74, 0x65, 0x72, 0x2e, 0x76, 0x69, 0x73, 0x69, 0x74, - 0x28, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x2c, 0x20, 0x27, 0x27, 0x29, - 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x70, - 0x61, 0x72, 0x61, 0x6d, 0x73, 0x2e, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x20, - 0x3d, 0x20, 0x7b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x2e, 0x2e, 0x2e, 0x70, 0x61, 0x72, 0x61, 0x6d, - 0x73, 0x2e, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x2c, 0x0a, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x67, 0x72, 0x61, - 0x6d, 0x6d, 0x61, 0x72, 0x3a, 0x20, 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, - 0x74, 0x65, 0x72, 0x2e, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x47, 0x72, - 0x61, 0x6d, 0x6d, 0x61, 0x72, 0x28, 0x29, 0x2c, 0x0a, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x7d, 0x0a, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x7d, 0x20, 0x63, 0x61, 0x74, 0x63, 0x68, - 0x20, 0x28, 0x65, 0x29, 0x20, 0x7b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x61, 0x6c, 0x65, 0x72, 0x74, 0x28, 0x60, - 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x74, 0x20, 0x66, 0x61, 0x69, 0x6c, - 0x65, 0x64, 0x3a, 0x20, 0x24, 0x7b, 0x65, 0x2e, 0x6d, 0x65, 0x73, 0x73, - 0x61, 0x67, 0x65, 0x7d, 0x60, 0x29, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x7d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x7d, - 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x63, 0x6f, 0x6e, 0x73, - 0x74, 0x20, 0x46, 0x6c, 0x6f, 0x61, 0x74, 0x46, 0x69, 0x65, 0x6c, 0x64, - 0x20, 0x3d, 0x20, 0x28, 0x7b, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x2c, 0x20, - 0x6d, 0x61, 0x78, 0x2c, 0x20, 0x6d, 0x69, 0x6e, 0x2c, 0x20, 0x6e, 0x61, - 0x6d, 0x65, 0x2c, 0x20, 0x73, 0x74, 0x65, 0x70, 0x2c, 0x20, 0x76, 0x61, - 0x6c, 0x75, 0x65, 0x7d, 0x29, 0x20, 0x3d, 0x3e, 0x20, 0x7b, 0x0a, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x72, 0x65, 0x74, 0x75, 0x72, - 0x6e, 0x20, 0x68, 0x74, 0x6d, 0x6c, 0x60, 0x0a, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x64, 0x69, 0x76, 0x3e, 0x0a, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x3c, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x20, 0x66, 0x6f, 0x72, 0x3d, 0x22, - 0x24, 0x7b, 0x6e, 0x61, 0x6d, 0x65, 0x7d, 0x22, 0x3e, 0x24, 0x7b, 0x6c, - 0x61, 0x62, 0x65, 0x6c, 0x7d, 0x3c, 0x2f, 0x6c, 0x61, 0x62, 0x65, 0x6c, - 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x3c, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x20, 0x74, 0x79, 0x70, - 0x65, 0x3d, 0x22, 0x72, 0x61, 0x6e, 0x67, 0x65, 0x22, 0x20, 0x69, 0x64, - 0x3d, 0x22, 0x24, 0x7b, 0x6e, 0x61, 0x6d, 0x65, 0x7d, 0x22, 0x20, 0x6d, - 0x69, 0x6e, 0x3d, 0x22, 0x24, 0x7b, 0x6d, 0x69, 0x6e, 0x7d, 0x22, 0x20, - 0x6d, 0x61, 0x78, 0x3d, 0x22, 0x24, 0x7b, 0x6d, 0x61, 0x78, 0x7d, 0x22, - 0x20, 0x73, 0x74, 0x65, 0x70, 0x3d, 0x22, 0x24, 0x7b, 0x73, 0x74, 0x65, - 0x70, 0x7d, 0x22, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x24, 0x7b, - 0x6e, 0x61, 0x6d, 0x65, 0x7d, 0x22, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, - 0x3d, 0x22, 0x24, 0x7b, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x7d, 0x22, 0x20, - 0x6f, 0x6e, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x3d, 0x24, 0x7b, 0x75, 0x70, - 0x64, 0x61, 0x74, 0x65, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x46, 0x6c, - 0x6f, 0x61, 0x74, 0x7d, 0x20, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x73, 0x70, 0x61, - 0x6e, 0x3e, 0x24, 0x7b, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x7d, 0x3c, 0x2f, - 0x73, 0x70, 0x61, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x64, 0x69, 0x76, 0x3e, 0x0a, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x60, 0x0a, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x7d, 0x3b, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x63, 0x6f, 0x6e, 0x73, 0x74, 0x20, 0x49, 0x6e, 0x74, 0x46, 0x69, - 0x65, 0x6c, 0x64, 0x20, 0x3d, 0x20, 0x28, 0x7b, 0x6c, 0x61, 0x62, 0x65, + 0x3e, 0x20, 0x28, 0x7b, 0x20, 0x2e, 0x2e, 0x2e, 0x61, 0x63, 0x63, 0x2c, + 0x20, 0x5b, 0x63, 0x75, 0x72, 0x2e, 0x74, 0x72, 0x69, 0x6d, 0x28, 0x29, + 0x5d, 0x3a, 0x20, 0x69, 0x20, 0x7d, 0x29, 0x2c, 0x20, 0x7b, 0x7d, 0x29, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x29, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x63, + 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x74, 0x65, 0x72, 0x2e, 0x76, 0x69, 0x73, + 0x69, 0x74, 0x28, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x2c, 0x20, 0x27, + 0x27, 0x29, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x2e, 0x76, 0x61, 0x6c, 0x75, + 0x65, 0x20, 0x3d, 0x20, 0x7b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x2e, 0x2e, 0x2e, 0x70, 0x61, 0x72, + 0x61, 0x6d, 0x73, 0x2e, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x2c, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x67, + 0x72, 0x61, 0x6d, 0x6d, 0x61, 0x72, 0x3a, 0x20, 0x63, 0x6f, 0x6e, 0x76, + 0x65, 0x72, 0x74, 0x65, 0x72, 0x2e, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, + 0x47, 0x72, 0x61, 0x6d, 0x6d, 0x61, 0x72, 0x28, 0x29, 0x2c, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x7d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x7d, 0x20, 0x63, 0x61, 0x74, + 0x63, 0x68, 0x20, 0x28, 0x65, 0x29, 0x20, 0x7b, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x61, 0x6c, 0x65, 0x72, 0x74, + 0x28, 0x60, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x74, 0x20, 0x66, 0x61, + 0x69, 0x6c, 0x65, 0x64, 0x3a, 0x20, 0x24, 0x7b, 0x65, 0x2e, 0x6d, 0x65, + 0x73, 0x73, 0x61, 0x67, 0x65, 0x7d, 0x60, 0x29, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x7d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x7d, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x63, 0x6f, + 0x6e, 0x73, 0x74, 0x20, 0x46, 0x6c, 0x6f, 0x61, 0x74, 0x46, 0x69, 0x65, + 0x6c, 0x64, 0x20, 0x3d, 0x20, 0x28, 0x7b, 0x20, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x2c, 0x20, 0x6d, 0x61, 0x78, 0x2c, 0x20, 0x6d, 0x69, 0x6e, 0x2c, - 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x2c, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, - 0x7d, 0x29, 0x20, 0x3d, 0x3e, 0x20, 0x7b, 0x0a, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x72, 0x65, 0x74, 0x75, 0x72, 0x6e, 0x20, 0x68, - 0x74, 0x6d, 0x6c, 0x60, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x3c, 0x64, 0x69, 0x76, 0x3e, 0x0a, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x6c, 0x61, - 0x62, 0x65, 0x6c, 0x20, 0x66, 0x6f, 0x72, 0x3d, 0x22, 0x24, 0x7b, 0x6e, - 0x61, 0x6d, 0x65, 0x7d, 0x22, 0x3e, 0x24, 0x7b, 0x6c, 0x61, 0x62, 0x65, - 0x6c, 0x7d, 0x3c, 0x2f, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x3e, 0x0a, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, - 0x69, 0x6e, 0x70, 0x75, 0x74, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, - 0x72, 0x61, 0x6e, 0x67, 0x65, 0x22, 0x20, 0x69, 0x64, 0x3d, 0x22, 0x24, - 0x7b, 0x6e, 0x61, 0x6d, 0x65, 0x7d, 0x22, 0x20, 0x6d, 0x69, 0x6e, 0x3d, - 0x22, 0x24, 0x7b, 0x6d, 0x69, 0x6e, 0x7d, 0x22, 0x20, 0x6d, 0x61, 0x78, - 0x3d, 0x22, 0x24, 0x7b, 0x6d, 0x61, 0x78, 0x7d, 0x22, 0x20, 0x6e, 0x61, - 0x6d, 0x65, 0x3d, 0x22, 0x24, 0x7b, 0x6e, 0x61, 0x6d, 0x65, 0x7d, 0x22, - 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3d, 0x22, 0x24, 0x7b, 0x76, 0x61, - 0x6c, 0x75, 0x65, 0x7d, 0x22, 0x20, 0x6f, 0x6e, 0x69, 0x6e, 0x70, 0x75, - 0x74, 0x3d, 0x24, 0x7b, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x50, 0x61, - 0x72, 0x61, 0x6d, 0x73, 0x49, 0x6e, 0x74, 0x7d, 0x20, 0x2f, 0x3e, 0x0a, + 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x2c, 0x20, 0x73, 0x74, 0x65, 0x70, 0x2c, + 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x20, 0x7d, 0x29, 0x20, 0x3d, 0x3e, + 0x20, 0x7b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x72, + 0x65, 0x74, 0x75, 0x72, 0x6e, 0x20, 0x68, 0x74, 0x6d, 0x6c, 0x60, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x64, + 0x69, 0x76, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x20, 0x66, + 0x6f, 0x72, 0x3d, 0x22, 0x24, 0x7b, 0x6e, 0x61, 0x6d, 0x65, 0x7d, 0x22, + 0x3e, 0x24, 0x7b, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x7d, 0x3c, 0x2f, 0x6c, + 0x61, 0x62, 0x65, 0x6c, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x69, 0x6e, 0x70, 0x75, 0x74, + 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x72, 0x61, 0x6e, 0x67, 0x65, + 0x22, 0x20, 0x69, 0x64, 0x3d, 0x22, 0x24, 0x7b, 0x6e, 0x61, 0x6d, 0x65, + 0x7d, 0x22, 0x20, 0x6d, 0x69, 0x6e, 0x3d, 0x22, 0x24, 0x7b, 0x6d, 0x69, + 0x6e, 0x7d, 0x22, 0x20, 0x6d, 0x61, 0x78, 0x3d, 0x22, 0x24, 0x7b, 0x6d, + 0x61, 0x78, 0x7d, 0x22, 0x20, 0x73, 0x74, 0x65, 0x70, 0x3d, 0x22, 0x24, + 0x7b, 0x73, 0x74, 0x65, 0x70, 0x7d, 0x22, 0x20, 0x6e, 0x61, 0x6d, 0x65, + 0x3d, 0x22, 0x24, 0x7b, 0x6e, 0x61, 0x6d, 0x65, 0x7d, 0x22, 0x20, 0x76, + 0x61, 0x6c, 0x75, 0x65, 0x3d, 0x22, 0x24, 0x7b, 0x76, 0x61, 0x6c, 0x75, + 0x65, 0x7d, 0x22, 0x20, 0x6f, 0x6e, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x3d, + 0x24, 0x7b, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x50, 0x61, 0x72, 0x61, + 0x6d, 0x73, 0x46, 0x6c, 0x6f, 0x61, 0x74, 0x7d, 0x20, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x73, 0x70, 0x61, 0x6e, 0x3e, 0x24, 0x7b, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x7d, 0x3c, 0x2f, 0x73, 0x70, 0x61, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x64, 0x69, 0x76, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x60, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x7d, 0x3b, 0x0a, 0x0a, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x63, 0x6f, 0x6e, 0x73, 0x74, 0x20, 0x75, - 0x73, 0x65, 0x72, 0x54, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x52, - 0x65, 0x73, 0x65, 0x74, 0x20, 0x3d, 0x20, 0x28, 0x65, 0x29, 0x20, 0x3d, - 0x3e, 0x20, 0x7b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x65, 0x2e, 0x70, 0x72, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x44, 0x65, 0x66, - 0x61, 0x75, 0x6c, 0x74, 0x28, 0x29, 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x75, 0x73, 0x65, 0x72, 0x54, 0x65, 0x6d, 0x70, - 0x6c, 0x61, 0x74, 0x65, 0x52, 0x65, 0x73, 0x65, 0x74, 0x54, 0x6f, 0x44, - 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x41, 0x6e, 0x64, 0x41, 0x70, 0x70, - 0x6c, 0x79, 0x28, 0x29, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x7d, - 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x63, 0x6f, 0x6e, 0x73, - 0x74, 0x20, 0x55, 0x73, 0x65, 0x72, 0x54, 0x65, 0x6d, 0x70, 0x6c, 0x61, - 0x74, 0x65, 0x52, 0x65, 0x73, 0x65, 0x74, 0x42, 0x75, 0x74, 0x74, 0x6f, - 0x6e, 0x20, 0x3d, 0x20, 0x28, 0x29, 0x20, 0x3d, 0x3e, 0x20, 0x7b, 0x0a, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x69, 0x66, 0x20, 0x28, - 0x73, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x65, 0x64, 0x55, 0x73, 0x65, 0x72, - 0x54, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x2e, 0x76, 0x61, 0x6c, - 0x75, 0x65, 0x2e, 0x6e, 0x61, 0x6d, 0x65, 0x20, 0x3d, 0x3d, 0x20, 0x27, - 0x64, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x27, 0x29, 0x20, 0x7b, 0x0a, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x72, 0x65, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x63, 0x6f, 0x6e, 0x73, 0x74, 0x20, 0x49, + 0x6e, 0x74, 0x46, 0x69, 0x65, 0x6c, 0x64, 0x20, 0x3d, 0x20, 0x28, 0x7b, + 0x20, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x2c, 0x20, 0x6d, 0x61, 0x78, 0x2c, + 0x20, 0x6d, 0x69, 0x6e, 0x2c, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x2c, 0x20, + 0x76, 0x61, 0x6c, 0x75, 0x65, 0x20, 0x7d, 0x29, 0x20, 0x3d, 0x3e, 0x20, + 0x7b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x72, 0x65, 0x74, 0x75, 0x72, 0x6e, 0x20, 0x68, 0x74, 0x6d, 0x6c, 0x60, 0x0a, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, - 0x62, 0x75, 0x74, 0x74, 0x6f, 0x6e, 0x20, 0x64, 0x69, 0x73, 0x61, 0x62, - 0x6c, 0x65, 0x64, 0x3e, 0x55, 0x73, 0x69, 0x6e, 0x67, 0x20, 0x64, 0x65, - 0x66, 0x61, 0x75, 0x6c, 0x74, 0x20, 0x74, 0x65, 0x6d, 0x70, 0x6c, 0x61, - 0x74, 0x65, 0x3c, 0x2f, 0x62, 0x75, 0x74, 0x74, 0x6f, 0x6e, 0x3e, 0x0a, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x60, 0x0a, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x7d, 0x0a, 0x0a, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x72, 0x65, 0x74, 0x75, 0x72, - 0x6e, 0x20, 0x68, 0x74, 0x6d, 0x6c, 0x60, 0x0a, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x62, 0x75, 0x74, 0x74, 0x6f, - 0x6e, 0x20, 0x6f, 0x6e, 0x63, 0x6c, 0x69, 0x63, 0x6b, 0x3d, 0x24, 0x7b, - 0x75, 0x73, 0x65, 0x72, 0x54, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, - 0x52, 0x65, 0x73, 0x65, 0x74, 0x7d, 0x3e, 0x52, 0x65, 0x73, 0x65, 0x74, - 0x20, 0x61, 0x6c, 0x6c, 0x20, 0x74, 0x6f, 0x20, 0x64, 0x65, 0x66, 0x61, - 0x75, 0x6c, 0x74, 0x3c, 0x2f, 0x62, 0x75, 0x74, 0x74, 0x6f, 0x6e, 0x3e, - 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x60, 0x0a, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x7d, 0x3b, 0x0a, 0x0a, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x75, 0x73, 0x65, 0x45, 0x66, 0x66, 0x65, 0x63, 0x74, - 0x28, 0x28, 0x29, 0x20, 0x3d, 0x3e, 0x20, 0x7b, 0x0a, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x2f, 0x2f, 0x20, 0x61, 0x75, 0x74, 0x6f, - 0x73, 0x61, 0x76, 0x65, 0x20, 0x74, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, - 0x65, 0x20, 0x6f, 0x6e, 0x20, 0x65, 0x76, 0x65, 0x72, 0x79, 0x20, 0x63, - 0x68, 0x61, 0x6e, 0x67, 0x65, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x75, 0x73, 0x65, 0x72, 0x54, 0x65, 0x6d, 0x70, 0x6c, 0x61, - 0x74, 0x65, 0x41, 0x75, 0x74, 0x6f, 0x73, 0x61, 0x76, 0x65, 0x28, 0x29, - 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x7d, 0x2c, 0x20, 0x5b, 0x73, - 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x2e, 0x76, 0x61, 0x6c, 0x75, 0x65, - 0x2c, 0x20, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x2e, 0x76, 0x61, 0x6c, - 0x75, 0x65, 0x5d, 0x29, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x63, 0x6f, 0x6e, 0x73, 0x74, 0x20, 0x47, 0x72, 0x61, 0x6d, 0x6d, 0x61, - 0x72, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x20, 0x3d, 0x20, 0x28, - 0x29, 0x20, 0x3d, 0x3e, 0x20, 0x28, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x68, 0x74, 0x6d, 0x6c, 0x60, 0x0a, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x64, 0x69, 0x76, 0x3e, - 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x3c, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x20, 0x66, 0x6f, 0x72, 0x3d, - 0x22, 0x74, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x22, 0x3e, 0x47, - 0x72, 0x61, 0x6d, 0x6d, 0x61, 0x72, 0x3c, 0x2f, 0x6c, 0x61, 0x62, 0x65, - 0x6c, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x3c, 0x74, 0x65, 0x78, 0x74, 0x61, 0x72, 0x65, 0x61, - 0x20, 0x69, 0x64, 0x3d, 0x22, 0x67, 0x72, 0x61, 0x6d, 0x6d, 0x61, 0x72, - 0x22, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x67, 0x72, 0x61, 0x6d, - 0x6d, 0x61, 0x72, 0x22, 0x20, 0x70, 0x6c, 0x61, 0x63, 0x65, 0x68, 0x6f, - 0x6c, 0x64, 0x65, 0x72, 0x3d, 0x22, 0x55, 0x73, 0x65, 0x20, 0x67, 0x62, - 0x6e, 0x66, 0x20, 0x6f, 0x72, 0x20, 0x4a, 0x53, 0x4f, 0x4e, 0x20, 0x53, - 0x63, 0x68, 0x65, 0x6d, 0x61, 0x2b, 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, - 0x74, 0x22, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3d, 0x22, 0x24, 0x7b, - 0x70, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x2e, 0x76, 0x61, 0x6c, 0x75, 0x65, - 0x2e, 0x67, 0x72, 0x61, 0x6d, 0x6d, 0x61, 0x72, 0x7d, 0x22, 0x20, 0x72, - 0x6f, 0x77, 0x73, 0x3d, 0x34, 0x20, 0x6f, 0x6e, 0x69, 0x6e, 0x70, 0x75, - 0x74, 0x3d, 0x24, 0x7b, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x50, 0x61, - 0x72, 0x61, 0x6d, 0x73, 0x7d, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x69, 0x6e, 0x70, - 0x75, 0x74, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x74, 0x65, 0x78, - 0x74, 0x22, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x70, 0x72, 0x6f, - 0x70, 0x2d, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x22, 0x20, 0x70, 0x6c, 0x61, - 0x63, 0x65, 0x68, 0x6f, 0x6c, 0x64, 0x65, 0x72, 0x3d, 0x22, 0x6f, 0x72, - 0x64, 0x65, 0x72, 0x3a, 0x20, 0x70, 0x72, 0x6f, 0x70, 0x31, 0x2c, 0x70, - 0x72, 0x6f, 0x70, 0x32, 0x2c, 0x70, 0x72, 0x6f, 0x70, 0x33, 0x22, 0x20, - 0x6f, 0x6e, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x3d, 0x24, 0x7b, 0x75, 0x70, - 0x64, 0x61, 0x74, 0x65, 0x47, 0x72, 0x61, 0x6d, 0x6d, 0x61, 0x72, 0x4a, - 0x73, 0x6f, 0x6e, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x50, 0x72, 0x6f, - 0x70, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x7d, 0x20, 0x2f, 0x3e, 0x0a, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, - 0x62, 0x75, 0x74, 0x74, 0x6f, 0x6e, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, - 0x22, 0x62, 0x75, 0x74, 0x74, 0x6f, 0x6e, 0x22, 0x20, 0x6f, 0x6e, 0x63, - 0x6c, 0x69, 0x63, 0x6b, 0x3d, 0x24, 0x7b, 0x63, 0x6f, 0x6e, 0x76, 0x65, - 0x72, 0x74, 0x4a, 0x53, 0x4f, 0x4e, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, - 0x47, 0x72, 0x61, 0x6d, 0x6d, 0x61, 0x72, 0x7d, 0x3e, 0x43, 0x6f, 0x6e, - 0x76, 0x65, 0x72, 0x74, 0x20, 0x4a, 0x53, 0x4f, 0x4e, 0x20, 0x53, 0x63, - 0x68, 0x65, 0x6d, 0x61, 0x3c, 0x2f, 0x62, 0x75, 0x74, 0x74, 0x6f, 0x6e, - 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x3c, 0x2f, 0x64, 0x69, 0x76, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x60, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x29, 0x3b, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x63, - 0x6f, 0x6e, 0x73, 0x74, 0x20, 0x50, 0x72, 0x6f, 0x6d, 0x70, 0x74, 0x43, - 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x46, 0x69, 0x65, 0x6c, 0x64, 0x53, - 0x65, 0x74, 0x20, 0x3d, 0x20, 0x28, 0x29, 0x20, 0x3d, 0x3e, 0x20, 0x28, - 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x68, 0x74, 0x6d, - 0x6c, 0x60, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, - 0x66, 0x69, 0x65, 0x6c, 0x64, 0x73, 0x65, 0x74, 0x3e, 0x0a, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x64, 0x69, 0x76, - 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x3c, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x20, 0x68, 0x74, 0x6d, - 0x6c, 0x46, 0x6f, 0x72, 0x3d, 0x22, 0x70, 0x72, 0x6f, 0x6d, 0x70, 0x74, - 0x22, 0x3e, 0x50, 0x72, 0x6f, 0x6d, 0x70, 0x74, 0x3c, 0x2f, 0x6c, 0x61, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x64, 0x69, + 0x76, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x20, 0x66, 0x6f, + 0x72, 0x3d, 0x22, 0x24, 0x7b, 0x6e, 0x61, 0x6d, 0x65, 0x7d, 0x22, 0x3e, + 0x24, 0x7b, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x7d, 0x3c, 0x2f, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x74, 0x65, 0x78, 0x74, 0x61, 0x72, - 0x65, 0x61, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x74, 0x65, 0x78, - 0x74, 0x22, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x70, 0x72, 0x6f, - 0x6d, 0x70, 0x74, 0x22, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3d, 0x22, - 0x24, 0x7b, 0x73, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x2e, 0x76, 0x61, - 0x6c, 0x75, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x6d, 0x70, 0x74, 0x7d, 0x22, - 0x20, 0x6f, 0x6e, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x3d, 0x24, 0x7b, 0x75, - 0x70, 0x64, 0x61, 0x74, 0x65, 0x53, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, - 0x7d, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x3c, 0x2f, 0x64, 0x69, 0x76, 0x3e, 0x0a, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x66, 0x69, 0x65, 0x6c, 0x64, - 0x73, 0x65, 0x74, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x60, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x29, 0x3b, 0x0a, - 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x63, 0x6f, 0x6e, 0x73, 0x74, - 0x20, 0x43, 0x68, 0x61, 0x74, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x46, - 0x6f, 0x72, 0x6d, 0x20, 0x3d, 0x20, 0x28, 0x29, 0x20, 0x3d, 0x3e, 0x20, - 0x28, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x68, 0x74, - 0x6d, 0x6c, 0x60, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x24, 0x7b, 0x50, 0x72, 0x6f, 0x6d, 0x70, 0x74, 0x43, 0x6f, - 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x46, 0x69, 0x65, 0x6c, 0x64, 0x53, 0x65, - 0x74, 0x28, 0x29, 0x7d, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x3c, 0x66, 0x69, 0x65, 0x6c, 0x64, 0x73, 0x65, - 0x74, 0x20, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x3d, 0x22, 0x74, 0x77, 0x6f, - 0x22, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x3c, 0x64, 0x69, 0x76, 0x3e, 0x0a, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, - 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x20, 0x66, 0x6f, 0x72, 0x3d, 0x22, 0x75, - 0x73, 0x65, 0x72, 0x22, 0x3e, 0x55, 0x73, 0x65, 0x72, 0x20, 0x6e, 0x61, - 0x6d, 0x65, 0x3c, 0x2f, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x3e, 0x0a, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x3c, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x20, 0x74, 0x79, 0x70, 0x65, - 0x3d, 0x22, 0x74, 0x65, 0x78, 0x74, 0x22, 0x20, 0x6e, 0x61, 0x6d, 0x65, - 0x3d, 0x22, 0x75, 0x73, 0x65, 0x72, 0x22, 0x20, 0x76, 0x61, 0x6c, 0x75, - 0x65, 0x3d, 0x22, 0x24, 0x7b, 0x73, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, - 0x2e, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x2e, 0x75, 0x73, 0x65, 0x72, 0x7d, - 0x22, 0x20, 0x6f, 0x6e, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x3d, 0x24, 0x7b, - 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x53, 0x65, 0x73, 0x73, 0x69, 0x6f, - 0x6e, 0x7d, 0x20, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x64, 0x69, 0x76, 0x3e, - 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x3c, 0x64, 0x69, 0x76, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x6c, - 0x61, 0x62, 0x65, 0x6c, 0x20, 0x66, 0x6f, 0x72, 0x3d, 0x22, 0x62, 0x6f, - 0x74, 0x22, 0x3e, 0x42, 0x6f, 0x74, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3c, - 0x2f, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x69, - 0x6e, 0x70, 0x75, 0x74, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x74, - 0x65, 0x78, 0x74, 0x22, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x63, - 0x68, 0x61, 0x72, 0x22, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3d, 0x22, - 0x24, 0x7b, 0x73, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x2e, 0x76, 0x61, - 0x6c, 0x75, 0x65, 0x2e, 0x63, 0x68, 0x61, 0x72, 0x7d, 0x22, 0x20, 0x6f, - 0x6e, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x3d, 0x24, 0x7b, 0x75, 0x70, 0x64, - 0x61, 0x74, 0x65, 0x53, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x7d, 0x20, - 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x64, 0x69, 0x76, 0x3e, 0x0a, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x66, 0x69, - 0x65, 0x6c, 0x64, 0x73, 0x65, 0x74, 0x3e, 0x0a, 0x0a, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x66, 0x69, 0x65, 0x6c, - 0x64, 0x73, 0x65, 0x74, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x64, 0x69, 0x76, 0x3e, 0x0a, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x3c, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x20, 0x66, 0x6f, 0x72, - 0x3d, 0x22, 0x74, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x22, 0x3e, - 0x50, 0x72, 0x6f, 0x6d, 0x70, 0x74, 0x20, 0x74, 0x65, 0x6d, 0x70, 0x6c, - 0x61, 0x74, 0x65, 0x3c, 0x2f, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x3e, 0x0a, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x3c, 0x74, 0x65, 0x78, 0x74, 0x61, 0x72, 0x65, 0x61, 0x20, - 0x69, 0x64, 0x3d, 0x22, 0x74, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, - 0x22, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x74, 0x65, 0x6d, 0x70, - 0x6c, 0x61, 0x74, 0x65, 0x22, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3d, - 0x22, 0x24, 0x7b, 0x73, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x2e, 0x76, - 0x61, 0x6c, 0x75, 0x65, 0x2e, 0x74, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, - 0x65, 0x7d, 0x22, 0x20, 0x72, 0x6f, 0x77, 0x73, 0x3d, 0x34, 0x20, 0x6f, - 0x6e, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x3d, 0x24, 0x7b, 0x75, 0x70, 0x64, - 0x61, 0x74, 0x65, 0x53, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x7d, 0x2f, - 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x3c, 0x2f, 0x64, 0x69, 0x76, 0x3e, 0x0a, 0x0a, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x64, - 0x69, 0x76, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x6c, 0x61, 0x62, 0x65, 0x6c, - 0x20, 0x66, 0x6f, 0x72, 0x3d, 0x22, 0x74, 0x65, 0x6d, 0x70, 0x6c, 0x61, - 0x74, 0x65, 0x22, 0x3e, 0x43, 0x68, 0x61, 0x74, 0x20, 0x68, 0x69, 0x73, - 0x74, 0x6f, 0x72, 0x79, 0x20, 0x74, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, - 0x65, 0x3c, 0x2f, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x3e, 0x0a, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x3c, 0x74, 0x65, 0x78, 0x74, 0x61, 0x72, 0x65, 0x61, 0x20, 0x69, 0x64, - 0x3d, 0x22, 0x74, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x22, 0x20, - 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x68, 0x69, 0x73, 0x74, 0x6f, 0x72, - 0x79, 0x54, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x22, 0x20, 0x76, - 0x61, 0x6c, 0x75, 0x65, 0x3d, 0x22, 0x24, 0x7b, 0x73, 0x65, 0x73, 0x73, - 0x69, 0x6f, 0x6e, 0x2e, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x2e, 0x68, 0x69, - 0x73, 0x74, 0x6f, 0x72, 0x79, 0x54, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, - 0x65, 0x7d, 0x22, 0x20, 0x72, 0x6f, 0x77, 0x73, 0x3d, 0x31, 0x20, 0x6f, - 0x6e, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x3d, 0x24, 0x7b, 0x75, 0x70, 0x64, - 0x61, 0x74, 0x65, 0x53, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x7d, 0x2f, - 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x3c, 0x2f, 0x64, 0x69, 0x76, 0x3e, 0x0a, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x24, 0x7b, 0x47, - 0x72, 0x61, 0x6d, 0x6d, 0x61, 0x72, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x6f, - 0x6c, 0x28, 0x29, 0x7d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x66, 0x69, 0x65, 0x6c, 0x64, 0x73, 0x65, - 0x74, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x60, 0x0a, 0x20, - 0x20, 0x20, 0x20, 0x29, 0x3b, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x63, 0x6f, 0x6e, 0x73, 0x74, 0x20, 0x43, 0x6f, 0x6d, 0x70, 0x6c, - 0x65, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x46, - 0x6f, 0x72, 0x6d, 0x20, 0x3d, 0x20, 0x28, 0x29, 0x20, 0x3d, 0x3e, 0x20, - 0x28, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x68, 0x74, - 0x6d, 0x6c, 0x60, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x24, 0x7b, 0x50, 0x72, 0x6f, 0x6d, 0x70, 0x74, 0x43, 0x6f, - 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x46, 0x69, 0x65, 0x6c, 0x64, 0x53, 0x65, - 0x74, 0x28, 0x29, 0x7d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x3c, 0x66, 0x69, 0x65, 0x6c, 0x64, 0x73, 0x65, 0x74, - 0x3e, 0x24, 0x7b, 0x47, 0x72, 0x61, 0x6d, 0x6d, 0x61, 0x72, 0x43, 0x6f, - 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x28, 0x29, 0x7d, 0x3c, 0x2f, 0x66, 0x69, - 0x65, 0x6c, 0x64, 0x73, 0x65, 0x74, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x60, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x29, 0x3b, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x72, 0x65, - 0x74, 0x75, 0x72, 0x6e, 0x20, 0x68, 0x74, 0x6d, 0x6c, 0x60, 0x0a, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x66, 0x6f, 0x72, 0x6d, - 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x3c, 0x66, 0x69, 0x65, 0x6c, 0x64, 0x73, 0x65, 0x74, 0x20, 0x63, 0x6c, - 0x61, 0x73, 0x73, 0x3d, 0x22, 0x74, 0x77, 0x6f, 0x22, 0x3e, 0x0a, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, - 0x24, 0x7b, 0x55, 0x73, 0x65, 0x72, 0x54, 0x65, 0x6d, 0x70, 0x6c, 0x61, - 0x74, 0x65, 0x52, 0x65, 0x73, 0x65, 0x74, 0x42, 0x75, 0x74, 0x74, 0x6f, - 0x6e, 0x7d, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x64, 0x69, 0x76, 0x3e, 0x0a, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x3c, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x20, 0x63, 0x6c, 0x61, 0x73, - 0x73, 0x3d, 0x22, 0x73, 0x6c, 0x69, 0x6d, 0x22, 0x3e, 0x3c, 0x69, 0x6e, - 0x70, 0x75, 0x74, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x72, 0x61, - 0x64, 0x69, 0x6f, 0x22, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x74, - 0x79, 0x70, 0x65, 0x22, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3d, 0x22, - 0x63, 0x68, 0x61, 0x74, 0x22, 0x20, 0x63, 0x68, 0x65, 0x63, 0x6b, 0x65, - 0x64, 0x3d, 0x24, 0x7b, 0x73, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x2e, - 0x76, 0x61, 0x6c, 0x75, 0x65, 0x2e, 0x74, 0x79, 0x70, 0x65, 0x20, 0x3d, - 0x3d, 0x3d, 0x20, 0x22, 0x63, 0x68, 0x61, 0x74, 0x22, 0x7d, 0x20, 0x6f, - 0x6e, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x3d, 0x24, 0x7b, 0x75, 0x70, 0x64, - 0x61, 0x74, 0x65, 0x53, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x7d, 0x20, - 0x2f, 0x3e, 0x20, 0x43, 0x68, 0x61, 0x74, 0x3c, 0x2f, 0x6c, 0x61, 0x62, - 0x65, 0x6c, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x6c, 0x61, 0x62, 0x65, 0x6c, - 0x20, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x3d, 0x22, 0x73, 0x6c, 0x69, 0x6d, - 0x22, 0x3e, 0x3c, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x20, 0x74, 0x79, 0x70, - 0x65, 0x3d, 0x22, 0x72, 0x61, 0x64, 0x69, 0x6f, 0x22, 0x20, 0x6e, 0x61, - 0x6d, 0x65, 0x3d, 0x22, 0x74, 0x79, 0x70, 0x65, 0x22, 0x20, 0x76, 0x61, - 0x6c, 0x75, 0x65, 0x3d, 0x22, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, - 0x69, 0x6f, 0x6e, 0x22, 0x20, 0x63, 0x68, 0x65, 0x63, 0x6b, 0x65, 0x64, - 0x3d, 0x24, 0x7b, 0x73, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x2e, 0x76, - 0x61, 0x6c, 0x75, 0x65, 0x2e, 0x74, 0x79, 0x70, 0x65, 0x20, 0x3d, 0x3d, - 0x3d, 0x20, 0x22, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x69, 0x6f, - 0x6e, 0x22, 0x7d, 0x20, 0x6f, 0x6e, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x3d, - 0x24, 0x7b, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x53, 0x65, 0x73, 0x73, - 0x69, 0x6f, 0x6e, 0x7d, 0x20, 0x2f, 0x3e, 0x20, 0x43, 0x6f, 0x6d, 0x70, - 0x6c, 0x65, 0x74, 0x69, 0x6f, 0x6e, 0x3c, 0x2f, 0x6c, 0x61, 0x62, 0x65, - 0x6c, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x64, 0x69, 0x76, 0x3e, 0x0a, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x66, 0x69, - 0x65, 0x6c, 0x64, 0x73, 0x65, 0x74, 0x3e, 0x0a, 0x0a, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x24, 0x7b, 0x73, 0x65, 0x73, - 0x73, 0x69, 0x6f, 0x6e, 0x2e, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x2e, 0x74, - 0x79, 0x70, 0x65, 0x20, 0x3d, 0x3d, 0x3d, 0x20, 0x27, 0x63, 0x68, 0x61, - 0x74, 0x27, 0x20, 0x3f, 0x20, 0x43, 0x68, 0x61, 0x74, 0x43, 0x6f, 0x6e, - 0x66, 0x69, 0x67, 0x46, 0x6f, 0x72, 0x6d, 0x28, 0x29, 0x20, 0x3a, 0x20, - 0x43, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x6f, - 0x6e, 0x66, 0x69, 0x67, 0x46, 0x6f, 0x72, 0x6d, 0x28, 0x29, 0x7d, 0x0a, - 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, - 0x66, 0x69, 0x65, 0x6c, 0x64, 0x73, 0x65, 0x74, 0x20, 0x63, 0x6c, 0x61, - 0x73, 0x73, 0x3d, 0x22, 0x74, 0x77, 0x6f, 0x22, 0x3e, 0x0a, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x24, 0x7b, - 0x49, 0x6e, 0x74, 0x46, 0x69, 0x65, 0x6c, 0x64, 0x28, 0x7b, 0x6c, 0x61, - 0x62, 0x65, 0x6c, 0x3a, 0x20, 0x22, 0x50, 0x72, 0x65, 0x64, 0x69, 0x63, - 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x22, 0x2c, 0x20, 0x6d, 0x61, 0x78, 0x3a, - 0x20, 0x32, 0x30, 0x34, 0x38, 0x2c, 0x20, 0x6d, 0x69, 0x6e, 0x3a, 0x20, - 0x2d, 0x31, 0x2c, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3a, 0x20, 0x22, 0x6e, - 0x5f, 0x70, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x22, 0x2c, 0x20, 0x76, - 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x20, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x73, - 0x2e, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x2e, 0x6e, 0x5f, 0x70, 0x72, 0x65, - 0x64, 0x69, 0x63, 0x74, 0x7d, 0x29, 0x7d, 0x0a, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x24, 0x7b, 0x46, 0x6c, - 0x6f, 0x61, 0x74, 0x46, 0x69, 0x65, 0x6c, 0x64, 0x28, 0x7b, 0x6c, 0x61, - 0x62, 0x65, 0x6c, 0x3a, 0x20, 0x22, 0x54, 0x65, 0x6d, 0x70, 0x65, 0x72, - 0x61, 0x74, 0x75, 0x72, 0x65, 0x22, 0x2c, 0x20, 0x6d, 0x61, 0x78, 0x3a, - 0x20, 0x31, 0x2e, 0x35, 0x2c, 0x20, 0x6d, 0x69, 0x6e, 0x3a, 0x20, 0x30, - 0x2e, 0x30, 0x2c, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3a, 0x20, 0x22, 0x74, - 0x65, 0x6d, 0x70, 0x65, 0x72, 0x61, 0x74, 0x75, 0x72, 0x65, 0x22, 0x2c, - 0x20, 0x73, 0x74, 0x65, 0x70, 0x3a, 0x20, 0x30, 0x2e, 0x30, 0x31, 0x2c, - 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x20, 0x70, 0x61, 0x72, 0x61, - 0x6d, 0x73, 0x2e, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x2e, 0x74, 0x65, 0x6d, - 0x70, 0x65, 0x72, 0x61, 0x74, 0x75, 0x72, 0x65, 0x7d, 0x29, 0x7d, 0x0a, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x24, 0x7b, 0x46, 0x6c, 0x6f, 0x61, 0x74, 0x46, 0x69, 0x65, 0x6c, 0x64, - 0x28, 0x7b, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x3a, 0x20, 0x22, 0x50, 0x65, - 0x6e, 0x61, 0x6c, 0x69, 0x7a, 0x65, 0x20, 0x72, 0x65, 0x70, 0x65, 0x61, - 0x74, 0x20, 0x73, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x22, 0x2c, - 0x20, 0x6d, 0x61, 0x78, 0x3a, 0x20, 0x32, 0x2e, 0x30, 0x2c, 0x20, 0x6d, - 0x69, 0x6e, 0x3a, 0x20, 0x30, 0x2e, 0x30, 0x2c, 0x20, 0x6e, 0x61, 0x6d, - 0x65, 0x3a, 0x20, 0x22, 0x72, 0x65, 0x70, 0x65, 0x61, 0x74, 0x5f, 0x70, - 0x65, 0x6e, 0x61, 0x6c, 0x74, 0x79, 0x22, 0x2c, 0x20, 0x73, 0x74, 0x65, - 0x70, 0x3a, 0x20, 0x30, 0x2e, 0x30, 0x31, 0x2c, 0x20, 0x76, 0x61, 0x6c, - 0x75, 0x65, 0x3a, 0x20, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x2e, 0x76, - 0x61, 0x6c, 0x75, 0x65, 0x2e, 0x72, 0x65, 0x70, 0x65, 0x61, 0x74, 0x5f, - 0x70, 0x65, 0x6e, 0x61, 0x6c, 0x74, 0x79, 0x7d, 0x29, 0x7d, 0x0a, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x24, - 0x7b, 0x49, 0x6e, 0x74, 0x46, 0x69, 0x65, 0x6c, 0x64, 0x28, 0x7b, 0x6c, - 0x61, 0x62, 0x65, 0x6c, 0x3a, 0x20, 0x22, 0x43, 0x6f, 0x6e, 0x73, 0x69, - 0x64, 0x65, 0x72, 0x20, 0x4e, 0x20, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x73, - 0x20, 0x66, 0x6f, 0x72, 0x20, 0x70, 0x65, 0x6e, 0x61, 0x6c, 0x69, 0x7a, - 0x65, 0x22, 0x2c, 0x20, 0x6d, 0x61, 0x78, 0x3a, 0x20, 0x32, 0x30, 0x34, - 0x38, 0x2c, 0x20, 0x6d, 0x69, 0x6e, 0x3a, 0x20, 0x30, 0x2c, 0x20, 0x6e, - 0x61, 0x6d, 0x65, 0x3a, 0x20, 0x22, 0x72, 0x65, 0x70, 0x65, 0x61, 0x74, - 0x5f, 0x6c, 0x61, 0x73, 0x74, 0x5f, 0x6e, 0x22, 0x2c, 0x20, 0x76, 0x61, - 0x6c, 0x75, 0x65, 0x3a, 0x20, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x2e, - 0x76, 0x61, 0x6c, 0x75, 0x65, 0x2e, 0x72, 0x65, 0x70, 0x65, 0x61, 0x74, - 0x5f, 0x6c, 0x61, 0x73, 0x74, 0x5f, 0x6e, 0x7d, 0x29, 0x7d, 0x0a, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x24, - 0x7b, 0x49, 0x6e, 0x74, 0x46, 0x69, 0x65, 0x6c, 0x64, 0x28, 0x7b, 0x6c, - 0x61, 0x62, 0x65, 0x6c, 0x3a, 0x20, 0x22, 0x54, 0x6f, 0x70, 0x2d, 0x4b, - 0x20, 0x73, 0x61, 0x6d, 0x70, 0x6c, 0x69, 0x6e, 0x67, 0x22, 0x2c, 0x20, - 0x6d, 0x61, 0x78, 0x3a, 0x20, 0x31, 0x30, 0x30, 0x2c, 0x20, 0x6d, 0x69, - 0x6e, 0x3a, 0x20, 0x2d, 0x31, 0x2c, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3a, - 0x20, 0x22, 0x74, 0x6f, 0x70, 0x5f, 0x6b, 0x22, 0x2c, 0x20, 0x76, 0x61, - 0x6c, 0x75, 0x65, 0x3a, 0x20, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x2e, - 0x76, 0x61, 0x6c, 0x75, 0x65, 0x2e, 0x74, 0x6f, 0x70, 0x5f, 0x6b, 0x7d, - 0x29, 0x7d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x24, 0x7b, 0x46, 0x6c, 0x6f, 0x61, 0x74, 0x46, 0x69, - 0x65, 0x6c, 0x64, 0x28, 0x7b, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x3a, 0x20, - 0x22, 0x54, 0x6f, 0x70, 0x2d, 0x50, 0x20, 0x73, 0x61, 0x6d, 0x70, 0x6c, - 0x69, 0x6e, 0x67, 0x22, 0x2c, 0x20, 0x6d, 0x61, 0x78, 0x3a, 0x20, 0x31, - 0x2e, 0x30, 0x2c, 0x20, 0x6d, 0x69, 0x6e, 0x3a, 0x20, 0x30, 0x2e, 0x30, - 0x2c, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3a, 0x20, 0x22, 0x74, 0x6f, 0x70, - 0x5f, 0x70, 0x22, 0x2c, 0x20, 0x73, 0x74, 0x65, 0x70, 0x3a, 0x20, 0x30, - 0x2e, 0x30, 0x31, 0x2c, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x20, - 0x70, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x2e, 0x76, 0x61, 0x6c, 0x75, 0x65, - 0x2e, 0x74, 0x6f, 0x70, 0x5f, 0x70, 0x7d, 0x29, 0x7d, 0x0a, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x66, 0x69, - 0x65, 0x6c, 0x64, 0x73, 0x65, 0x74, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x64, 0x65, 0x74, 0x61, 0x69, - 0x6c, 0x73, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x3c, 0x73, 0x75, 0x6d, 0x6d, 0x61, 0x72, 0x79, - 0x3e, 0x4d, 0x6f, 0x72, 0x65, 0x20, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, - 0x73, 0x3c, 0x2f, 0x73, 0x75, 0x6d, 0x6d, 0x61, 0x72, 0x79, 0x3e, 0x0a, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x3c, 0x66, 0x69, 0x65, 0x6c, 0x64, 0x73, 0x65, 0x74, 0x20, 0x63, 0x6c, - 0x61, 0x73, 0x73, 0x3d, 0x22, 0x74, 0x77, 0x6f, 0x22, 0x3e, 0x0a, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x24, 0x7b, 0x46, 0x6c, 0x6f, 0x61, 0x74, 0x46, 0x69, 0x65, 0x6c, - 0x64, 0x28, 0x7b, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x3a, 0x20, 0x22, 0x54, - 0x46, 0x53, 0x2d, 0x5a, 0x22, 0x2c, 0x20, 0x6d, 0x61, 0x78, 0x3a, 0x20, - 0x31, 0x2e, 0x30, 0x2c, 0x20, 0x6d, 0x69, 0x6e, 0x3a, 0x20, 0x30, 0x2e, - 0x30, 0x2c, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3a, 0x20, 0x22, 0x74, 0x66, - 0x73, 0x5f, 0x7a, 0x22, 0x2c, 0x20, 0x73, 0x74, 0x65, 0x70, 0x3a, 0x20, - 0x30, 0x2e, 0x30, 0x31, 0x2c, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, - 0x20, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x2e, 0x76, 0x61, 0x6c, 0x75, - 0x65, 0x2e, 0x74, 0x66, 0x73, 0x5f, 0x7a, 0x7d, 0x29, 0x7d, 0x0a, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x24, 0x7b, 0x46, 0x6c, 0x6f, 0x61, 0x74, 0x46, 0x69, 0x65, 0x6c, - 0x64, 0x28, 0x7b, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x3a, 0x20, 0x22, 0x54, - 0x79, 0x70, 0x69, 0x63, 0x61, 0x6c, 0x20, 0x50, 0x22, 0x2c, 0x20, 0x6d, - 0x61, 0x78, 0x3a, 0x20, 0x31, 0x2e, 0x30, 0x2c, 0x20, 0x6d, 0x69, 0x6e, - 0x3a, 0x20, 0x30, 0x2e, 0x30, 0x2c, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3a, - 0x20, 0x22, 0x74, 0x79, 0x70, 0x69, 0x63, 0x61, 0x6c, 0x5f, 0x70, 0x22, - 0x2c, 0x20, 0x73, 0x74, 0x65, 0x70, 0x3a, 0x20, 0x30, 0x2e, 0x30, 0x31, - 0x2c, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x20, 0x70, 0x61, 0x72, - 0x61, 0x6d, 0x73, 0x2e, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x2e, 0x74, 0x79, - 0x70, 0x69, 0x63, 0x61, 0x6c, 0x5f, 0x70, 0x7d, 0x29, 0x7d, 0x0a, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x24, 0x7b, 0x46, 0x6c, 0x6f, 0x61, 0x74, 0x46, 0x69, 0x65, 0x6c, - 0x64, 0x28, 0x7b, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x3a, 0x20, 0x22, 0x50, - 0x72, 0x65, 0x73, 0x65, 0x6e, 0x63, 0x65, 0x20, 0x70, 0x65, 0x6e, 0x61, - 0x6c, 0x74, 0x79, 0x22, 0x2c, 0x20, 0x6d, 0x61, 0x78, 0x3a, 0x20, 0x31, - 0x2e, 0x30, 0x2c, 0x20, 0x6d, 0x69, 0x6e, 0x3a, 0x20, 0x30, 0x2e, 0x30, - 0x2c, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3a, 0x20, 0x22, 0x70, 0x72, 0x65, - 0x73, 0x65, 0x6e, 0x63, 0x65, 0x5f, 0x70, 0x65, 0x6e, 0x61, 0x6c, 0x74, - 0x79, 0x22, 0x2c, 0x20, 0x73, 0x74, 0x65, 0x70, 0x3a, 0x20, 0x30, 0x2e, - 0x30, 0x31, 0x2c, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x20, 0x70, - 0x61, 0x72, 0x61, 0x6d, 0x73, 0x2e, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x2e, - 0x70, 0x72, 0x65, 0x73, 0x65, 0x6e, 0x63, 0x65, 0x5f, 0x70, 0x65, 0x6e, - 0x61, 0x6c, 0x74, 0x79, 0x7d, 0x29, 0x7d, 0x0a, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x24, 0x7b, - 0x46, 0x6c, 0x6f, 0x61, 0x74, 0x46, 0x69, 0x65, 0x6c, 0x64, 0x28, 0x7b, - 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x3a, 0x20, 0x22, 0x46, 0x72, 0x65, 0x71, - 0x75, 0x65, 0x6e, 0x63, 0x79, 0x20, 0x70, 0x65, 0x6e, 0x61, 0x6c, 0x74, - 0x79, 0x22, 0x2c, 0x20, 0x6d, 0x61, 0x78, 0x3a, 0x20, 0x31, 0x2e, 0x30, - 0x2c, 0x20, 0x6d, 0x69, 0x6e, 0x3a, 0x20, 0x30, 0x2e, 0x30, 0x2c, 0x20, - 0x6e, 0x61, 0x6d, 0x65, 0x3a, 0x20, 0x22, 0x66, 0x72, 0x65, 0x71, 0x75, - 0x65, 0x6e, 0x63, 0x79, 0x5f, 0x70, 0x65, 0x6e, 0x61, 0x6c, 0x74, 0x79, - 0x22, 0x2c, 0x20, 0x73, 0x74, 0x65, 0x70, 0x3a, 0x20, 0x30, 0x2e, 0x30, - 0x31, 0x2c, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x20, 0x70, 0x61, - 0x72, 0x61, 0x6d, 0x73, 0x2e, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x2e, 0x66, - 0x72, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x79, 0x5f, 0x70, 0x65, 0x6e, - 0x61, 0x6c, 0x74, 0x79, 0x7d, 0x29, 0x7d, 0x0a, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x66, 0x69, - 0x65, 0x6c, 0x64, 0x73, 0x65, 0x74, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x68, 0x72, 0x20, - 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x3c, 0x66, 0x69, 0x65, 0x6c, 0x64, 0x73, 0x65, 0x74, - 0x20, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x3d, 0x22, 0x74, 0x68, 0x72, 0x65, - 0x65, 0x22, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x64, 0x69, 0x76, 0x3e, 0x0a, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x3c, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x3e, 0x3c, - 0x69, 0x6e, 0x70, 0x75, 0x74, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, - 0x72, 0x61, 0x64, 0x69, 0x6f, 0x22, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, - 0x22, 0x6d, 0x69, 0x72, 0x6f, 0x73, 0x74, 0x61, 0x74, 0x22, 0x20, 0x76, - 0x61, 0x6c, 0x75, 0x65, 0x3d, 0x22, 0x30, 0x22, 0x20, 0x63, 0x68, 0x65, - 0x63, 0x6b, 0x65, 0x64, 0x3d, 0x24, 0x7b, 0x70, 0x61, 0x72, 0x61, 0x6d, - 0x73, 0x2e, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x2e, 0x6d, 0x69, 0x72, 0x6f, - 0x73, 0x74, 0x61, 0x74, 0x20, 0x3d, 0x3d, 0x20, 0x30, 0x7d, 0x20, 0x6f, - 0x6e, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x3d, 0x24, 0x7b, 0x75, 0x70, 0x64, - 0x61, 0x74, 0x65, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x49, 0x6e, 0x74, - 0x7d, 0x20, 0x2f, 0x3e, 0x20, 0x6e, 0x6f, 0x20, 0x4d, 0x69, 0x72, 0x6f, - 0x73, 0x74, 0x61, 0x74, 0x3c, 0x2f, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x3e, - 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x3e, - 0x3c, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, - 0x22, 0x72, 0x61, 0x64, 0x69, 0x6f, 0x22, 0x20, 0x6e, 0x61, 0x6d, 0x65, - 0x3d, 0x22, 0x6d, 0x69, 0x72, 0x6f, 0x73, 0x74, 0x61, 0x74, 0x22, 0x20, - 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3d, 0x22, 0x31, 0x22, 0x20, 0x63, 0x68, - 0x65, 0x63, 0x6b, 0x65, 0x64, 0x3d, 0x24, 0x7b, 0x70, 0x61, 0x72, 0x61, - 0x6d, 0x73, 0x2e, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x2e, 0x6d, 0x69, 0x72, - 0x6f, 0x73, 0x74, 0x61, 0x74, 0x20, 0x3d, 0x3d, 0x20, 0x31, 0x7d, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x20, + 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x72, 0x61, 0x6e, 0x67, 0x65, 0x22, + 0x20, 0x69, 0x64, 0x3d, 0x22, 0x24, 0x7b, 0x6e, 0x61, 0x6d, 0x65, 0x7d, + 0x22, 0x20, 0x6d, 0x69, 0x6e, 0x3d, 0x22, 0x24, 0x7b, 0x6d, 0x69, 0x6e, + 0x7d, 0x22, 0x20, 0x6d, 0x61, 0x78, 0x3d, 0x22, 0x24, 0x7b, 0x6d, 0x61, + 0x78, 0x7d, 0x22, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x24, 0x7b, + 0x6e, 0x61, 0x6d, 0x65, 0x7d, 0x22, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, + 0x3d, 0x22, 0x24, 0x7b, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x7d, 0x22, 0x20, 0x6f, 0x6e, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x3d, 0x24, 0x7b, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x49, 0x6e, - 0x74, 0x7d, 0x20, 0x2f, 0x3e, 0x20, 0x4d, 0x69, 0x72, 0x6f, 0x73, 0x74, - 0x61, 0x74, 0x20, 0x76, 0x31, 0x3c, 0x2f, 0x6c, 0x61, 0x62, 0x65, 0x6c, - 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x6c, 0x61, 0x62, 0x65, 0x6c, - 0x3e, 0x3c, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x20, 0x74, 0x79, 0x70, 0x65, - 0x3d, 0x22, 0x72, 0x61, 0x64, 0x69, 0x6f, 0x22, 0x20, 0x6e, 0x61, 0x6d, - 0x65, 0x3d, 0x22, 0x6d, 0x69, 0x72, 0x6f, 0x73, 0x74, 0x61, 0x74, 0x22, - 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3d, 0x22, 0x32, 0x22, 0x20, 0x63, - 0x68, 0x65, 0x63, 0x6b, 0x65, 0x64, 0x3d, 0x24, 0x7b, 0x70, 0x61, 0x72, - 0x61, 0x6d, 0x73, 0x2e, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x2e, 0x6d, 0x69, - 0x72, 0x6f, 0x73, 0x74, 0x61, 0x74, 0x20, 0x3d, 0x3d, 0x20, 0x32, 0x7d, - 0x20, 0x6f, 0x6e, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x3d, 0x24, 0x7b, 0x75, - 0x70, 0x64, 0x61, 0x74, 0x65, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x49, - 0x6e, 0x74, 0x7d, 0x20, 0x2f, 0x3e, 0x20, 0x4d, 0x69, 0x72, 0x6f, 0x73, - 0x74, 0x61, 0x74, 0x20, 0x76, 0x32, 0x3c, 0x2f, 0x6c, 0x61, 0x62, 0x65, - 0x6c, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x64, 0x69, 0x76, 0x3e, 0x0a, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x24, 0x7b, 0x46, 0x6c, 0x6f, 0x61, 0x74, 0x46, 0x69, 0x65, - 0x6c, 0x64, 0x28, 0x7b, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x3a, 0x20, 0x22, - 0x4d, 0x69, 0x72, 0x6f, 0x73, 0x74, 0x61, 0x74, 0x20, 0x74, 0x61, 0x75, - 0x22, 0x2c, 0x20, 0x6d, 0x61, 0x78, 0x3a, 0x20, 0x31, 0x30, 0x2e, 0x30, - 0x2c, 0x20, 0x6d, 0x69, 0x6e, 0x3a, 0x20, 0x30, 0x2e, 0x30, 0x2c, 0x20, - 0x6e, 0x61, 0x6d, 0x65, 0x3a, 0x20, 0x22, 0x6d, 0x69, 0x72, 0x6f, 0x73, - 0x74, 0x61, 0x74, 0x5f, 0x74, 0x61, 0x75, 0x22, 0x2c, 0x20, 0x73, 0x74, - 0x65, 0x70, 0x3a, 0x20, 0x30, 0x2e, 0x30, 0x31, 0x2c, 0x20, 0x76, 0x61, - 0x6c, 0x75, 0x65, 0x3a, 0x20, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x2e, - 0x76, 0x61, 0x6c, 0x75, 0x65, 0x2e, 0x6d, 0x69, 0x72, 0x6f, 0x73, 0x74, - 0x61, 0x74, 0x5f, 0x74, 0x61, 0x75, 0x7d, 0x29, 0x7d, 0x0a, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x24, 0x7b, 0x46, 0x6c, 0x6f, 0x61, 0x74, 0x46, 0x69, 0x65, 0x6c, 0x64, - 0x28, 0x7b, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x3a, 0x20, 0x22, 0x4d, 0x69, - 0x72, 0x6f, 0x73, 0x74, 0x61, 0x74, 0x20, 0x65, 0x74, 0x61, 0x22, 0x2c, - 0x20, 0x6d, 0x61, 0x78, 0x3a, 0x20, 0x31, 0x2e, 0x30, 0x2c, 0x20, 0x6d, - 0x69, 0x6e, 0x3a, 0x20, 0x30, 0x2e, 0x30, 0x2c, 0x20, 0x6e, 0x61, 0x6d, - 0x65, 0x3a, 0x20, 0x22, 0x6d, 0x69, 0x72, 0x6f, 0x73, 0x74, 0x61, 0x74, - 0x5f, 0x65, 0x74, 0x61, 0x22, 0x2c, 0x20, 0x73, 0x74, 0x65, 0x70, 0x3a, - 0x20, 0x30, 0x2e, 0x30, 0x31, 0x2c, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, - 0x3a, 0x20, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x2e, 0x76, 0x61, 0x6c, - 0x75, 0x65, 0x2e, 0x6d, 0x69, 0x72, 0x6f, 0x73, 0x74, 0x61, 0x74, 0x5f, - 0x65, 0x74, 0x61, 0x7d, 0x29, 0x7d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x66, 0x69, 0x65, - 0x6c, 0x64, 0x73, 0x65, 0x74, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x66, 0x69, 0x65, 0x6c, - 0x64, 0x73, 0x65, 0x74, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x24, 0x7b, 0x49, 0x6e, - 0x74, 0x46, 0x69, 0x65, 0x6c, 0x64, 0x28, 0x7b, 0x6c, 0x61, 0x62, 0x65, - 0x6c, 0x3a, 0x20, 0x22, 0x53, 0x68, 0x6f, 0x77, 0x20, 0x50, 0x72, 0x6f, - 0x62, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x69, 0x65, 0x73, 0x22, 0x2c, - 0x20, 0x6d, 0x61, 0x78, 0x3a, 0x20, 0x31, 0x30, 0x2c, 0x20, 0x6d, 0x69, - 0x6e, 0x3a, 0x20, 0x30, 0x2c, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3a, 0x20, - 0x22, 0x6e, 0x5f, 0x70, 0x72, 0x6f, 0x62, 0x73, 0x22, 0x2c, 0x20, 0x76, - 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x20, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x73, - 0x2e, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x2e, 0x6e, 0x5f, 0x70, 0x72, 0x6f, - 0x62, 0x73, 0x7d, 0x29, 0x7d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x66, 0x69, 0x65, 0x6c, - 0x64, 0x73, 0x65, 0x74, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x64, 0x65, 0x74, 0x61, 0x69, 0x6c, - 0x73, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, - 0x2f, 0x66, 0x6f, 0x72, 0x6d, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x60, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x7d, 0x0a, 0x0a, 0x20, 0x20, - 0x20, 0x20, 0x63, 0x6f, 0x6e, 0x73, 0x74, 0x20, 0x70, 0x72, 0x6f, 0x62, - 0x43, 0x6f, 0x6c, 0x6f, 0x72, 0x20, 0x3d, 0x20, 0x28, 0x70, 0x29, 0x20, - 0x3d, 0x3e, 0x20, 0x7b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x63, - 0x6f, 0x6e, 0x73, 0x74, 0x20, 0x72, 0x20, 0x3d, 0x20, 0x4d, 0x61, 0x74, - 0x68, 0x2e, 0x66, 0x6c, 0x6f, 0x6f, 0x72, 0x28, 0x31, 0x39, 0x32, 0x20, - 0x2a, 0x20, 0x28, 0x31, 0x20, 0x2d, 0x20, 0x70, 0x29, 0x29, 0x3b, 0x0a, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x63, 0x6f, 0x6e, 0x73, 0x74, 0x20, - 0x67, 0x20, 0x3d, 0x20, 0x4d, 0x61, 0x74, 0x68, 0x2e, 0x66, 0x6c, 0x6f, - 0x6f, 0x72, 0x28, 0x31, 0x39, 0x32, 0x20, 0x2a, 0x20, 0x70, 0x29, 0x3b, - 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x72, 0x65, 0x74, 0x75, 0x72, - 0x6e, 0x20, 0x60, 0x72, 0x67, 0x62, 0x61, 0x28, 0x24, 0x7b, 0x72, 0x7d, - 0x2c, 0x24, 0x7b, 0x67, 0x7d, 0x2c, 0x30, 0x2c, 0x30, 0x2e, 0x33, 0x29, - 0x60, 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x7d, 0x0a, 0x0a, 0x20, 0x20, - 0x20, 0x20, 0x63, 0x6f, 0x6e, 0x73, 0x74, 0x20, 0x50, 0x72, 0x6f, 0x62, - 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x69, 0x65, 0x73, 0x20, 0x3d, 0x20, - 0x28, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x29, 0x20, 0x3d, 0x3e, 0x20, - 0x7b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x72, 0x65, 0x74, 0x75, - 0x72, 0x6e, 0x20, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x2e, 0x64, 0x61, - 0x74, 0x61, 0x2e, 0x6d, 0x61, 0x70, 0x28, 0x6d, 0x73, 0x67, 0x20, 0x3d, - 0x3e, 0x20, 0x7b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x63, 0x6f, 0x6e, 0x73, 0x74, 0x20, 0x7b, 0x20, 0x63, 0x6f, 0x6d, 0x70, - 0x6c, 0x65, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x70, 0x72, 0x6f, 0x62, 0x61, - 0x62, 0x69, 0x6c, 0x69, 0x74, 0x69, 0x65, 0x73, 0x20, 0x7d, 0x20, 0x3d, - 0x20, 0x6d, 0x73, 0x67, 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x69, 0x66, 0x20, 0x28, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x21, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, - 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x70, 0x72, 0x6f, 0x62, 0x61, 0x62, 0x69, - 0x6c, 0x69, 0x74, 0x69, 0x65, 0x73, 0x20, 0x7c, 0x7c, 0x0a, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x63, 0x6f, 0x6d, 0x70, - 0x6c, 0x65, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x70, 0x72, 0x6f, 0x62, 0x61, - 0x62, 0x69, 0x6c, 0x69, 0x74, 0x69, 0x65, 0x73, 0x2e, 0x6c, 0x65, 0x6e, - 0x67, 0x74, 0x68, 0x20, 0x3d, 0x3d, 0x3d, 0x20, 0x30, 0x0a, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x29, 0x20, 0x72, 0x65, 0x74, 0x75, - 0x72, 0x6e, 0x20, 0x6d, 0x73, 0x67, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, - 0x6e, 0x74, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x69, 0x66, 0x20, 0x28, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x69, - 0x6f, 0x6e, 0x5f, 0x70, 0x72, 0x6f, 0x62, 0x61, 0x62, 0x69, 0x6c, 0x69, - 0x74, 0x69, 0x65, 0x73, 0x2e, 0x6c, 0x65, 0x6e, 0x67, 0x74, 0x68, 0x20, - 0x3e, 0x20, 0x31, 0x29, 0x20, 0x7b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x2f, 0x2f, 0x20, 0x4e, 0x6f, 0x74, 0x20, - 0x66, 0x6f, 0x72, 0x20, 0x62, 0x79, 0x74, 0x65, 0x20, 0x70, 0x61, 0x69, - 0x72, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x69, 0x66, 0x20, 0x28, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x69, - 0x6f, 0x6e, 0x5f, 0x70, 0x72, 0x6f, 0x62, 0x61, 0x62, 0x69, 0x6c, 0x69, - 0x74, 0x69, 0x65, 0x73, 0x5b, 0x30, 0x5d, 0x2e, 0x63, 0x6f, 0x6e, 0x74, - 0x65, 0x6e, 0x74, 0x2e, 0x73, 0x74, 0x61, 0x72, 0x74, 0x73, 0x57, 0x69, - 0x74, 0x68, 0x28, 0x27, 0x62, 0x79, 0x74, 0x65, 0x3a, 0x20, 0x5c, 0x5c, - 0x27, 0x29, 0x29, 0x20, 0x72, 0x65, 0x74, 0x75, 0x72, 0x6e, 0x20, 0x6d, - 0x73, 0x67, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x0a, 0x0a, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x63, 0x6f, - 0x6e, 0x73, 0x74, 0x20, 0x73, 0x70, 0x6c, 0x69, 0x74, 0x44, 0x61, 0x74, - 0x61, 0x20, 0x3d, 0x20, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x69, - 0x6f, 0x6e, 0x5f, 0x70, 0x72, 0x6f, 0x62, 0x61, 0x62, 0x69, 0x6c, 0x69, - 0x74, 0x69, 0x65, 0x73, 0x2e, 0x6d, 0x61, 0x70, 0x28, 0x70, 0x72, 0x6f, - 0x62, 0x20, 0x3d, 0x3e, 0x20, 0x28, 0x7b, 0x0a, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x63, 0x6f, 0x6e, 0x74, - 0x65, 0x6e, 0x74, 0x3a, 0x20, 0x70, 0x72, 0x6f, 0x62, 0x2e, 0x63, 0x6f, - 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x2c, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x63, 0x6f, 0x6d, 0x70, 0x6c, - 0x65, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x70, 0x72, 0x6f, 0x62, 0x61, 0x62, - 0x69, 0x6c, 0x69, 0x74, 0x69, 0x65, 0x73, 0x3a, 0x20, 0x5b, 0x70, 0x72, - 0x6f, 0x62, 0x5d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x7d, 0x29, 0x29, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x74, 0x7d, 0x20, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x73, 0x70, 0x61, 0x6e, 0x3e, + 0x24, 0x7b, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x7d, 0x3c, 0x2f, 0x73, 0x70, + 0x61, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x2f, 0x64, 0x69, 0x76, 0x3e, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x60, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x7d, 0x3b, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x63, + 0x6f, 0x6e, 0x73, 0x74, 0x20, 0x75, 0x73, 0x65, 0x72, 0x54, 0x65, 0x6d, + 0x70, 0x6c, 0x61, 0x74, 0x65, 0x52, 0x65, 0x73, 0x65, 0x74, 0x20, 0x3d, + 0x20, 0x28, 0x65, 0x29, 0x20, 0x3d, 0x3e, 0x20, 0x7b, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x65, 0x2e, 0x70, 0x72, 0x65, 0x76, + 0x65, 0x6e, 0x74, 0x44, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x28, 0x29, + 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x75, 0x73, + 0x65, 0x72, 0x54, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x52, 0x65, + 0x73, 0x65, 0x74, 0x54, 0x6f, 0x44, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, + 0x41, 0x6e, 0x64, 0x41, 0x70, 0x70, 0x6c, 0x79, 0x28, 0x29, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x7d, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x63, 0x6f, 0x6e, 0x73, 0x74, 0x20, 0x55, 0x73, 0x65, 0x72, + 0x54, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x52, 0x65, 0x73, 0x65, + 0x74, 0x42, 0x75, 0x74, 0x74, 0x6f, 0x6e, 0x20, 0x3d, 0x20, 0x28, 0x29, + 0x20, 0x3d, 0x3e, 0x20, 0x7b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x69, 0x66, 0x20, 0x28, 0x73, 0x65, 0x6c, 0x65, 0x63, 0x74, + 0x65, 0x64, 0x55, 0x73, 0x65, 0x72, 0x54, 0x65, 0x6d, 0x70, 0x6c, 0x61, + 0x74, 0x65, 0x2e, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x2e, 0x6e, 0x61, 0x6d, + 0x65, 0x20, 0x3d, 0x3d, 0x20, 0x27, 0x64, 0x65, 0x66, 0x61, 0x75, 0x6c, + 0x74, 0x27, 0x29, 0x20, 0x7b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x72, 0x65, 0x74, 0x75, 0x72, 0x6e, 0x20, 0x68, - 0x74, 0x6d, 0x6c, 0x60, 0x3c, 0x24, 0x7b, 0x50, 0x72, 0x6f, 0x62, 0x61, - 0x62, 0x69, 0x6c, 0x69, 0x74, 0x69, 0x65, 0x73, 0x7d, 0x20, 0x64, 0x61, - 0x74, 0x61, 0x3d, 0x24, 0x7b, 0x73, 0x70, 0x6c, 0x69, 0x74, 0x44, 0x61, - 0x74, 0x61, 0x7d, 0x20, 0x2f, 0x3e, 0x60, 0x0a, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x7d, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x63, 0x6f, 0x6e, 0x73, 0x74, 0x20, 0x7b, 0x20, 0x70, - 0x72, 0x6f, 0x62, 0x73, 0x2c, 0x20, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, - 0x74, 0x20, 0x7d, 0x20, 0x3d, 0x20, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, - 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x70, 0x72, 0x6f, 0x62, 0x61, 0x62, 0x69, - 0x6c, 0x69, 0x74, 0x69, 0x65, 0x73, 0x5b, 0x30, 0x5d, 0x0a, 0x20, 0x20, + 0x74, 0x6d, 0x6c, 0x60, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x62, 0x75, 0x74, 0x74, 0x6f, 0x6e, + 0x20, 0x64, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x3e, 0x55, 0x73, + 0x69, 0x6e, 0x67, 0x20, 0x64, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x20, + 0x74, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x3c, 0x2f, 0x62, 0x75, + 0x74, 0x74, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x60, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x7d, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x72, 0x65, 0x74, 0x75, 0x72, 0x6e, 0x20, 0x68, 0x74, 0x6d, 0x6c, + 0x60, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x62, 0x75, 0x74, 0x74, 0x6f, 0x6e, 0x20, 0x6f, 0x6e, 0x63, 0x6c, + 0x69, 0x63, 0x6b, 0x3d, 0x24, 0x7b, 0x75, 0x73, 0x65, 0x72, 0x54, 0x65, + 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x52, 0x65, 0x73, 0x65, 0x74, 0x7d, + 0x3e, 0x52, 0x65, 0x73, 0x65, 0x74, 0x20, 0x61, 0x6c, 0x6c, 0x20, 0x74, + 0x6f, 0x20, 0x64, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x3c, 0x2f, 0x62, + 0x75, 0x74, 0x74, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x60, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x7d, + 0x3b, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x75, 0x73, 0x65, + 0x45, 0x66, 0x66, 0x65, 0x63, 0x74, 0x28, 0x28, 0x29, 0x20, 0x3d, 0x3e, + 0x20, 0x7b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x2f, + 0x2f, 0x20, 0x61, 0x75, 0x74, 0x6f, 0x73, 0x61, 0x76, 0x65, 0x20, 0x74, + 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x20, 0x6f, 0x6e, 0x20, 0x65, + 0x76, 0x65, 0x72, 0x79, 0x20, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x75, 0x73, 0x65, 0x72, + 0x54, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x41, 0x75, 0x74, 0x6f, + 0x73, 0x61, 0x76, 0x65, 0x28, 0x29, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x7d, 0x2c, 0x20, 0x5b, 0x73, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, + 0x2e, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x2c, 0x20, 0x70, 0x61, 0x72, 0x61, + 0x6d, 0x73, 0x2e, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x5d, 0x29, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x63, 0x6f, 0x6e, 0x73, 0x74, 0x20, - 0x66, 0x6f, 0x75, 0x6e, 0x64, 0x20, 0x3d, 0x20, 0x70, 0x72, 0x6f, 0x62, - 0x73, 0x2e, 0x66, 0x69, 0x6e, 0x64, 0x28, 0x70, 0x20, 0x3d, 0x3e, 0x20, - 0x70, 0x2e, 0x74, 0x6f, 0x6b, 0x5f, 0x73, 0x74, 0x72, 0x20, 0x3d, 0x3d, - 0x3d, 0x20, 0x6d, 0x73, 0x67, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, - 0x74, 0x29, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x63, - 0x6f, 0x6e, 0x73, 0x74, 0x20, 0x70, 0x43, 0x6f, 0x6c, 0x6f, 0x72, 0x20, - 0x3d, 0x20, 0x66, 0x6f, 0x75, 0x6e, 0x64, 0x20, 0x3f, 0x20, 0x70, 0x72, - 0x6f, 0x62, 0x43, 0x6f, 0x6c, 0x6f, 0x72, 0x28, 0x66, 0x6f, 0x75, 0x6e, - 0x64, 0x2e, 0x70, 0x72, 0x6f, 0x62, 0x29, 0x20, 0x3a, 0x20, 0x27, 0x74, - 0x72, 0x61, 0x6e, 0x73, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x27, 0x0a, - 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x63, 0x6f, 0x6e, - 0x73, 0x74, 0x20, 0x70, 0x6f, 0x70, 0x6f, 0x76, 0x65, 0x72, 0x43, 0x68, - 0x69, 0x6c, 0x64, 0x72, 0x65, 0x6e, 0x20, 0x3d, 0x20, 0x68, 0x74, 0x6d, + 0x47, 0x72, 0x61, 0x6d, 0x6d, 0x61, 0x72, 0x43, 0x6f, 0x6e, 0x74, 0x72, + 0x6f, 0x6c, 0x20, 0x3d, 0x20, 0x28, 0x29, 0x20, 0x3d, 0x3e, 0x20, 0x28, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x68, 0x74, 0x6d, 0x6c, 0x60, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x3c, 0x64, 0x69, 0x76, 0x20, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x3d, - 0x22, 0x70, 0x72, 0x6f, 0x62, 0x2d, 0x73, 0x65, 0x74, 0x22, 0x3e, 0x0a, + 0x20, 0x3c, 0x64, 0x69, 0x76, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x6c, 0x61, 0x62, 0x65, + 0x6c, 0x20, 0x66, 0x6f, 0x72, 0x3d, 0x22, 0x74, 0x65, 0x6d, 0x70, 0x6c, + 0x61, 0x74, 0x65, 0x22, 0x3e, 0x47, 0x72, 0x61, 0x6d, 0x6d, 0x61, 0x72, + 0x3c, 0x2f, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x3e, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x74, 0x65, + 0x78, 0x74, 0x61, 0x72, 0x65, 0x61, 0x20, 0x69, 0x64, 0x3d, 0x22, 0x67, + 0x72, 0x61, 0x6d, 0x6d, 0x61, 0x72, 0x22, 0x20, 0x6e, 0x61, 0x6d, 0x65, + 0x3d, 0x22, 0x67, 0x72, 0x61, 0x6d, 0x6d, 0x61, 0x72, 0x22, 0x20, 0x70, + 0x6c, 0x61, 0x63, 0x65, 0x68, 0x6f, 0x6c, 0x64, 0x65, 0x72, 0x3d, 0x22, + 0x55, 0x73, 0x65, 0x20, 0x67, 0x62, 0x6e, 0x66, 0x20, 0x6f, 0x72, 0x20, + 0x4a, 0x53, 0x4f, 0x4e, 0x20, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x2b, + 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x74, 0x22, 0x20, 0x76, 0x61, 0x6c, + 0x75, 0x65, 0x3d, 0x22, 0x24, 0x7b, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x73, + 0x2e, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x2e, 0x67, 0x72, 0x61, 0x6d, 0x6d, + 0x61, 0x72, 0x7d, 0x22, 0x20, 0x72, 0x6f, 0x77, 0x73, 0x3d, 0x34, 0x20, + 0x6f, 0x6e, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x3d, 0x24, 0x7b, 0x75, 0x70, + 0x64, 0x61, 0x74, 0x65, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x7d, 0x2f, + 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x20, 0x74, 0x79, 0x70, + 0x65, 0x3d, 0x22, 0x74, 0x65, 0x78, 0x74, 0x22, 0x20, 0x6e, 0x61, 0x6d, + 0x65, 0x3d, 0x22, 0x70, 0x72, 0x6f, 0x70, 0x2d, 0x6f, 0x72, 0x64, 0x65, + 0x72, 0x22, 0x20, 0x70, 0x6c, 0x61, 0x63, 0x65, 0x68, 0x6f, 0x6c, 0x64, + 0x65, 0x72, 0x3d, 0x22, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x3a, 0x20, 0x70, + 0x72, 0x6f, 0x70, 0x31, 0x2c, 0x70, 0x72, 0x6f, 0x70, 0x32, 0x2c, 0x70, + 0x72, 0x6f, 0x70, 0x33, 0x22, 0x20, 0x6f, 0x6e, 0x69, 0x6e, 0x70, 0x75, + 0x74, 0x3d, 0x24, 0x7b, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x47, 0x72, + 0x61, 0x6d, 0x6d, 0x61, 0x72, 0x4a, 0x73, 0x6f, 0x6e, 0x53, 0x63, 0x68, + 0x65, 0x6d, 0x61, 0x50, 0x72, 0x6f, 0x70, 0x4f, 0x72, 0x64, 0x65, 0x72, + 0x7d, 0x20, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x62, 0x75, 0x74, 0x74, 0x6f, 0x6e, + 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x62, 0x75, 0x74, 0x74, 0x6f, + 0x6e, 0x22, 0x20, 0x6f, 0x6e, 0x63, 0x6c, 0x69, 0x63, 0x6b, 0x3d, 0x24, + 0x7b, 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x74, 0x4a, 0x53, 0x4f, 0x4e, + 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x47, 0x72, 0x61, 0x6d, 0x6d, 0x61, + 0x72, 0x7d, 0x3e, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x74, 0x20, 0x4a, + 0x53, 0x4f, 0x4e, 0x20, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x3c, 0x2f, + 0x62, 0x75, 0x74, 0x74, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x64, 0x69, 0x76, 0x3e, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x60, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x29, 0x3b, 0x0a, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x63, 0x6f, 0x6e, 0x73, 0x74, 0x20, 0x50, + 0x72, 0x6f, 0x6d, 0x70, 0x74, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, + 0x46, 0x69, 0x65, 0x6c, 0x64, 0x53, 0x65, 0x74, 0x20, 0x3d, 0x20, 0x28, + 0x29, 0x20, 0x3d, 0x3e, 0x20, 0x28, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x68, 0x74, 0x6d, 0x6c, 0x60, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x66, 0x69, 0x65, 0x6c, 0x64, 0x73, + 0x65, 0x74, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x64, 0x69, 0x76, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x6c, 0x61, 0x62, + 0x65, 0x6c, 0x20, 0x68, 0x74, 0x6d, 0x6c, 0x46, 0x6f, 0x72, 0x3d, 0x22, + 0x70, 0x72, 0x6f, 0x6d, 0x70, 0x74, 0x22, 0x3e, 0x50, 0x72, 0x6f, 0x6d, + 0x70, 0x74, 0x3c, 0x2f, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x3e, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x74, 0x65, 0x78, 0x74, 0x61, 0x72, 0x65, 0x61, 0x20, 0x74, 0x79, 0x70, + 0x65, 0x3d, 0x22, 0x74, 0x65, 0x78, 0x74, 0x22, 0x20, 0x6e, 0x61, 0x6d, + 0x65, 0x3d, 0x22, 0x70, 0x72, 0x6f, 0x6d, 0x70, 0x74, 0x22, 0x20, 0x76, + 0x61, 0x6c, 0x75, 0x65, 0x3d, 0x22, 0x24, 0x7b, 0x73, 0x65, 0x73, 0x73, + 0x69, 0x6f, 0x6e, 0x2e, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x2e, 0x70, 0x72, + 0x6f, 0x6d, 0x70, 0x74, 0x7d, 0x22, 0x20, 0x6f, 0x6e, 0x69, 0x6e, 0x70, + 0x75, 0x74, 0x3d, 0x24, 0x7b, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x53, + 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x7d, 0x2f, 0x3e, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x64, 0x69, + 0x76, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x2f, 0x66, 0x69, 0x65, 0x6c, 0x64, 0x73, 0x65, 0x74, 0x3e, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x60, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x29, 0x3b, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x63, 0x6f, 0x6e, 0x73, 0x74, 0x20, 0x43, 0x68, 0x61, 0x74, 0x43, + 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x46, 0x6f, 0x72, 0x6d, 0x20, 0x3d, 0x20, + 0x28, 0x29, 0x20, 0x3d, 0x3e, 0x20, 0x28, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x68, 0x74, 0x6d, 0x6c, 0x60, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x24, 0x7b, 0x50, 0x72, + 0x6f, 0x6d, 0x70, 0x74, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x46, + 0x69, 0x65, 0x6c, 0x64, 0x53, 0x65, 0x74, 0x28, 0x29, 0x7d, 0x0a, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x66, + 0x69, 0x65, 0x6c, 0x64, 0x73, 0x65, 0x74, 0x20, 0x63, 0x6c, 0x61, 0x73, + 0x73, 0x3d, 0x22, 0x74, 0x77, 0x6f, 0x22, 0x3e, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x64, 0x69, + 0x76, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x20, + 0x66, 0x6f, 0x72, 0x3d, 0x22, 0x75, 0x73, 0x65, 0x72, 0x22, 0x3e, 0x55, + 0x73, 0x65, 0x72, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3c, 0x2f, 0x6c, 0x61, + 0x62, 0x65, 0x6c, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x69, 0x6e, 0x70, 0x75, + 0x74, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x74, 0x65, 0x78, 0x74, + 0x22, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x75, 0x73, 0x65, 0x72, + 0x22, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3d, 0x22, 0x24, 0x7b, 0x73, + 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x2e, 0x76, 0x61, 0x6c, 0x75, 0x65, + 0x2e, 0x75, 0x73, 0x65, 0x72, 0x7d, 0x22, 0x20, 0x6f, 0x6e, 0x69, 0x6e, + 0x70, 0x75, 0x74, 0x3d, 0x24, 0x7b, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, + 0x53, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x7d, 0x20, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x24, 0x7b, 0x70, 0x72, 0x6f, 0x62, 0x73, 0x2e, 0x6d, 0x61, 0x70, 0x28, - 0x28, 0x70, 0x2c, 0x20, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x29, 0x20, 0x3d, - 0x3e, 0x20, 0x7b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x2f, 0x64, 0x69, 0x76, 0x3e, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x64, 0x69, 0x76, + 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x20, 0x66, + 0x6f, 0x72, 0x3d, 0x22, 0x62, 0x6f, 0x74, 0x22, 0x3e, 0x42, 0x6f, 0x74, + 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3c, 0x2f, 0x6c, 0x61, 0x62, 0x65, 0x6c, + 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x20, 0x74, + 0x79, 0x70, 0x65, 0x3d, 0x22, 0x74, 0x65, 0x78, 0x74, 0x22, 0x20, 0x6e, + 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x63, 0x68, 0x61, 0x72, 0x22, 0x20, 0x76, + 0x61, 0x6c, 0x75, 0x65, 0x3d, 0x22, 0x24, 0x7b, 0x73, 0x65, 0x73, 0x73, + 0x69, 0x6f, 0x6e, 0x2e, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x2e, 0x63, 0x68, + 0x61, 0x72, 0x7d, 0x22, 0x20, 0x6f, 0x6e, 0x69, 0x6e, 0x70, 0x75, 0x74, + 0x3d, 0x24, 0x7b, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x53, 0x65, 0x73, + 0x73, 0x69, 0x6f, 0x6e, 0x7d, 0x20, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x64, + 0x69, 0x76, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x2f, 0x66, 0x69, 0x65, 0x6c, 0x64, 0x73, 0x65, 0x74, + 0x3e, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x66, 0x69, 0x65, 0x6c, 0x64, 0x73, 0x65, 0x74, 0x3e, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x64, 0x69, 0x76, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x6c, 0x61, 0x62, + 0x65, 0x6c, 0x20, 0x66, 0x6f, 0x72, 0x3d, 0x22, 0x74, 0x65, 0x6d, 0x70, + 0x6c, 0x61, 0x74, 0x65, 0x22, 0x3e, 0x50, 0x72, 0x6f, 0x6d, 0x70, 0x74, + 0x20, 0x74, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x3c, 0x2f, 0x6c, + 0x61, 0x62, 0x65, 0x6c, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x74, 0x65, 0x78, + 0x74, 0x61, 0x72, 0x65, 0x61, 0x20, 0x69, 0x64, 0x3d, 0x22, 0x74, 0x65, + 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x22, 0x20, 0x6e, 0x61, 0x6d, 0x65, + 0x3d, 0x22, 0x74, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x22, 0x20, + 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3d, 0x22, 0x24, 0x7b, 0x73, 0x65, 0x73, + 0x73, 0x69, 0x6f, 0x6e, 0x2e, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x2e, 0x74, + 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x7d, 0x22, 0x20, 0x72, 0x6f, + 0x77, 0x73, 0x3d, 0x34, 0x20, 0x6f, 0x6e, 0x69, 0x6e, 0x70, 0x75, 0x74, + 0x3d, 0x24, 0x7b, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x53, 0x65, 0x73, + 0x73, 0x69, 0x6f, 0x6e, 0x7d, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x64, 0x69, + 0x76, 0x3e, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x64, 0x69, 0x76, 0x3e, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x20, 0x66, 0x6f, 0x72, 0x3d, 0x22, + 0x74, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x22, 0x3e, 0x43, 0x68, + 0x61, 0x74, 0x20, 0x68, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x20, 0x74, + 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x3c, 0x2f, 0x6c, 0x61, 0x62, + 0x65, 0x6c, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x74, 0x65, 0x78, 0x74, 0x61, + 0x72, 0x65, 0x61, 0x20, 0x69, 0x64, 0x3d, 0x22, 0x74, 0x65, 0x6d, 0x70, + 0x6c, 0x61, 0x74, 0x65, 0x22, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, + 0x68, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x54, 0x65, 0x6d, 0x70, 0x6c, + 0x61, 0x74, 0x65, 0x22, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3d, 0x22, + 0x24, 0x7b, 0x73, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x2e, 0x76, 0x61, + 0x6c, 0x75, 0x65, 0x2e, 0x68, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x54, + 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x7d, 0x22, 0x20, 0x72, 0x6f, + 0x77, 0x73, 0x3d, 0x31, 0x20, 0x6f, 0x6e, 0x69, 0x6e, 0x70, 0x75, 0x74, + 0x3d, 0x24, 0x7b, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x53, 0x65, 0x73, + 0x73, 0x69, 0x6f, 0x6e, 0x7d, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x64, 0x69, + 0x76, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x24, 0x7b, 0x47, 0x72, 0x61, 0x6d, 0x6d, 0x61, 0x72, + 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x28, 0x29, 0x7d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x66, + 0x69, 0x65, 0x6c, 0x64, 0x73, 0x65, 0x74, 0x3e, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x60, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x29, + 0x3b, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x63, 0x6f, 0x6e, + 0x73, 0x74, 0x20, 0x43, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x69, 0x6f, + 0x6e, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x46, 0x6f, 0x72, 0x6d, 0x20, + 0x3d, 0x20, 0x28, 0x29, 0x20, 0x3d, 0x3e, 0x20, 0x28, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x68, 0x74, 0x6d, 0x6c, 0x60, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x24, 0x7b, + 0x50, 0x72, 0x6f, 0x6d, 0x70, 0x74, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x6f, + 0x6c, 0x46, 0x69, 0x65, 0x6c, 0x64, 0x53, 0x65, 0x74, 0x28, 0x29, 0x7d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x66, 0x69, 0x65, 0x6c, 0x64, 0x73, 0x65, 0x74, 0x3e, 0x24, 0x7b, 0x47, + 0x72, 0x61, 0x6d, 0x6d, 0x61, 0x72, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x6f, + 0x6c, 0x28, 0x29, 0x7d, 0x3c, 0x2f, 0x66, 0x69, 0x65, 0x6c, 0x64, 0x73, + 0x65, 0x74, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x60, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x29, 0x3b, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x72, 0x65, 0x74, 0x75, 0x72, 0x6e, 0x20, 0x68, 0x74, 0x6d, 0x6c, 0x60, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x66, 0x6f, 0x72, 0x6d, 0x3e, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x66, 0x69, 0x65, + 0x6c, 0x64, 0x73, 0x65, 0x74, 0x20, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x3d, + 0x22, 0x74, 0x77, 0x6f, 0x22, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x24, 0x7b, 0x55, 0x73, + 0x65, 0x72, 0x54, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x52, 0x65, + 0x73, 0x65, 0x74, 0x42, 0x75, 0x74, 0x74, 0x6f, 0x6e, 0x7d, 0x2f, 0x3e, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x64, 0x69, 0x76, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x6c, 0x61, + 0x62, 0x65, 0x6c, 0x20, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x3d, 0x22, 0x73, + 0x6c, 0x69, 0x6d, 0x22, 0x3e, 0x3c, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x20, + 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x72, 0x61, 0x64, 0x69, 0x6f, 0x22, + 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x74, 0x79, 0x70, 0x65, 0x22, + 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3d, 0x22, 0x63, 0x68, 0x61, 0x74, + 0x22, 0x20, 0x63, 0x68, 0x65, 0x63, 0x6b, 0x65, 0x64, 0x3d, 0x24, 0x7b, + 0x73, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x2e, 0x76, 0x61, 0x6c, 0x75, + 0x65, 0x2e, 0x74, 0x79, 0x70, 0x65, 0x20, 0x3d, 0x3d, 0x3d, 0x20, 0x22, + 0x63, 0x68, 0x61, 0x74, 0x22, 0x7d, 0x20, 0x6f, 0x6e, 0x69, 0x6e, 0x70, + 0x75, 0x74, 0x3d, 0x24, 0x7b, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x53, + 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x7d, 0x20, 0x2f, 0x3e, 0x20, 0x43, + 0x68, 0x61, 0x74, 0x3c, 0x2f, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x3e, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x20, 0x63, 0x6c, 0x61, + 0x73, 0x73, 0x3d, 0x22, 0x73, 0x6c, 0x69, 0x6d, 0x22, 0x3e, 0x3c, 0x69, + 0x6e, 0x70, 0x75, 0x74, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x72, + 0x61, 0x64, 0x69, 0x6f, 0x22, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, + 0x74, 0x79, 0x70, 0x65, 0x22, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3d, + 0x22, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x69, 0x6f, 0x6e, 0x22, + 0x20, 0x63, 0x68, 0x65, 0x63, 0x6b, 0x65, 0x64, 0x3d, 0x24, 0x7b, 0x73, + 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x2e, 0x76, 0x61, 0x6c, 0x75, 0x65, + 0x2e, 0x74, 0x79, 0x70, 0x65, 0x20, 0x3d, 0x3d, 0x3d, 0x20, 0x22, 0x63, + 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x7d, 0x20, + 0x6f, 0x6e, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x3d, 0x24, 0x7b, 0x75, 0x70, + 0x64, 0x61, 0x74, 0x65, 0x53, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x7d, + 0x20, 0x2f, 0x3e, 0x20, 0x43, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x69, + 0x6f, 0x6e, 0x3c, 0x2f, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, - 0x64, 0x69, 0x76, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x6b, 0x65, - 0x79, 0x3d, 0x24, 0x7b, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x7d, 0x0a, 0x20, + 0x2f, 0x64, 0x69, 0x76, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x66, 0x69, 0x65, 0x6c, 0x64, 0x73, + 0x65, 0x74, 0x3e, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x24, 0x7b, 0x73, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, + 0x2e, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x2e, 0x74, 0x79, 0x70, 0x65, 0x20, + 0x3d, 0x3d, 0x3d, 0x20, 0x27, 0x63, 0x68, 0x61, 0x74, 0x27, 0x20, 0x3f, + 0x20, 0x43, 0x68, 0x61, 0x74, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x46, + 0x6f, 0x72, 0x6d, 0x28, 0x29, 0x20, 0x3a, 0x20, 0x43, 0x6f, 0x6d, 0x70, + 0x6c, 0x65, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, + 0x46, 0x6f, 0x72, 0x6d, 0x28, 0x29, 0x7d, 0x0a, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x66, 0x69, 0x65, 0x6c, + 0x64, 0x73, 0x65, 0x74, 0x20, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x3d, 0x22, + 0x74, 0x77, 0x6f, 0x22, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x24, 0x7b, 0x49, 0x6e, 0x74, 0x46, + 0x69, 0x65, 0x6c, 0x64, 0x28, 0x7b, 0x20, 0x6c, 0x61, 0x62, 0x65, 0x6c, + 0x3a, 0x20, 0x22, 0x50, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x69, 0x6f, + 0x6e, 0x73, 0x22, 0x2c, 0x20, 0x6d, 0x61, 0x78, 0x3a, 0x20, 0x32, 0x30, + 0x34, 0x38, 0x2c, 0x20, 0x6d, 0x69, 0x6e, 0x3a, 0x20, 0x2d, 0x31, 0x2c, + 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3a, 0x20, 0x22, 0x6e, 0x5f, 0x70, 0x72, + 0x65, 0x64, 0x69, 0x63, 0x74, 0x22, 0x2c, 0x20, 0x76, 0x61, 0x6c, 0x75, + 0x65, 0x3a, 0x20, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x2e, 0x76, 0x61, + 0x6c, 0x75, 0x65, 0x2e, 0x6e, 0x5f, 0x70, 0x72, 0x65, 0x64, 0x69, 0x63, + 0x74, 0x20, 0x7d, 0x29, 0x7d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x24, 0x7b, 0x46, 0x6c, 0x6f, 0x61, + 0x74, 0x46, 0x69, 0x65, 0x6c, 0x64, 0x28, 0x7b, 0x20, 0x6c, 0x61, 0x62, + 0x65, 0x6c, 0x3a, 0x20, 0x22, 0x54, 0x65, 0x6d, 0x70, 0x65, 0x72, 0x61, + 0x74, 0x75, 0x72, 0x65, 0x22, 0x2c, 0x20, 0x6d, 0x61, 0x78, 0x3a, 0x20, + 0x31, 0x2e, 0x35, 0x2c, 0x20, 0x6d, 0x69, 0x6e, 0x3a, 0x20, 0x30, 0x2e, + 0x30, 0x2c, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3a, 0x20, 0x22, 0x74, 0x65, + 0x6d, 0x70, 0x65, 0x72, 0x61, 0x74, 0x75, 0x72, 0x65, 0x22, 0x2c, 0x20, + 0x73, 0x74, 0x65, 0x70, 0x3a, 0x20, 0x30, 0x2e, 0x30, 0x31, 0x2c, 0x20, + 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x20, 0x70, 0x61, 0x72, 0x61, 0x6d, + 0x73, 0x2e, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x2e, 0x74, 0x65, 0x6d, 0x70, + 0x65, 0x72, 0x61, 0x74, 0x75, 0x72, 0x65, 0x20, 0x7d, 0x29, 0x7d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x3d, 0x24, - 0x7b, 0x60, 0x70, 0x72, 0x6f, 0x62, 0x3a, 0x20, 0x24, 0x7b, 0x70, 0x2e, - 0x70, 0x72, 0x6f, 0x62, 0x7d, 0x60, 0x7d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x24, 0x7b, 0x46, 0x6c, 0x6f, 0x61, 0x74, 0x46, 0x69, 0x65, 0x6c, 0x64, + 0x28, 0x7b, 0x20, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x3a, 0x20, 0x22, 0x50, + 0x65, 0x6e, 0x61, 0x6c, 0x69, 0x7a, 0x65, 0x20, 0x72, 0x65, 0x70, 0x65, + 0x61, 0x74, 0x20, 0x73, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x22, + 0x2c, 0x20, 0x6d, 0x61, 0x78, 0x3a, 0x20, 0x32, 0x2e, 0x30, 0x2c, 0x20, + 0x6d, 0x69, 0x6e, 0x3a, 0x20, 0x30, 0x2e, 0x30, 0x2c, 0x20, 0x6e, 0x61, + 0x6d, 0x65, 0x3a, 0x20, 0x22, 0x72, 0x65, 0x70, 0x65, 0x61, 0x74, 0x5f, + 0x70, 0x65, 0x6e, 0x61, 0x6c, 0x74, 0x79, 0x22, 0x2c, 0x20, 0x73, 0x74, + 0x65, 0x70, 0x3a, 0x20, 0x30, 0x2e, 0x30, 0x31, 0x2c, 0x20, 0x76, 0x61, + 0x6c, 0x75, 0x65, 0x3a, 0x20, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x2e, + 0x76, 0x61, 0x6c, 0x75, 0x65, 0x2e, 0x72, 0x65, 0x70, 0x65, 0x61, 0x74, + 0x5f, 0x70, 0x65, 0x6e, 0x61, 0x6c, 0x74, 0x79, 0x20, 0x7d, 0x29, 0x7d, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x24, 0x7b, 0x49, 0x6e, 0x74, 0x46, 0x69, 0x65, 0x6c, 0x64, 0x28, + 0x7b, 0x20, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x3a, 0x20, 0x22, 0x43, 0x6f, + 0x6e, 0x73, 0x69, 0x64, 0x65, 0x72, 0x20, 0x4e, 0x20, 0x74, 0x6f, 0x6b, + 0x65, 0x6e, 0x73, 0x20, 0x66, 0x6f, 0x72, 0x20, 0x70, 0x65, 0x6e, 0x61, + 0x6c, 0x69, 0x7a, 0x65, 0x22, 0x2c, 0x20, 0x6d, 0x61, 0x78, 0x3a, 0x20, + 0x32, 0x30, 0x34, 0x38, 0x2c, 0x20, 0x6d, 0x69, 0x6e, 0x3a, 0x20, 0x30, + 0x2c, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3a, 0x20, 0x22, 0x72, 0x65, 0x70, + 0x65, 0x61, 0x74, 0x5f, 0x6c, 0x61, 0x73, 0x74, 0x5f, 0x6e, 0x22, 0x2c, + 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x20, 0x70, 0x61, 0x72, 0x61, + 0x6d, 0x73, 0x2e, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x2e, 0x72, 0x65, 0x70, + 0x65, 0x61, 0x74, 0x5f, 0x6c, 0x61, 0x73, 0x74, 0x5f, 0x6e, 0x20, 0x7d, + 0x29, 0x7d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x24, 0x7b, 0x49, 0x6e, 0x74, 0x46, 0x69, 0x65, 0x6c, + 0x64, 0x28, 0x7b, 0x20, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x3a, 0x20, 0x22, + 0x54, 0x6f, 0x70, 0x2d, 0x4b, 0x20, 0x73, 0x61, 0x6d, 0x70, 0x6c, 0x69, + 0x6e, 0x67, 0x22, 0x2c, 0x20, 0x6d, 0x61, 0x78, 0x3a, 0x20, 0x31, 0x30, + 0x30, 0x2c, 0x20, 0x6d, 0x69, 0x6e, 0x3a, 0x20, 0x2d, 0x31, 0x2c, 0x20, + 0x6e, 0x61, 0x6d, 0x65, 0x3a, 0x20, 0x22, 0x74, 0x6f, 0x70, 0x5f, 0x6b, + 0x22, 0x2c, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x20, 0x70, 0x61, + 0x72, 0x61, 0x6d, 0x73, 0x2e, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x2e, 0x74, + 0x6f, 0x70, 0x5f, 0x6b, 0x20, 0x7d, 0x29, 0x7d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x24, 0x7b, 0x46, + 0x6c, 0x6f, 0x61, 0x74, 0x46, 0x69, 0x65, 0x6c, 0x64, 0x28, 0x7b, 0x20, + 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x3a, 0x20, 0x22, 0x54, 0x6f, 0x70, 0x2d, + 0x50, 0x20, 0x73, 0x61, 0x6d, 0x70, 0x6c, 0x69, 0x6e, 0x67, 0x22, 0x2c, + 0x20, 0x6d, 0x61, 0x78, 0x3a, 0x20, 0x31, 0x2e, 0x30, 0x2c, 0x20, 0x6d, + 0x69, 0x6e, 0x3a, 0x20, 0x30, 0x2e, 0x30, 0x2c, 0x20, 0x6e, 0x61, 0x6d, + 0x65, 0x3a, 0x20, 0x22, 0x74, 0x6f, 0x70, 0x5f, 0x70, 0x22, 0x2c, 0x20, + 0x73, 0x74, 0x65, 0x70, 0x3a, 0x20, 0x30, 0x2e, 0x30, 0x31, 0x2c, 0x20, + 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x20, 0x70, 0x61, 0x72, 0x61, 0x6d, + 0x73, 0x2e, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x2e, 0x74, 0x6f, 0x70, 0x5f, + 0x70, 0x20, 0x7d, 0x29, 0x7d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x66, 0x69, 0x65, 0x6c, 0x64, 0x73, + 0x65, 0x74, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x64, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x73, 0x74, 0x79, 0x6c, 0x65, 0x3d, 0x24, 0x7b, 0x7b, 0x0a, + 0x3c, 0x73, 0x75, 0x6d, 0x6d, 0x61, 0x72, 0x79, 0x3e, 0x4d, 0x6f, 0x72, + 0x65, 0x20, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x3c, 0x2f, 0x73, + 0x75, 0x6d, 0x6d, 0x61, 0x72, 0x79, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x66, 0x69, 0x65, + 0x6c, 0x64, 0x73, 0x65, 0x74, 0x20, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x3d, + 0x22, 0x74, 0x77, 0x6f, 0x22, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x24, 0x7b, 0x46, + 0x6c, 0x6f, 0x61, 0x74, 0x46, 0x69, 0x65, 0x6c, 0x64, 0x28, 0x7b, 0x20, + 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x3a, 0x20, 0x22, 0x54, 0x46, 0x53, 0x2d, + 0x5a, 0x22, 0x2c, 0x20, 0x6d, 0x61, 0x78, 0x3a, 0x20, 0x31, 0x2e, 0x30, + 0x2c, 0x20, 0x6d, 0x69, 0x6e, 0x3a, 0x20, 0x30, 0x2e, 0x30, 0x2c, 0x20, + 0x6e, 0x61, 0x6d, 0x65, 0x3a, 0x20, 0x22, 0x74, 0x66, 0x73, 0x5f, 0x7a, + 0x22, 0x2c, 0x20, 0x73, 0x74, 0x65, 0x70, 0x3a, 0x20, 0x30, 0x2e, 0x30, + 0x31, 0x2c, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x20, 0x70, 0x61, + 0x72, 0x61, 0x6d, 0x73, 0x2e, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x2e, 0x74, + 0x66, 0x73, 0x5f, 0x7a, 0x20, 0x7d, 0x29, 0x7d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x24, + 0x7b, 0x46, 0x6c, 0x6f, 0x61, 0x74, 0x46, 0x69, 0x65, 0x6c, 0x64, 0x28, + 0x7b, 0x20, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x3a, 0x20, 0x22, 0x54, 0x79, + 0x70, 0x69, 0x63, 0x61, 0x6c, 0x20, 0x50, 0x22, 0x2c, 0x20, 0x6d, 0x61, + 0x78, 0x3a, 0x20, 0x31, 0x2e, 0x30, 0x2c, 0x20, 0x6d, 0x69, 0x6e, 0x3a, + 0x20, 0x30, 0x2e, 0x30, 0x2c, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3a, 0x20, + 0x22, 0x74, 0x79, 0x70, 0x69, 0x63, 0x61, 0x6c, 0x5f, 0x70, 0x22, 0x2c, + 0x20, 0x73, 0x74, 0x65, 0x70, 0x3a, 0x20, 0x30, 0x2e, 0x30, 0x31, 0x2c, + 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x20, 0x70, 0x61, 0x72, 0x61, + 0x6d, 0x73, 0x2e, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x2e, 0x74, 0x79, 0x70, + 0x69, 0x63, 0x61, 0x6c, 0x5f, 0x70, 0x20, 0x7d, 0x29, 0x7d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x24, 0x7b, 0x46, 0x6c, 0x6f, 0x61, 0x74, 0x46, 0x69, 0x65, 0x6c, + 0x64, 0x28, 0x7b, 0x20, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x3a, 0x20, 0x22, + 0x50, 0x72, 0x65, 0x73, 0x65, 0x6e, 0x63, 0x65, 0x20, 0x70, 0x65, 0x6e, + 0x61, 0x6c, 0x74, 0x79, 0x22, 0x2c, 0x20, 0x6d, 0x61, 0x78, 0x3a, 0x20, + 0x31, 0x2e, 0x30, 0x2c, 0x20, 0x6d, 0x69, 0x6e, 0x3a, 0x20, 0x30, 0x2e, + 0x30, 0x2c, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3a, 0x20, 0x22, 0x70, 0x72, + 0x65, 0x73, 0x65, 0x6e, 0x63, 0x65, 0x5f, 0x70, 0x65, 0x6e, 0x61, 0x6c, + 0x74, 0x79, 0x22, 0x2c, 0x20, 0x73, 0x74, 0x65, 0x70, 0x3a, 0x20, 0x30, + 0x2e, 0x30, 0x31, 0x2c, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x20, + 0x70, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x2e, 0x76, 0x61, 0x6c, 0x75, 0x65, + 0x2e, 0x70, 0x72, 0x65, 0x73, 0x65, 0x6e, 0x63, 0x65, 0x5f, 0x70, 0x65, + 0x6e, 0x61, 0x6c, 0x74, 0x79, 0x20, 0x7d, 0x29, 0x7d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x24, 0x7b, 0x46, 0x6c, 0x6f, 0x61, 0x74, 0x46, 0x69, 0x65, 0x6c, 0x64, + 0x28, 0x7b, 0x20, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x3a, 0x20, 0x22, 0x46, + 0x72, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x79, 0x20, 0x70, 0x65, 0x6e, + 0x61, 0x6c, 0x74, 0x79, 0x22, 0x2c, 0x20, 0x6d, 0x61, 0x78, 0x3a, 0x20, + 0x31, 0x2e, 0x30, 0x2c, 0x20, 0x6d, 0x69, 0x6e, 0x3a, 0x20, 0x30, 0x2e, + 0x30, 0x2c, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3a, 0x20, 0x22, 0x66, 0x72, + 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x79, 0x5f, 0x70, 0x65, 0x6e, 0x61, + 0x6c, 0x74, 0x79, 0x22, 0x2c, 0x20, 0x73, 0x74, 0x65, 0x70, 0x3a, 0x20, + 0x30, 0x2e, 0x30, 0x31, 0x2c, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, + 0x20, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x2e, 0x76, 0x61, 0x6c, 0x75, + 0x65, 0x2e, 0x66, 0x72, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x79, 0x5f, + 0x70, 0x65, 0x6e, 0x61, 0x6c, 0x74, 0x79, 0x20, 0x7d, 0x29, 0x7d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x2f, 0x66, 0x69, 0x65, 0x6c, 0x64, 0x73, 0x65, 0x74, 0x3e, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x3c, 0x68, 0x72, 0x20, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x66, 0x69, 0x65, 0x6c, + 0x64, 0x73, 0x65, 0x74, 0x20, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x3d, 0x22, + 0x74, 0x68, 0x72, 0x65, 0x65, 0x22, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x64, + 0x69, 0x76, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x6c, 0x61, 0x62, + 0x65, 0x6c, 0x3e, 0x3c, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x20, 0x74, 0x79, + 0x70, 0x65, 0x3d, 0x22, 0x72, 0x61, 0x64, 0x69, 0x6f, 0x22, 0x20, 0x6e, + 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x6d, 0x69, 0x72, 0x6f, 0x73, 0x74, 0x61, + 0x74, 0x22, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3d, 0x22, 0x30, 0x22, + 0x20, 0x63, 0x68, 0x65, 0x63, 0x6b, 0x65, 0x64, 0x3d, 0x24, 0x7b, 0x70, + 0x61, 0x72, 0x61, 0x6d, 0x73, 0x2e, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x2e, + 0x6d, 0x69, 0x72, 0x6f, 0x73, 0x74, 0x61, 0x74, 0x20, 0x3d, 0x3d, 0x20, + 0x30, 0x7d, 0x20, 0x6f, 0x6e, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x3d, 0x24, + 0x7b, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x50, 0x61, 0x72, 0x61, 0x6d, + 0x73, 0x49, 0x6e, 0x74, 0x7d, 0x20, 0x2f, 0x3e, 0x20, 0x6e, 0x6f, 0x20, + 0x4d, 0x69, 0x72, 0x6f, 0x73, 0x74, 0x61, 0x74, 0x3c, 0x2f, 0x6c, 0x61, + 0x62, 0x65, 0x6c, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x6c, 0x61, + 0x62, 0x65, 0x6c, 0x3e, 0x3c, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x20, 0x74, + 0x79, 0x70, 0x65, 0x3d, 0x22, 0x72, 0x61, 0x64, 0x69, 0x6f, 0x22, 0x20, + 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x6d, 0x69, 0x72, 0x6f, 0x73, 0x74, + 0x61, 0x74, 0x22, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3d, 0x22, 0x31, + 0x22, 0x20, 0x63, 0x68, 0x65, 0x63, 0x6b, 0x65, 0x64, 0x3d, 0x24, 0x7b, + 0x70, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x2e, 0x76, 0x61, 0x6c, 0x75, 0x65, + 0x2e, 0x6d, 0x69, 0x72, 0x6f, 0x73, 0x74, 0x61, 0x74, 0x20, 0x3d, 0x3d, + 0x20, 0x31, 0x7d, 0x20, 0x6f, 0x6e, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x3d, + 0x24, 0x7b, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x50, 0x61, 0x72, 0x61, + 0x6d, 0x73, 0x49, 0x6e, 0x74, 0x7d, 0x20, 0x2f, 0x3e, 0x20, 0x4d, 0x69, + 0x72, 0x6f, 0x73, 0x74, 0x61, 0x74, 0x20, 0x76, 0x31, 0x3c, 0x2f, 0x6c, + 0x61, 0x62, 0x65, 0x6c, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x6c, + 0x61, 0x62, 0x65, 0x6c, 0x3e, 0x3c, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x20, + 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x72, 0x61, 0x64, 0x69, 0x6f, 0x22, + 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x6d, 0x69, 0x72, 0x6f, 0x73, + 0x74, 0x61, 0x74, 0x22, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3d, 0x22, + 0x32, 0x22, 0x20, 0x63, 0x68, 0x65, 0x63, 0x6b, 0x65, 0x64, 0x3d, 0x24, + 0x7b, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x2e, 0x76, 0x61, 0x6c, 0x75, + 0x65, 0x2e, 0x6d, 0x69, 0x72, 0x6f, 0x73, 0x74, 0x61, 0x74, 0x20, 0x3d, + 0x3d, 0x20, 0x32, 0x7d, 0x20, 0x6f, 0x6e, 0x69, 0x6e, 0x70, 0x75, 0x74, + 0x3d, 0x24, 0x7b, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x50, 0x61, 0x72, + 0x61, 0x6d, 0x73, 0x49, 0x6e, 0x74, 0x7d, 0x20, 0x2f, 0x3e, 0x20, 0x4d, + 0x69, 0x72, 0x6f, 0x73, 0x74, 0x61, 0x74, 0x20, 0x76, 0x32, 0x3c, 0x2f, + 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x64, + 0x69, 0x76, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x24, 0x7b, 0x46, 0x6c, 0x6f, 0x61, + 0x74, 0x46, 0x69, 0x65, 0x6c, 0x64, 0x28, 0x7b, 0x20, 0x6c, 0x61, 0x62, + 0x65, 0x6c, 0x3a, 0x20, 0x22, 0x4d, 0x69, 0x72, 0x6f, 0x73, 0x74, 0x61, + 0x74, 0x20, 0x74, 0x61, 0x75, 0x22, 0x2c, 0x20, 0x6d, 0x61, 0x78, 0x3a, + 0x20, 0x31, 0x30, 0x2e, 0x30, 0x2c, 0x20, 0x6d, 0x69, 0x6e, 0x3a, 0x20, + 0x30, 0x2e, 0x30, 0x2c, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3a, 0x20, 0x22, + 0x6d, 0x69, 0x72, 0x6f, 0x73, 0x74, 0x61, 0x74, 0x5f, 0x74, 0x61, 0x75, + 0x22, 0x2c, 0x20, 0x73, 0x74, 0x65, 0x70, 0x3a, 0x20, 0x30, 0x2e, 0x30, + 0x31, 0x2c, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x20, 0x70, 0x61, + 0x72, 0x61, 0x6d, 0x73, 0x2e, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x2e, 0x6d, + 0x69, 0x72, 0x6f, 0x73, 0x74, 0x61, 0x74, 0x5f, 0x74, 0x61, 0x75, 0x20, + 0x7d, 0x29, 0x7d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x24, 0x7b, 0x46, 0x6c, 0x6f, 0x61, + 0x74, 0x46, 0x69, 0x65, 0x6c, 0x64, 0x28, 0x7b, 0x20, 0x6c, 0x61, 0x62, + 0x65, 0x6c, 0x3a, 0x20, 0x22, 0x4d, 0x69, 0x72, 0x6f, 0x73, 0x74, 0x61, + 0x74, 0x20, 0x65, 0x74, 0x61, 0x22, 0x2c, 0x20, 0x6d, 0x61, 0x78, 0x3a, + 0x20, 0x31, 0x2e, 0x30, 0x2c, 0x20, 0x6d, 0x69, 0x6e, 0x3a, 0x20, 0x30, + 0x2e, 0x30, 0x2c, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3a, 0x20, 0x22, 0x6d, + 0x69, 0x72, 0x6f, 0x73, 0x74, 0x61, 0x74, 0x5f, 0x65, 0x74, 0x61, 0x22, + 0x2c, 0x20, 0x73, 0x74, 0x65, 0x70, 0x3a, 0x20, 0x30, 0x2e, 0x30, 0x31, + 0x2c, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x20, 0x70, 0x61, 0x72, + 0x61, 0x6d, 0x73, 0x2e, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x2e, 0x6d, 0x69, + 0x72, 0x6f, 0x73, 0x74, 0x61, 0x74, 0x5f, 0x65, 0x74, 0x61, 0x20, 0x7d, + 0x29, 0x7d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x66, 0x69, 0x65, 0x6c, 0x64, 0x73, 0x65, + 0x74, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x66, 0x69, 0x65, 0x6c, 0x64, 0x73, 0x65, 0x74, + 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x24, 0x7b, 0x49, 0x6e, 0x74, 0x46, 0x69, 0x65, + 0x6c, 0x64, 0x28, 0x7b, 0x20, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x3a, 0x20, + 0x22, 0x53, 0x68, 0x6f, 0x77, 0x20, 0x50, 0x72, 0x6f, 0x62, 0x61, 0x62, + 0x69, 0x6c, 0x69, 0x74, 0x69, 0x65, 0x73, 0x22, 0x2c, 0x20, 0x6d, 0x61, + 0x78, 0x3a, 0x20, 0x31, 0x30, 0x2c, 0x20, 0x6d, 0x69, 0x6e, 0x3a, 0x20, + 0x30, 0x2c, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3a, 0x20, 0x22, 0x6e, 0x5f, + 0x70, 0x72, 0x6f, 0x62, 0x73, 0x22, 0x2c, 0x20, 0x76, 0x61, 0x6c, 0x75, + 0x65, 0x3a, 0x20, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x2e, 0x76, 0x61, + 0x6c, 0x75, 0x65, 0x2e, 0x6e, 0x5f, 0x70, 0x72, 0x6f, 0x62, 0x73, 0x20, + 0x7d, 0x29, 0x7d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x66, 0x69, 0x65, 0x6c, 0x64, 0x73, + 0x65, 0x74, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x2f, 0x64, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x3e, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x66, + 0x6f, 0x72, 0x6d, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x60, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x7d, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x63, 0x6f, 0x6e, 0x73, 0x74, 0x20, 0x70, 0x72, 0x6f, 0x62, 0x43, 0x6f, + 0x6c, 0x6f, 0x72, 0x20, 0x3d, 0x20, 0x28, 0x70, 0x29, 0x20, 0x3d, 0x3e, + 0x20, 0x7b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x63, 0x6f, 0x6e, + 0x73, 0x74, 0x20, 0x72, 0x20, 0x3d, 0x20, 0x4d, 0x61, 0x74, 0x68, 0x2e, + 0x66, 0x6c, 0x6f, 0x6f, 0x72, 0x28, 0x31, 0x39, 0x32, 0x20, 0x2a, 0x20, + 0x28, 0x31, 0x20, 0x2d, 0x20, 0x70, 0x29, 0x29, 0x3b, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x63, 0x6f, 0x6e, 0x73, 0x74, 0x20, 0x67, 0x20, + 0x3d, 0x20, 0x4d, 0x61, 0x74, 0x68, 0x2e, 0x66, 0x6c, 0x6f, 0x6f, 0x72, + 0x28, 0x31, 0x39, 0x32, 0x20, 0x2a, 0x20, 0x70, 0x29, 0x3b, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x72, 0x65, 0x74, 0x75, 0x72, 0x6e, 0x20, + 0x60, 0x72, 0x67, 0x62, 0x61, 0x28, 0x24, 0x7b, 0x72, 0x7d, 0x2c, 0x24, + 0x7b, 0x67, 0x7d, 0x2c, 0x30, 0x2c, 0x30, 0x2e, 0x33, 0x29, 0x60, 0x3b, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x7d, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x63, 0x6f, 0x6e, 0x73, 0x74, 0x20, 0x50, 0x72, 0x6f, 0x62, 0x61, 0x62, + 0x69, 0x6c, 0x69, 0x74, 0x69, 0x65, 0x73, 0x20, 0x3d, 0x20, 0x28, 0x70, + 0x61, 0x72, 0x61, 0x6d, 0x73, 0x29, 0x20, 0x3d, 0x3e, 0x20, 0x7b, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x72, 0x65, 0x74, 0x75, 0x72, 0x6e, + 0x20, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x2e, 0x64, 0x61, 0x74, 0x61, + 0x2e, 0x6d, 0x61, 0x70, 0x28, 0x6d, 0x73, 0x67, 0x20, 0x3d, 0x3e, 0x20, + 0x7b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x63, 0x6f, + 0x6e, 0x73, 0x74, 0x20, 0x7b, 0x20, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, + 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x70, 0x72, 0x6f, 0x62, 0x61, 0x62, 0x69, + 0x6c, 0x69, 0x74, 0x69, 0x65, 0x73, 0x20, 0x7d, 0x20, 0x3d, 0x20, 0x6d, + 0x73, 0x67, 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x69, 0x66, 0x20, 0x28, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x21, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x69, + 0x6f, 0x6e, 0x5f, 0x70, 0x72, 0x6f, 0x62, 0x61, 0x62, 0x69, 0x6c, 0x69, + 0x74, 0x69, 0x65, 0x73, 0x20, 0x7c, 0x7c, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, + 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x70, 0x72, 0x6f, 0x62, 0x61, 0x62, 0x69, + 0x6c, 0x69, 0x74, 0x69, 0x65, 0x73, 0x2e, 0x6c, 0x65, 0x6e, 0x67, 0x74, + 0x68, 0x20, 0x3d, 0x3d, 0x3d, 0x20, 0x30, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x29, 0x20, 0x72, 0x65, 0x74, 0x75, 0x72, 0x6e, + 0x20, 0x6d, 0x73, 0x67, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, + 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x69, 0x66, + 0x20, 0x28, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x69, 0x6f, 0x6e, + 0x5f, 0x70, 0x72, 0x6f, 0x62, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x69, + 0x65, 0x73, 0x2e, 0x6c, 0x65, 0x6e, 0x67, 0x74, 0x68, 0x20, 0x3e, 0x20, + 0x31, 0x29, 0x20, 0x7b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x2f, 0x2f, 0x20, 0x4e, 0x6f, 0x74, 0x20, 0x66, 0x6f, + 0x72, 0x20, 0x62, 0x79, 0x74, 0x65, 0x20, 0x70, 0x61, 0x69, 0x72, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x69, 0x66, + 0x20, 0x28, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x69, 0x6f, 0x6e, + 0x5f, 0x70, 0x72, 0x6f, 0x62, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x69, + 0x65, 0x73, 0x5b, 0x30, 0x5d, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, + 0x74, 0x2e, 0x73, 0x74, 0x61, 0x72, 0x74, 0x73, 0x57, 0x69, 0x74, 0x68, + 0x28, 0x27, 0x62, 0x79, 0x74, 0x65, 0x3a, 0x20, 0x5c, 0x5c, 0x27, 0x29, + 0x29, 0x20, 0x72, 0x65, 0x74, 0x75, 0x72, 0x6e, 0x20, 0x6d, 0x73, 0x67, + 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x0a, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x63, 0x6f, 0x6e, 0x73, + 0x74, 0x20, 0x73, 0x70, 0x6c, 0x69, 0x74, 0x44, 0x61, 0x74, 0x61, 0x20, + 0x3d, 0x20, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x69, 0x6f, 0x6e, + 0x5f, 0x70, 0x72, 0x6f, 0x62, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x69, + 0x65, 0x73, 0x2e, 0x6d, 0x61, 0x70, 0x28, 0x70, 0x72, 0x6f, 0x62, 0x20, + 0x3d, 0x3e, 0x20, 0x28, 0x7b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, + 0x74, 0x3a, 0x20, 0x70, 0x72, 0x6f, 0x62, 0x2e, 0x63, 0x6f, 0x6e, 0x74, + 0x65, 0x6e, 0x74, 0x2c, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, + 0x69, 0x6f, 0x6e, 0x5f, 0x70, 0x72, 0x6f, 0x62, 0x61, 0x62, 0x69, 0x6c, + 0x69, 0x74, 0x69, 0x65, 0x73, 0x3a, 0x20, 0x5b, 0x70, 0x72, 0x6f, 0x62, + 0x5d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x7d, 0x29, 0x29, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x72, 0x65, 0x74, 0x75, 0x72, 0x6e, 0x20, 0x68, 0x74, 0x6d, + 0x6c, 0x60, 0x3c, 0x24, 0x7b, 0x50, 0x72, 0x6f, 0x62, 0x61, 0x62, 0x69, + 0x6c, 0x69, 0x74, 0x69, 0x65, 0x73, 0x7d, 0x20, 0x64, 0x61, 0x74, 0x61, + 0x3d, 0x24, 0x7b, 0x73, 0x70, 0x6c, 0x69, 0x74, 0x44, 0x61, 0x74, 0x61, + 0x7d, 0x20, 0x2f, 0x3e, 0x60, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x7d, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x63, 0x6f, 0x6e, 0x73, 0x74, 0x20, 0x7b, 0x20, 0x70, 0x72, 0x6f, + 0x62, 0x73, 0x2c, 0x20, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x20, + 0x7d, 0x20, 0x3d, 0x20, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x69, + 0x6f, 0x6e, 0x5f, 0x70, 0x72, 0x6f, 0x62, 0x61, 0x62, 0x69, 0x6c, 0x69, + 0x74, 0x69, 0x65, 0x73, 0x5b, 0x30, 0x5d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x63, 0x6f, 0x6e, 0x73, 0x74, 0x20, 0x66, 0x6f, + 0x75, 0x6e, 0x64, 0x20, 0x3d, 0x20, 0x70, 0x72, 0x6f, 0x62, 0x73, 0x2e, + 0x66, 0x69, 0x6e, 0x64, 0x28, 0x70, 0x20, 0x3d, 0x3e, 0x20, 0x70, 0x2e, + 0x74, 0x6f, 0x6b, 0x5f, 0x73, 0x74, 0x72, 0x20, 0x3d, 0x3d, 0x3d, 0x20, + 0x6d, 0x73, 0x67, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x29, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x63, 0x6f, 0x6e, + 0x73, 0x74, 0x20, 0x70, 0x43, 0x6f, 0x6c, 0x6f, 0x72, 0x20, 0x3d, 0x20, + 0x66, 0x6f, 0x75, 0x6e, 0x64, 0x20, 0x3f, 0x20, 0x70, 0x72, 0x6f, 0x62, + 0x43, 0x6f, 0x6c, 0x6f, 0x72, 0x28, 0x66, 0x6f, 0x75, 0x6e, 0x64, 0x2e, + 0x70, 0x72, 0x6f, 0x62, 0x29, 0x20, 0x3a, 0x20, 0x27, 0x74, 0x72, 0x61, + 0x6e, 0x73, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x27, 0x0a, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x63, 0x6f, 0x6e, 0x73, 0x74, + 0x20, 0x70, 0x6f, 0x70, 0x6f, 0x76, 0x65, 0x72, 0x43, 0x68, 0x69, 0x6c, + 0x64, 0x72, 0x65, 0x6e, 0x20, 0x3d, 0x20, 0x68, 0x74, 0x6d, 0x6c, 0x60, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x64, 0x69, 0x76, 0x20, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x3d, 0x22, 0x70, + 0x72, 0x6f, 0x62, 0x2d, 0x73, 0x65, 0x74, 0x22, 0x3e, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x24, 0x7b, + 0x70, 0x72, 0x6f, 0x62, 0x73, 0x2e, 0x6d, 0x61, 0x70, 0x28, 0x28, 0x70, + 0x2c, 0x20, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x29, 0x20, 0x3d, 0x3e, 0x20, + 0x7b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x72, 0x65, 0x74, 0x75, 0x72, 0x6e, 0x20, 0x68, 0x74, 0x6d, 0x6c, 0x60, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x64, 0x69, 0x76, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x6b, 0x65, 0x79, 0x3d, 0x24, 0x7b, 0x69, 0x6e, + 0x64, 0x65, 0x78, 0x7d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x74, + 0x69, 0x74, 0x6c, 0x65, 0x3d, 0x24, 0x7b, 0x60, 0x70, 0x72, 0x6f, 0x62, + 0x3a, 0x20, 0x24, 0x7b, 0x70, 0x2e, 0x70, 0x72, 0x6f, 0x62, 0x7d, 0x60, + 0x7d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x73, 0x74, 0x79, 0x6c, + 0x65, 0x3d, 0x24, 0x7b, 0x7b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x70, 0x61, 0x64, 0x64, 0x69, 0x6e, 0x67, 0x3a, 0x20, 0x27, 0x30, 0x2e, 0x33, 0x65, 0x6d, 0x27, 0x2c, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x62, 0x61, - 0x63, 0x6b, 0x67, 0x72, 0x6f, 0x75, 0x6e, 0x64, 0x43, 0x6f, 0x6c, 0x6f, - 0x72, 0x3a, 0x20, 0x70, 0x2e, 0x74, 0x6f, 0x6b, 0x5f, 0x73, 0x74, 0x72, - 0x20, 0x3d, 0x3d, 0x3d, 0x20, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, - 0x20, 0x3f, 0x20, 0x70, 0x72, 0x6f, 0x62, 0x43, 0x6f, 0x6c, 0x6f, 0x72, - 0x28, 0x70, 0x2e, 0x70, 0x72, 0x6f, 0x62, 0x29, 0x20, 0x3a, 0x20, 0x27, - 0x74, 0x72, 0x61, 0x6e, 0x73, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x27, - 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x62, 0x61, 0x63, 0x6b, 0x67, 0x72, 0x6f, 0x75, + 0x6e, 0x64, 0x43, 0x6f, 0x6c, 0x6f, 0x72, 0x3a, 0x20, 0x70, 0x2e, 0x74, + 0x6f, 0x6b, 0x5f, 0x73, 0x74, 0x72, 0x20, 0x3d, 0x3d, 0x3d, 0x20, 0x63, + 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x20, 0x3f, 0x20, 0x70, 0x72, 0x6f, + 0x62, 0x43, 0x6f, 0x6c, 0x6f, 0x72, 0x28, 0x70, 0x2e, 0x70, 0x72, 0x6f, + 0x62, 0x29, 0x20, 0x3a, 0x20, 0x27, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x70, + 0x61, 0x72, 0x65, 0x6e, 0x74, 0x27, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x7d, 0x7d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, @@ -2056,464 +2210,470 @@ unsigned char index_html[] = { 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x64, 0x69, 0x76, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x60, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x7d, 0x29, 0x7d, 0x0a, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x64, 0x69, 0x76, - 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x60, 0x0a, - 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x72, 0x65, 0x74, - 0x75, 0x72, 0x6e, 0x20, 0x68, 0x74, 0x6d, 0x6c, 0x60, 0x0a, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x24, 0x7b, 0x50, - 0x6f, 0x70, 0x6f, 0x76, 0x65, 0x72, 0x7d, 0x20, 0x73, 0x74, 0x79, 0x6c, - 0x65, 0x3d, 0x24, 0x7b, 0x7b, 0x20, 0x62, 0x61, 0x63, 0x6b, 0x67, 0x72, - 0x6f, 0x75, 0x6e, 0x64, 0x43, 0x6f, 0x6c, 0x6f, 0x72, 0x3a, 0x20, 0x70, - 0x43, 0x6f, 0x6c, 0x6f, 0x72, 0x20, 0x7d, 0x7d, 0x20, 0x70, 0x6f, 0x70, - 0x6f, 0x76, 0x65, 0x72, 0x43, 0x68, 0x69, 0x6c, 0x64, 0x72, 0x65, 0x6e, - 0x3d, 0x24, 0x7b, 0x70, 0x6f, 0x70, 0x6f, 0x76, 0x65, 0x72, 0x43, 0x68, - 0x69, 0x6c, 0x64, 0x72, 0x65, 0x6e, 0x7d, 0x3e, 0x0a, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x24, 0x7b, 0x6d, - 0x73, 0x67, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x2e, 0x6d, - 0x61, 0x74, 0x63, 0x68, 0x28, 0x2f, 0x5c, 0x6e, 0x2f, 0x67, 0x69, 0x6d, - 0x29, 0x20, 0x3f, 0x20, 0x68, 0x74, 0x6d, 0x6c, 0x60, 0x3c, 0x62, 0x72, - 0x20, 0x2f, 0x3e, 0x60, 0x20, 0x3a, 0x20, 0x6d, 0x73, 0x67, 0x2e, 0x63, - 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x7d, 0x0a, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x3e, 0x0a, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x60, 0x0a, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x7d, 0x29, 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x7d, 0x0a, - 0x0a, 0x20, 0x20, 0x20, 0x20, 0x2f, 0x2f, 0x20, 0x70, 0x6f, 0x6f, 0x72, - 0x20, 0x6d, 0x61, 0x6e, 0x73, 0x20, 0x6d, 0x61, 0x72, 0x6b, 0x64, 0x6f, - 0x77, 0x6e, 0x20, 0x72, 0x65, 0x70, 0x6c, 0x61, 0x63, 0x65, 0x6d, 0x65, - 0x6e, 0x74, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x63, 0x6f, 0x6e, 0x73, 0x74, - 0x20, 0x4d, 0x61, 0x72, 0x6b, 0x64, 0x6f, 0x77, 0x6e, 0x69, 0x73, 0x68, - 0x20, 0x3d, 0x20, 0x28, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x29, 0x20, - 0x3d, 0x3e, 0x20, 0x7b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x63, - 0x6f, 0x6e, 0x73, 0x74, 0x20, 0x6d, 0x64, 0x20, 0x3d, 0x20, 0x70, 0x61, - 0x72, 0x61, 0x6d, 0x73, 0x2e, 0x74, 0x65, 0x78, 0x74, 0x0a, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x2e, 0x72, 0x65, 0x70, 0x6c, 0x61, - 0x63, 0x65, 0x28, 0x2f, 0x26, 0x2f, 0x67, 0x2c, 0x20, 0x27, 0x26, 0x61, - 0x6d, 0x70, 0x3b, 0x27, 0x29, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x7d, 0x29, 0x7d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x64, 0x69, 0x76, 0x3e, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x60, 0x0a, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x72, 0x65, 0x74, 0x75, 0x72, 0x6e, 0x20, + 0x68, 0x74, 0x6d, 0x6c, 0x60, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x24, 0x7b, 0x50, 0x6f, 0x70, 0x6f, 0x76, + 0x65, 0x72, 0x7d, 0x20, 0x73, 0x74, 0x79, 0x6c, 0x65, 0x3d, 0x24, 0x7b, + 0x7b, 0x20, 0x62, 0x61, 0x63, 0x6b, 0x67, 0x72, 0x6f, 0x75, 0x6e, 0x64, + 0x43, 0x6f, 0x6c, 0x6f, 0x72, 0x3a, 0x20, 0x70, 0x43, 0x6f, 0x6c, 0x6f, + 0x72, 0x20, 0x7d, 0x7d, 0x20, 0x70, 0x6f, 0x70, 0x6f, 0x76, 0x65, 0x72, + 0x43, 0x68, 0x69, 0x6c, 0x64, 0x72, 0x65, 0x6e, 0x3d, 0x24, 0x7b, 0x70, + 0x6f, 0x70, 0x6f, 0x76, 0x65, 0x72, 0x43, 0x68, 0x69, 0x6c, 0x64, 0x72, + 0x65, 0x6e, 0x7d, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x24, 0x7b, 0x6d, 0x73, 0x67, 0x2e, 0x63, + 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x2e, 0x6d, 0x61, 0x74, 0x63, 0x68, + 0x28, 0x2f, 0x5c, 0x6e, 0x2f, 0x67, 0x69, 0x6d, 0x29, 0x20, 0x3f, 0x20, + 0x68, 0x74, 0x6d, 0x6c, 0x60, 0x3c, 0x62, 0x72, 0x20, 0x2f, 0x3e, 0x60, + 0x20, 0x3a, 0x20, 0x6d, 0x73, 0x67, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, + 0x6e, 0x74, 0x7d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x60, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x7d, 0x29, + 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x7d, 0x0a, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x2f, 0x2f, 0x20, 0x70, 0x6f, 0x6f, 0x72, 0x20, 0x6d, 0x61, 0x6e, + 0x73, 0x20, 0x6d, 0x61, 0x72, 0x6b, 0x64, 0x6f, 0x77, 0x6e, 0x20, 0x72, + 0x65, 0x70, 0x6c, 0x61, 0x63, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x63, 0x6f, 0x6e, 0x73, 0x74, 0x20, 0x4d, 0x61, 0x72, + 0x6b, 0x64, 0x6f, 0x77, 0x6e, 0x69, 0x73, 0x68, 0x20, 0x3d, 0x20, 0x28, + 0x70, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x29, 0x20, 0x3d, 0x3e, 0x20, 0x7b, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x63, 0x6f, 0x6e, 0x73, 0x74, + 0x20, 0x6d, 0x64, 0x20, 0x3d, 0x20, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x73, + 0x2e, 0x74, 0x65, 0x78, 0x74, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x2e, 0x72, 0x65, 0x70, 0x6c, 0x61, 0x63, 0x65, 0x28, 0x2f, - 0x3c, 0x2f, 0x67, 0x2c, 0x20, 0x27, 0x26, 0x6c, 0x74, 0x3b, 0x27, 0x29, - 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x2e, 0x72, 0x65, - 0x70, 0x6c, 0x61, 0x63, 0x65, 0x28, 0x2f, 0x3e, 0x2f, 0x67, 0x2c, 0x20, - 0x27, 0x26, 0x67, 0x74, 0x3b, 0x27, 0x29, 0x0a, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x2e, 0x72, 0x65, 0x70, 0x6c, 0x61, 0x63, 0x65, - 0x28, 0x2f, 0x5e, 0x23, 0x7b, 0x31, 0x2c, 0x36, 0x7d, 0x20, 0x28, 0x2e, - 0x2a, 0x29, 0x24, 0x2f, 0x67, 0x69, 0x6d, 0x2c, 0x20, 0x27, 0x3c, 0x68, - 0x33, 0x3e, 0x24, 0x31, 0x3c, 0x2f, 0x68, 0x33, 0x3e, 0x27, 0x29, 0x0a, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x2e, 0x72, 0x65, 0x70, - 0x6c, 0x61, 0x63, 0x65, 0x28, 0x2f, 0x5c, 0x2a, 0x5c, 0x2a, 0x28, 0x2e, - 0x2a, 0x3f, 0x29, 0x5c, 0x2a, 0x5c, 0x2a, 0x2f, 0x67, 0x2c, 0x20, 0x27, - 0x3c, 0x73, 0x74, 0x72, 0x6f, 0x6e, 0x67, 0x3e, 0x24, 0x31, 0x3c, 0x2f, - 0x73, 0x74, 0x72, 0x6f, 0x6e, 0x67, 0x3e, 0x27, 0x29, 0x0a, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x2e, 0x72, 0x65, 0x70, 0x6c, 0x61, - 0x63, 0x65, 0x28, 0x2f, 0x5f, 0x5f, 0x28, 0x2e, 0x2a, 0x3f, 0x29, 0x5f, - 0x5f, 0x2f, 0x67, 0x2c, 0x20, 0x27, 0x3c, 0x73, 0x74, 0x72, 0x6f, 0x6e, - 0x67, 0x3e, 0x24, 0x31, 0x3c, 0x2f, 0x73, 0x74, 0x72, 0x6f, 0x6e, 0x67, - 0x3e, 0x27, 0x29, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x2e, 0x72, 0x65, 0x70, 0x6c, 0x61, 0x63, 0x65, 0x28, 0x2f, 0x5c, 0x2a, - 0x28, 0x2e, 0x2a, 0x3f, 0x29, 0x5c, 0x2a, 0x2f, 0x67, 0x2c, 0x20, 0x27, - 0x3c, 0x65, 0x6d, 0x3e, 0x24, 0x31, 0x3c, 0x2f, 0x65, 0x6d, 0x3e, 0x27, + 0x26, 0x2f, 0x67, 0x2c, 0x20, 0x27, 0x26, 0x61, 0x6d, 0x70, 0x3b, 0x27, 0x29, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x2e, 0x72, - 0x65, 0x70, 0x6c, 0x61, 0x63, 0x65, 0x28, 0x2f, 0x5f, 0x28, 0x2e, 0x2a, - 0x3f, 0x29, 0x5f, 0x2f, 0x67, 0x2c, 0x20, 0x27, 0x3c, 0x65, 0x6d, 0x3e, + 0x65, 0x70, 0x6c, 0x61, 0x63, 0x65, 0x28, 0x2f, 0x3c, 0x2f, 0x67, 0x2c, + 0x20, 0x27, 0x26, 0x6c, 0x74, 0x3b, 0x27, 0x29, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x2e, 0x72, 0x65, 0x70, 0x6c, 0x61, 0x63, + 0x65, 0x28, 0x2f, 0x3e, 0x2f, 0x67, 0x2c, 0x20, 0x27, 0x26, 0x67, 0x74, + 0x3b, 0x27, 0x29, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x2e, 0x72, 0x65, 0x70, 0x6c, 0x61, 0x63, 0x65, 0x28, 0x2f, 0x5e, 0x23, + 0x7b, 0x31, 0x2c, 0x36, 0x7d, 0x20, 0x28, 0x2e, 0x2a, 0x29, 0x24, 0x2f, + 0x67, 0x69, 0x6d, 0x2c, 0x20, 0x27, 0x3c, 0x68, 0x33, 0x3e, 0x24, 0x31, + 0x3c, 0x2f, 0x68, 0x33, 0x3e, 0x27, 0x29, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x2e, 0x72, 0x65, 0x70, 0x6c, 0x61, 0x63, 0x65, + 0x28, 0x2f, 0x5c, 0x2a, 0x5c, 0x2a, 0x28, 0x2e, 0x2a, 0x3f, 0x29, 0x5c, + 0x2a, 0x5c, 0x2a, 0x2f, 0x67, 0x2c, 0x20, 0x27, 0x3c, 0x73, 0x74, 0x72, + 0x6f, 0x6e, 0x67, 0x3e, 0x24, 0x31, 0x3c, 0x2f, 0x73, 0x74, 0x72, 0x6f, + 0x6e, 0x67, 0x3e, 0x27, 0x29, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x2e, 0x72, 0x65, 0x70, 0x6c, 0x61, 0x63, 0x65, 0x28, 0x2f, + 0x5f, 0x5f, 0x28, 0x2e, 0x2a, 0x3f, 0x29, 0x5f, 0x5f, 0x2f, 0x67, 0x2c, + 0x20, 0x27, 0x3c, 0x73, 0x74, 0x72, 0x6f, 0x6e, 0x67, 0x3e, 0x24, 0x31, + 0x3c, 0x2f, 0x73, 0x74, 0x72, 0x6f, 0x6e, 0x67, 0x3e, 0x27, 0x29, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x2e, 0x72, 0x65, 0x70, + 0x6c, 0x61, 0x63, 0x65, 0x28, 0x2f, 0x5c, 0x2a, 0x28, 0x2e, 0x2a, 0x3f, + 0x29, 0x5c, 0x2a, 0x2f, 0x67, 0x2c, 0x20, 0x27, 0x3c, 0x65, 0x6d, 0x3e, 0x24, 0x31, 0x3c, 0x2f, 0x65, 0x6d, 0x3e, 0x27, 0x29, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x2e, 0x72, 0x65, 0x70, 0x6c, 0x61, - 0x63, 0x65, 0x28, 0x2f, 0x60, 0x60, 0x60, 0x2e, 0x2a, 0x3f, 0x5c, 0x6e, - 0x28, 0x5b, 0x5c, 0x73, 0x5c, 0x53, 0x5d, 0x2a, 0x3f, 0x29, 0x60, 0x60, - 0x60, 0x2f, 0x67, 0x2c, 0x20, 0x27, 0x3c, 0x70, 0x72, 0x65, 0x3e, 0x3c, - 0x63, 0x6f, 0x64, 0x65, 0x3e, 0x24, 0x31, 0x3c, 0x2f, 0x63, 0x6f, 0x64, - 0x65, 0x3e, 0x3c, 0x2f, 0x70, 0x72, 0x65, 0x3e, 0x27, 0x29, 0x0a, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x2e, 0x72, 0x65, 0x70, 0x6c, - 0x61, 0x63, 0x65, 0x28, 0x2f, 0x60, 0x28, 0x2e, 0x2a, 0x3f, 0x29, 0x60, - 0x2f, 0x67, 0x2c, 0x20, 0x27, 0x3c, 0x63, 0x6f, 0x64, 0x65, 0x3e, 0x24, - 0x31, 0x3c, 0x2f, 0x63, 0x6f, 0x64, 0x65, 0x3e, 0x27, 0x29, 0x0a, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x2e, 0x72, 0x65, 0x70, 0x6c, - 0x61, 0x63, 0x65, 0x28, 0x2f, 0x5c, 0x6e, 0x2f, 0x67, 0x69, 0x6d, 0x2c, - 0x20, 0x27, 0x3c, 0x62, 0x72, 0x20, 0x2f, 0x3e, 0x27, 0x29, 0x3b, 0x0a, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x72, 0x65, 0x74, 0x75, 0x72, 0x6e, - 0x20, 0x68, 0x74, 0x6d, 0x6c, 0x60, 0x3c, 0x73, 0x70, 0x61, 0x6e, 0x20, - 0x64, 0x61, 0x6e, 0x67, 0x65, 0x72, 0x6f, 0x75, 0x73, 0x6c, 0x79, 0x53, - 0x65, 0x74, 0x49, 0x6e, 0x6e, 0x65, 0x72, 0x48, 0x54, 0x4d, 0x4c, 0x3d, - 0x24, 0x7b, 0x7b, 0x20, 0x5f, 0x5f, 0x68, 0x74, 0x6d, 0x6c, 0x3a, 0x20, - 0x6d, 0x64, 0x20, 0x7d, 0x7d, 0x20, 0x2f, 0x3e, 0x60, 0x3b, 0x0a, 0x20, - 0x20, 0x20, 0x20, 0x7d, 0x3b, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x63, - 0x6f, 0x6e, 0x73, 0x74, 0x20, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x47, 0x65, - 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x6e, 0x66, 0x6f, - 0x20, 0x3d, 0x20, 0x28, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x29, 0x20, - 0x3d, 0x3e, 0x20, 0x7b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x69, - 0x66, 0x20, 0x28, 0x21, 0x6c, 0x6c, 0x61, 0x6d, 0x61, 0x53, 0x74, 0x61, - 0x74, 0x73, 0x2e, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x29, 0x20, 0x7b, 0x0a, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x72, 0x65, 0x74, 0x75, - 0x72, 0x6e, 0x20, 0x68, 0x74, 0x6d, 0x6c, 0x60, 0x3c, 0x73, 0x70, 0x61, - 0x6e, 0x2f, 0x3e, 0x60, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x7d, - 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x72, 0x65, 0x74, 0x75, 0x72, - 0x6e, 0x20, 0x68, 0x74, 0x6d, 0x6c, 0x60, 0x0a, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x3c, 0x73, 0x70, 0x61, 0x6e, 0x3e, 0x0a, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x24, 0x7b, 0x6c, - 0x6c, 0x61, 0x6d, 0x61, 0x53, 0x74, 0x61, 0x74, 0x73, 0x2e, 0x76, 0x61, - 0x6c, 0x75, 0x65, 0x2e, 0x70, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x65, - 0x64, 0x5f, 0x70, 0x65, 0x72, 0x5f, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x5f, - 0x6d, 0x73, 0x2e, 0x74, 0x6f, 0x46, 0x69, 0x78, 0x65, 0x64, 0x28, 0x29, - 0x7d, 0x6d, 0x73, 0x20, 0x70, 0x65, 0x72, 0x20, 0x74, 0x6f, 0x6b, 0x65, - 0x6e, 0x2c, 0x20, 0x24, 0x7b, 0x6c, 0x6c, 0x61, 0x6d, 0x61, 0x53, 0x74, - 0x61, 0x74, 0x73, 0x2e, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x2e, 0x70, 0x72, - 0x65, 0x64, 0x69, 0x63, 0x74, 0x65, 0x64, 0x5f, 0x70, 0x65, 0x72, 0x5f, - 0x73, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x2e, 0x74, 0x6f, 0x46, 0x69, 0x78, - 0x65, 0x64, 0x28, 0x32, 0x29, 0x7d, 0x20, 0x74, 0x6f, 0x6b, 0x65, 0x6e, - 0x73, 0x20, 0x70, 0x65, 0x72, 0x20, 0x73, 0x65, 0x63, 0x6f, 0x6e, 0x64, - 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x73, - 0x70, 0x61, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x60, - 0x0a, 0x20, 0x20, 0x20, 0x20, 0x7d, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, - 0x2f, 0x2f, 0x20, 0x73, 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x20, 0x70, 0x6f, - 0x70, 0x6f, 0x76, 0x65, 0x72, 0x20, 0x69, 0x6d, 0x70, 0x6c, 0x0a, 0x20, - 0x20, 0x20, 0x20, 0x63, 0x6f, 0x6e, 0x73, 0x74, 0x20, 0x50, 0x6f, 0x70, - 0x6f, 0x76, 0x65, 0x72, 0x20, 0x3d, 0x20, 0x28, 0x70, 0x72, 0x6f, 0x70, - 0x73, 0x29, 0x20, 0x3d, 0x3e, 0x20, 0x7b, 0x0a, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x63, 0x6f, 0x6e, 0x73, 0x74, 0x20, 0x69, 0x73, 0x4f, 0x70, - 0x65, 0x6e, 0x20, 0x3d, 0x20, 0x75, 0x73, 0x65, 0x53, 0x69, 0x67, 0x6e, - 0x61, 0x6c, 0x28, 0x66, 0x61, 0x6c, 0x73, 0x65, 0x29, 0x3b, 0x0a, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x63, 0x6f, 0x6e, 0x73, 0x74, 0x20, 0x70, - 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x3d, 0x20, 0x75, 0x73, - 0x65, 0x53, 0x69, 0x67, 0x6e, 0x61, 0x6c, 0x28, 0x7b, 0x20, 0x74, 0x6f, - 0x70, 0x3a, 0x20, 0x27, 0x30, 0x70, 0x78, 0x27, 0x2c, 0x20, 0x6c, 0x65, - 0x66, 0x74, 0x3a, 0x20, 0x27, 0x30, 0x70, 0x78, 0x27, 0x20, 0x7d, 0x29, - 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x63, 0x6f, 0x6e, 0x73, - 0x74, 0x20, 0x62, 0x75, 0x74, 0x74, 0x6f, 0x6e, 0x52, 0x65, 0x66, 0x20, - 0x3d, 0x20, 0x75, 0x73, 0x65, 0x52, 0x65, 0x66, 0x28, 0x6e, 0x75, 0x6c, - 0x6c, 0x29, 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x63, 0x6f, - 0x6e, 0x73, 0x74, 0x20, 0x70, 0x6f, 0x70, 0x6f, 0x76, 0x65, 0x72, 0x52, - 0x65, 0x66, 0x20, 0x3d, 0x20, 0x75, 0x73, 0x65, 0x52, 0x65, 0x66, 0x28, - 0x6e, 0x75, 0x6c, 0x6c, 0x29, 0x3b, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x63, 0x6f, 0x6e, 0x73, 0x74, 0x20, 0x74, 0x6f, 0x67, 0x67, - 0x6c, 0x65, 0x50, 0x6f, 0x70, 0x6f, 0x76, 0x65, 0x72, 0x20, 0x3d, 0x20, - 0x28, 0x29, 0x20, 0x3d, 0x3e, 0x20, 0x7b, 0x0a, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x69, 0x66, 0x20, 0x28, 0x62, 0x75, 0x74, 0x74, - 0x6f, 0x6e, 0x52, 0x65, 0x66, 0x2e, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, - 0x74, 0x29, 0x20, 0x7b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x63, 0x6f, 0x6e, 0x73, 0x74, 0x20, 0x72, 0x65, 0x63, - 0x74, 0x20, 0x3d, 0x20, 0x62, 0x75, 0x74, 0x74, 0x6f, 0x6e, 0x52, 0x65, - 0x66, 0x2e, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x74, 0x2e, 0x67, 0x65, - 0x74, 0x42, 0x6f, 0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x43, 0x6c, 0x69, - 0x65, 0x6e, 0x74, 0x52, 0x65, 0x63, 0x74, 0x28, 0x29, 0x3b, 0x0a, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x70, 0x6f, 0x73, - 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x20, - 0x3d, 0x20, 0x7b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x74, 0x6f, 0x70, 0x3a, 0x20, 0x60, 0x24, 0x7b, - 0x72, 0x65, 0x63, 0x74, 0x2e, 0x62, 0x6f, 0x74, 0x74, 0x6f, 0x6d, 0x20, - 0x2b, 0x20, 0x77, 0x69, 0x6e, 0x64, 0x6f, 0x77, 0x2e, 0x73, 0x63, 0x72, - 0x6f, 0x6c, 0x6c, 0x59, 0x7d, 0x70, 0x78, 0x60, 0x2c, 0x0a, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x6c, 0x65, - 0x66, 0x74, 0x3a, 0x20, 0x60, 0x24, 0x7b, 0x72, 0x65, 0x63, 0x74, 0x2e, - 0x6c, 0x65, 0x66, 0x74, 0x20, 0x2b, 0x20, 0x77, 0x69, 0x6e, 0x64, 0x6f, - 0x77, 0x2e, 0x73, 0x63, 0x72, 0x6f, 0x6c, 0x6c, 0x58, 0x7d, 0x70, 0x78, - 0x60, 0x2c, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x7d, 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x7d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x69, 0x73, - 0x4f, 0x70, 0x65, 0x6e, 0x2e, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x20, 0x3d, - 0x20, 0x21, 0x69, 0x73, 0x4f, 0x70, 0x65, 0x6e, 0x2e, 0x76, 0x61, 0x6c, - 0x75, 0x65, 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x7d, 0x3b, - 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x63, 0x6f, 0x6e, 0x73, - 0x74, 0x20, 0x68, 0x61, 0x6e, 0x64, 0x6c, 0x65, 0x43, 0x6c, 0x69, 0x63, - 0x6b, 0x4f, 0x75, 0x74, 0x73, 0x69, 0x64, 0x65, 0x20, 0x3d, 0x20, 0x28, - 0x65, 0x76, 0x65, 0x6e, 0x74, 0x29, 0x20, 0x3d, 0x3e, 0x20, 0x7b, 0x0a, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x69, 0x66, 0x20, 0x28, - 0x70, 0x6f, 0x70, 0x6f, 0x76, 0x65, 0x72, 0x52, 0x65, 0x66, 0x2e, 0x63, - 0x75, 0x72, 0x72, 0x65, 0x6e, 0x74, 0x20, 0x26, 0x26, 0x20, 0x21, 0x70, - 0x6f, 0x70, 0x6f, 0x76, 0x65, 0x72, 0x52, 0x65, 0x66, 0x2e, 0x63, 0x75, - 0x72, 0x72, 0x65, 0x6e, 0x74, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x61, 0x69, - 0x6e, 0x73, 0x28, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x2e, 0x74, 0x61, 0x72, - 0x67, 0x65, 0x74, 0x29, 0x20, 0x26, 0x26, 0x20, 0x21, 0x62, 0x75, 0x74, - 0x74, 0x6f, 0x6e, 0x52, 0x65, 0x66, 0x2e, 0x63, 0x75, 0x72, 0x72, 0x65, - 0x6e, 0x74, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x73, 0x28, - 0x65, 0x76, 0x65, 0x6e, 0x74, 0x2e, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, - 0x29, 0x29, 0x20, 0x7b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x69, 0x73, 0x4f, 0x70, 0x65, 0x6e, 0x2e, 0x76, 0x61, - 0x6c, 0x75, 0x65, 0x20, 0x3d, 0x20, 0x66, 0x61, 0x6c, 0x73, 0x65, 0x3b, - 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x7d, 0x0a, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x7d, 0x3b, 0x0a, 0x0a, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x75, 0x73, 0x65, 0x45, 0x66, 0x66, 0x65, 0x63, 0x74, - 0x28, 0x28, 0x29, 0x20, 0x3d, 0x3e, 0x20, 0x7b, 0x0a, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, - 0x74, 0x2e, 0x61, 0x64, 0x64, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x4c, 0x69, - 0x73, 0x74, 0x65, 0x6e, 0x65, 0x72, 0x28, 0x27, 0x6d, 0x6f, 0x75, 0x73, - 0x65, 0x64, 0x6f, 0x77, 0x6e, 0x27, 0x2c, 0x20, 0x68, 0x61, 0x6e, 0x64, - 0x6c, 0x65, 0x43, 0x6c, 0x69, 0x63, 0x6b, 0x4f, 0x75, 0x74, 0x73, 0x69, - 0x64, 0x65, 0x29, 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x72, 0x65, 0x74, 0x75, 0x72, 0x6e, 0x20, 0x28, 0x29, 0x20, 0x3d, - 0x3e, 0x20, 0x7b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x72, - 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x4c, 0x69, - 0x73, 0x74, 0x65, 0x6e, 0x65, 0x72, 0x28, 0x27, 0x6d, 0x6f, 0x75, 0x73, - 0x65, 0x64, 0x6f, 0x77, 0x6e, 0x27, 0x2c, 0x20, 0x68, 0x61, 0x6e, 0x64, - 0x6c, 0x65, 0x43, 0x6c, 0x69, 0x63, 0x6b, 0x4f, 0x75, 0x74, 0x73, 0x69, - 0x64, 0x65, 0x29, 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x7d, 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x7d, 0x2c, - 0x20, 0x5b, 0x5d, 0x29, 0x3b, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x72, 0x65, 0x74, 0x75, 0x72, 0x6e, 0x20, 0x68, 0x74, 0x6d, 0x6c, - 0x60, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x73, - 0x70, 0x61, 0x6e, 0x20, 0x73, 0x74, 0x79, 0x6c, 0x65, 0x3d, 0x24, 0x7b, - 0x70, 0x72, 0x6f, 0x70, 0x73, 0x2e, 0x73, 0x74, 0x79, 0x6c, 0x65, 0x7d, - 0x20, 0x72, 0x65, 0x66, 0x3d, 0x24, 0x7b, 0x62, 0x75, 0x74, 0x74, 0x6f, - 0x6e, 0x52, 0x65, 0x66, 0x7d, 0x20, 0x6f, 0x6e, 0x43, 0x6c, 0x69, 0x63, - 0x6b, 0x3d, 0x24, 0x7b, 0x74, 0x6f, 0x67, 0x67, 0x6c, 0x65, 0x50, 0x6f, - 0x70, 0x6f, 0x76, 0x65, 0x72, 0x7d, 0x3e, 0x24, 0x7b, 0x70, 0x72, 0x6f, - 0x70, 0x73, 0x2e, 0x63, 0x68, 0x69, 0x6c, 0x64, 0x72, 0x65, 0x6e, 0x7d, - 0x3c, 0x2f, 0x73, 0x70, 0x61, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x24, 0x7b, 0x69, 0x73, 0x4f, 0x70, 0x65, 0x6e, - 0x2e, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x20, 0x26, 0x26, 0x20, 0x68, 0x74, + 0x63, 0x65, 0x28, 0x2f, 0x5f, 0x28, 0x2e, 0x2a, 0x3f, 0x29, 0x5f, 0x2f, + 0x67, 0x2c, 0x20, 0x27, 0x3c, 0x65, 0x6d, 0x3e, 0x24, 0x31, 0x3c, 0x2f, + 0x65, 0x6d, 0x3e, 0x27, 0x29, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x2e, 0x72, 0x65, 0x70, 0x6c, 0x61, 0x63, 0x65, 0x28, 0x2f, + 0x60, 0x60, 0x60, 0x2e, 0x2a, 0x3f, 0x5c, 0x6e, 0x28, 0x5b, 0x5c, 0x73, + 0x5c, 0x53, 0x5d, 0x2a, 0x3f, 0x29, 0x60, 0x60, 0x60, 0x2f, 0x67, 0x2c, + 0x20, 0x27, 0x3c, 0x70, 0x72, 0x65, 0x3e, 0x3c, 0x63, 0x6f, 0x64, 0x65, + 0x3e, 0x24, 0x31, 0x3c, 0x2f, 0x63, 0x6f, 0x64, 0x65, 0x3e, 0x3c, 0x2f, + 0x70, 0x72, 0x65, 0x3e, 0x27, 0x29, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x2e, 0x72, 0x65, 0x70, 0x6c, 0x61, 0x63, 0x65, 0x28, + 0x2f, 0x60, 0x28, 0x2e, 0x2a, 0x3f, 0x29, 0x60, 0x2f, 0x67, 0x2c, 0x20, + 0x27, 0x3c, 0x63, 0x6f, 0x64, 0x65, 0x3e, 0x24, 0x31, 0x3c, 0x2f, 0x63, + 0x6f, 0x64, 0x65, 0x3e, 0x27, 0x29, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x2e, 0x72, 0x65, 0x70, 0x6c, 0x61, 0x63, 0x65, 0x28, + 0x2f, 0x5c, 0x6e, 0x2f, 0x67, 0x69, 0x6d, 0x2c, 0x20, 0x27, 0x3c, 0x62, + 0x72, 0x20, 0x2f, 0x3e, 0x27, 0x29, 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x72, 0x65, 0x74, 0x75, 0x72, 0x6e, 0x20, 0x68, 0x74, 0x6d, + 0x6c, 0x60, 0x3c, 0x73, 0x70, 0x61, 0x6e, 0x20, 0x64, 0x61, 0x6e, 0x67, + 0x65, 0x72, 0x6f, 0x75, 0x73, 0x6c, 0x79, 0x53, 0x65, 0x74, 0x49, 0x6e, + 0x6e, 0x65, 0x72, 0x48, 0x54, 0x4d, 0x4c, 0x3d, 0x24, 0x7b, 0x7b, 0x20, + 0x5f, 0x5f, 0x68, 0x74, 0x6d, 0x6c, 0x3a, 0x20, 0x6d, 0x64, 0x20, 0x7d, + 0x7d, 0x20, 0x2f, 0x3e, 0x60, 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x7d, + 0x3b, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x63, 0x6f, 0x6e, 0x73, 0x74, + 0x20, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x47, 0x65, 0x6e, 0x65, 0x72, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x6e, 0x66, 0x6f, 0x20, 0x3d, 0x20, 0x28, + 0x70, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x29, 0x20, 0x3d, 0x3e, 0x20, 0x7b, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x69, 0x66, 0x20, 0x28, 0x21, + 0x6c, 0x6c, 0x61, 0x6d, 0x61, 0x53, 0x74, 0x61, 0x74, 0x73, 0x2e, 0x76, + 0x61, 0x6c, 0x75, 0x65, 0x29, 0x20, 0x7b, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x72, 0x65, 0x74, 0x75, 0x72, 0x6e, 0x20, 0x68, + 0x74, 0x6d, 0x6c, 0x60, 0x3c, 0x73, 0x70, 0x61, 0x6e, 0x2f, 0x3e, 0x60, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x7d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x72, 0x65, 0x74, 0x75, 0x72, 0x6e, 0x20, 0x68, 0x74, 0x6d, 0x6c, 0x60, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x3c, 0x24, 0x7b, 0x50, 0x6f, 0x72, 0x74, 0x61, 0x6c, 0x7d, - 0x20, 0x69, 0x6e, 0x74, 0x6f, 0x3d, 0x22, 0x23, 0x70, 0x6f, 0x72, 0x74, - 0x61, 0x6c, 0x22, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x64, 0x69, 0x76, 0x0a, 0x20, 0x20, + 0x3c, 0x73, 0x70, 0x61, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x24, 0x7b, 0x6c, 0x6c, 0x61, 0x6d, 0x61, + 0x53, 0x74, 0x61, 0x74, 0x73, 0x2e, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x2e, + 0x70, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x65, 0x64, 0x5f, 0x70, 0x65, + 0x72, 0x5f, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x5f, 0x6d, 0x73, 0x2e, 0x74, + 0x6f, 0x46, 0x69, 0x78, 0x65, 0x64, 0x28, 0x29, 0x7d, 0x6d, 0x73, 0x20, + 0x70, 0x65, 0x72, 0x20, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x2c, 0x20, 0x24, + 0x7b, 0x6c, 0x6c, 0x61, 0x6d, 0x61, 0x53, 0x74, 0x61, 0x74, 0x73, 0x2e, + 0x76, 0x61, 0x6c, 0x75, 0x65, 0x2e, 0x70, 0x72, 0x65, 0x64, 0x69, 0x63, + 0x74, 0x65, 0x64, 0x5f, 0x70, 0x65, 0x72, 0x5f, 0x73, 0x65, 0x63, 0x6f, + 0x6e, 0x64, 0x2e, 0x74, 0x6f, 0x46, 0x69, 0x78, 0x65, 0x64, 0x28, 0x32, + 0x29, 0x7d, 0x20, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x73, 0x20, 0x70, 0x65, + 0x72, 0x20, 0x73, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x73, 0x70, 0x61, 0x6e, 0x3e, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x60, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x7d, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x2f, 0x2f, 0x20, 0x73, + 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x20, 0x70, 0x6f, 0x70, 0x6f, 0x76, 0x65, + 0x72, 0x20, 0x69, 0x6d, 0x70, 0x6c, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x63, + 0x6f, 0x6e, 0x73, 0x74, 0x20, 0x50, 0x6f, 0x70, 0x6f, 0x76, 0x65, 0x72, + 0x20, 0x3d, 0x20, 0x28, 0x70, 0x72, 0x6f, 0x70, 0x73, 0x29, 0x20, 0x3d, + 0x3e, 0x20, 0x7b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x63, 0x6f, + 0x6e, 0x73, 0x74, 0x20, 0x69, 0x73, 0x4f, 0x70, 0x65, 0x6e, 0x20, 0x3d, + 0x20, 0x75, 0x73, 0x65, 0x53, 0x69, 0x67, 0x6e, 0x61, 0x6c, 0x28, 0x66, + 0x61, 0x6c, 0x73, 0x65, 0x29, 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x63, 0x6f, 0x6e, 0x73, 0x74, 0x20, 0x70, 0x6f, 0x73, 0x69, 0x74, + 0x69, 0x6f, 0x6e, 0x20, 0x3d, 0x20, 0x75, 0x73, 0x65, 0x53, 0x69, 0x67, + 0x6e, 0x61, 0x6c, 0x28, 0x7b, 0x20, 0x74, 0x6f, 0x70, 0x3a, 0x20, 0x27, + 0x30, 0x70, 0x78, 0x27, 0x2c, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x3a, 0x20, + 0x27, 0x30, 0x70, 0x78, 0x27, 0x20, 0x7d, 0x29, 0x3b, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x63, 0x6f, 0x6e, 0x73, 0x74, 0x20, 0x62, 0x75, + 0x74, 0x74, 0x6f, 0x6e, 0x52, 0x65, 0x66, 0x20, 0x3d, 0x20, 0x75, 0x73, + 0x65, 0x52, 0x65, 0x66, 0x28, 0x6e, 0x75, 0x6c, 0x6c, 0x29, 0x3b, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x63, 0x6f, 0x6e, 0x73, 0x74, 0x20, + 0x70, 0x6f, 0x70, 0x6f, 0x76, 0x65, 0x72, 0x52, 0x65, 0x66, 0x20, 0x3d, + 0x20, 0x75, 0x73, 0x65, 0x52, 0x65, 0x66, 0x28, 0x6e, 0x75, 0x6c, 0x6c, + 0x29, 0x3b, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x63, 0x6f, + 0x6e, 0x73, 0x74, 0x20, 0x74, 0x6f, 0x67, 0x67, 0x6c, 0x65, 0x50, 0x6f, + 0x70, 0x6f, 0x76, 0x65, 0x72, 0x20, 0x3d, 0x20, 0x28, 0x29, 0x20, 0x3d, + 0x3e, 0x20, 0x7b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x69, 0x66, 0x20, 0x28, 0x62, 0x75, 0x74, 0x74, 0x6f, 0x6e, 0x52, 0x65, + 0x66, 0x2e, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x74, 0x29, 0x20, 0x7b, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x63, + 0x6f, 0x6e, 0x73, 0x74, 0x20, 0x72, 0x65, 0x63, 0x74, 0x20, 0x3d, 0x20, + 0x62, 0x75, 0x74, 0x74, 0x6f, 0x6e, 0x52, 0x65, 0x66, 0x2e, 0x63, 0x75, + 0x72, 0x72, 0x65, 0x6e, 0x74, 0x2e, 0x67, 0x65, 0x74, 0x42, 0x6f, 0x75, + 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x52, + 0x65, 0x63, 0x74, 0x28, 0x29, 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, + 0x6e, 0x2e, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x20, 0x3d, 0x20, 0x7b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x72, 0x65, 0x66, 0x3d, 0x24, 0x7b, 0x70, 0x6f, 0x70, 0x6f, 0x76, 0x65, - 0x72, 0x52, 0x65, 0x66, 0x7d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x63, 0x6c, 0x61, 0x73, - 0x73, 0x3d, 0x22, 0x70, 0x6f, 0x70, 0x6f, 0x76, 0x65, 0x72, 0x2d, 0x63, - 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x22, 0x0a, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x73, 0x74, - 0x79, 0x6c, 0x65, 0x3d, 0x24, 0x7b, 0x7b, 0x0a, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x74, 0x6f, 0x70, 0x3a, 0x20, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, - 0x6e, 0x2e, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x2e, 0x74, 0x6f, 0x70, 0x2c, + 0x74, 0x6f, 0x70, 0x3a, 0x20, 0x60, 0x24, 0x7b, 0x72, 0x65, 0x63, 0x74, + 0x2e, 0x62, 0x6f, 0x74, 0x74, 0x6f, 0x6d, 0x20, 0x2b, 0x20, 0x77, 0x69, + 0x6e, 0x64, 0x6f, 0x77, 0x2e, 0x73, 0x63, 0x72, 0x6f, 0x6c, 0x6c, 0x59, + 0x7d, 0x70, 0x78, 0x60, 0x2c, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x3a, 0x20, + 0x60, 0x24, 0x7b, 0x72, 0x65, 0x63, 0x74, 0x2e, 0x6c, 0x65, 0x66, 0x74, + 0x20, 0x2b, 0x20, 0x77, 0x69, 0x6e, 0x64, 0x6f, 0x77, 0x2e, 0x73, 0x63, + 0x72, 0x6f, 0x6c, 0x6c, 0x58, 0x7d, 0x70, 0x78, 0x60, 0x2c, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x7d, 0x3b, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x7d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x69, 0x73, 0x4f, 0x70, 0x65, 0x6e, + 0x2e, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x20, 0x3d, 0x20, 0x21, 0x69, 0x73, + 0x4f, 0x70, 0x65, 0x6e, 0x2e, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3b, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x7d, 0x3b, 0x0a, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x63, 0x6f, 0x6e, 0x73, 0x74, 0x20, 0x68, 0x61, + 0x6e, 0x64, 0x6c, 0x65, 0x43, 0x6c, 0x69, 0x63, 0x6b, 0x4f, 0x75, 0x74, + 0x73, 0x69, 0x64, 0x65, 0x20, 0x3d, 0x20, 0x28, 0x65, 0x76, 0x65, 0x6e, + 0x74, 0x29, 0x20, 0x3d, 0x3e, 0x20, 0x7b, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x69, 0x66, 0x20, 0x28, 0x70, 0x6f, 0x70, 0x6f, + 0x76, 0x65, 0x72, 0x52, 0x65, 0x66, 0x2e, 0x63, 0x75, 0x72, 0x72, 0x65, + 0x6e, 0x74, 0x20, 0x26, 0x26, 0x20, 0x21, 0x70, 0x6f, 0x70, 0x6f, 0x76, + 0x65, 0x72, 0x52, 0x65, 0x66, 0x2e, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, + 0x74, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x73, 0x28, 0x65, + 0x76, 0x65, 0x6e, 0x74, 0x2e, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x29, + 0x20, 0x26, 0x26, 0x20, 0x21, 0x62, 0x75, 0x74, 0x74, 0x6f, 0x6e, 0x52, + 0x65, 0x66, 0x2e, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x74, 0x2e, 0x63, + 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x73, 0x28, 0x65, 0x76, 0x65, 0x6e, + 0x74, 0x2e, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x29, 0x29, 0x20, 0x7b, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x69, + 0x73, 0x4f, 0x70, 0x65, 0x6e, 0x2e, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x20, + 0x3d, 0x20, 0x66, 0x61, 0x6c, 0x73, 0x65, 0x3b, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x7d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x7d, 0x3b, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x75, + 0x73, 0x65, 0x45, 0x66, 0x66, 0x65, 0x63, 0x74, 0x28, 0x28, 0x29, 0x20, + 0x3d, 0x3e, 0x20, 0x7b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x61, 0x64, + 0x64, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x4c, 0x69, 0x73, 0x74, 0x65, 0x6e, + 0x65, 0x72, 0x28, 0x27, 0x6d, 0x6f, 0x75, 0x73, 0x65, 0x64, 0x6f, 0x77, + 0x6e, 0x27, 0x2c, 0x20, 0x68, 0x61, 0x6e, 0x64, 0x6c, 0x65, 0x43, 0x6c, + 0x69, 0x63, 0x6b, 0x4f, 0x75, 0x74, 0x73, 0x69, 0x64, 0x65, 0x29, 0x3b, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x72, 0x65, 0x74, + 0x75, 0x72, 0x6e, 0x20, 0x28, 0x29, 0x20, 0x3d, 0x3e, 0x20, 0x7b, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x64, 0x6f, + 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x72, 0x65, 0x6d, 0x6f, 0x76, + 0x65, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x4c, 0x69, 0x73, 0x74, 0x65, 0x6e, + 0x65, 0x72, 0x28, 0x27, 0x6d, 0x6f, 0x75, 0x73, 0x65, 0x64, 0x6f, 0x77, + 0x6e, 0x27, 0x2c, 0x20, 0x68, 0x61, 0x6e, 0x64, 0x6c, 0x65, 0x43, 0x6c, + 0x69, 0x63, 0x6b, 0x4f, 0x75, 0x74, 0x73, 0x69, 0x64, 0x65, 0x29, 0x3b, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x7d, 0x3b, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x7d, 0x2c, 0x20, 0x5b, 0x5d, 0x29, + 0x3b, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x72, 0x65, 0x74, + 0x75, 0x72, 0x6e, 0x20, 0x68, 0x74, 0x6d, 0x6c, 0x60, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x73, 0x70, 0x61, 0x6e, 0x20, + 0x73, 0x74, 0x79, 0x6c, 0x65, 0x3d, 0x24, 0x7b, 0x70, 0x72, 0x6f, 0x70, + 0x73, 0x2e, 0x73, 0x74, 0x79, 0x6c, 0x65, 0x7d, 0x20, 0x72, 0x65, 0x66, + 0x3d, 0x24, 0x7b, 0x62, 0x75, 0x74, 0x74, 0x6f, 0x6e, 0x52, 0x65, 0x66, + 0x7d, 0x20, 0x6f, 0x6e, 0x43, 0x6c, 0x69, 0x63, 0x6b, 0x3d, 0x24, 0x7b, + 0x74, 0x6f, 0x67, 0x67, 0x6c, 0x65, 0x50, 0x6f, 0x70, 0x6f, 0x76, 0x65, + 0x72, 0x7d, 0x3e, 0x24, 0x7b, 0x70, 0x72, 0x6f, 0x70, 0x73, 0x2e, 0x63, + 0x68, 0x69, 0x6c, 0x64, 0x72, 0x65, 0x6e, 0x7d, 0x3c, 0x2f, 0x73, 0x70, + 0x61, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x24, 0x7b, 0x69, 0x73, 0x4f, 0x70, 0x65, 0x6e, 0x2e, 0x76, 0x61, 0x6c, + 0x75, 0x65, 0x20, 0x26, 0x26, 0x20, 0x68, 0x74, 0x6d, 0x6c, 0x60, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x24, + 0x7b, 0x50, 0x6f, 0x72, 0x74, 0x61, 0x6c, 0x7d, 0x20, 0x69, 0x6e, 0x74, + 0x6f, 0x3d, 0x22, 0x23, 0x70, 0x6f, 0x72, 0x74, 0x61, 0x6c, 0x22, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x64, 0x69, 0x76, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x72, 0x65, 0x66, 0x3d, + 0x24, 0x7b, 0x70, 0x6f, 0x70, 0x6f, 0x76, 0x65, 0x72, 0x52, 0x65, 0x66, + 0x7d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x3d, 0x22, 0x70, + 0x6f, 0x70, 0x6f, 0x76, 0x65, 0x72, 0x2d, 0x63, 0x6f, 0x6e, 0x74, 0x65, + 0x6e, 0x74, 0x22, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x73, 0x74, 0x79, 0x6c, 0x65, 0x3d, + 0x24, 0x7b, 0x7b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x74, 0x6f, 0x70, 0x3a, 0x20, 0x70, 0x6f, 0x73, + 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x2e, + 0x74, 0x6f, 0x70, 0x2c, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x3a, 0x20, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x2e, 0x6c, 0x65, 0x66, 0x74, 0x2c, 0x0a, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x7d, 0x7d, - 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x24, 0x7b, 0x70, 0x72, 0x6f, 0x70, 0x73, - 0x2e, 0x70, 0x6f, 0x70, 0x6f, 0x76, 0x65, 0x72, 0x43, 0x68, 0x69, 0x6c, - 0x64, 0x72, 0x65, 0x6e, 0x7d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x64, 0x69, 0x76, 0x3e, - 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, - 0x2f, 0x24, 0x7b, 0x50, 0x6f, 0x72, 0x74, 0x61, 0x6c, 0x7d, 0x3e, 0x0a, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x60, 0x7d, 0x0a, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x60, 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, - 0x7d, 0x3b, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x2f, 0x2f, 0x20, 0x53, - 0x6f, 0x75, 0x72, 0x63, 0x65, 0x3a, 0x20, 0x70, 0x72, 0x65, 0x61, 0x63, - 0x74, 0x2d, 0x70, 0x6f, 0x72, 0x74, 0x61, 0x6c, 0x20, 0x28, 0x68, 0x74, - 0x74, 0x70, 0x73, 0x3a, 0x2f, 0x2f, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, - 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x64, 0x65, 0x76, 0x65, 0x6c, 0x6f, 0x70, - 0x69, 0x74, 0x2f, 0x70, 0x72, 0x65, 0x61, 0x63, 0x74, 0x2d, 0x70, 0x6f, - 0x72, 0x74, 0x61, 0x6c, 0x2f, 0x62, 0x6c, 0x6f, 0x62, 0x2f, 0x6d, 0x61, - 0x73, 0x74, 0x65, 0x72, 0x2f, 0x73, 0x72, 0x63, 0x2f, 0x70, 0x72, 0x65, - 0x61, 0x63, 0x74, 0x2d, 0x70, 0x6f, 0x72, 0x74, 0x61, 0x6c, 0x2e, 0x6a, - 0x73, 0x29, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x2f, 0x2a, 0x2a, 0x20, 0x52, - 0x65, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x20, 0x72, 0x65, 0x6e, 0x64, - 0x65, 0x72, 0x69, 0x6e, 0x67, 0x20, 0x6f, 0x66, 0x20, 0x64, 0x65, 0x73, - 0x63, 0x65, 0x6e, 0x64, 0x61, 0x6e, 0x74, 0x73, 0x20, 0x69, 0x6e, 0x74, - 0x6f, 0x20, 0x74, 0x68, 0x65, 0x20, 0x67, 0x69, 0x76, 0x65, 0x6e, 0x20, - 0x43, 0x53, 0x53, 0x20, 0x73, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x6f, 0x72, - 0x20, 0x2a, 0x2f, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x63, 0x6c, 0x61, 0x73, - 0x73, 0x20, 0x50, 0x6f, 0x72, 0x74, 0x61, 0x6c, 0x20, 0x65, 0x78, 0x74, - 0x65, 0x6e, 0x64, 0x73, 0x20, 0x43, 0x6f, 0x6d, 0x70, 0x6f, 0x6e, 0x65, - 0x6e, 0x74, 0x20, 0x7b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x63, - 0x6f, 0x6d, 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x44, 0x69, 0x64, 0x55, - 0x70, 0x64, 0x61, 0x74, 0x65, 0x28, 0x70, 0x72, 0x6f, 0x70, 0x73, 0x29, - 0x20, 0x7b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x66, - 0x6f, 0x72, 0x20, 0x28, 0x6c, 0x65, 0x74, 0x20, 0x69, 0x20, 0x69, 0x6e, - 0x20, 0x70, 0x72, 0x6f, 0x70, 0x73, 0x29, 0x20, 0x7b, 0x0a, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x69, 0x66, 0x20, 0x28, - 0x70, 0x72, 0x6f, 0x70, 0x73, 0x5b, 0x69, 0x5d, 0x20, 0x21, 0x3d, 0x3d, - 0x20, 0x74, 0x68, 0x69, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x70, 0x73, 0x5b, - 0x69, 0x5d, 0x29, 0x20, 0x7b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x72, 0x65, 0x74, 0x75, 0x72, 0x6e, - 0x20, 0x73, 0x65, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x28, - 0x74, 0x68, 0x69, 0x73, 0x2e, 0x72, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x4c, - 0x61, 0x79, 0x65, 0x72, 0x29, 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x7d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x7d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x7d, - 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x63, 0x6f, 0x6d, 0x70, - 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x44, 0x69, 0x64, 0x4d, 0x6f, 0x75, 0x6e, - 0x74, 0x28, 0x29, 0x20, 0x7b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x74, 0x68, 0x69, 0x73, 0x2e, 0x69, 0x73, 0x4d, 0x6f, 0x75, - 0x6e, 0x74, 0x65, 0x64, 0x20, 0x3d, 0x20, 0x74, 0x72, 0x75, 0x65, 0x3b, - 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x74, 0x68, 0x69, - 0x73, 0x2e, 0x72, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x4c, 0x61, 0x79, 0x65, - 0x72, 0x20, 0x3d, 0x20, 0x74, 0x68, 0x69, 0x73, 0x2e, 0x72, 0x65, 0x6e, - 0x64, 0x65, 0x72, 0x4c, 0x61, 0x79, 0x65, 0x72, 0x2e, 0x62, 0x69, 0x6e, - 0x64, 0x28, 0x74, 0x68, 0x69, 0x73, 0x29, 0x3b, 0x0a, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x74, 0x68, 0x69, 0x73, 0x2e, 0x72, 0x65, - 0x6e, 0x64, 0x65, 0x72, 0x4c, 0x61, 0x79, 0x65, 0x72, 0x28, 0x29, 0x3b, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x7d, 0x7d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3e, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x24, 0x7b, 0x70, 0x72, 0x6f, 0x70, 0x73, 0x2e, 0x70, 0x6f, 0x70, + 0x6f, 0x76, 0x65, 0x72, 0x43, 0x68, 0x69, 0x6c, 0x64, 0x72, 0x65, 0x6e, + 0x7d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x2f, 0x64, 0x69, 0x76, 0x3e, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x24, 0x7b, 0x50, + 0x6f, 0x72, 0x74, 0x61, 0x6c, 0x7d, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x60, 0x7d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x60, 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x7d, 0x3b, 0x0a, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x2f, 0x2f, 0x20, 0x53, 0x6f, 0x75, 0x72, 0x63, + 0x65, 0x3a, 0x20, 0x70, 0x72, 0x65, 0x61, 0x63, 0x74, 0x2d, 0x70, 0x6f, + 0x72, 0x74, 0x61, 0x6c, 0x20, 0x28, 0x68, 0x74, 0x74, 0x70, 0x73, 0x3a, + 0x2f, 0x2f, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, + 0x2f, 0x64, 0x65, 0x76, 0x65, 0x6c, 0x6f, 0x70, 0x69, 0x74, 0x2f, 0x70, + 0x72, 0x65, 0x61, 0x63, 0x74, 0x2d, 0x70, 0x6f, 0x72, 0x74, 0x61, 0x6c, + 0x2f, 0x62, 0x6c, 0x6f, 0x62, 0x2f, 0x6d, 0x61, 0x73, 0x74, 0x65, 0x72, + 0x2f, 0x73, 0x72, 0x63, 0x2f, 0x70, 0x72, 0x65, 0x61, 0x63, 0x74, 0x2d, + 0x70, 0x6f, 0x72, 0x74, 0x61, 0x6c, 0x2e, 0x6a, 0x73, 0x29, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x2f, 0x2a, 0x2a, 0x20, 0x52, 0x65, 0x64, 0x69, 0x72, + 0x65, 0x63, 0x74, 0x20, 0x72, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x69, 0x6e, + 0x67, 0x20, 0x6f, 0x66, 0x20, 0x64, 0x65, 0x73, 0x63, 0x65, 0x6e, 0x64, + 0x61, 0x6e, 0x74, 0x73, 0x20, 0x69, 0x6e, 0x74, 0x6f, 0x20, 0x74, 0x68, + 0x65, 0x20, 0x67, 0x69, 0x76, 0x65, 0x6e, 0x20, 0x43, 0x53, 0x53, 0x20, + 0x73, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x20, 0x2a, 0x2f, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x20, 0x50, 0x6f, + 0x72, 0x74, 0x61, 0x6c, 0x20, 0x65, 0x78, 0x74, 0x65, 0x6e, 0x64, 0x73, + 0x20, 0x43, 0x6f, 0x6d, 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x20, 0x7b, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x63, 0x6f, 0x6d, 0x70, 0x6f, + 0x6e, 0x65, 0x6e, 0x74, 0x44, 0x69, 0x64, 0x55, 0x70, 0x64, 0x61, 0x74, + 0x65, 0x28, 0x70, 0x72, 0x6f, 0x70, 0x73, 0x29, 0x20, 0x7b, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x66, 0x6f, 0x72, 0x20, 0x28, + 0x6c, 0x65, 0x74, 0x20, 0x69, 0x20, 0x69, 0x6e, 0x20, 0x70, 0x72, 0x6f, + 0x70, 0x73, 0x29, 0x20, 0x7b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x69, 0x66, 0x20, 0x28, 0x70, 0x72, 0x6f, 0x70, + 0x73, 0x5b, 0x69, 0x5d, 0x20, 0x21, 0x3d, 0x3d, 0x20, 0x74, 0x68, 0x69, + 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x70, 0x73, 0x5b, 0x69, 0x5d, 0x29, 0x20, + 0x7b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x72, 0x65, 0x74, 0x75, 0x72, 0x6e, 0x20, 0x73, 0x65, 0x74, + 0x54, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x28, 0x74, 0x68, 0x69, 0x73, + 0x2e, 0x72, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x4c, 0x61, 0x79, 0x65, 0x72, + 0x29, 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x7d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x7d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x7d, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x63, 0x6f, 0x6d, 0x70, 0x6f, 0x6e, 0x65, 0x6e, - 0x74, 0x57, 0x69, 0x6c, 0x6c, 0x55, 0x6e, 0x6d, 0x6f, 0x75, 0x6e, 0x74, - 0x28, 0x29, 0x20, 0x7b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x74, 0x68, 0x69, 0x73, 0x2e, 0x72, 0x65, 0x6e, 0x64, 0x65, 0x72, - 0x4c, 0x61, 0x79, 0x65, 0x72, 0x28, 0x66, 0x61, 0x6c, 0x73, 0x65, 0x29, - 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x74, 0x68, + 0x74, 0x44, 0x69, 0x64, 0x4d, 0x6f, 0x75, 0x6e, 0x74, 0x28, 0x29, 0x20, + 0x7b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x74, 0x68, 0x69, 0x73, 0x2e, 0x69, 0x73, 0x4d, 0x6f, 0x75, 0x6e, 0x74, 0x65, 0x64, - 0x20, 0x3d, 0x20, 0x66, 0x61, 0x6c, 0x73, 0x65, 0x3b, 0x0a, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x69, 0x66, 0x20, 0x28, 0x74, 0x68, - 0x69, 0x73, 0x2e, 0x72, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x20, 0x26, 0x26, - 0x20, 0x74, 0x68, 0x69, 0x73, 0x2e, 0x72, 0x65, 0x6d, 0x6f, 0x74, 0x65, - 0x2e, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x4e, 0x6f, 0x64, 0x65, 0x29, - 0x20, 0x74, 0x68, 0x69, 0x73, 0x2e, 0x72, 0x65, 0x6d, 0x6f, 0x74, 0x65, - 0x2e, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x4e, 0x6f, 0x64, 0x65, 0x2e, - 0x72, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x43, 0x68, 0x69, 0x6c, 0x64, 0x28, - 0x74, 0x68, 0x69, 0x73, 0x2e, 0x72, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x29, - 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x7d, 0x0a, 0x0a, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x66, 0x69, 0x6e, 0x64, 0x4e, 0x6f, 0x64, - 0x65, 0x28, 0x6e, 0x6f, 0x64, 0x65, 0x29, 0x20, 0x7b, 0x0a, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x72, 0x65, 0x74, 0x75, 0x72, 0x6e, - 0x20, 0x74, 0x79, 0x70, 0x65, 0x6f, 0x66, 0x20, 0x6e, 0x6f, 0x64, 0x65, - 0x20, 0x3d, 0x3d, 0x3d, 0x20, 0x27, 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, - 0x27, 0x20, 0x3f, 0x20, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, - 0x2e, 0x71, 0x75, 0x65, 0x72, 0x79, 0x53, 0x65, 0x6c, 0x65, 0x63, 0x74, - 0x6f, 0x72, 0x28, 0x6e, 0x6f, 0x64, 0x65, 0x29, 0x20, 0x3a, 0x20, 0x6e, - 0x6f, 0x64, 0x65, 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x7d, - 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x72, 0x65, 0x6e, 0x64, - 0x65, 0x72, 0x4c, 0x61, 0x79, 0x65, 0x72, 0x28, 0x73, 0x68, 0x6f, 0x77, - 0x20, 0x3d, 0x20, 0x74, 0x72, 0x75, 0x65, 0x29, 0x20, 0x7b, 0x0a, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x69, 0x66, 0x20, 0x28, 0x21, - 0x74, 0x68, 0x69, 0x73, 0x2e, 0x69, 0x73, 0x4d, 0x6f, 0x75, 0x6e, 0x74, - 0x65, 0x64, 0x29, 0x20, 0x72, 0x65, 0x74, 0x75, 0x72, 0x6e, 0x3b, 0x0a, - 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x2f, 0x2f, 0x20, - 0x63, 0x6c, 0x65, 0x61, 0x6e, 0x20, 0x75, 0x70, 0x20, 0x6f, 0x6c, 0x64, - 0x20, 0x6e, 0x6f, 0x64, 0x65, 0x20, 0x69, 0x66, 0x20, 0x6d, 0x6f, 0x76, - 0x69, 0x6e, 0x67, 0x20, 0x62, 0x61, 0x73, 0x65, 0x73, 0x3a, 0x0a, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x69, 0x66, 0x20, 0x28, 0x74, - 0x68, 0x69, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x70, 0x73, 0x2e, 0x69, 0x6e, - 0x74, 0x6f, 0x20, 0x21, 0x3d, 0x3d, 0x20, 0x74, 0x68, 0x69, 0x73, 0x2e, - 0x69, 0x6e, 0x74, 0x6f, 0x50, 0x6f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x29, - 0x20, 0x7b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x74, 0x68, 0x69, 0x73, 0x2e, 0x69, 0x6e, 0x74, 0x6f, 0x50, 0x6f, - 0x69, 0x6e, 0x74, 0x65, 0x72, 0x20, 0x3d, 0x20, 0x74, 0x68, 0x69, 0x73, - 0x2e, 0x70, 0x72, 0x6f, 0x70, 0x73, 0x2e, 0x69, 0x6e, 0x74, 0x6f, 0x3b, - 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x69, - 0x66, 0x20, 0x28, 0x74, 0x68, 0x69, 0x73, 0x2e, 0x69, 0x6e, 0x74, 0x6f, - 0x20, 0x26, 0x26, 0x20, 0x74, 0x68, 0x69, 0x73, 0x2e, 0x72, 0x65, 0x6d, - 0x6f, 0x74, 0x65, 0x29, 0x20, 0x7b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x74, 0x68, 0x69, 0x73, 0x2e, - 0x72, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x20, 0x3d, 0x20, 0x72, 0x65, 0x6e, - 0x64, 0x65, 0x72, 0x28, 0x68, 0x74, 0x6d, 0x6c, 0x60, 0x3c, 0x24, 0x7b, - 0x50, 0x6f, 0x72, 0x74, 0x61, 0x6c, 0x50, 0x72, 0x6f, 0x78, 0x79, 0x7d, - 0x20, 0x2f, 0x3e, 0x60, 0x2c, 0x20, 0x74, 0x68, 0x69, 0x73, 0x2e, 0x69, - 0x6e, 0x74, 0x6f, 0x2c, 0x20, 0x74, 0x68, 0x69, 0x73, 0x2e, 0x72, 0x65, - 0x6d, 0x6f, 0x74, 0x65, 0x29, 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x7d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x74, 0x68, 0x69, 0x73, 0x2e, 0x69, 0x6e, - 0x74, 0x6f, 0x20, 0x3d, 0x20, 0x74, 0x68, 0x69, 0x73, 0x2e, 0x66, 0x69, - 0x6e, 0x64, 0x4e, 0x6f, 0x64, 0x65, 0x28, 0x74, 0x68, 0x69, 0x73, 0x2e, - 0x70, 0x72, 0x6f, 0x70, 0x73, 0x2e, 0x69, 0x6e, 0x74, 0x6f, 0x29, 0x3b, - 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x7d, 0x0a, 0x0a, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x74, 0x68, 0x69, 0x73, - 0x2e, 0x72, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x20, 0x3d, 0x20, 0x72, 0x65, - 0x6e, 0x64, 0x65, 0x72, 0x28, 0x68, 0x74, 0x6d, 0x6c, 0x60, 0x0a, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x24, 0x7b, - 0x50, 0x6f, 0x72, 0x74, 0x61, 0x6c, 0x50, 0x72, 0x6f, 0x78, 0x79, 0x7d, - 0x20, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x3d, 0x24, 0x7b, 0x74, - 0x68, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x7d, - 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x24, 0x7b, 0x73, 0x68, 0x6f, 0x77, 0x20, 0x26, 0x26, 0x20, - 0x74, 0x68, 0x69, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x70, 0x73, 0x2e, 0x63, - 0x68, 0x69, 0x6c, 0x64, 0x72, 0x65, 0x6e, 0x20, 0x7c, 0x7c, 0x20, 0x6e, - 0x75, 0x6c, 0x6c, 0x7d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x24, 0x7b, 0x50, 0x6f, 0x72, 0x74, 0x61, - 0x6c, 0x50, 0x72, 0x6f, 0x78, 0x79, 0x7d, 0x3e, 0x0a, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x60, 0x2c, 0x20, 0x74, 0x68, 0x69, 0x73, - 0x2e, 0x69, 0x6e, 0x74, 0x6f, 0x2c, 0x20, 0x74, 0x68, 0x69, 0x73, 0x2e, - 0x72, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x29, 0x3b, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x3d, 0x20, 0x74, 0x72, 0x75, 0x65, 0x3b, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x74, 0x68, 0x69, 0x73, 0x2e, 0x72, 0x65, + 0x6e, 0x64, 0x65, 0x72, 0x4c, 0x61, 0x79, 0x65, 0x72, 0x20, 0x3d, 0x20, + 0x74, 0x68, 0x69, 0x73, 0x2e, 0x72, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x4c, + 0x61, 0x79, 0x65, 0x72, 0x2e, 0x62, 0x69, 0x6e, 0x64, 0x28, 0x74, 0x68, + 0x69, 0x73, 0x29, 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x74, 0x68, 0x69, 0x73, 0x2e, 0x72, 0x65, 0x6e, 0x64, 0x65, 0x72, + 0x4c, 0x61, 0x79, 0x65, 0x72, 0x28, 0x29, 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x7d, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x72, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x28, 0x29, 0x20, 0x7b, 0x0a, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x72, 0x65, 0x74, 0x75, 0x72, - 0x6e, 0x20, 0x6e, 0x75, 0x6c, 0x6c, 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x7d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x7d, 0x0a, 0x20, 0x20, - 0x20, 0x20, 0x2f, 0x2f, 0x20, 0x68, 0x69, 0x67, 0x68, 0x2d, 0x6f, 0x72, - 0x64, 0x65, 0x72, 0x20, 0x63, 0x6f, 0x6d, 0x70, 0x6f, 0x6e, 0x65, 0x6e, - 0x74, 0x20, 0x74, 0x68, 0x61, 0x74, 0x20, 0x72, 0x65, 0x6e, 0x64, 0x65, - 0x72, 0x73, 0x20, 0x69, 0x74, 0x73, 0x20, 0x66, 0x69, 0x72, 0x73, 0x74, - 0x20, 0x63, 0x68, 0x69, 0x6c, 0x64, 0x20, 0x69, 0x66, 0x20, 0x69, 0x74, - 0x20, 0x65, 0x78, 0x69, 0x73, 0x74, 0x73, 0x2e, 0x0a, 0x20, 0x20, 0x20, - 0x20, 0x2f, 0x2f, 0x20, 0x75, 0x73, 0x65, 0x64, 0x20, 0x61, 0x73, 0x20, - 0x61, 0x20, 0x63, 0x6f, 0x6e, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x61, - 0x6c, 0x20, 0x72, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x69, 0x6e, 0x67, 0x20, - 0x70, 0x72, 0x6f, 0x78, 0x79, 0x2e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x63, - 0x6c, 0x61, 0x73, 0x73, 0x20, 0x50, 0x6f, 0x72, 0x74, 0x61, 0x6c, 0x50, - 0x72, 0x6f, 0x78, 0x79, 0x20, 0x65, 0x78, 0x74, 0x65, 0x6e, 0x64, 0x73, - 0x20, 0x43, 0x6f, 0x6d, 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x20, 0x7b, - 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x67, 0x65, 0x74, 0x43, 0x68, - 0x69, 0x6c, 0x64, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x28, 0x29, - 0x20, 0x7b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x72, - 0x65, 0x74, 0x75, 0x72, 0x6e, 0x20, 0x74, 0x68, 0x69, 0x73, 0x2e, 0x70, - 0x72, 0x6f, 0x70, 0x73, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, - 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x7d, 0x0a, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x72, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x28, 0x7b, - 0x20, 0x63, 0x68, 0x69, 0x6c, 0x64, 0x72, 0x65, 0x6e, 0x20, 0x7d, 0x29, - 0x20, 0x7b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x72, - 0x65, 0x74, 0x75, 0x72, 0x6e, 0x20, 0x63, 0x68, 0x69, 0x6c, 0x64, 0x72, - 0x65, 0x6e, 0x20, 0x7c, 0x7c, 0x20, 0x6e, 0x75, 0x6c, 0x6c, 0x3b, 0x0a, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x7d, 0x0a, 0x20, 0x20, 0x20, 0x20, - 0x7d, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x66, 0x75, 0x6e, 0x63, 0x74, - 0x69, 0x6f, 0x6e, 0x20, 0x41, 0x70, 0x70, 0x28, 0x70, 0x72, 0x6f, 0x70, - 0x73, 0x29, 0x20, 0x7b, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x72, 0x65, 0x74, 0x75, 0x72, 0x6e, 0x20, 0x68, 0x74, 0x6d, 0x6c, 0x60, - 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x64, 0x69, - 0x76, 0x20, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x3d, 0x22, 0x6d, 0x6f, 0x64, - 0x65, 0x2d, 0x24, 0x7b, 0x73, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x2e, - 0x76, 0x61, 0x6c, 0x75, 0x65, 0x2e, 0x74, 0x79, 0x70, 0x65, 0x7d, 0x22, - 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x3c, 0x68, 0x65, 0x61, 0x64, 0x65, 0x72, 0x3e, 0x0a, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x68, 0x31, - 0x3e, 0x6c, 0x6c, 0x61, 0x6d, 0x61, 0x2e, 0x63, 0x70, 0x70, 0x3c, 0x2f, - 0x68, 0x31, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x3c, 0x2f, 0x68, 0x65, 0x61, 0x64, 0x65, 0x72, 0x3e, 0x0a, + 0x63, 0x6f, 0x6d, 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x57, 0x69, 0x6c, + 0x6c, 0x55, 0x6e, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x28, 0x29, 0x20, 0x7b, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x74, 0x68, 0x69, + 0x73, 0x2e, 0x72, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x4c, 0x61, 0x79, 0x65, + 0x72, 0x28, 0x66, 0x61, 0x6c, 0x73, 0x65, 0x29, 0x3b, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x74, 0x68, 0x69, 0x73, 0x2e, 0x69, + 0x73, 0x4d, 0x6f, 0x75, 0x6e, 0x74, 0x65, 0x64, 0x20, 0x3d, 0x20, 0x66, + 0x61, 0x6c, 0x73, 0x65, 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x69, 0x66, 0x20, 0x28, 0x74, 0x68, 0x69, 0x73, 0x2e, 0x72, + 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x20, 0x26, 0x26, 0x20, 0x74, 0x68, 0x69, + 0x73, 0x2e, 0x72, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x2e, 0x70, 0x61, 0x72, + 0x65, 0x6e, 0x74, 0x4e, 0x6f, 0x64, 0x65, 0x29, 0x20, 0x74, 0x68, 0x69, + 0x73, 0x2e, 0x72, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x2e, 0x70, 0x61, 0x72, + 0x65, 0x6e, 0x74, 0x4e, 0x6f, 0x64, 0x65, 0x2e, 0x72, 0x65, 0x6d, 0x6f, + 0x76, 0x65, 0x43, 0x68, 0x69, 0x6c, 0x64, 0x28, 0x74, 0x68, 0x69, 0x73, + 0x2e, 0x72, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x29, 0x3b, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x7d, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x66, 0x69, 0x6e, 0x64, 0x4e, 0x6f, 0x64, 0x65, 0x28, 0x6e, 0x6f, + 0x64, 0x65, 0x29, 0x20, 0x7b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x72, 0x65, 0x74, 0x75, 0x72, 0x6e, 0x20, 0x74, 0x79, 0x70, + 0x65, 0x6f, 0x66, 0x20, 0x6e, 0x6f, 0x64, 0x65, 0x20, 0x3d, 0x3d, 0x3d, + 0x20, 0x27, 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x27, 0x20, 0x3f, 0x20, + 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x71, 0x75, 0x65, + 0x72, 0x79, 0x53, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x28, 0x6e, + 0x6f, 0x64, 0x65, 0x29, 0x20, 0x3a, 0x20, 0x6e, 0x6f, 0x64, 0x65, 0x3b, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x7d, 0x0a, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x72, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x4c, 0x61, + 0x79, 0x65, 0x72, 0x28, 0x73, 0x68, 0x6f, 0x77, 0x20, 0x3d, 0x20, 0x74, + 0x72, 0x75, 0x65, 0x29, 0x20, 0x7b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x69, 0x66, 0x20, 0x28, 0x21, 0x74, 0x68, 0x69, 0x73, + 0x2e, 0x69, 0x73, 0x4d, 0x6f, 0x75, 0x6e, 0x74, 0x65, 0x64, 0x29, 0x20, + 0x72, 0x65, 0x74, 0x75, 0x72, 0x6e, 0x3b, 0x0a, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x2f, 0x2f, 0x20, 0x63, 0x6c, 0x65, 0x61, + 0x6e, 0x20, 0x75, 0x70, 0x20, 0x6f, 0x6c, 0x64, 0x20, 0x6e, 0x6f, 0x64, + 0x65, 0x20, 0x69, 0x66, 0x20, 0x6d, 0x6f, 0x76, 0x69, 0x6e, 0x67, 0x20, + 0x62, 0x61, 0x73, 0x65, 0x73, 0x3a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x69, 0x66, 0x20, 0x28, 0x74, 0x68, 0x69, 0x73, 0x2e, + 0x70, 0x72, 0x6f, 0x70, 0x73, 0x2e, 0x69, 0x6e, 0x74, 0x6f, 0x20, 0x21, + 0x3d, 0x3d, 0x20, 0x74, 0x68, 0x69, 0x73, 0x2e, 0x69, 0x6e, 0x74, 0x6f, + 0x50, 0x6f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x29, 0x20, 0x7b, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x74, 0x68, 0x69, + 0x73, 0x2e, 0x69, 0x6e, 0x74, 0x6f, 0x50, 0x6f, 0x69, 0x6e, 0x74, 0x65, + 0x72, 0x20, 0x3d, 0x20, 0x74, 0x68, 0x69, 0x73, 0x2e, 0x70, 0x72, 0x6f, + 0x70, 0x73, 0x2e, 0x69, 0x6e, 0x74, 0x6f, 0x3b, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x69, 0x66, 0x20, 0x28, 0x74, + 0x68, 0x69, 0x73, 0x2e, 0x69, 0x6e, 0x74, 0x6f, 0x20, 0x26, 0x26, 0x20, + 0x74, 0x68, 0x69, 0x73, 0x2e, 0x72, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x29, + 0x20, 0x7b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x74, 0x68, 0x69, 0x73, 0x2e, 0x72, 0x65, 0x6d, 0x6f, + 0x74, 0x65, 0x20, 0x3d, 0x20, 0x72, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x28, + 0x68, 0x74, 0x6d, 0x6c, 0x60, 0x3c, 0x24, 0x7b, 0x50, 0x6f, 0x72, 0x74, + 0x61, 0x6c, 0x50, 0x72, 0x6f, 0x78, 0x79, 0x7d, 0x20, 0x2f, 0x3e, 0x60, + 0x2c, 0x20, 0x74, 0x68, 0x69, 0x73, 0x2e, 0x69, 0x6e, 0x74, 0x6f, 0x2c, + 0x20, 0x74, 0x68, 0x69, 0x73, 0x2e, 0x72, 0x65, 0x6d, 0x6f, 0x74, 0x65, + 0x29, 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x7d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x74, 0x68, 0x69, 0x73, 0x2e, 0x69, 0x6e, 0x74, 0x6f, 0x20, 0x3d, + 0x20, 0x74, 0x68, 0x69, 0x73, 0x2e, 0x66, 0x69, 0x6e, 0x64, 0x4e, 0x6f, + 0x64, 0x65, 0x28, 0x74, 0x68, 0x69, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x70, + 0x73, 0x2e, 0x69, 0x6e, 0x74, 0x6f, 0x29, 0x3b, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x7d, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x74, 0x68, 0x69, 0x73, 0x2e, 0x72, 0x65, 0x6d, + 0x6f, 0x74, 0x65, 0x20, 0x3d, 0x20, 0x72, 0x65, 0x6e, 0x64, 0x65, 0x72, + 0x28, 0x68, 0x74, 0x6d, 0x6c, 0x60, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x24, 0x7b, 0x50, 0x6f, 0x72, 0x74, + 0x61, 0x6c, 0x50, 0x72, 0x6f, 0x78, 0x79, 0x7d, 0x20, 0x63, 0x6f, 0x6e, + 0x74, 0x65, 0x78, 0x74, 0x3d, 0x24, 0x7b, 0x74, 0x68, 0x69, 0x73, 0x2e, + 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x7d, 0x3e, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x24, 0x7b, + 0x73, 0x68, 0x6f, 0x77, 0x20, 0x26, 0x26, 0x20, 0x74, 0x68, 0x69, 0x73, + 0x2e, 0x70, 0x72, 0x6f, 0x70, 0x73, 0x2e, 0x63, 0x68, 0x69, 0x6c, 0x64, + 0x72, 0x65, 0x6e, 0x20, 0x7c, 0x7c, 0x20, 0x6e, 0x75, 0x6c, 0x6c, 0x7d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, - 0x6d, 0x61, 0x69, 0x6e, 0x20, 0x69, 0x64, 0x3d, 0x22, 0x63, 0x6f, 0x6e, - 0x74, 0x65, 0x6e, 0x74, 0x22, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x24, 0x7b, 0x63, 0x68, - 0x61, 0x74, 0x53, 0x74, 0x61, 0x72, 0x74, 0x65, 0x64, 0x2e, 0x76, 0x61, - 0x6c, 0x75, 0x65, 0x20, 0x3f, 0x20, 0x43, 0x68, 0x61, 0x74, 0x4c, 0x6f, - 0x67, 0x20, 0x3a, 0x20, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x46, 0x6f, - 0x72, 0x6d, 0x7d, 0x20, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x6d, 0x61, 0x69, 0x6e, 0x3e, - 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x3c, 0x73, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x69, 0x64, 0x3d, - 0x22, 0x77, 0x72, 0x69, 0x74, 0x65, 0x22, 0x3e, 0x0a, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x24, 0x7b, + 0x2f, 0x24, 0x7b, 0x50, 0x6f, 0x72, 0x74, 0x61, 0x6c, 0x50, 0x72, 0x6f, + 0x78, 0x79, 0x7d, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x60, 0x2c, 0x20, 0x74, 0x68, 0x69, 0x73, 0x2e, 0x69, 0x6e, 0x74, + 0x6f, 0x2c, 0x20, 0x74, 0x68, 0x69, 0x73, 0x2e, 0x72, 0x65, 0x6d, 0x6f, + 0x74, 0x65, 0x29, 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x7d, + 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x72, 0x65, 0x6e, 0x64, + 0x65, 0x72, 0x28, 0x29, 0x20, 0x7b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x72, 0x65, 0x74, 0x75, 0x72, 0x6e, 0x20, 0x6e, 0x75, + 0x6c, 0x6c, 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x7d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x7d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x2f, 0x2f, + 0x20, 0x68, 0x69, 0x67, 0x68, 0x2d, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x20, + 0x63, 0x6f, 0x6d, 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x20, 0x74, 0x68, + 0x61, 0x74, 0x20, 0x72, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x73, 0x20, 0x69, + 0x74, 0x73, 0x20, 0x66, 0x69, 0x72, 0x73, 0x74, 0x20, 0x63, 0x68, 0x69, + 0x6c, 0x64, 0x20, 0x69, 0x66, 0x20, 0x69, 0x74, 0x20, 0x65, 0x78, 0x69, + 0x73, 0x74, 0x73, 0x2e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x2f, 0x2f, 0x20, + 0x75, 0x73, 0x65, 0x64, 0x20, 0x61, 0x73, 0x20, 0x61, 0x20, 0x63, 0x6f, + 0x6e, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x20, 0x72, 0x65, + 0x6e, 0x64, 0x65, 0x72, 0x69, 0x6e, 0x67, 0x20, 0x70, 0x72, 0x6f, 0x78, + 0x79, 0x2e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x63, 0x6c, 0x61, 0x73, 0x73, + 0x20, 0x50, 0x6f, 0x72, 0x74, 0x61, 0x6c, 0x50, 0x72, 0x6f, 0x78, 0x79, + 0x20, 0x65, 0x78, 0x74, 0x65, 0x6e, 0x64, 0x73, 0x20, 0x43, 0x6f, 0x6d, + 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x20, 0x7b, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x67, 0x65, 0x74, 0x43, 0x68, 0x69, 0x6c, 0x64, 0x43, + 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x28, 0x29, 0x20, 0x7b, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x72, 0x65, 0x74, 0x75, 0x72, + 0x6e, 0x20, 0x74, 0x68, 0x69, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x70, 0x73, + 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x3b, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x7d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x72, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x28, 0x7b, 0x20, 0x63, 0x68, 0x69, + 0x6c, 0x64, 0x72, 0x65, 0x6e, 0x20, 0x7d, 0x29, 0x20, 0x7b, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x72, 0x65, 0x74, 0x75, 0x72, + 0x6e, 0x20, 0x63, 0x68, 0x69, 0x6c, 0x64, 0x72, 0x65, 0x6e, 0x20, 0x7c, + 0x7c, 0x20, 0x6e, 0x75, 0x6c, 0x6c, 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x7d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x7d, 0x0a, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x66, 0x75, 0x6e, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x20, + 0x41, 0x70, 0x70, 0x28, 0x70, 0x72, 0x6f, 0x70, 0x73, 0x29, 0x20, 0x7b, + 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x72, 0x65, 0x74, 0x75, + 0x72, 0x6e, 0x20, 0x68, 0x74, 0x6d, 0x6c, 0x60, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x64, 0x69, 0x76, 0x20, 0x63, 0x6c, + 0x61, 0x73, 0x73, 0x3d, 0x22, 0x6d, 0x6f, 0x64, 0x65, 0x2d, 0x24, 0x7b, 0x73, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x2e, 0x76, 0x61, 0x6c, 0x75, - 0x65, 0x2e, 0x74, 0x79, 0x70, 0x65, 0x20, 0x3d, 0x3d, 0x3d, 0x20, 0x27, - 0x63, 0x68, 0x61, 0x74, 0x27, 0x20, 0x3f, 0x20, 0x4d, 0x65, 0x73, 0x73, - 0x61, 0x67, 0x65, 0x49, 0x6e, 0x70, 0x75, 0x74, 0x20, 0x3a, 0x20, 0x43, - 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x6e, - 0x74, 0x72, 0x6f, 0x6c, 0x73, 0x7d, 0x20, 0x2f, 0x3e, 0x0a, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x73, 0x65, - 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x66, 0x6f, 0x6f, 0x74, 0x65, - 0x72, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x3c, 0x70, 0x3e, 0x3c, 0x24, 0x7b, 0x4d, 0x6f, 0x64, - 0x65, 0x6c, 0x47, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, - 0x49, 0x6e, 0x66, 0x6f, 0x7d, 0x20, 0x2f, 0x3e, 0x3c, 0x2f, 0x70, 0x3e, - 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x3c, 0x70, 0x3e, 0x50, 0x6f, 0x77, 0x65, 0x72, 0x65, 0x64, 0x20, - 0x62, 0x79, 0x20, 0x3c, 0x61, 0x20, 0x68, 0x72, 0x65, 0x66, 0x3d, 0x22, - 0x68, 0x74, 0x74, 0x70, 0x73, 0x3a, 0x2f, 0x2f, 0x67, 0x69, 0x74, 0x68, - 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x67, 0x67, 0x65, 0x72, 0x67, - 0x61, 0x6e, 0x6f, 0x76, 0x2f, 0x6c, 0x6c, 0x61, 0x6d, 0x61, 0x2e, 0x63, - 0x70, 0x70, 0x22, 0x3e, 0x6c, 0x6c, 0x61, 0x6d, 0x61, 0x2e, 0x63, 0x70, - 0x70, 0x3c, 0x2f, 0x61, 0x3e, 0x20, 0x61, 0x6e, 0x64, 0x20, 0x3c, 0x61, - 0x20, 0x68, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x68, 0x74, 0x74, 0x70, 0x73, - 0x3a, 0x2f, 0x2f, 0x67, 0x67, 0x6d, 0x6c, 0x2e, 0x61, 0x69, 0x22, 0x3e, - 0x67, 0x67, 0x6d, 0x6c, 0x2e, 0x61, 0x69, 0x3c, 0x2f, 0x61, 0x3e, 0x2e, - 0x3c, 0x2f, 0x70, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x66, 0x6f, 0x6f, 0x74, 0x65, 0x72, 0x3e, - 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x64, - 0x69, 0x76, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x60, 0x3b, - 0x0a, 0x20, 0x20, 0x20, 0x20, 0x7d, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, - 0x72, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x28, 0x68, 0x28, 0x41, 0x70, 0x70, - 0x29, 0x2c, 0x20, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x2e, - 0x71, 0x75, 0x65, 0x72, 0x79, 0x53, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x6f, - 0x72, 0x28, 0x27, 0x23, 0x63, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, - 0x72, 0x27, 0x29, 0x29, 0x3b, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x73, 0x63, - 0x72, 0x69, 0x70, 0x74, 0x3e, 0x0a, 0x3c, 0x2f, 0x68, 0x65, 0x61, 0x64, - 0x3e, 0x0a, 0x0a, 0x3c, 0x62, 0x6f, 0x64, 0x79, 0x3e, 0x0a, 0x20, 0x20, - 0x3c, 0x64, 0x69, 0x76, 0x20, 0x69, 0x64, 0x3d, 0x22, 0x63, 0x6f, 0x6e, - 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x22, 0x3e, 0x3c, 0x2f, 0x64, 0x69, - 0x76, 0x3e, 0x0a, 0x20, 0x20, 0x3c, 0x64, 0x69, 0x76, 0x20, 0x69, 0x64, - 0x3d, 0x22, 0x70, 0x6f, 0x72, 0x74, 0x61, 0x6c, 0x22, 0x3e, 0x3c, 0x2f, - 0x64, 0x69, 0x76, 0x3e, 0x0a, 0x3c, 0x2f, 0x62, 0x6f, 0x64, 0x79, 0x3e, - 0x0a, 0x0a, 0x3c, 0x2f, 0x68, 0x74, 0x6d, 0x6c, 0x3e, 0x0a + 0x65, 0x2e, 0x74, 0x79, 0x70, 0x65, 0x7d, 0x22, 0x3e, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x68, 0x65, 0x61, + 0x64, 0x65, 0x72, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x68, 0x31, 0x3e, 0x6c, 0x6c, 0x61, + 0x6d, 0x61, 0x2e, 0x63, 0x70, 0x70, 0x3c, 0x2f, 0x68, 0x31, 0x3e, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, + 0x68, 0x65, 0x61, 0x64, 0x65, 0x72, 0x3e, 0x0a, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x6d, 0x61, 0x69, 0x6e, + 0x20, 0x69, 0x64, 0x3d, 0x22, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, + 0x22, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x3c, 0x24, 0x7b, 0x63, 0x68, 0x61, 0x74, 0x53, 0x74, + 0x61, 0x72, 0x74, 0x65, 0x64, 0x2e, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x20, + 0x3f, 0x20, 0x43, 0x68, 0x61, 0x74, 0x4c, 0x6f, 0x67, 0x20, 0x3a, 0x20, + 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x46, 0x6f, 0x72, 0x6d, 0x7d, 0x20, + 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x3c, 0x2f, 0x6d, 0x61, 0x69, 0x6e, 0x3e, 0x0a, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x73, 0x65, 0x63, + 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x69, 0x64, 0x3d, 0x22, 0x77, 0x72, 0x69, + 0x74, 0x65, 0x22, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x24, 0x7b, 0x73, 0x65, 0x73, 0x73, + 0x69, 0x6f, 0x6e, 0x2e, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x2e, 0x74, 0x79, + 0x70, 0x65, 0x20, 0x3d, 0x3d, 0x3d, 0x20, 0x27, 0x63, 0x68, 0x61, 0x74, + 0x27, 0x20, 0x3f, 0x20, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x49, + 0x6e, 0x70, 0x75, 0x74, 0x20, 0x3a, 0x20, 0x43, 0x6f, 0x6d, 0x70, 0x6c, + 0x65, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, + 0x73, 0x7d, 0x20, 0x2f, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x73, 0x65, 0x63, 0x74, 0x69, 0x6f, + 0x6e, 0x3e, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x3c, 0x66, 0x6f, 0x6f, 0x74, 0x65, 0x72, 0x3e, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x70, 0x3e, 0x3c, 0x24, 0x7b, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x47, 0x65, + 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x6e, 0x66, 0x6f, + 0x7d, 0x20, 0x2f, 0x3e, 0x3c, 0x2f, 0x70, 0x3e, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x70, 0x3e, + 0x50, 0x6f, 0x77, 0x65, 0x72, 0x65, 0x64, 0x20, 0x62, 0x79, 0x20, 0x3c, + 0x61, 0x20, 0x68, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x68, 0x74, 0x74, 0x70, + 0x73, 0x3a, 0x2f, 0x2f, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, + 0x6f, 0x6d, 0x2f, 0x67, 0x67, 0x65, 0x72, 0x67, 0x61, 0x6e, 0x6f, 0x76, + 0x2f, 0x6c, 0x6c, 0x61, 0x6d, 0x61, 0x2e, 0x63, 0x70, 0x70, 0x22, 0x3e, + 0x6c, 0x6c, 0x61, 0x6d, 0x61, 0x2e, 0x63, 0x70, 0x70, 0x3c, 0x2f, 0x61, + 0x3e, 0x20, 0x61, 0x6e, 0x64, 0x20, 0x3c, 0x61, 0x20, 0x68, 0x72, 0x65, + 0x66, 0x3d, 0x22, 0x68, 0x74, 0x74, 0x70, 0x73, 0x3a, 0x2f, 0x2f, 0x67, + 0x67, 0x6d, 0x6c, 0x2e, 0x61, 0x69, 0x22, 0x3e, 0x67, 0x67, 0x6d, 0x6c, + 0x2e, 0x61, 0x69, 0x3c, 0x2f, 0x61, 0x3e, 0x2e, 0x3c, 0x2f, 0x70, 0x3e, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, + 0x2f, 0x66, 0x6f, 0x6f, 0x74, 0x65, 0x72, 0x3e, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x2f, 0x64, 0x69, 0x76, 0x3e, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x60, 0x3b, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x7d, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x72, 0x65, 0x6e, 0x64, + 0x65, 0x72, 0x28, 0x68, 0x28, 0x41, 0x70, 0x70, 0x29, 0x2c, 0x20, 0x64, + 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x71, 0x75, 0x65, 0x72, + 0x79, 0x53, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x28, 0x27, 0x23, + 0x63, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x27, 0x29, 0x29, + 0x3b, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, + 0x3e, 0x0a, 0x3c, 0x2f, 0x68, 0x65, 0x61, 0x64, 0x3e, 0x0a, 0x0a, 0x3c, + 0x62, 0x6f, 0x64, 0x79, 0x3e, 0x0a, 0x20, 0x20, 0x3c, 0x64, 0x69, 0x76, + 0x20, 0x69, 0x64, 0x3d, 0x22, 0x63, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, + 0x65, 0x72, 0x22, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x3c, 0x69, 0x6e, + 0x70, 0x75, 0x74, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x66, 0x69, + 0x6c, 0x65, 0x22, 0x20, 0x69, 0x64, 0x3d, 0x22, 0x66, 0x69, 0x6c, 0x65, + 0x49, 0x6e, 0x70, 0x75, 0x74, 0x22, 0x20, 0x61, 0x63, 0x63, 0x65, 0x70, + 0x74, 0x3d, 0x22, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x2f, 0x2a, 0x22, 0x20, + 0x73, 0x74, 0x79, 0x6c, 0x65, 0x3d, 0x22, 0x64, 0x69, 0x73, 0x70, 0x6c, + 0x61, 0x79, 0x3a, 0x20, 0x6e, 0x6f, 0x6e, 0x65, 0x3b, 0x22, 0x3e, 0x0a, + 0x20, 0x20, 0x3c, 0x2f, 0x64, 0x69, 0x76, 0x3e, 0x0a, 0x20, 0x20, 0x3c, + 0x64, 0x69, 0x76, 0x20, 0x69, 0x64, 0x3d, 0x22, 0x70, 0x6f, 0x72, 0x74, + 0x61, 0x6c, 0x22, 0x3e, 0x3c, 0x2f, 0x64, 0x69, 0x76, 0x3e, 0x0a, 0x3c, + 0x2f, 0x62, 0x6f, 0x64, 0x79, 0x3e, 0x0a, 0x0a, 0x3c, 0x2f, 0x68, 0x74, + 0x6d, 0x6c, 0x3e, 0x0a, 0x0a }; -unsigned int index_html_len = 30190; +unsigned int index_html_len = 32105; diff --git a/examples/server/public/index.html b/examples/server/public/index.html index f539884e2..39d7bb93d 100644 --- a/examples/server/public/index.html +++ b/examples/server/public/index.html @@ -125,6 +125,7 @@ background-color: #222; color: #ddd; } + code { font-family: monospace; padding: 0.1em 0.3em; @@ -141,7 +142,8 @@ display: inline; } - header, footer { + header, + footer { text-align: center; } @@ -163,6 +165,7 @@ 0% { background-position: 0%; } + 100% { background-position: 100%; } @@ -181,6 +184,7 @@ --loading-color-1: #22222200; --loading-color-2: #222222ff; } + .popover-content { background-color: black; } @@ -194,6 +198,8 @@ import { llama } from '/completion.js'; import { SchemaConverter } from '/json-schema-to-grammar.mjs'; + let selected_image = false; + var slot_id = -1; const session = signal({ prompt: "This is a conversation between User and Llama, a friendly chatbot. Llama is helpful, kind, honest, good at writing, and never fails to answer any requests immediately and with precision.", @@ -203,6 +209,7 @@ type: "chat", // "chat" | "completion" char: "Llama", user: "User", + image_selected: '' }) const params = signal({ @@ -220,7 +227,9 @@ mirostat_tau: 5, // target entropy mirostat_eta: 0.1, // learning rate grammar: '', - n_probs: 0, // no completion_probabilities + n_probs: 0, // no completion_probabilities, + image_data: [], + cache_prompt: true }) /* START: Support for storing prompt templates and parameters in borwser LocalStorage */ @@ -270,6 +279,7 @@ // saved templates were successfuly imported. console.log('Processing saved templates and updating default template') + params.value = { ...params.value, image_data: [] }; //console.log(importedTemplates); savedUserTemplates.value = importedTemplates; @@ -294,7 +304,9 @@ function userTemplateApply(t) { session.value = t.data.session; + session.value = { ...session.value, image_selected: '' }; params.value = t.data.params; + params.value = { ...params.value, image_data: [] }; } function userTemplateResetToDefaultAndApply() { @@ -385,20 +397,25 @@ throw new Error("already running"); } controller.value = new AbortController(); - for await (const chunk of llama(prompt, llamaParams, {controller: controller.value})) { + for await (const chunk of llama(prompt, llamaParams, { controller: controller.value })) { const data = chunk.data; if (data.stop) { while ( currentMessages.length > 0 && currentMessages[currentMessages.length - 1].content.match(/\n$/) != null - ) { + ) { currentMessages.pop(); } transcriptUpdate([...history, [char, currentMessages]]) console.log("Completion finished: '", currentMessages.map(msg => msg.content).join(''), "', summary: ", data); } else { currentMessages.push(data); + slot_id = data.slot_id; + if (selected_image && !data.multimodal) { + alert("The server was not compiled for multimodal or the model projector can't be loaded."); + return; + } transcriptUpdate([...history, [char, currentMessages]]) } @@ -419,7 +436,7 @@ transcriptUpdate([...session.value.transcript, ["{{user}}", msg]]) - const prompt = template(session.value.template, { + let prompt = template(session.value.template, { message: msg, history: session.value.transcript.flatMap( ([name, data]) => @@ -434,9 +451,12 @@ ) ).join("\n"), }); - + if (selected_image) { + prompt = `A chat between a curious human and an artificial intelligence assistant. The assistant gives helpful, detailed, and polite answers to the human's questions.\nUSER:[img-10]${msg}\nASSISTANT:`; + } await runLlama(prompt, { ...params.value, + slot_id: slot_id, stop: ["", template("{{char}}:"), template("{{user}}:")], }, "{{char}}"); } @@ -446,10 +466,11 @@ console.log('already running...'); return; } - const {prompt} = session.value; + const { prompt } = session.value; transcriptUpdate([...session.value.transcript, ["", prompt]]); await runLlama(prompt, { ...params.value, + slot_id: slot_id, stop: [], }, ""); } @@ -467,6 +488,27 @@ transcriptUpdate([]); } + const uploadImage = (e) => { + e.preventDefault(); + document.getElementById("fileInput").click(); + document.getElementById("fileInput").addEventListener("change", function (event) { + const selectedFile = event.target.files[0]; + if (selectedFile) { + const reader = new FileReader(); + reader.onload = function () { + const image_data = reader.result; + session.value = { ...session.value, image_selected: image_data }; + params.value = { + ...params.value, image_data: [ + { data: image_data.replace(/data:image\/[^;]+;base64,/, ''), id: 10 }] + } + }; + selected_image = true; + reader.readAsDataURL(selectedFile); + } + }); + } + function MessageInput() { const message = useSignal("") @@ -497,6 +539,7 @@