mirror of
https://github.com/networkmastered/obsidian-compress.git
synced 2026-07-22 05:41:28 +00:00
473 lines
No EOL
69 KiB
JavaScript
473 lines
No EOL
69 KiB
JavaScript
//Credit: github networkmaster
|
|
import { BB } from "./BB.js"
|
|
import LZ from "./runlengthMatch.js"
|
|
import { inflate, deflate } from "./pako.js"
|
|
import { decodeSafe, encodeSafe } from "./runlength.js"
|
|
|
|
import * as excalidraw from "./pluginCompression/excalidraw.js"
|
|
|
|
//DO NOT REORDER. MAX: 32
|
|
const plugins = [
|
|
excalidraw,
|
|
|
|
]
|
|
|
|
//compressed json. (dictionaryBIG.json)
|
|
let wordDict = (() => { let r = new BB(); r.F("4xZLduomrqCDF-BrPNWlqsrKe4S7480fW_rMf79kFqIy1QSIQnmqLfmqvfM9cae0A2LnJwzlypwnpbRXKHJuaZM3FsVqimXIi59cnoszFnl6x0uCUUCDsnbbgVetyHiTdqljA5l1ExqWmMMuIWt5yJX2SnzEtW-sv5Al6Tgedy5i2wfjx5y0JXPaJyW3NVOmnmzTALpj8sCMnIOzzKTHB2nyHglRcdNtkdAlMCSdXPMvlTkZ17JivTZ_ubc06Op_vRuyNqppVjlnTkS17d_8e-jrim7UtN3rJnD7DqpmHxzGuCeeQSv40ZZ6wlrlJqWWU-eZcQg8svOSml0_Nm8Ltli61l_NFF2l_VynAKjK4IX5DucUOdjyS5Jxuc1z0S7EtmOdcG7c1nJ3Cs8JV9l5GFglPlZ_FTqgSB81rpcFIXPA2dG81rCNPveVLkZeVnoK8VNPr2l1JyZu1fVNzqCYNTHo1c3J96ZJqcXLn8w6UNPxbUT6pbJ6vk3PcxMfs7aicV9goglrL1yF4rJaYy198pxD9SgXu_Yu22yOe986G3oRe4fTqwsPRZZXjKKkE7PznFAaB2n3SH3guD9urd2fx_FuOx9WTqfuw8UD6zMUah3zHuIt72q93TRebfnxZ7KOLA_VDvvP8XXdEmmB9IjYE6ep8S0rJqP3v2MNSrOZ1edkbkbHH5Ty2HKJHVwfVkOeygljn5o1_QDCbMi54prDVV7C0-2Nde0YoYE-Rmq6D6DRkPTxLVSPNULwE5IGTdclqun8x1e-1N4IaePG7JigHqpimKWTEQtzHg73tcjA15tbwehKc1bs5xQnzbBkdPgT1eTnrz08Sh0_MG0fqyrrDOXT7Q3pMfuWJtWHeUwZ2MsOfTp78M9DUl_n9leI6pGGxXpoYybqeE_Qp-sI-SkgtvG6BXize68kHrny3un_vBJmYocz1foP45P5Ej7VHRF1rJ6CdN1p0qatub2vIzctRaeVWpj_VZvsSU0oDyvX6FpkddloT71VczI_edVd_zLNkrw1Vao1o9-AG3w2gKJxMd7kvRFmlAqQdDGPO4XWXGupFGEiuSJquez3TVxQPmoNseMvZuB1jipXwUtSrXV1fQdjetSjCYi-X1qHOUrlvi2CuQ1GZ4aP9yMn0oUH1-3CTY1eSnBllazuvazFy2m60yVbaWibQI0a1enUa3uSkWNNeZ3YuCnoWT_PCQHTFuZQNPO1ai9sgeK6o16bUW03f4Pdv65Cbdz-udvz4N187Of9N1ZX3uvDvgeZfHKPomd8qlZPHQXdgeD4yT3V_d1f_M5HGz6NeOqKfq5h942xyU8yDP71YN4JOWNP_B8gG1iBy9KbM6eszoXua8e9xhSnPmzoEFITH_PTd6P9Jp2Ijx44P5p4ryMALFQqN-Oxn-707EUY6_N1KUh999fXfmPXFQ_qf09_JT5_HGj_r4fqc3v5DlxESP_nSUB9Zeyc5KpFT4t0uy0Kw7NNanA-5zqIp22nTSQCR1UPAMYX01Jfz1r8FokT51Lhvp3tEzxzt9Em4n-6lEfg99aR5NF4w3tQl_TxVsUEcq_BsEJ9pJr-jq5U7OFO_nj57T4E9EWK-uiHAlkz2Wibrhh_CWfmmHOQ6VpQMqeuRhZLByTkOTkdnP0oM_szbqXVAFFxQ-JjjoQ3oXtgElECs9aYU9leyQA_U1TPC4cICXJa3FD-I3l4x_WKvVxNRVGwBkTVjCynPpUQcEFqusAjOXNPxQchvpRKNTXhnplnDexlo-Nt0Yi1np0Lel0Gj_F6ZDF2-O9DozViBAlGVD5X51YZx3WNxkxWp-KtWHuXQSM29T3U_V60ks4CCynGK7AZH3dLdnw9NJxgwyJZyjoAopZgmeRnw0ZelvjaIVVmCUZqMBUXlEPLanStUyvUDGCCuKvNSc6UZa2SC-mcV2fDtem-O5y23c0RMdzU9Pl4DJAm7Vyalug6mj889svpkHk8c-lGTqKp86q_a5VNLM5z8apTP-863Mxj8T-d-MLYf_lrNyamWiyp_2K9KQLHZnixkOCPpXU28NeqBVL-pVKvSkrZXOksUbLUCzNksFEGuCYSQBibnguHrk_l-tPeurx1KzSgFfJswFc6-ritppdkGW4v8qipxboOia2eNV-TLG4TJg1FUq-2_bQpUR5Xo_-r73uXm6-FLPhM_O-sl1VHZVz7LLXxlaagDQ3pYv8ddoWu9xzn-x0rr4bk-HF89xrXxDiaTJCHEyI6pFVY8QSyC6BlnSSPAJ65CYHGxPLLp1JAYHL42z59USBQaI5KQa4nFH19FN_Ixih-ljnuIWErqfJFO9Fpoupc-CVVE6R4lz2UGYwzKrZeUhvThqcxPaPpuMa6jfgqijzjiSFSxzW_s4aniT-G1MluZGSAx3mXwiJJo7Y2H7Mv4zyI6qzcou7XZEMJLj6TqRVXCL6k0b0cFKf3d8_x0bNfPR-erU0HRzOmQoSFYFi6bnAPeGoHLLVPbQ7wnqO9xPJS1q6XpvZNF8DleG_aovVj7bd4E-1tjaaHep8z_uSTcLKaRI4AC5YJak7CLe5mRmU01ZjiU7cPTgc8xFXC-IlT_RNHSV5S_Nki3Ad-rIfxT1zjEbM_2wyyN0V-Q03D4PuIj9nQYgpq0PYqyx-biuqd6w2cc4xajjLu7p5rOOX1EffJAz2LwccGlbPCcgIhAifPgH0IBthbwouPdBc6xzjqvgpyApTh0ugZqGMHENGDLJrA--dPl6g-Nkm99A6OXwLf7bcHJ-vaM99-kyo3X0wKVUmgbsQECAUFxZ00mHugcMgOKqiimIFQf0HzR8zVC-vyOXI2Q0krAzInmwEdUJgEoGAWCg-hla2v19VjHeIG7AXOKIP7MScYYhU9M-8nn5nxDL-yOzLI8zkfPNNggrQIPFQ6HTkvaDnHvsmCzSI-Dn0egzMiy76DxJYGJLG-ZrkvUX2yA8M_xJlFI3Bq8FqN6LLsXik6Dpfz6GIcTCRLAthntwydf7uzNthTRlFLrguZENZXLOt7nqzhgvSvXha8f1fDlB-OREGW8yZJ_5ufhPpD344xezJJCnmqjx58UN59TmCWB2PiAW4XpOAyWsQA4xOrWCUHUYy6erAdkxSaTSzpmrmmX1b8qUU-fT9NguimBh2MiuDnYhShmivNqvIogY6Cv8naDx2uBb-pK3IpPugy02NCs4ORSMQHF0UlaNVVRhaTTefO8r9xVOuCfjJ95icismEk1PSjyhegMqClspiedoxrEoynN72WLd18G9RpT3WJKMIbio7ur6W5gXocdRiVq0vdr8dxFrqn7feTse4pBrHhrQOO898XFlTEt7sUmBdPwkbKNyIs2cWzqjIAzKjcwzkqyHUYyXuziEngU2zbzd7qf3OYG2zCd-y1xZUkOMjnoOToEfFaFzNIkBB7TWYDhfyOt3prmkf4ccB-qD9wWhSBYeCBa2WRNDjdbkhZr-goRXN1TkKk9sU9WNCSii3BygH39fvECfoAoTpg-m7-KuGwAYHlzF9rKWSYCL9vCEzUrA0aIZIeTUH_lSwZ8xsnEZGJJojTILzc5Ji-L4JMNFSba5530TBzz3_A82SXoAF3HrwY6SqSnhiYICsilmmlIGVXqLbYqsZmniPCjIKqW2tol9_gUDuwMlWLxQJpiLC9Js4njGmSLAp1Ld5lIKuXoULg6hyxr4T4xolD3bQ9FnO9DrmxT5kBtg2C0zWQG-Snr2Moz0_01Gn_LykSCnIiSCCyEnWFehq3njnkpwl7ybLzzsH7re_O2MGQC8IVndgTfTNIA5UUgrS1fMJ9q_IV3CjxCoaudkMThS7y91kwUx32TkNXGekA2IzJ74Kurm_wX2c-3d9Ko-8OJx3nOn8d3cnL3oc5cdyDHloPe4oqqCgu0YJNRO9N8HSy74-fIxDUP1iE7hUQK3ZAjIIQ6ZIa0TX1v2cyzICE1YIsDFXJnT2zrJmKr--Y0OB9opQC78GqYhRsVlMdhwysiYJ9E2aSsOCMoPtk5hoMmzOBGJTzNn9HWUOheIqN1roqCvef5676dMiY8URTsokK7CG2SnzhOjzInERhxyKhdHRJaU0wO2vqUBM210qOl2tpvnxEqQH7w9ZcazZMPuil5QBmx4HCzclqvpfvkiFyLYgL5iS-R1gPjkFyskH1ezX-BabzztMoDtGyXY4xojVPARtOBBTMLbkfMyCF6COfvHawNfbmT3XxYDsg7ykFacBzyvIeALaCQxEVAreRmANu8ABhEw0GL2EJLYeVqvWms1gWm8YENJ2bLBnC4plXwGmLSCBR6TYDCCEK0vMNkox-tUv-I2fXc-5GRufTgF6FSgdLH9iEIfB6vEPpCfkSJs3OwJk-2TiUyCCIoyEkCpBQgqaWSW0FBJrLtCom9CvtqWFZHFvFWqRawgBy7aswccHzyZJ5XOdRzwSyqcJQyaYMybv2j3Qc0Oc0fVnGG97Mcc9aYskYOsl0_EDEHT4UIqU7zpALPAFh9-E0xfZZ1fU0DsBmgE2imAZnwHFGqTghLSnMKSQYNbFoFfzTbIVhchN9sgkTyrsLqX7F_sCmfTo7HJsvBd4UBVsAe6LS7xba74uIWGoaEB04HXQaZnnav7iBgwyfVVtLEwSYv6vZnJ3Ekcype38QJP4gI_Jt732MiEUcS81L3zSe6p57qAs8RJCoZiHOgX5EhurbmR7i2jMpSMuc2rNxSO5--ZxfaJbV5Xy2kKCs03CPdFZOm7RDnSHSWGhKinEx9hTJx1ADToAHOZOugLA2rh32WGUQpNRhMrOgOVUlvRP3iA_pas8L8uN0jiEvJdQElBygRn2cb16LqAbUbRgDnnbXRX1czLzqQJt-ivRPGn7WOJUlv5nSNun1ecJ_rmmYpMHL2rC82GgUB8ItiX-SlqFMBnoKrh1UIGrb2wJKwhXwhFJ2g4l3IwOkrNKBqMHQqFxiJXcSe6mliUClvc5oh9lUA-u13EUSCISjypqMdOo1Y20FNlrzEjnkSiJEy9sIZu6I3lCQHhCiWuw0mMwsyaOCov_qv-v8dlOP3gt_u-7j_4ZpJOdUd3B1pysarsWeiyYfNF5bofsiOKQwVriQH07FLXIcYGfeZbWQ_fiKzY5PrE2WkMp5I6QVv_ihRXGPzoJ6CilbmrjVmVYZoJlW08fYfTCcZxIXk-9YxqlhalG6T_jgaYZ_FW2gFrAOFFNbD6Ou4R8jPkJlEJiD7Xnifz2gBL3nWBrl72uXZMWH8KU9QsUsyvg7QOwe2CPdMqXbYk7ELAky4CbbSOYhiVjoYyS6Zzr26exEUg7HYxZVpke-U_hOdJpriII3pyJJEMXd6SzhtLFeyKImmVndedauEDeanE8C2JI7j6TB3e6wl4b6vxrX5VDImaaV8WWBuQTGCgBNUcl21iJu_q7RPk0uFNPtjIOJLscyZQVRbO9MsLtHatK8abKC8xCQIWqrROUD6M9nM3limE0KtrKVsXtztivopSuKnGsEfeaD1VSzXIBq6Og4Zz0HxVetFEkcvxEyXdAggHCwkaCFnepnpmkZt68nGYmCs5Zl08O_LDNKYHxyYmY1fpUcoilzvHMrSy3p8NwOxbwfe2g0pNjB6g5v0p1dCs4KvTLqHYIUnmzKN9p4AWtJhILOITBmOZd6FtuyqtkO9SCJgZrFUtFhUgx-LBbRDyZWcqE8vCvLmQWgNFUC3bJCUtzLIMrprEAvMYwaZUVgzJ_97xyDpAoCtDkjHU_7j1_GZmP_1EK9Sia1zP8d-9WaOw0yQCfZRB86kLU9Zo38VuhqcJsO0lyOXlZT_RPzLzLpnkz7s8zD1ai40JP7iah49YxYXAoq0TPoJwnI30mdn-GSmLow6tpcQzSEoO8tmYnJqdVHx52tiiLD9j0Ygj_uOWsXFYwMvJ0tXMrTYX4UEwqMIEBXTjYQ7QMH8nTtlvnA0X8DTaZBCca_ZKqt-4ukfQIkETh58DGIQCJ8mgFEdK9Drhqo7eg5P4ZCcXs4U3BSVK9_8n9dUgcc_YA1PS4w4amSL9Ty-rjwD_WST6sv_Gr2KY-Z2I6_JWj-j5OU_UErWAeFft5Y8zlbJ-BfAAwdW-Rsa0cjC9ohfCxxS_41JWgUklI3dT1Pqy-R6OWAQhr2KIKwOim_KEj4FOf1Mww2w8ldUKAxlRzXpAxM9el3FRaExFL-dz2rUehGEqnEO_DPL3J5fzDYNVB2ZWIhNuJrRjf9j4Le6ZVFimtCmN1eszLMjzLcoiG3EburCjCc4vX1rnwrpQdpXsMmAIbmoblDgMC-9yW6_10YORGBva6FMMoR910PPepefEBmci60XMLDUbW1XJkydHkVQH7jo_YAugFrW2Lmm4lzdJ1OSSZ1UeBnZRRCQfpEJXU6V-6v0syz_bp_VAMctge2Jf19nfxYoPO2Y4HR1s_vSDIw56VGveQwTfRMzyrMa6y1oFBJe2rNwrs6ug4oKANYZGuKY1F1ML6Gfy8Ofp8ufj9sVWRBscFCdLOSmRJxFts1K8VIqLLv0XWPGbeGRo6UiqSZg2f_hlkn-T6FC7V-HG69SSE941_wlxkSUYWDBrQ0YYRf7boRRiKBn99u-nbCiO22MfngsSJCYeBBfjG29UicsuYjUSjCd7oNnyrQhTBH0fLKqaWWIVufZyUng2-oCcjIrNI0eT8jFi7GRexzv9a3zF_iFEEKtd7SyNxE-FG2DaxOOiCgxfF02iXs7bSEvvsOLKw3N3ZrwnqgzaKN5ZaxXSeEvMuikZCOhv3ZpyVAWHnXY1MuicTJcJTM3oZRIpas0aCfSO0y9zCtP7hClq6Yb09hkA3BDiSVfhTQUv4FSf_2vXfcacQusaJ2eh04EJLerAH-My7_sZfoRBkCg8UNp1LLnwLc4F3jW5wozJ6cSPaEEBmH1pIJxECc7EGCbhAWObh5_eumIFIEPSBabsyCv8oO7HqAwP9lXFP6JZza5b0ciHLa9rq1F6VFL9K6uzHqqN7HyCnKK8Croiho_6EbMbrfqArUhVZxxfNkGlIhmGIM7aMJISmGlx-ewfZIxu84DXJp6W3vTSwT7_4US--Sd6MH1RlnoZWpBc4FnVQnVU4BmeY39NCLJIgu6jgdzo7bFM9GU8WnMPDlVn-hr2t1mW9qpWBTicua9JWnu0f2NGWt7iBgUPrTe4wKGIaGwNirI7vB90ijckKtEFDhxwRFoYepr2_qIB6YRCeinAYdC7oLq_waU_uTW06dd67bR-1LP1ailF7HhzvLimUr5KLvrSCERXTtumOa2bbWTRNswMZGJZnvJrvlghzPpQpChHJctCN85Zm3Rs8wSBD_O9J6CumuRcr1twVZW3UWSZiNXO2YowamFwdVjqUntV1a7u2KgrCZhc52HHwpaNXZhLBX8Trew8Kedhokm5fPKQtnOoJ_npfpQfxBmTZNc9pVb4LLewNwAL0TAM7m-2iNjoetDFq6o98TIL8S5DU0RINo7xIj1dcoYRL8msifrwfcKC8xpq6Tuurvkf5hJYUcixtk9imCxxTllzJbxUhNflevT8jo1C-RLAKrvWe6GdYEKOxr4LEuCpsjhbki8LldVoYGJRS3Q5bX8qNtCXNoaMHxqZW_CvoPEctUPbW2G1eoauD_p-wM3rM2eF7vTyIGVeIoCsYxSXpZSDtJQmSnkXXK--I0gaFLJAtdBtH1x1YVOXx_gWrWLXm8lPT6YPbU1CiZlXkpVbqzVy6QPYUvXxSR8yxuCDLSDs1AYZ2jhrl1VDHu8ULYthVsEPU37sicbrYGCSbVUHkRHPhEe23qtIso43ACOdSej28PWHur3QyULqbX0cfRfuh5fLA_LUqdt7phVA9BkOdFo2aeCD_Sfdc2OQ2SJnCLqogxD8uRC25vwW9r3H83JzatejaRr3_ZUDFo8YbCRx3ET1m6MtNtanBebK_eAtKJ5Fur2zFwXQyPjbuzI5NMmoaOwxR9beQXPBHxVt4unL2woo_gXDntJEYYbyueyGci4e1FLl0GuJLq8sBTxICXsu7bYIEofg79GuzqkGSIeo-mXZdud01RIL3tU6IKSeBS2wJNFl1ERdXUgvoMx2kZMIItf6S3vSJtH4icsGWbIQ8GQFN7E679hgM3aFE-TbYClNJ5hCw-J4QBSLO3kWjlZfLm8VwJDOEWNvhNJWqdAfsbSB6h_y7Xxrf4-3bUVjlAYe6N7R1bhlIEgHTgujN-KqfOz9oA4T6Co-LFGUi9EhVKdTK7hd92yT4NIoYWb2BmnVvbWgd4YtlZfWAkM77NVECEZNp4nD6esQ_bM8bzr_1G8CZ_Eo_uUxKjrqTM8kVblJcvqNWwo4yfEB5cFVxWF5EhTYcShrrwHbj1QWUx1lMBrrKvr6IiBAUgoTXZnH6luZjRnbsWqwoWBsTnjR2uXE7DF4NE6EqOgOHVe_FLouhkhrUZX04PRq-TeFdxEPyfp6rQHWeLPJ-Wx2MYDju42Jx602In53c_5SPxVS2ESMWbT1oU-uwVfzdmEeTMW0fzSMCBi7lAKJDxTWKOTyGL93G8GkUSCzLu2XSTTbo4VYpl2G23-3iVWdb4JJ3ss1iqs7ohz7CuB5N3vZvMa7W8wPpr_N7LJBLe9g2uxh33uVjHF77LH3L378-6sgltYLSY_QOPnE_jVheR6yoGcW61SvpHejHhfJoAhAEqQIJezWbtsmoCbUlXu3RapMzj-wr0QCAx5lqa4_xoMm0aEMEmLTLvKj5jnseGCGQjO-s2DY4fhxSuoAIiumBH_3BUq5CsXCs49YhCYzMIc4l7IfiQUso5O5gHjIhxqUAbgEh0_TwwrIHLHJvzfLlmCoqbypnprOUpvrKQnorPgGCXAz_9FjtSkQf36Es5YwWjbuSl3pYHTCb2Ag2iL8-s4X5TWfNAkJLf-2GSIfCn785RknOLe9tVgB2PUBuGcJLMKZiGLiuAMJjAaTIPr5B_LwV8NUJbEBwODZ2OIGS1I_-n5wUg6AeA5z_MelCE7rFFwN3n2mVZN-kvsYvSHDGYkrv90vZxjzeEaGfrzpaDvyQwfNytSHzJiu2i2Zb0ok-Ai7XzC8c_4fhAMwbT1W_DbA9vJvuNC004CsDK-PcAesEw_mOtVy_HeT2pgGWDW440uq6_Q87MP4L_hnnK82O81_mkK-_TTwUwZ_UgzmolLxRkLZpc-H-RNg5r9P1Kp_6WNh_hRgILnf9C6KTj_v85Pi09iB8Pm24fhT8-PvFY-HVj_TcN5hWoo_VCpI-HbevHYhX9n1BXIGtXpw4pdSJFA1CFNb3RQBKisyfW2h_NYs9_G673GCfnYAy_wxd-nmC2ie8PchSi6JJc1BJryWHkix4jU0Q5r3TPLPF1BPlKRaw_bJzAFg3soJieP9W0f5JIWoIXWp73pV9nNKybacz8sa4rYKgk39kIpunOGqvgmwTz2EOvgCgHgB6dsgwQVIF4Lmj592078j3U18ObDOIg6w3iBE1gCj5jUguIaCClFx_rfz-MQMzezI4de_zVcdYhN4r_OXacXxm5N9RpUxAg3ZbLn35v6DLNEkCpvPnUpl8wp6G--M_yUv8ev1IY7_4KwXRCvT7t0UQVbjDsA-j9pn8nqB2Z3oK6cMQAfPXFmd2GnJffEF233KsvP5ysgb2AD7svSUtiQkTbnFv-PTnh_ieGJp6CYls4ZnSed_CSndmhG3anv3p9wNh3R6dxCjLxKmZd5F6oW_MZ4W9zlmaTSTIwW5BDz5e_tdu2ZxsPN2Zg4OWGBqkHlkDv11ZtPkAfSnRh6DSZsP9l54FQ-57tfyPT2yE7qbHCAJka4dcXIpbof700LYkKEbtubbwsj3Ouz67BlE3OUN5BxlEuw7I5IvtNRD-fH01pZDYCGBWtAhY3cBmX3eK3iEQKDLxI2RMTYZtHv05anP3Z2uYzOz2qCVwgR4laX52mlLGF0Zi-GbjNC091oyzO-6trtSf4R_4Jy3zTmR0OWbl8c-ZFdbxxQZGRh0BWanOE5FO2AX9SVQ51_6hkDvgZP_27mydxoZWUU8ZnNmB-oNRTTuel5tPdKeqBoSundmES933dJIjzGxaBauW74HPct0p076BiB86dOUqw63vHGTaPcHd7jJ8YrSgUBWsZ2L2I_CeBhVpFzfupYj0qIOqCU8-xUBMfavbVdeSjDhz_OmnkIuqB_iqSXhMjjLrfJ90ZnLxcZeL3Ihd8IY20FkwlIdvYb0Qupu4tqLLHI3_vvWw3XoECEvqECiiHzwgNH2B-6pG3L32Y_7YQOi0gdrpoqybEbWsdxD_Lb83dpZ6kkNfPWnRvFaRHm9x5EXiwPeRQ2H_A_89b8nXBHX6B3YtKpQO7OrMB2Yk5BcWEdR_ZvdR460vxjwETTgIUjAnAsMkiig2HTSlA8IyjJkjEgNFMIOaE-Ohdp5jp_F-PhCUsGKHMFxB7n5MpmdjZB70kfErDmAv7jOwIF7PY5hZEKeZEWgjApxn4OrktP9MGCzzD_enmdvwd-gnx67qAesG7i9KfbvbaPmu87WZla4h1nx1qK9IyF1V_RrRVT9tL_SvDDl4lq2S3HomsTUJIprrrMA-A_V3fyGz1dwGfjsXzvbzLK-h3NnC6TLFjzbM_Nyo59ywB7yrDYr6bG7a_DWZooa9Ty76jjpfyHaw1x0Nb3XBkaiDpmKCH0COlCNnLhhR3PSsAj0MxmoiBVH2dz4JLsT_OSJ7mcHix4TOuBOS7eDITgdn07sK9C4ddvUBEvDEsTsbwgQw1xJ65QE_a1Yt1VAq_sUziS3Khif9BrprfUfyaioAJXkU7Fxx2i9ILJ_UmJzhdgis0PVTEKA9UFcaV_VgYvIrAVcfahNfVHblqewFu4mNv8BvBvrNZGJpU1XEfmKcwqRaWZlduwcAPyHOncUakT00t8Cn2IEIVKWFyeglbnRO_vAhcQH29HZnxTlbuOhCbCREtjcLkeC_qjKzcjdAILgpmczu9gjcr7xWSgY0C8wR5HPH3xZKsrzR5pjbZ2baCCsNB17C1DcrBu5CCDKY44uSBAN_dSVY--UjA0grRezENJMwFXBn-jineRAtJlzYwk36qiGm8k8DSuj0ZusWOjKmCa9K64v0o4dtxhHnV4TgDuf4176Z9Jhs3vye9feuAeF83wIAkxrdzMlmFXD00MTdiIGa-wbGsdHI7Fd_gdZmv25uuj64P2ZIuOUXAGdvbWPwglHiv9NUxV-Y86FReYR_PGsCmHeHOB0zX85GSoBqk9pFCvfllk9Y0clxwOuugNv5rUgY04w7fLB4IHC9eQ8w9ZYtTmiAuec4zzjj7yFMa1cAwp_O22fH3_5hDaU5WR0MBhN0p33A43LWW-zJWSHJrrYo-g2R7WAnsd5p6RB-u5kpF0ORmZD9luDzpXTMuvKUTA9_-0fiZ_P1wN0I9M9ETscih9gZBOMvGIK5rxsJn4JqOHmWt38fi58Q0Z13ORH-TciMRuqogh0ontqiAllbHKgmg5kFyWUr7lmHzyxxpygfzRnOVnJpmYlr_uf_lKj03mX8RFo7I-Dh_Rt0nIjF03qn2JHrB0zTS8R2PjkkmxDmS6MvlNn1zsNek60-PVYzYN2zskr-kr6XwDXY122VB-qhxnF_GF7IUa4SHlGVAcuDYCvANjiInaUkl-7sUctmXP0ZeLWSGcDV7XlccmUpRHZQleWwL7k9HJ00lTRL3OOrLEvyZn2C8nlf8qLcWsbapZRxU6SLHEzW4KrU35I3-7-7-w2QjnfCxsBPH4spcT8OKRjeKjumfBo6t4iCE-ymCQV5N-wAOxfxOwlED8Av1RM8Xc8Ls_plCcF22zQvFJH-4T5pt8iqIZjWXeap8UFKhbWqBhu3hw8CbnVFo4TKBEr08j9uhlH0H-D8x1DBvUyaY6WGQWmxdwFViCKozG7EPT9yxWdyrPKL2ihFcwUGuqW2GmaoYP8VUfuCIkGBBIHMYbDLvVeBbWplrCm3bM4k51MHzi0M_hNdKcdVyDfnCzGgBi-4XHziBTzi3QllTvum01RR60rRe58-nHFJa6DpvCb6V28xTimjX5y--jALGyfnZPqAu7sQM9VJczKWIfuHbGNlw2eziG7xBldkckFhCwuSSKxVvNO0YwQLFYoT1ZlJ8lERl2hngzdhpIa-de38S0szlLezwzXQsNPVAbJQh2TdFyUoCY9kADvCWBYrDJAbuJoOIJ7e7zL0zwKMqjwVY0QiTIVkjSi2r_QJlyP-4Gq8zNjjFw8TKgZA_o8LW0gdRpafBfTuVD7YMrAviDX6e0bSYZZSQ-kpbum-nUMqJc_yatpAaQ8FnwOASkfaxv4csJxrd6NDCOylvKRSc6P7Z4i3X-ohpK8SaX_IcwjLOnWe7ruZPuJtWR32LMIApQljjLOuXsEdXIO_GgfFcGDA4XdxpoC5naj5Vx_-t1oxcveZXuYjjJqNK4FHdDcvuXnjLmMBKbSqLvz54r-hX_T2iddN99sxplgy8L-Vu9glrkK_uCjtWXHg55F0ctayeF9VaWdawipWiiLEmhtSNnmAehvVAbQcsKt3OPXIZMMMuSpwLtuYzG4UxzxfxpFTnv05cm4HnHYX4XnZiFTpi3vDj4Lq_w0lXJvNWuY3v5YXfBDLh5CFmqNU3FbEQRY4sA7s0CbOBgL6TQ6JfBzsqDw6Kcli8ePOfluQs5X-2Dsa8lmajv-GnDJ_8we-rk74iFEELhQfqVuWMUnASnZiWJMomCIxku2wXOFcHSrIBP0IbmRTK9Iwd6yhVXuyeb-d5TdorsdAcBu-LHeXDuTKEYIKgFVGEtNEXIr3yV2G1Sg1A8Cva_itw5ccVItvCQuTl7kjMMtvy2abXsqY8lZqPRfFpa4m5Xh58uETTSkfoff-nMv1v_qah9JvjmxxrhAXSBoHigOuiEBu9s-KgfFO6PusJnAQmf81-N8nvL1xzdJZWjLpjv5JsbLIIwdPxjs4Vu9y1exOvkikYXY_Y_qsYJVEyuJRxsIdAVtwq37Cu6gbaDHxRBCvLqiLGvX2Rso8W2ZQMLuHRavA529RRWDi5xFdOKcsXB4tmtwbvdOvQkdRvYjKC6J8uiziLBh7NxQf3Tk90jHJg_N4yfxlg-ENaSaEsemwoFWCnjFSuKjgdHcedRybMYrovb608EX2ftoTm0gjNDvQPR3V4rzC-eCFDMq5xYj-IwuMrwFLhrC8KesX7ZhehlEegJsECPQw_jdHonOcE3AZWEYPn8qGZEcyRgDm7TY8owyIX2_j8HTaiQhuWsHwfhrSAfGxPd4kp8yjNqhduFGLzkCYpcEGb0IF4IKOFLInwyLoXRtWN2kZYKyr_exekDx6Vcedldhl51E9HelhdaThUT24wG4SKrso2q2NbM8HXjwgkC39lehqvGxBDjwVeGray1YNkJ-a4zbOBc8cJg88gBSszS2BsGIXsOGu6l13hYe6d4ELJIZqBcWHX0Jcgg1Xjas13VgkpuieAjTg2wJi4UiVSk4ZYemLk_cBgnZZc1UgTHcvb-232SR_3YaxuPjCsegvMoA6LL6bH2O7qQNNSEw-VmQ2l_cq904us0J01hX0b2bM7vfQjkG1BEN5w26YsMgvJChXOJ8TA_KCrYCeBkKWCUvNBSrYld9mnQThrvtoaSVR9tfRqU9qsdDijdwZjovbe3nFmYCE20ICxqBIrDx9ARUAVHzH-INxv0JrpiAv-I1JsLcNcPh6kd9W80IugMpZCUtPiwt-EpICVhDIxpSSd6X14w4zIuiF6NUv-0CZazailSRU78mV2plMfnGNnc1TFDchFmY89lh3eu7KbNnzIGhopKgdGS2QCMFpQvbWFHhEb-EC4TwJhorKIjKFYmyqj2rHmrRibiTJXJVeZtWrevYCQdK4Y1xblzmRQzvryZJlvdUkXxxQFYWpiX00zHmjETwX9m2EwHjCiD10PJyHsxdO5BMMUU3Sm8EFCczNOEeUoPOj4eYparp_uNqdvQiKd_gVh3F-w0LzTv8-eiAIBEIC0JQsycqcZH6sye0EgeyU4bcGjJI2eKVf6U50tF7uuKHUVnushlpL-dYVsV1QsCwVsHJfR0V8DRMOcYgfb88PZf7PF_aWg9620VDZSrbpu3KH1NO5QqSxC4mLkjbShDOJ0Eqh6625n8HHlJWhDszabTqJwBZo98pq9x9HehbFJbLiZLMKiDuuZvLHlbU-QMC9aaWzuQibXUz-0SEn7VEb7GB_q8q94-a0NWNh2mFKgvS8I0kE-Q_xG-kTA1ToF_ghfOWmiNWjKol4Umkj-QLdblDZDmUAWzsl4zkGY3OaFK4FNOptWL1SPutXNU2dgcxwrVFBYkHnRSUw4ACgx3sIHPqxZTVd4d5RdgPvxAnhXKz6wipjH8ha31x6zboss_VkYua_IrO-b5MZ3GauEDOSHxl_oezWUAoQt-4EtHYrDxsFVL8UlTtCSSOAE1Q_2EZKRLWXx2Eb9Ul_Ugz45vEXLAeoP3YFuOJiaDFBlcasSHiyaiCk8CJ344UlIu73Zv5wOeMQQwn4TSenE5Q5Q-UM92B4yX6p18xC6Jx80H5IKwldKUhXbMpTzHuO8O1lImYWzmdJvdwc7lve4p6bs3TgeSWS8HCM7ii9BDBfg-179Sh2bqIAG6-hYg_EyL7i_wOPBldXH4JHCbsZtwUesqHJHJPVVbOOBHfwB4AdZFeFPYj1KArcTJZe7UluGBQ4UhZvTVEeYH1UB4owUIN2t5InELSnwLiap6DGHOFOpicmVzrxBWho_dKc1mt_syeD_iH6NNngBFQxBA6rXuAIBTIGjDOtBxeRO3P8yW2mvZ9IbpJO25Afx8ACtbbIMOQgVAUVwxETzwWkmcYa6LriaLZfWyBYzh3Yn_zrHT7JMkephmpQzWLpWK9GinKWIuhigIHt-XUU1KdsTZfcW2S7MDdzb-TgXQ8mjSo9BO7-cewAGXtH3BL28gzCVEMWYOgm71wZbkbkSYvZRxENNvBH8d5gadxBeFf8aYdjWK2uACviML2W2VD4bdYTusTgGO5vgWUbEHDFcgPRTgUj9SUWDMXF9NqN-6hKpfsZyFLb8vx2Wc8kIk1ETwL_M8CZBvN1aZ6zuVo1Lo01ZLOO24QzkXKZXvVIuv9CBMT_2WORXyNbCYBcYAJ40-fErcs9xi2mZq3wZLhmsZvttMa-Yuh9eMHuftt_Ob6UgPOGfdHfpv9F2zRBoCbzrQJLZwwXNUZfL4xK0HGpC72jORVLX5kjKDNzldKqWORNXmWhH4bZMcObr6JAHPgn6IiMgi6igGY6Rq-IFAI2AtNfm2wpayXor-ZnvtqcKAN7Z7j2caMY6OnWOtYNykihz0Vx89idoe7tT23YUTet3JfUr0sbEBwC92enDqNHjQfmyZrkKS13Cv4iXYwQ-34OUt33204CtWiCtQDt9wTbFuTuZP8w6WM4eP27HNpYP5S2jAikk4tt9QGKhcuX28KdLKJRGXup5DrJignBHE3dtt7V4qx5zEUOIaa4RAODvzRYXDzA8oxqMD1hx27NWMWRRmrwJ1bH4xWtj4oRSYJuZkpPsHlJQ9DO9wpzJHk3BHci9-Obd4dosPcanxpvqQOPCbnxp_pwFfF9KPzKHeqykzwn2IyN7woiS6JZDwMLtT74aPaxZVlA9eFx7tMjRdEYjD1K-49phNQbhcatCDZ9-GoFzQoynbzVHrjTAmhu4j8KwmtDgCEHobNv5bbSYvaqWIQyLtil-kvy5awK3rZarYtybU3xbh5D4lqPd2qObHJRBC145MaOT8GxpAnCU9H39CK2D7I63c41-od5x8Yd20PgS4ORZawLNnNTiiBOFlTlG0SHfBQIHrrNfKpIqGdBHISoNcBx2FuCY7yaxJAltFgzc0u8s4-kZ3n20-WQ8-WUgnT8yblmG2iCFzaYAK6rcxZ8pFOHm_evBYr4SUCDxLE7P2wwKQDnzqhxOMnmLvbOEYBRugV1lPWxEUJ1I0dsNhbo1cCI6uhuvsa5tKrQ-mqc62kZs-MzYvIFI6hEi0JlFqIIIGu19T74Kcs4pLeodfKk_q7jVQ2u4u7RP2yCC5Vt-msHyJipd3frH221Hh18VD9LCXfCXp05Jvv9Fggf9ccYN1wNKcNTPHted6N0_7QfVBoHXvgt3asiGOfYuudOcOENYa0RNSRVTfnJMZsQv6plkKRMAWKOBD-e9vhZdkrpPYRyb4je0-2ZbzwxBWULOi7dRbbnGcXbELocrfHFg7D6ePwI8txT2JnCsKoNs4zhvGDULw2yUomf5Gsn901cohjhkVAfgWJ0NTKzZJlGeXPIARZjzv2mPlyaj44EGD3Et8j9XDuvtWJ6Iygq48IRgKqjTfCl3wiRM0hTPUfZst-UAbUMhs8Xtht4Ov8lVmVY1CnOq-MWq5DYUyW14nVg2wLUF4lP65bsXHRZIFwKh24g0C6VUJ18qI2-GL3jQ7nACZzLJwPjW3v4yPtvhS2CTXB6OrfxV-ENKqxRfiDc5H65D_mZBbbfDb5KERL-iZZb3z8zjgi6NuWGNs3HP9uHVBi9RoCEndGt7TfQiIkHzPvBH-qE-qowSIt39ZfSMfujDgNhIUGr41xD3a1BKlH8DTAhtoHC8dslC0w3riRYZhpoQfffipzSvBnj-klGpjfKhuW4WQP6hCIMw2fM2_Xi-mRld2g2G6IRpGznsT_rA5y8kQc47-k3Rx9JLBX3r7BgNsYHRA74lX-jURJk-k0UvjvwwnvFb9pOHQ-UcGOL69mX3-uaxByP6pwm9dprDXcY95VAx-EI-tCpn8piRXc51cNScYYqxRxq9EuOy3L6espohpkvrF-SsmQyEOMGspk4X_B_pYT20ThPwxis5FJRBQlgOnmHiiRGVNCLwES-1RMwMRHVA7e7RQNXKcX8eSVqDSbLPRPFebUfT18QpPoeyNE3HWo602t2eiiiD8mTXGpPE-lCvrGbC18l4cq8MqyYtcpmr7bTHZW4WGH338Kwyxj8kviRecKnM1JxdLvEGGyxToW4MWlxKR_2_QKQxTF_M8m6xxKYPjGtiiNV7wGT815NN3DxW_pv4IOnFUAnMnvYeShv9TPdnE27F8Q2Mgi2LEfvqqcIswT4kqmMq5S2xed9S4Xg9yTMkLok7hu9FWsTR9welW2Je6lXDRW_rBpYO_9iP-E6-Qdu7jX1O3lDATgnQ4Y_WQcIa3xBeQYGm5hMx5aDaUmLn-koSYzfyyOOqY3yWqpnm-FasliY2KnDuauCBvAAq1LlfKJ4ntBhSiXjsGadvERANfvoPlPAY7Fsqbv4s_Y2VD4aKkWeG4u90TOMts_52L_IGa8LVxbouF3bFWfz1Ao_dNO5V4ghp9Ki1FScIkh_1JWMiO2l2120H7GgkNMiZHTmCt5z-5u9Zz4AdD3UwmQ2_scQBvmNLfcBHXLhsRJf_rH-XhjL-o5P0NEbr3tpJwSomLn4Q4seZEf5hHwXjFapH_uD0rhGfwz7ypNK5wxVrDTTFj-00eTHirEm7o7TTXRtVmloBKmjVbHv-IW3YOr0VWcE77-uPqd7cOUSUYrmC4n4NjPvAiQ3He7gw6T7RJauUIsRH6MPa2P70JtP5RE4hADvBTlEIw7a0Vf7xPuryXEHmf0C6Qh78XExXUPpqwY6dOOjgIVYEly-tXOk-NTpwGEOuwLYd_2Loz4JOvuagHS9Q1g_YsjCJDU2HRDwH-so9sGkTPGoGBbYbVRjF5ksj7maJ-D-MD2IXiEqFTdydEpsXOAh0znVxSaBM8msT0YB8RgFOPfGeDEMO_ixFUm7ifnLE4j_YwwneGX-ojTY8Ld14a18YGXsxZVpUBQFgxF7YHBePBIA2NDLcpE5xVeCxOzjrwMfCTcTkzcSZ6L7NMCwgCjLPAcUDWYqlWjOZ53yAqDpUKgZI5gfAZ84HHNL3UcGjM8Z19Aho4KPPluuHH7Pj-BLKM_GxohEjPoX0nJOdyB4sbGcov7np1J_jMwnpYzt_xbGEVuTEG9C9Z1EDcUgPQjmtPhtL_49FTlo5p-_wPVKRAELmfRaQr0PcwkbsFO01H-N7hXX5zP2dSEkgA3aRZ72-JtFnuaKgdCGOlt8JuzHOKN5-cihBEvrkjiKN0ZEbFKscA18EFSRLVtr9I8JE_zxGGC7FpKTkD4Z9RWb_7A2nkFbht5HuD3HcBNnL1ECfCvQQgPnR_w2KhcceO2FkcmWlVmgtNqoS3zP51YHqpAxq8_hDwAS4MrfUFs_3136zmR9mZus6F6Qofp2EkZ7igcsj5KR_j8moRE7BVjDB_Qzp_dG5jX7rPsbDROSFgTwewgx1niXhZWNInR4QgGosUIWMF7HM1ixvU3UudE9Zvb6x3JWFlvTM5wXGe917YfAl68LOkdEuvT2keYKNUohjDxEx17tdBUOF0_VUYM44iIfPJpqhp2_a_naB8QcQEgBh-i4nFH_Ob09vT_5cwf5cb47kXcjvWmrvIs1Tf5HyE_4gh5sgxp4L_1bs-bQOunFU9FWuBhuUke6EJ9U6KA0gv03UsQ-Y0ael0bm4DlTEJ7vwu91Oh-0z6bKO80_m6ejv8FDwClpQEo5C4oESz2-lNdvoIBuoHQwZpEEWnQBEjcRbX-dd-B50UqmxaufZf4xh0I_u14fbR-aPGSpRGtrQNJrNx3YZZxAxSUMQ6CgyTQrBPqvZHlGGs-L8AYGEGPK1r285tpCcGxEv94r35S8O-YPXA_trCjdNxv8jhi6GU8UCsYxW2fFAtzE8LvpvTdfB6htUqC40M-5B8LOCJXyMLKWVfSn9tGnsfCNL8v-HOEgw3C_WtzF8tG--sw4HDlv14gd57fmn5rlm6bN2xjftJE-RcdOfcL9W6ieo_kkE3sl68Ol4mGt7kLi3pm-rnfcbLgfX40y_usOBht8-N77yb2WUPuZlDxuh3aWHxc8X2PR_y-xtLA2U_K2eqQ8LuGHb8nfxad_mwLz_NLVR_NMg6v4tT6KOI3VywYifHzMzT-xv3raw9_zvRI-TA"); let pr = []; while (true) { let m = r.RU(8); if (isNaN(m)) break; pr.push(m) } return new TextDecoder().decode(inflate(new Uint8Array(pr))).split(";") })()
|
|
|
|
//compressed json. (dictionaryBIG2.json)
|
|
let wordDictLarge = (() => { let r = new BB(); r.F(decodeSafe("4xZb9ulmjrzrsgDMNaokotVaJRv0F705opf9MF6X3TsOuAKpaf6vu3n_óVm2SkgABCEAMPm72WKzDdpxxvNdPSLput8yw62QXTqfaYG_nLpthyczSe9VZedodYcYD_wlF_30nn7yN9DrpXvKDzbT55N8D_C_r4_C_uvz_zfEfUd4zZbYbn_h0I-X75XzQL-Lmv3k76GzrDJ-Qg_V8RmXwv-W9xI1vi_Yq7B_hHwX_2wN8Te-Jnwfzc51Y-f-kx_6cZ-1S51yA-wW-2g3sZ8Gsc8J3VmwTfv_j83EfD7Dr6LS_w3KLT-fdf-_2zr6FoFLdTp5hb4Pr_x1mV8_ueDrólB8vuPzXixxh7Dt4paf-y_OWJHTrrnvC47tbZAL9HvRb5pXb7l9V8RNMzXR8Wvka1L46LsHmiNF-KMPnGWXTcTB7ILc5pLj3hXN81bfO-eW9PMWd27iFnltH7Tt5lx0cPeIxPOWtmGW5r_6-LYXgHFufvpHyy-S6eWb3dDLd7TelHbZrfXxzcaLsr4H1MszGH1z81XQ8Jf1MDmKT7jbDvGrrGL5yyds4-n_jDL0UqgNf9Rhty5uhXJ8yPkXrPGcFh_wpO-KMiNwp4ZmvA3D758vnrHZ--yVrjP502GPLgno586azwENgX92d2vRv5SbYAj_YH2C8nMWyOM41nMMFTYHZTfUpb38zH-axizrHlV8_hf6O-Qm_t-FNyfY8EdL-e5K56AXeSzZbMADp9Os5uebXnf5GW-RmHSxDZ8vhXh4IZa1P-6xgWIXO4gvo3-skdFU25xu20oMkmybYfoMWurjk9D4dQWWaprecGOC4uwLtw1l-_yRh_o4K-5WmsrsR4-CemxqOMMg9LewnD75S1e-Oe0XwvZ1YI2Ui9otc3D5K7yncqdP-exPaPPwGHr6zTlLfUyóetM6NF8-m4mSYAjfn9L_wl35lPPyjwu9OXrwCxl_1U3z5ynxc_dtsjd_FsB0Psp1KdkUbRv5X0nyC2jwKNOgiXfs7jTZ83TfvVnVlFd-dfugfU7EdfVOV_f-_c6Vdy23yXJ-mgXr-9luHP2nnzzNvxfc40ge-_5_3p8Sp0mx5jnra5ZA7SrDVvOHm3-Bpf_8XOPaL4MdJAfD8n0P04cM2lon79xqvw82GWNwTLcwc1rKeGz_iVuySP2VojwqntwDbPtMgvI-dw_tO-arHg_xTWD972eeMHv9LHuPLv4XL-ZlNhWf8_iO2umXen_Zv_eWfmvS2JE3yzD3f0CXcPKle4eHWgdP257y6FL6jADwh2Lv7PGfD6ThP1ZEowuFbzJYjvSHc43bf-meysF3AWvxKz94NiPnb4kgejw5qL-alvHvWgfvF8YulrrLcPGu_Q8F5d8xwYZtg_Heo9RaU-n_vdeqUu35Dg-JjgMjH-C6RoK8h2mwm9UbaZBLAhXk3lRH4ehP1c3sLebh1TAPwr1rD3nlHG879usPun_FvV1TfzHILCfAD2sWxKiI2r_DMDYaxfjLB7xO2M_xiobnHt8nSSW88n8AZzfwqDxH2hv6l6zJfjgxrCVPEe2HEqGEWfnhp3XsN4x3A3p7fz3mVvrsu3WD_R_HYh9ivVcmMzTf4Mxi2jgr29U4dc2-PqvR4UM_4xCSzr1vdPu401Hvp7Cc6m24b4jgOEbghLeh0RQdO640BRIhlOaf2-_enG_b43bTejjTcMiJXK4PJ_9e5w94NyxSxqtebVoS4aK84BvM4BpTOJbaH4pv7PST3HkTp4gMPHRP2RwB9Nk_9RaH78-Pp1ih3-5UhyVUmur7mFZ1dEAS7Y2rJ_BRsIYz3zzsYp-ZTNQyhDyOgCzhPZom889NsdWXlul4BQF9ffje_D0r4Yy98Gix643H-35vXp9nIau-9OQcoVXAtGnzGuYt6Q5b5AS4yy-Lubi1lMCE8yrE_HtNOseOOF5_Et-OcErdKc6oMjnu6npiydn4byvO8g7nrqFyVvw6EXvgfsarAYkjlSDeZY5A3vteuNmqIo4ekxb3pzRVsL23zX8pVtdl9yvDTR01kfj8-H_0Ph0E4bZcuuvNX8gYvp3yHxHglzIeHKjYxY98sp8JnnHlfR7_0RFPCthIKwpCjKuIvU7KEhtIXMwt1wiUHpD7F8WP33n25n7i_TyYDWR0epci3dY-GQ0u9dF4dXPw36Yl7zfGG5zt2_4DBxoZfPGlM8qsaYUI0Mjjto_E-b5W5Zcs5L7tHnph1KdCVPSva40b7YVhvDK2BiHtUBiLAlRMnLpdVjkUXzuEdi-BPQ7z99zT4MthrWyft16REB6zosEQf57XprbP89QwKMTNbFcJTUaDOf-589fsz-qYc4N-B-oRKr4b4n826-GRUx1l7VU7jOOd9PbIdwZg9e_Inpdz4QGQM97A-nP8Y6THyy62_4ZXm_0li-TY76F-ZWzCp3SegR47yH2gMBQbzjnz20x6CR1CHMh1zpvVFTFnFHeNEQ8odW7QBGf48Fjb-yvAxZ6IDcfCoTJzw_11GaTBjVeoGvfPICpCBTTbiKcI_sAfPLE_UiGs_DKhvxbbgfq52-sd8J7z5M8kqMH9pqTsc5rx4kXxsCnvkCeDeUmJ8GuWn_NpPz1xyev9mOV69vHTuOviIyOaP2xnP8vcjo8PgNfNX1-mfQw71XL7mnCg48C6Q69vLjXwPpFanxQC11sLYUMeCkdwQwNwV8E4EQCfO64_QC7RtlRdqBn5Xvs_xdzNxbBW8lV-Fgy49zpg0RMFGrRNGO-2fNqjYE62Wyni7HCUsOOS5-hF570osXxbLeuQmlVLLhMeock_Le3enuHevHH3rAyWdaYyBKfWAyxx9uTCJIGl8_XfK0uW-uOOdkdmu1UotXR4iZCP1diNgyBuHZ1GJQivJhtynVuiK57V2CKAL100_z_neeUJOkdAtadCB_34mwDnl2dc0GPJPK8DWu9vhH0BFm5ijXD0KoVxBVX_iA3YlkciJGimqP2I6UhPO1sx5WI5uYGmdX5OTHIQCW7jH5tnHvhHNtwcxQTBI-hIiuNoDEC9uICTBjnJc49XnAmQYt6ziIZxpClvEw1_bXcqgED5p_xvMvAZg6z0C82UYE-KyK-9-4d6b0L2XTlSBKP4aAbuwI5gbwH47Jt3ivvZm8EN7UuhYFkpWjFQS7xwKBgCXZ87H4Xpx0FG3EPRKxZ9NMdmex3LJKLXDABaQX4ocEeBoFybCxnUaZYFsgvppjMmJ9CjRusrXB16v9z4VN3IOgjvB5ghWPR4-zUOF5enpCcNNk4zMdJRuDQ1av9Em-3zUbCauKvHOIBSHH2Wy2NFAUw0zCQ74vl2d60_6R6LlFHmp7b3Y5VCrpJYZBr38-alcIcAwEn92wfFvhyq7DA3_gwPw5nlG-_zYSwHxzizdfwPMNIEMjquCEGM1ó0hvAs6ucff6gQYDAtm4ITLoGQ871kS8a2jMjJJXRAWOBgRuxqJl4AEKt1MNRYAe8TGniqwmh9Y_N8YbYzPWYM6Z_O0zMn2WOAvh_TYVfYLBzC89rgV7y9cihYz_D_piKjO4Bt6sTurRYa4LazwKxna-t2bhtbZdrC76GcljkJwp8VSa1W6GCH1H0B9PBk2eE4sw34TC2HwUq0VSoxD33XOtrJtZbCyZLjKHsjEhmxKrduSneOWP_JvSfsSybnr7OAhpCuLoheDnMEKEF-9kMcFuAGSDbn0w1y4TBIa5k9Rqv8pSqTASgpFMwo71THiq9ht7anSnjSHhtJyY8VG-JuPC77zgOTtEoVQGkgyRgzVfkpXpugKOlojxRjnMdM9ASdWoHA8b8fUkXR418dAONt0WId_MMelh2DK6gFC9nXZobvlUZPz4R4vts-1kgvSCm5XdQOL-UuHcZarO45DOAiwhcdCnt4a_1w94cE8Rx40Mkz66_kCt4Wc7BPpo_tW8q8OPMaCdvsfp4RZsa-u0Vf3T4v-w_ylkNuUJD7BDRYuPY6uMsE86jof6TxkW5vBEoOfGnmeIrMmJKeWxu-tBm4w_cWhAfSAcb-14XuTP996Z60rw7c8Zyc3qkI5qXMijqCy5BRY49mruT0KZJoL8GJff7gH429l14dXpMMtH_bKWVe7FhQxStcNqt3xq0itOmxjcdlXfKHkOiXHGcYfEvh6bPIS_Cr73yD2jyBUVConMe8uCsD7YVa5EB8TXSEI-USOmDjFCXkh_M-uWpvI7ns02oSZUpDmvcGDHVbzx73J9BmskjoFeNToHJrV8U1mS2IzqJ0c50w4_UeqhNBNOdhKxD0MHeG-f-_clhwZE_Yh_okr6yxCjesXOq82FW_30mE2NrhLODBJOWfPsYjHC6r0d5fTowPN0cdUiwT89-8fb4fqk5RORB3eE4Y93L4U6vKi3D8vvNTDRd4EDaFVLDmez3mj_T5q9NZhapGqsFgvGqOiJf2RhU46CSmtjI4hz9h5TXtR0C6HuGAig6y0ndkq2CP0Mt08P1O1RlJDm848lsFiUbJ9fs0fbfHxe-dR15RZODwk4BovMiniLpDzyU2hsOHmFfCNH4y3sLM6WFA5REvSHA5dFEkZaD2ckOQ-st5MRZuDP0m-_QVx_U25m_psin80zPaE6k-xjKb-e4s0ORGF-f5axTR6oERTa2MUsF1LxEbE0oS-kxBxrF6NSYn1F6SVBvQwJXQuWr4r1DsZs8Jzlmu9XfRSaz9PzkJ28N9Rj4J5AT4JKXCUnWH5w3XaZafpXQjjKe4CecxcBfp5ZkE04b82lwrgADebYkL8IQcbN-toiB_N4_NdpOXyXSUN04o9thaZ0PJ4Dvps4bL44VCvHKGxxWyR1Ycpo_naeOzi4UTSn1vP25w_3j9gPrGsaIDElkTwXWROT0DaljWs82NmmOMKwa4l8qPiCepgFkNlUfwayqpLdIY0mrRt55fIwlrkkfpyM835kI6c_BP7fNGWYVVrhxLXuqzzcLXZH38_hPA7qMVfTnU1g8adBQRqMJRI3DrRszrF0EPoD0oiHu7YcmfpfeFSX7cRNiPLRlCMnYSsDr0PQzZyXVONrK74apdaOzxG_YAjKAIo47dXYMFvPMGFAnMG6bIqqIxadU2PHSSAA6qE9vewM1BP7muCJXCHr4i6QIWbca4dYiFpZ4nt95zSnfh7aTm0ZtMl5SS46zhbj1Kk008RRWoBLrhvfQhL6UV-N3zXgUHrOGP49y-birK87gUem_kRKtPMZojH1T5055FCxlDyV7GZwPoY3a-o2Ur0hpJjrec-we7iidkKUswCOYHyf06f0VL4Yt2E91L2thTc5Rq_NTTF4Own0jD2yPZPjGsAs3Bwp8vp73rPOEJ_MQGWfTPxPidwd-BaGoSjHlvgHm2P43-St16Dv_rXOMR8ECxJdBN8P8Stfk9wYgOScL7fM-yR728B3147B-iNCyrId9RGesz88wnOcSbKSeMc7IE3iKq_XpPlmvWcyN9HUFrDJF1h1dRwkeFUFU2EmrXXCGh42HI8-AArAnW_sFaCTeez50cVGCnAdDXNx3Pd47kb8T9BeU5D5iKH4Dq8aUrD1RFOPzu2OHI0xIbzDQWRS4iNe9vQQOHWIYnr8bNe6-8NdA-QkRmNVWsU8SlfCM52TRFXG-xazfGIgEdy6iiuc5PNhlE2MLvYfklVYU4db89UahfE5P4MnAfMLqWVumJhfxBMiuTXnwt7rLvPESRswfW4Baw-mlw6jzTXGsdRlMuEyxklawUhucOsD4Z7DXaHSdLOnWpoWJFDTK4Gnh3pLg9Q7ZRVRIxBd5LMtO-PSBsv5frQvfPjs-wiwH4eRelPJGj-4xh3nr3xnYA93o0q5dwk0lklIxaV8bVhOUPBH2B-95QRK83pfgxFcOb3w_WQEy5BGugUQCZSGdS4UvOFg2VJXdBzXUSg9pD9ASoZVuKZVSr_LnYl5O3xBQtNWxUvdtsduyxRut1Vna1nVd5iUN1b6h3l_V5frUXnIJJHLpSXC5lOhsIHPIiGLIVQWn54ZqmZUPn9-c-zNc6sXCDkkoMyHalJxDivKIRkJ5nWjDgtk4mHRmXl2DoL29Uu7QfHXkc5-MOisleKUnyIfV_w9N3QCjPqrBCzXX4i2sX9agRaus_QbnEMqre_PrVG9H89FA4MsFrOdPPOAeorxAFwCxBcDBlaMhr9edDGF8QbLJnDfAXqy_anEsU6NLFE5s-NLipSS56PmYHZ-omw4MXf435O_NqZliQEnxFOSrIof4go3GXE54EM-eKH-417zEsLJqTVYjX72G1yW6UOniOWLwh55BClXfA3By2-hoobXVJXNqpoxyOHuVJEIHVWJKj96BoxT9YIvyvOj1ncC3DniVA2yBprKv2kqqCj_sPWFPXCxvqGFE1ZmJpW23Oy_pytmqkbQ0dNZI5dx_n6TDeKMb2bV3TDvjKcTyxfxq6lmvkvwbBWglqaWLvncbKXn45PLK44HNpvLwHc6P4trWgB6xomAFDpaPBbtLYXsPRLv0ySADf9MJygecJspFCSrK64e699JrINQEvk6qO7wR0AFyxp-qSli6cl-3Urk3l1pj1gj_FbJaZZuVDGpc_FTJH-rlcUS8w8F6kSdV_O1SrKrXCbs6p4s4-V1az_sk_0l62eRXBEB5rzKrj30TOPfk1RkKlnh2hVasAE2lisFaoMilU5ad9yWvdevfhw97nClXHzuzjNqq1DvOkCJQ3Cn5w3CdOwYrHZsYm4iCR1yHmpJsVMsdu17vnp9z1aVNwQT5OrNiCW195n8RxqOEu-ZRmnVGdWfLVxL88BMVkQl962CdNI3TVxQUTgasMckVw78WV7hKxT-oKe-bP4GZ18IVf5gFywhe1DfIBQmTAtHoo9h22xSpf7xAy5Gn6Jffw11j0NnlzeVXfsSpHa2Nqa7wfnv2E1WUpNAq-A3b_wJ5IrV0-HQ22C7gDhmb8OFxdnMYBynBJHs_n_fUfAU3vbYpGuQiIiAXLanzUryGXiVAi7XPXvKO-cURZ6XpaXKJHLYaMxx7mgH678Y7-U8mcvPigF1kKtR0Y1MoO3gy_yDaH6ulcJU-eJZTdWNEBfFv_-sjUFUMd70R6B9s27NWF_Evpp3J89ULzHLaarf-u0iAMY_IJxMda8MUNS7hFqEaFlWx6Y6d-RZUnzmJ4W8fQtPcBAHJRBxznPr-8YpfRhUJfpEU0QsdXruGOpcRvTllGx-4DxbZoCsbJxBmCmcnkIqAqZGDMVrairtUfY9d6SC7bTvqUYwkdnrVzsIeLXcpxI8pn3cdWbIM5UVF4DzVOgdlh3OKeBC-skrPo3QUhL5VQdaIaCY9raVhwkrc9-Ec6564NHlUEfXvgf1t0kryFCGdvyZwI-HgXEE7i2_DLn9fSqnFe1QvlObPMXEUhxWiliFQdqqlmb4JABpo8DzN_j6i3kfwC8WOyXha0ZVaZyd1JhIKHhwVRq7ZNJDDhMiuiP5nK8B_DXq_1akGKrx-RaoIXLE-ma8tu3RR92eSFMlTCdfSvk1kaTU7AXqOBMlBCxM5udxNRC1FM7UAGr-QcvrbeXAu-ktjinvca7cYkyqhtfUHC87gQgB6HWbxNqjqVjLCeiLsOWruteyCkM1sc61hzX5grSrrzHL8HU7zitITNB-XUAuW6GuqI5ogRWCrnkBI-Nr_YnkQyzpRdwCxRRb-WD6bjwdqt5UbORYB3Gyj9hwTq8MEqYQiYoK8C9sxl3jiJvPzObIqiIewOrEyRgBaxzF8uHjU2AXFQg8rXFLlbOIWzqxAheZN_P5xqTuR-yHkRfAwWFjx16xCx4DA5d0YDCerEYrxTC3i7VEGu8YH6i9RVyzEFMjHFA4mVjGVFmdVOia5lQu8HgQnWhRvCQyP-ktRhIQgH746moKp6D5sGgiZ6t9DBTeyUILCN_0qmY70OC50JP5KbV-ZXDpTECVZWwyZOfi-p-UfQWDfCoM3PAketvqOqH1A_xOrRms4_HFaKI-um7HtxCN_LvoTozWJyvZH0rE1ru5Ujqs6b5LKNINC4Wt-pjtx1mpvNvctscfb-BOkW5G2oZVCY_SEINw5tUS9dhP-uS4frmLfu-gioMMXa_EgsLmHxvW0gH1vUxa-F9LcpDtClvm_d3xGTrPZeT5PJpF6uD5rS-MH2i-SAY3lXN4zWmlDHlQmJcb4gqy6plJcUVVqUMexSSYBoupNr58-CVVKeUCt_wM8PMxIA7IMc-i_6_Jjd-KgN4qaK4pxoWq0UmMFSfqWALndqkY7ZQ8Hjg4RaE-B9xOxpxO-I5Uklo9YIHyMQNFomKQh_Xv2i4F6qcryi5Fdw6sUon8uvX71tqk1iVnWueaWedeSD9D-DoXJxGv2SBxBPS94wI87FH_u0xRdmj9BnhyZucIhc-Lb6goj7_vq79RPs4NMkYS0RXXFW4VpDetXAu0fIX6yq_Rz-NZsXUtcv0ZUXZO-kLSRO1QlD4zy7IHr0MfaK63q_V7rR_OcWz-cV9sK-VgLTporQRRd7OkkSVAavPVqd06nNX7X0rdPIwS9SYDgl1V-N4W3ceJw2JYz6z8Ud0rXd21My8Gj_7zSUqnz2juWJt8MvpPro-KpuhaY1tBveS1CVrbzY6bFR4FU-XqzyqLQG-__1rhDfNd7bXkeX-qyGofv_yDs9KZIzTVtrjuh4_q9Mjy7Gh4-Lak4Ak8_70cJhAndp3-2RARVAmc9I8JDEmbR_dx4IPkq20a1Rfsds3Vuo-YF6p8qm2sSEr2XDTnkCWpJWnjmdNYoLhWGZb4obtEh4_ze37qoPp6NJ7xrHZZRcQcRe2S7rómcpvPsdojghIV7jnSaLdRurkB3Kst__tN7FGFJ5QCVLkjgqvssTO6jDcEqaPftzTY--8X8fCEBb7L6q_aHudVuaNWP08hLJ2BSxeqaS0FWxZ47Tt-eNnfgE_dFGxRBTu2hENpb3ZdR53XzKhJnq5-cfRFbZb1-KqC86oXZUCwIfmgMozO8u5qETP4gzUKa5QK-WpM_8zGtEql_EZ3-b95vP3dkrcF_pQqnPPrd0bgLrX5-WFv6im3P6zQy4jKeOLm4AOPGIE4eXlJWeGBY6V4jYqH89oeJhIUlSgrCocnA_XwmT-0-3YMXrKUCYreU6DdGJeig7FXUóXcm-bNArqTJy_-sXFrtqeg0sLkkIxb5ed84UBj0X2OE6WPLzwaFRTo8KlxHZHynBflEpIirs6ZN6b8Uepavur6T4SvO0ctHPu0XvKGM7cidlEaNH_8JXPVBUY5WjYKj52qPtvsFOr11i_9x_trGS4T7on7IKl31UGYKF1398Ppjf-a38ZdlRXAOjn88jUVHLH-kpfvj-RV92B1j4uUMRXnO0e39OFMkmvH9BXapOjGKz_EyTrhHpE6_y4ZmfVBaUU_pdKoZhW_sm4VEonyC08mu-Aw6o6dwzGs9iOvgJRcWWKJHra8uLif_6U5QVTcMdGvw5FfU-DxU-Y7ObjNKnzjCnpzyv-6OiuXYVcB6_2U9eOEdKIjbWWcxkXGqk_VR9wEGxnxHK6oN1fi_j8elAw_HBu2AYhbj5a2qhkY15dsS0GYYUbBxWEa9iw1v2qG5mavdJ7Ng6npN_2ihi1bdNoX2Snn-w33WqYhS3udwTcVkJEE6jv94UCOlPnjKntbR-3dKE0D9v1llPfyvyQt32dqDYvbD-AmD_wBuUG7b7kVEO8FqnLyX0x31e6MtNxJeBC41Zm7jYTkIp71YH1yjFi77sXfD8Y0-kqCCfbD7TNPwO1YsvfIyI47yEb1WUVCs8Rqx9LSGuRapl-DuOiOVLTtH-8isgPeOvlW7qVw10PHxIiDXx5IFAQKRAx4q5odd-MERsCOXrRjZxWvX2O1jmw9a_n-BQ7Lh81Gk2E8Onbxj-Soe5rdZbDT1faQdv3hmWcJecBwcrGBAcJW-IF_6w_Dxxeq2V5BVx9zvZtG6O7PbxwgwLBTCrzA7HOivc20FNX7ftD5uopoTV-_XEA7ZFRvkcUDd6cPaslj-_uJ5kmFGuj8hb-kkvotwCF2ukyLm43ujfdRgkHJxeVkDqrX-uV7q7qcaOZ0glIfdMz-ONKGksdF9sBc0_lU9omH5jJw0FB2CTsujKYVRNuGBsqN6m6WWK5YibLsWKHlegFg-e126o5crQ9tllkzBXoElXWzkRw-6RWrM0DdLJQUdRD2EkGJX5Mbita_cC4RI8-SjFZv8X0CnNB0UAyLHeyuMODYy573fwa32igOkTzQrPpd2cTMa3EQIxywBDvxQSWe-HowhnCmrJEujB5uxzxqNR2HIrVEK-F11qO3uYgLH6K15nGdhmT7WS15o-Sw58Q2zdqLa-mswK0LBl9BN2R7LG52U35vU00qnvqS-HcO7dELh1Et8IJytU_crEXBooUfs-aMOkT8D2wJSjABubA_qKBbTrIfyWsJfM8sYNXO1ByBXlfPsz8hsKavL6nKC0ENPUQTFhOzQgjhoglSXVhiPqMGZW0c_9QCZk6-7AR__I_E5bJg5fKCX9JcI4OpmdHv9QomVX8Y57HAEz8lUd-JMECzkXqnnL1m8gCryqUMGMAuJKMG4VXPWrQeFBiNbLPSjEo4hXEL6gYftBc2UGHl36C5VEvaAfNftdUJxb2VRMbwC9kN0Xd3GC7qhhzDAqMQTIb3jYg8totayFbAej9o9NIDRPyXDN42MaYLE5Q_ZJQqYFJhaqP1clvUF2MYVT6kWfbPIVuCRmZTcqQVLbNtBIcG1RNQVCchafFA0zxOzFNzWt1PZBza67YAkciDa7cDgNfwcJSITmh7Bj0-v1K7qzN0SM9i87GnmS2msyrCehUx6T1MzVP37u7Ka--mL9P45Yapp2pGOZ6HI5Shh-ccM0mmfSl0252BLKCMrUbb4aT_cfgJRzFlKau0kJHwXUsvU-MkCIUOIh0nRtlaFIljT3S49VKYrawnIpKLsyLhL-yqk8y5Acg55vmpK3PR4ddgW1cZ0dQb67zRsQ1M0xBS6wTqsOfkqF7XY2R9rTHZuqeok8WrDDF4q--hMMASP14HVk96QWtL8cT31fOb86ErmRhs1Jrq6RuKHbpfnoVGU2J_vJo-isYFUxxkyMvOVQEgqjyieK6IEYlWkTVGUjTA1EQ5hstaR5auMFdOnNdMpivveI8D-rw1ZfcscZaC6WS3dfsU8bV5HBtvHtcphdYySGKHzHJ1F2iOLSy799sKULAE9R7xqgNfg9lb4xqj0jaT4Hd3BfaAdU7HIAQtYB_rgwYdPfkd5FwTK0MStV4Uoj_asbCRK25lD1i4wRBINtuniKzADDLqhNYYzw7hDkfrU7FZEcobJ2wOzb3LANDOOV2HWfHCE9-dX_4DIV_joNPe0ZojTmZbFUNFNdc_XgOC-NJAjDghBtgVRsKmT6ZtqzkxYAeCYaXC4XWpii5vW2umYJb9xp4ZzNR3HLLK-FTbmnXago6TmbdnYa9cmSA-KsqnFADXd8O34HdLffFAOd7WXqTH0qq7Vb7HwZWc9UZLB2rJ2zl52Hdxf1SN01qqD7gCUVhJxmMhr9zzMfvpU3SxoguRxs-RPkWKodMZvLN2Rfu7sN76J_iM-GibfMMPKHtHy5sc7EKhn3Udp_tKd06bqqDK6E2prf8tZwe1BpAyrZ8rpmCWxVGkjBWIJ4Kwaw88Y1hRC4fU5GlCRTW6ynqU6d9LWDsz_o8Y4-2-kn5IEm7bTo8h4XmOB7p489hIZPHslaomQWhIf_ljy2EV4rycyY-Ix3o1DixPgQgEU5ht7LaU5s8jChHb3JEauii3KzYM_VISNEy3mnVdAwq1oUL_fb-BSthjuxKBJwPTT52FtjS2a2ErAuMf8Jjk4RS97SNM5jarce05VNp7nEaXOcVE1t0DgJu70yTsSH-iEeE8hVM18Vuf0ag1hppbJAlGEnjCqTDkcNYPjR32um0de6DJFqs-JxRQ0RJB_aJkYnY1UotUDqNGWu7iULEwQ3lctVxrNV-LN1qef-TWe9VO-tVY68hMt8MEUkRmfJRX3CHRaFiKW7g9Szh5u1f7oVo3tPqpciAlZGVH6y5bTóMtrYcOWLE1-xk_aPT_leKFS08EZPMldr1dS_6lpvo8cFDOpN3iSGKx-xUFQzhFVJwQNcUR7F9wSMiHnLq6FSBAPHhts52S3RCEIx8Ltx4-ft5nuCFAnBOk0vGHcaJ-KARhi9EGQP5cL9f2hItkEmfov335Lt2aj7nrBGH6-wyo9B3c2h3qmbRJPHT7wiqPpJn0BShoG2c8qAARLHOoVZ4WdL1922B2zFnmy4E7Qejo4Xvq19jKDd0aiMvY4Y6eOKfOsso2Y6LO9hgIZ_DEursuw3P6cGxc_DKTd8_Z_ORjTgjXVzTuST0k5lYe4J8DSRYRQN_5zQznS8DplgtQqK4VLSfn7khoIR8S9nepnOrnh-9YYBcV98ndubNk_FJMVVaFOnUuBMX5fRI6F27r9lxYc-SAyLBbSu2bWhXYLu8aTM7e0RYf3vXomGZq9DPxPi6EXhX9ucgcMQmFu6Kf8EgNBbDbn7yhI1UpkuTV0kIN04NW_AaxoJeucijH6USJvCQxsOaHdRWIbMHJDZ1tU7lSYmGcNe0AcKptfrRnwjt2QaCparvC4dedikN2wpoVw80DzQyWlWIzzsq9akcFTqRjOSawIZrYZdM0W61hXWqvDhowIv7Vtv4UPdhyIHDS_tHNGingjvPknqo1IqjwpCGO0UAHiCEyRIRrx9-ha_nGMgF8VTAWby5fzNpGWhe6_2HeVHNJmDaAPj1hLCrGSu5ElbtKJXalimkqeJr46ZbOYdCY2hjBhs9vuWut5pn21hvRrOmncOJXqEgMLO6uvozWr1FRIOd0OXNDCopWrzDFDkr1MJa20h_te8Nr15HMMhqVj4k_7jaZFVxGo6c9kENffkut7TfPygOfWZxa9zPptLbCHdIGZPeT1Dt2u-kl_xelEd99d5I5yQLI3oyLO1PwB_2RY-ITPp9hvnM23oSP8RKUoOt4qBlVSp1OEoFBUnnPYZS-rkFBSbuqnIO5kvzy6tUtDMKL2GUuqZUFtdMlg6glhm2DhKqbwO_ydxt0hiJPHaCcCDwwBb5Tt4cOWbqiBNaVkCrUu6KI2IGHECr61-iDMckjRFMrS9OYQ7oCoH1pKXZ-nRFjaWmrq4J82tXBi0hzhik3Rrt9T9RfsTv4KnvCoiNnNlTla6tmvijLa58RV_MiaWzrXEtJVfZuHOUEiB4rGfaYO4gYOP2c2OzJEF770xw5BBS_w9jJ2-PPr5azAohKsw3rmoaaU5HU7ikgPKtRk9YULLTIKeOFp45j698tS1gb8HiALfkhonYoA-r-8weA8ZNUOGN7j1cEuO4qcl8iRbVtEHHVYU2GRPtwx4SPt6-oB5IPLMZbOTvpnFq1cj5fHtp07mqPosiZMv0Lea8o5KOVfqqoaYtjknWdFS4bEwH8sx8lrz-1RjWtXTd7KuKrxmTVzQVjJUuNKP42IXYrUErEzW3dj3GddQ_kbjpg5poTFHAUAnnCVviMw7We8Hx1qs7m1ANsr33fUuoPOV2WlUduDy5CnYLJSOTfKCpnEXdVOqGUkyO3TrgNj9DnwVt_zsDKXo-nV-pKThhY4wRQqiIxDdNwfjSn7nPW7PP2xaxKwWB-vonm7zqKynTd0IW289zK8W5HHfexsLGfvj6Cx4LjmOWJAdQ83HNxmEN9SdCKD7PPHuz4vjrGC2f1_C8DdMF0PUJy3mzppeHwhuMwIYRMlIit92Gnzf7mtRtaGsYpLp7c1IhDol778fFBGbzq7smSVd98qOVh_9Va-a9CZiP5UMvdO0SWzlhLCpFTZ8x6pqp4A7KonW1ASa-s0s27DgROVJxvjYLHHtVMyMm9BxijkMiUXi5rsoOAHXG_-hQF_M8cw6i_QKvBdZLa_YNq-q0hYH-obOVwZUgIdCVTCaZ7WLML2BJcy5-z5Pdgy4_0q2YtJmNIY-MX128xOd_hSVxpxvvqJtR4hzFW0oPVlTOB3zuQoBgHVCMe22TFiKrKIjQmCNefhN-UM_2nqNyxlKVbw9W_SBWloKCrTN_k_IlX5Yj2r3pqbjWKgahrOCIbuM1emrZjgjfkOv5sz0li-mzbKlsYqxQ4ZEiHqQRpZZrldVyDmQ54ws2TiYlkF3e7xUjrwEjYblzZ0mvjkR4sSxJ4pxC3iG8pm-Xqn2qAkrq3jEfHRI4qh1khvtTMbZl2jyqxuQRnoeF95bv0EhViaMFfEXy1--9UvrvROwipoGKW3qWnqTIj8ISGTUHDUkhXUyq8Wbp80MLDM98a3Y9RQ4aqO8SmGG_k2fmFvTZnKj67J-HROsljp9hHIiyypS3TtrHE-K_EUbhrcQnkwPTW1mRuAayvzjbzVen2XYs7ZSD0DEVzIKmiKrxJjlHpH8z7QnyN1RRHFtwEDiSves7cU5sfdoqJVQCtXK0cPodKjkU7vfV5hLDKmvNnTPDrMmqm4i93DdQqCco8Zqqoi-SyvXwJttKHrs6cPKfMuzI2IJxR30S88BDQCoyIuwh-9qzLaeSO03duiAQR1O8xWnL_hWljKGP8yxPqdQSzp-UbTVid6Kpx6Kp87KVXvtvULKswItohpnn7bWnIB-vIvsHcxS_G_oZpHprhYw9fXZRFBdJ1UvNI-qIE2Tt15s_vuFd2o1jsQwDzWqMAVgvgeIA96BLCoyw4pUMtwC8gOF0EVu8h8F_I9H79fl4cFpKWX-2J6ZWHJ_MYTBeBq32Cf0EQxcfV2K4f9FePYyGa1Qj1A6FgZ8trokHtAG29rVf5LV3ki27K9OeyzNj1OWbBVS54qQkxJb6f7IKwxwl47R21yHxNbdOcUHlqHptmcoUGPe3q9YgQHivtYaVV7Z9PZdLZURlGZLy3X8x-9RZlaYAfWjw0-U5X1fDVMoXhnVAJYkypY7ck2S7ZOuQWfIUpGv77hloKwRBqi8eSiOBhU-VpMSKlG85chauqByJHzD5pt5nF3WfU0Osbzgr99JdC1xjo64NGuaHOKpP17Szjsji5CRBLV-3IyE5dtWlyz_Wt_SNfeGFktDyHq-OHqLRIGH4RRZxusPjnCmrmYjv6BZ29jSo0VrtSs24288lnm7UXVRBQ_OH8Mu7hlTmTRuPMqv0TGwGGkvn-jp8NHctq-lizUhxMWXg15HkAkwcVzc15VIMIaAbza3K0X69FO4CBLoWzVqMVqvu81xo6Fq6DV6mN6Gdq9vSRiyP1E9iJpWqOa2MfJfSqwU1WGO4KA2aWd4elkEFUrJiGUzsakP2VvUWarCWJkJE5lkt2LM2W9whxcpdQ2J7xz6cfPkWQjGZLubEMzJcP_unIdMmX5lL8jHDA8p_OH2wIDpkmjDmKMXuKPL4R8NG4D-_wOKQVMF4xFDBHfbR3aE4mKhXPPfDWq1dwlnVO9Elf53B-ey6J_db1dwwNSAfoXj1GNAP9uPx5k3Eup08nHDu4yYDLxcsH6eI1fadpyRkRzxQo1MZJGboHdPSmupknOYLb5SpmNXL7jHzkp9gO8bBCeNeyFvebwg0fK6UccvwIhywIOGNM-eP1ScoSGa3XiBAERX358GtsB6je3_usErNQ7lppnyFXTHEyC6dTruhtPMf5iHM4ik6W20r7S9XVShG1bKq2h6ZrqiJ8WMp7aG48JkX3NOg2WoXgYCbpy0uP-yXFbuDzoVsOnzzCqXzPVley-Yzpnss9VVf7-HQZ9ueUXYKxv8aan-SibtoRrYGOnXgn1HMbSqfaKlFL9u2imSuLnyijCMizyddqwV0Xd9wkiId_4saV9caHctcQ176h8y4xXZR8Qqv0jaY2X63u5ZJATflrQZP8QYWHu8gnqPsbAbWUznIC2SUiZdb0oxVKyDNqzL9fBD090BXkfjxjkRbidAZFfO9_SZ2QFEnNOnvsh8ZxeO8utDXltOb2-rMGyuhpL3XcnczeHzxLXq962sq65Y-Qtzfr6gXFqe2Eij3tuYoTz8ecJio_3grFGBHvf96Kvbfxfv0bxefOkRqs10Ef4S1ld9K7cVOTRVZg15S7w2StndUP40Q1YEK11VTSnfJlayiYE5I3mXurLxA63G2QEWqYeaKJpwxCN9gD1Jh8QzZZfiHxm8ZGatYvjq8M-celxLjCXTEIVYsgn_IPU3ZGe119nSWZWDPad1-aUxUIAPXPg9oFJE2MmE0BWezyZUxc4ygjvlhcz_KCX7ZIGYha1Q0hp1ZJbxYsINo7_K31hq0eaaq6unkTjysykjZjRl3H1As6lqLGWBdPEHZ22QM9KVk4bPENoHGj4CVJDA3t3JbyYPKkiz3-Fe1M1h40YrajekKRSqrN1h79oZKqevAtV2--KbdqBjNOOBJFGSqtS6AKzmyoJxNYnhYuCuCkAVPx_x8f3J3DObs1cVQ0snAgD2f2JHeCtUPLc2t0wi9-Mmul-qz0wr07amrVBbtm6UDg7R9nHuA3JjmjIhhjxwF5lqif5Rm6jjx9Jpp4ZJveMZmy1-v2drSe5dZY58KhsKp5L87SsyIrE5ZY-YITkdORmHdAxDm2KvWzv7-LuHa98gjUvIDakK0Y-SkrYMxXQ7QPHa3hMm5JqS1Hr7WT_bUVl1thoHXb0cwzCbi5Ch_7QnbJyq2L6YVy7AGYhyBjqptuVrmBFes5GmyhJG5KTRXO5fu6dRr8PPx89jTFTryz6aXh2QaC7RE3rzlPu3PoxvZsWXAT8t_oXxz16ArmJv8U3xQRjEQ10o5TCbmO5hbql7WsqarEo5Z3Di38572TIvvqsOwW_Qkvk3Mm_mRDLmcJVdNswci2iatujSfiUyJPYvM-XrHuDxP2ccpjRIgvCeDe76r75JKzEuzFeU178EBHNgYfO3G9FqU0BTSXvL1hiCAvN4pqzNgfeXaJFPfXrRV3R7yy4mu8VVR4EivqTK8ldsY-Qj81DBdq-he-wVl9IZnWrGOhlAFBBycIimqswhLod2_CJdfbqZ1reBrDnZ4wNfo2AmFT06G1WCBeImy-gQtrqSdRCgrMWnrvYyQyBs-FVxR39vhOpZlUYejaaeVv1iz1JF63qe3ClSyyPWlHsV3KDcwYiXuPwMpbFOKCEjNqQSikOX1lAwqX55XhFIBN-jbDb4Ph8tNfo5VFRvqwhjaKpG7IoFYZOqS3ZLqtGzp8A46i6STg3Uj87fSvYf_Un6HLkKBxl1NfhFINsENeQVOX5jóGeaRG0G-GBoR0b1r9JYWgs514lDHhbZ7EremJzTostT7LN6uzroOjlDtYWwwxhDxgbKG4et64DXvD6mo2TmR9DnPuKAinQFiPqgWM7n50aDx2glo1-cRpaF3pYVpTGQxknyjbyj4GYzjUIJ6tIb_Sl6DRmj0OnYhp8yJcUVHRMStIBXuqh0rz3ItS3hq0Cv_YQMXRWYpRIGr-wrgJWuB4n8r8AJMRsBbYjzb2l6Kb6fyCaIkcLrHU9M4imUAsMTVdU9N6ZPeQTP0yvt4Vwz8zn2bDtdNl_7WsT1eDBPhc6vDMBPHT4cYSlH60Bin7MRNLcsB3BMSpeNHjJARjal9NBaR3rOM2y9EWvkQyIM1unx0mZQ0GGKuyMRgQ1v1lKKW6WObLpgpcXxzcNlkqHp366fkCxbdL0FQZxlV8q2zc3sZ7Qy8oAoy-bDvgYJobxzvu5bj0VZaPmhwWb8HHzdQJ7Iy8AoyOEZ6t9I5wL15_O91ZitPuWPosDVyMay6bdVk9jKT-blfO6Bsf43qpFxm_kjqBNNdyiX-a3PF92Q4JREWyHwYWPEDsy0Yw3SdqiAwldlJbbUbW6XD6y714DCIr-kCjUNaqan1NtDwWBsBrPTRjrxJ9tGiD81BLgPjM-FKYBsjxXC2yIx2fG80D5VqKaPNSFIPVfZPPOt6BZgapujDju8nbkJpRVQqZWYoomNtZOpQFpGSpc1yEyUiye-yd3HZC_Y9OrADiaU1G0Kqhe_Cli5qIvo4yl4Ou82o7fxGytzXVvrYGNzyk_w1NcJc6Jza6oOY1nJlssuf0CMikdOOFIeM6rblbcPobZm1loMWj4Bp1feLTk-YhIx-ASQIGm_xJ_5rGI4W21hQtRGALhdOLOMtGO652RMPF0LIdv7bg3iaZdHUIxKxusId-JJFpMhjuI6YQ0SOdtLuNdnfyH1hXqx-coWGpWjbFiji-6k1rr4TaTO92Yt3pqNBS3eHKxPq04FAH5NCu1UVp3ErKg4Ls7uEzVrrupIN8AAkaVUZNVvo1YXdpuWKqsD8xXqK2cWndUzyiVGRN5XfuwKAXDtU2XZN_wLRhHsEC8uh4t0zwNpLoGNalF7kIIFvwroEVe4MeFPpMdOOw-WU1gT22oLtVHg4eksbhBZfC7GLB7X3l4aYL17SQ9OnGl7rFR4R19-C146ioftDvgeKCR9tRZXpCA_J9NYDwOPdtvYeDs62R5TzqjWM0Z2vFk61gdbVwP2yKM3BgAsv3fy8pNHXcbaZRj9lv1q1mrtTDBTqinn1IjJ3bFVNRFa6bpJdsCYEkXdiARXhF0s5BTH0N-ND2JO7JZ2I7q7Ve_LUuJyCX64TUbEkGOsoI1MhKJJlNXxdA0D_rlqADy9-AbNxA1Hkk1JjEuexltxqGxFKEaDp72KYPTt-xYsIwSUdEwhUtM2mRhoULZtOhsfA6A2tIwb8yTgS7b01QCSTKyvoEgJJNimvdpyChPchIO2iRhIJRiJC5KK42Is5P8cla_QwAlPxglKqT2D2ASzaAeF-omo9DOPKw216rxJc04xYOIm5ahGzlnfrrNj_ZQIhx3FgT8dWtb64wrqSsseq5YOU9mkvYe51yCTjG-VLRTAz2zQz9WgóHZKNqoCWGyxqhLEr6gxlQK3VVs_iDj71cMi8pzzjb9lVYV_Nwi6-zt2KeN6OcUpDU7O4q0vNFUMmCysyZlk6pyy7iuoXYSgHFVpMxExJRnGx4wat9bUTXTt-7CrAzbPwIxxJerSYQ7EaEFS6mBUth8WnTRNk4Ju0qdwyrqXEIcXSHFLEmBtXCL6OlsLTzZpeF1XCFwlqzUxM7nGHfne-VBcSE3NROEk1fXEcU2IKFcgBO0EVVwYwMyQhmjfp_UlWiBuIL8fróhnCDfSjDGpzsHFWSqjh51Y99qSPeuOhJDB3JGJvV62NZm9VNE9fBNUUqRFqym9X91uCilVQum2nF5RugscZZswODMFTlQpkPYJ4-iJiMqWCyOimD1ciU-jonftUphhkzyOVnpV7vi-kTXlYvWzSzXP11VhuR7Ub-GIGRQz1WudrOiBJbSSpfqTB6Kn0nTjGU2pOq4XrVOClmm7rD-D5PcWQZdvnOHDOV9WwJ00b1gOBzAEG9oHS7aiQlOGQ71JCziaNo4-FwzwLAJu7p-bkGdXz_yxu28QfyrqAIXCA8gjRpH00SLsNYkolvr8ZeqjuPhP8XKbSX1TsbPSTiE79jhm-07B13GcWKwJrcdqPN6xmCbFnP5W2jRrHjZ5wBrUU-omOtqy5qEcypnm6Tv5IYdiuBJaSxioyWnnUgLq3JNJSpIa7qoC0cZzjK2phePt4w2EH_VCeZwHvCTMQ_Y_qbbVat4y0RVkDMRpAeQet2CUuNYksU4N0ViVxKzZC_mownsmPdOmH1DPbRJRDlHruLRPKxD1aTJEXiv0JnM6i1HaacuUbmeCtWV74YomdTXkzD1W1lHruzmJM57RL5kZrmSemotVZxokIByV6FdTuL-skeF3mLu1njbcJDWSztUmBtjwyqxT1qx9i8NHJ6-jRj79Tag_WwhdROq1olKNXYEt-w10X41rXbBZtNtmw23c6Rzx1tO7SZ4MIZAnJgIiAOBCPpLBDsnek8YBonwcKh4zBoMeAZWIion2QDh_a5Qxx42rIy4-9s7yutoG_q9DwKmkIWVFp7pY4avGMdpjePKhbnOgqDOM6aeVblUg1IyGlCh87qJcTNVhaTSa_4hhEteTjR_uVW3UvWK5dGZ2NUnXFDCwpGEqugvlovqK3MVwCEI1fy0eIkRgsy5xJlrqskiOWuxymRMDM7ZSyZfwKJeQc4UzRFN8-UPhQ0gcpEg2x5r7mBmXhA2VWkdSFAz3LSOAp6MxJHDeI9lGPGOjMLVfSA4S6jsNEXTvS6W3wTlcxtjTClJGWihus7iughBlaGNsFtqiQAAIrn6By14VeaXtqJpJhdUv3qbBpIBB6_BPdy55AZqy3WaDt76uBERCOa-gpa1i-WfdGLCYfwTrH9YEPvnfQEY2v2dBsY8B_Yc5mrUUmdnjXrhgswViq6KtjTlCFJitReXeLY-XnC4GmpmWzcNJJtETWLRxkNoksQEazw5vRxn0lHJ7LBkBsEvNNs3YVn5JOe_zZhWh8rrY17rCxdk8tQaqxWABcgEjaOG06cCnLzma3BaqqUFw_yLNDKWUEGRNPGl8oTbHfKEnaT6dxtAyPlHzCxIn76DE3yUJg81u3bkMPnjOyUUo8knmIbC8fScp1W-tW2za3XWnMON_Q7TK5-hNNmciG1RFfMwgsVHoCmmOV5mQQEZXOm7-yCgl7G7eSC6Adk8WCnKscdqAO10b0ojKGfOp7q3dhLG3r6JrlDJ-jkMmU5DaWjx3X0TeNeeaNqnruhRL2m3uFIkUH9YKsJNSgtfFiZBbT3Kdj1mco5QO7FnNZ9KOEu71vfVi-PKrx4oxF9afdPud98SPPfa52paZrc-S5RlMAwWgIL23jGUj3rl2KKHQ2tmDZzX88KW0dtFWC8ZacBi11td3mS8aCyBYubaYjR8KxoRylJjtsdSetvQQps8Odp7l6Ipt2YKVZmR684MEhOttAVWyBDgrBP26uOXTHIVCHL3jGJiz1cwc5SUCfK8shx4QciNDUMSXdToMMXHptWMB51mjhJjb61oRN-2UH6FlApoAcgzy3iBBUXM_GiiaCwqspz4-vd6DYcwbbSw11zdMOSFngHNf-viMDu-uG7nMUuPtNvxO7VFAlFikRMwfvuH47CJgVpgL8ur5hdArSF2SFjeozsLlqDgfKlFuea7MgNJm0NPAq7m_ypg6TX1pbh4V05xf3qt_j9PIBzCg30j2ibQkWd8G2tDTqIKJNILSiEg-yE2v86xjIIbOaAv10EnKGIbt5eanOvvEjLp3XH9Yc93iEMNq1Zt_x3X27mpXqlbobrSIO2aGVY_Ugdp7ImRcMGzpdg-cAcWOZc4zvWXq3bR293imsOBpsApoHSQUWq1ZqSb8c9Ja-NzXtrGgEYpHdli9JWEv8vJlqvFlWu2jnWoe6qQG7jEzZc_xyS2w7u9o05mqhsGTlL2uynzbDuxW5wRWwjC7BW_t5aDmvWbymqcjReYshi-W7xdBHqe-jkBVlsSyDqNXk28HJkyB1IPZ_9OZ_twKqNxqhEPnIc5ms7ZCSDRdlCxww4oMesIIdKpmm_W2MVW0UXuYMGWoHUVnOOAsHqXDihgwc1p0gmL_SDChxuCy4gtfS88p-Os2cTN1LcFevFaYX-id0livjnTi7RjSUKIJAsmKqq284dGjvN-3NEoePhG46afRlF0rDLObgsueildG8vM6anapHIOU4vPOW_TpV-BI5FC1VOKPtqZCv7mLc9JzRwJBhI6tZ-LjBJOHSO0klrWz5RSlee9QyVfFCAaURJTR1YSaO5I7wr_GgKM7FMQRkQmynehPa1GdGxBihzwRiM95fJ_HL-GuCx4ZoYCsUV3ypO_U-t2UTBBsgLqsVMPjow8fdcV5Pfbpg9dq05Bkv_a9mMK-ej29XKEg7vfCY07vWfOsonz-loGjsxMjG8ztyns_MTrrDMhFkA--tbpxiIkOSTV7TTc6Ao60aCiZcP1CaslyHmjxlKvduqNuba0JB0q4_UQd4zk2pY__Ds_abjq7vWY5beY-m5A-npaWHNtEXvWXniR0aEv4z3IbV3WSB3fyPp8jzqK-W4MWVzdyrPcOiRSVVFwJElGUR7ckE1kPkRav53b-rSmmn_MB9wTHA3SlFi_tmj2WgFhj2Fhw8I_0Mecb8vbuKG9tpMPv-x5Lz6drx3xyiKSwU-XJPamP1Ngf0t9kWP16Ydc-OW6vH4a06lgjXLjmYRSDiLKCEFfZ_purQc60p1qgPbWq-LHcVP2WM_xCP1L3K5afsKTO3W1SIPTa0M7nHL1V1uAqE21570PZ1Hu0f0HLjoi9HT1uomz2cSSB_AfaNxdóT9qNpOoua3f-kSsi5jw4quZ2Oudqtwn0MZz-_4M1ZSNskFZU7QdMInU7S3qJq-YgPt34FV7HvzrQGTgQFXxQu2Q2ud_AOp1P82m-hwhPw7YnUPgkuq377IpFJARSWRUHvhgoWO3rlgZq3kM5W2vxs2241lNZRmFVu5t1eNwVJEv4cfhX2SNfCcDTxwi6BsH3UdwSKVWxKKLKTE3rfx2HPHq0NxblQR9iki7rK-B2k3r1mSLTVgoUIpat6VmfOeI9jZqjHNO1Fn5jwHqz3eEyK_l-iIiVbw4UJuxoVYw5mnc97F9Dh4Ha08oc7BKBNX7MecSgmoMgu557VN_1xvwxUnGf72fzHOvWrzfHgvBIhhdHjDNn_28k-bnFTl8Gmzj5gV3oL7TO5ZhDhPn16_L8h2f3P5RN4FKJTi5Kw9Ra3qDCmYgtw8pq69QZwnipBCdLz4K1WNkCaU-N00VtPirRqIIVxkfZgzZ8pLmuiz2H5lWvnhtfRRjtvhlsWUGKeCWW2k_upibrgEbp9F-86WCSj7VNu_H508miwTKOB_cisF-wdwTgkhVXE_f3j1qY0zJexL3ofkQcEzR50GLOu5ek_VamFoSDvEpBMKf3RXZPGXqzce-Km9UuxnIbm98iwVX1o0Oqt8x-PiWnUCVllfh2DqI0OeKbVZafpzVsJt10NpvKkSVx-vSNGpwP4IpErOcaUTcug4Ut5hf07TaM8vx6rMxGjRjxBueqmtqLao2I_LWmr_0QbgzGm5qEc5-Evg4UZmXNNybx-pwDFjfL--RTHs-9VNiNzTlNO2KrPY0cm2vtHbiGXya43k3ZR_5rhhJnn0rQOLuNyYLXBgQJKwz7x-mHV0MvjszPuOhekM0HDd6Ub-Ig1YQa6qb31wRMVR_WL65wl7Zh4BDRkj4y_J_LkDSif3jPiOjnqN7JtZdcH0SS2g_YSjKxFO91yk1XLAAnT5lHMkJdRG1wpQMb3v8oGOhNcGTyRvzD2vnshdEdJuGas9UYZAUez7m_g1H7K_HWzXphKqNC3id7K_r0XG6tp2YtEPAbVq2AX7YgHRnHaVzVe_Jw7xmTcB29u5vcpoJu2YGWHNqz3mqQadbb5iG3uybGVg_Wy1-dRTW5BOE0ZVrCZEyGKQKNk0TOrRdjxb9OzaswGMithGwnTPo-8x-LEPw-91FHYhD86l3cdQ1khDFngmxVG4QxZWUjtBwA9rqWJe_C_9sRp5w_IUY47yQnxTr3PNPpYtnazdwfciM0Sel2XuF5jbZ7wp1MjXm5UWm_vRzhl-KVdMN0rW9FoIn27TN-izJH5pHEJWw6UcfVT570JcwsZwSN7L7iJ9PxNG4KHtusGCE9q8fuov3b7_w5JpGTbJWoON_0w_bh9mOxVuFzjtlXjsQV4Y_ibRBZPxyMQ_cEPSHVdYMcWvF5Zp5nOee85SyDxvKfgW5ni8dtRKcYTwk9UN3lQ09D_sy_fM9Jyzz5VR7yPx-1Nm_N87x6JL8uJfx2xbzJK1IcuneIqjWOPojc9eXs6QY9EkIA7XFfX3j2CaIfT4AYdDU1YYkyIvMc-NYb9W4_bq0LqsZVp7V7_OOW0oXx0qy2nS5BXWo0aZTe-cY23Rdz3jJilEfTWisvOp309qqyrDpZOKlNK-N-Uce23ZeU3V7QPCfrR-krknm_-LvGXm1cEXlYiYq6CsVeeFVPjk8MEXHW_y9nQMaJg-y-B95u87Y0Nxsp54w_jrRPVcO9PjwFKeKvo6W9-EnQPU-Vr69O52Pi-Ja1sUzóDas2pRZql1O8b-IPM52xWf-cs7UvqFYti6cjp-wqNi00b7gbEKZtB_UNSJOTVVmaBXc-7as7g3t7M_T1O3D91JZP5X9r5Pj5F4JAcvw1F1Kf0KFbN0Bcb83zrPEskadDhnrHx5m7DjsLSaksQWG8o7C2jw_O7c246nIb7K4n5xXOkVH0A4R4Di9D3OluxOVtbfIZSg8TimNL7q9lgBIHLgwfvUIOy7X8EoKOS8AM_9JpGuN3q5dCvDTz0XtTipGGfUDLyxEWxsUXMPnLcuLp1ZZXz2GIr8IodCP36Lm42QpgyOIRhcvp88imosh3ifB_a79acdZ86l28qbmRL6GeaiFqwnP6VzGKJDH5DsF27b0aiDdhi1PKOU8glan8-w1FlPu4nVzVIVXAWHiVflaTll48Tii4x08oyeiZELHAKCXZbgrYC-3KvtEOMeOzTDlXTW5nxpQ_Dc-keSGlAZV7GwBGZmVkm4t3UcGNMuYzZqL0WkPE83f0wClJNo0YfPMq1FgSeYLG-FmHNyTNvtA5E0F77aslQW7ex8R3NfGs5j0tagaUbPLZ7U8MA_L9LzLERsdd7kfcfzU3UnX6Y_IENLQQx8qDeiflJwEeccf0Kwv7L3kbF3Vq0K8GwqMGqujBO3y1h4YIUbxWRW92J-QteK_GybppOR02ji0SGIQ4CfRhJt77-GIFiLSHR0v-xc7gnTrXuFdegN47gOROXzo1CtgKaG1VBdQ6LEPup5rIv6jeRncTe_bMmVAE4bZsz8wEHOaex78MziwHKfc20VFZbh3AXLmRQVhpaLhg8pLtsgzEt-SIm_o61WliqHNYlZuXKUxHW5jhuaomD4vgqqwSzXNchJ2qZ8jQq43oetm5vefZXNTokAHgDllaGkEtZwxeJ9R14HDqhLYEYNDzMudp06vRPypLa4OPTY0iskgCgw0TdClqFkT2zEwZ2lLRfmGUKb8HskPVIkDzkNzYIt6eMbJabwoUv2OLLwN-M378XTlUJKerHfmUGof58j5N3O041hJtWvm5swFlA_yiJapYO2pIw-8rPmr3WmFatk65QF1NhalCRUNaFhd3uXa3_6sP0j7-1R_TTo3t2yqHXkdq-PIKDnyCbitHxSTRgTc7CW2ie2L7MJoddnHrP6BMavuQbeubXgZTmlq54yciDW4mYkhZNWxDQa7IMa1kpsJKzfgI1d6SDL706mleCnOsrDi1iAEoGPHhk7zxNYx6CLM5ri8zdzuRipncIyN6EW1kUlmEhE57eL5Ll9qo3AUPH0UIseyulv_scNVim0onUzwHCNtfqXRnxklzN1u7eIRKpUd1I7TQqLB6hz9pCHvGUSVZ1UZxAfWDAmqMbQMT3BhpnlQqMjqnZnkIdKPtWduL2-VRg883JuPRo0AFSFrC9emoHxPoynlGV3BwiXq-vkyJTYLJlKsEgEZEww8xJoxZG7a-1D3vNjCd5g10Cr5MbD3xYuV4IcdMBu-s18FSfZMFDdUlU_k5ix9mAtIFjiqhtt24prydCXGwGI7S89r9b0ZIeymvgtDShgQSSXJwChuRNNO8gNHpKpvcsnuaZmSB3kvxU4cFzz6Iz3e-NECJ7GVF8DyuvucY8wU4VJvpbaKZRqeYSbx8Vh8Uy5dEiuis-iZD8P6mSJaAlor3Ul21W1bG7IpOsU9fS6bIT-mM7ov-QfbUOYtq3iIz7UGuczR6i8r0PDejikHbjhkkbbGESmt0KptLp5vE_a_hyb5hoLlGYF9FtZlnyaIHlQBnc-YN78qIXlB9JPZ_BAvUphPG0Qmj9hkSNlz6J6DxxjUnIL--Itfbfy8yfjV_SgpEne335jm_aXUFyyTc7g213cfKvPHjrBOk2VS6YRmj-EGmY1ilyzx2X-c7D76KaKtX7IKBdN_LrFC8eHttF_ReXCBPQF1pRRACZxy8m1l2tJNe1cHxaDzjo7_S5P_1AfZr2Q-F55INFZ5GgI3I6RKfZNDEE2d_ShnHoYD7WjhsnKPMl5jGTCNRrCPpiC2weWgjbnXEpZMw-hfQ1vJAmHRtN5J34mfIkbtlQz0A50X6uAJIw6y0KpoSDsV9rTVS1wnPxRgeW8V1DNwcBnk7C8IsCXeLWtOv8j7NX7geWjCeZRpDJT7y4TXK869rN553y-iqKKDSB7TVL8RTxE5glMtPupEaXGjx7BDgt_CZHFk6OmCQUUK6YT9FOWqYxswA4Uim92li0vefpYVXwQkWJrcWooT_qdMYh5UBv681VXhnbpMDm_qryjZrZQx5O7gwmuvvEzDmwTOCVYe6D3ZYXSu9ujwKNnpaslcqX3dGRqCy_H1e7H1nsT75xQzxU1Majji_OG4ZEFrGda_3Opyhnw51HM51rcXPgq5-zPdRdpUJ91lboX8moghP9gLLKTMlfgqKs62Wfvm2wrW8ZK5SrkCYjLD6lX56FtDpHi7mfUaxS8MyR9zfkDi_kXK3PYW2WUeszZmWABiqsIdyv0hLjVBnjkx8PJPSw41OUvGCUDCGzrxd6js34C8kwiqFcR3AuWRC7Ivsvxktx1LXlBUVzwFDDY25K_0-6ISpnNsiu_0XQoSJkByLCFY-KpdTG7k-BugMZuu1trJlYDtX-wBOHXs4uyDTPlopgWruo-W2mIcyCB0xr13kGArTSTxsOv6EAczor0T1DxKJW_NkUw7nOcGviVKvUipCewSJkHjGVWY_k9Z8aH8FIEEqZA-KG3R8PNT9Ye20LvmHJzu6MiktODdYsEU6LPtPcBYQC04QO59OrB9vgT-wNNBpElft7Lc659jxFgXAOlC6tuiwX0z83YCLiXa1t6-O60LIdEEF8_LFBoo2qVoIiMGwkYwnjxfEd-nXtGVIqkkiV9yFAjsIIXea98lDezRhUMrDetF9ma0wlNP2lU1lJla-JeO61iGxCz--JgznisHqNTMc2UbPz4ex3_0iHvvYv8BAflbJYo7RHFXocA4rCLdCQx-SAPZ3iICz3Fvty8mX3FStVY7sZzLBZjITzyHNepowYo-f68QnlJT2Gqz7l9DuT_Ep1HMpC1Ro5Qv2kYfCP45wP4_PYRuEsn6L0HqEbqTZGd65OFxjPh_UwXTmvdBNq1D51MJveDYAeSNhtRK-XS6Dj5BgViu8oGqn86cHniL_6qTTVlFt-GrdlCfGqlFQy49Gxs1hivTbI9-vNmWRCgGvHb7dSSArrxF27jddDxoUMSf1NtCCVh0W2vnE6JObadtWJEu9_2fSUzr-Zh9YC1HgnOOurb64dFKnBJqny89bGW3pyImG-1E7p2XRXBIJn_nG5j0C55sl1qm-2cSwwKA0a7TAByNwic_OteHv-8B8F-RwJuXeFklIFJipxe2LRsoa3UYROwbHLmVHXrjic05MNibw-k4SBQxGfWKiFAxXskzPMo7RwGyCNXd9Q4cxpC5hLKcOOTCxWcsxNzQwcJuU7EyfPRIJ3u8Y_fes5w5KiEyhbFS8VQ6N2FbwASMi8hNnlPDCXumRZOmDbU2FpY8EySmhC-zXJWM_2d19I89xhlEDIMhDe-bQFycn2IMvjH7JPPQ6ju9WFvg5WMm08X2uD5ic2T1yk45i_JNRq0KPy5HRYJNk8EuDawezQXZHZWgCKgL8ayuMRjZDmItGJta5BwJbdJUJf6TiJubD_qZzrqv3CPqRlnzDeOhjJYVjjTRbpy-I6eRMoSDlkIW6P60flXLIwZSja_a--tSNRItEptDO2gVnW0RBkyHwx9QeljMPc2IecWNy5X7DPI_0xC5uwdpEbG6PDsecbqsaAVJVzzdOoG880LmXDWyDSpOE0NQswxz1MT7B-J-Ibw3unG46JcU_cZXURYAWtuN9-ME1beV0HnY5k1XrsIn8gaWUYOtDIjDNz8yBgf08S2xZLNGtCezXnf7IH4GpGdfUnVfzg0ywumY9LvwDs33_S5s1zujhVJ8Zt4vSzCdEzAD4pGjefTXaUwi8XWXD2fDAusZndlLdj-OxRtp2Q0FVMZ5BKsYpdfpzLOlkY5a0IiL_XsVJvbwLuk6HVypndJ3WSriPLYFuLZewI6LI5pV_cyFLVKBJlxVNohEwalw_dqyreJHIFMtIk4JWsWGG8vUHPUyKe9xIAnzS33JO7gLNzOjvJ1P18dnO_Rm37c_Tl4iH0xLlvtDzq3dunlc3wzJVRHFrjml60yKpSH6477tMKjmNo8M9ClLQyzom_KjUcHw4jAyfbYTTfXkiYfsvpUa89E0MrcQMdXx7gmqG4NSjgIplN2dm7b--igAA6kYpGWcphBweSMM1Ca2j6A3xMeyZb5ZJ-44tAL_JlwZas4UWipRanu8o4rvFRivPM0kq2CRjyWgmJsjZskq8s43ytvxToRNBJ9Ue2TxIPjx8Nrbjn0SSuoS0dCh6IpPBL1WmZq4rf1E0Lbi_9keyicpJu7HJWEAT5BiJYJ8pOUEb4LDsszvl4epUegHOsFSB1M7yOq3aGChtutTbAHFSrNWCjqDpdnWIZ-zQkOn3f08lXyAhzSaS6iKtcytfKviNZnCaRzJpbz_mBLjGyshmz9a-a5LbPL7dB4XS6a_XKwIa1P6pbrW949QBizyJXoKzNPlzSH_S5gJflac7g8_cp_3kABHwbnGbAk5gcMNqE_iqs6yfbSz6eVYbNCcks39VLpkSk7P7ZL7OfdP6BNi-830k2jkzwmskn-_q5xsKX2KJEYRfCiLx7xcij-Qooz9s82jEJX2Zl4KJe9bLL0ughquaVDMGXiR1t6stw-1Z5hvrPcAFBnjeejz9CdraYpdxZgZa1T8RmwCb7M5f3cV8RW7rbKhJqtJ6EilTmQV5lanmb4MIRHvfSd5wsYAZge4U-Hd9s5iC9S_MtUJS-OggV-I_UNH8sLtTjLrskZXjGkE8ioFP_p2d3GWDR3kT6aVv4Phgucq3ziry2v7nsSB__89WkuDFkrVyDCTU4XPLdHmdx1bsQcdpNW_kJkohMCIb8wUIVWGiP1gWI7Sx38sQQJA0lLSP9UNkmGYid1x_gEDxms5X9YSQBktYTGJTvaa5z6P57cG11-NukLqXPVlhoIv5zsn0JrMriGEEFrn7SicTavGewyc8Vw5KeSZEfXrtagognTGm1z2GNhOtglbcXR7x_w031_jC65DpXwIZHtHpd7NfBgUGI8gu_YbgCM2P0qkiATOvVRnZfjtaBYQ4BkkDnQTPnYEYtdsntBhyEQTkiOLIkFOD5WfNSayZzsS7KejLpyTPV4pPL9BVqVyimmBYsY5qIj0CfZUThT3qrUEAcX7x-ka29pXJe-SzZPm097Yu_yIJS2kNbyquT8r5aGe3T9ahKFnjUjbxresOdqvT3FoZJgXW4fZh_HrH03ZfnqImyuzcIptnE1j7ZumlHFu2icn_qP5sbpDaptT57pp9OwEETzOGb6NlbJRn3qWzo1-V1Mw7puSAx3O-MfyC6Jhkk0UuTlqB-fULM4blJGHZzi5RdJfhEBz_7koJl5Vi_1yzvAZwwTSRnsBaFL2bq0e3LOHXV9GO_sa8Ncilh8KrzczTWGomfGmm-KBbJrda1RYiUigfVDjeP5-g3z3FJpCmxj6ty0IWT0tBKvqLxzvlheS1dTThfh6QEHArrffsNxLHUNfhFxObeHn6DxiZRwnfxYQ79yC8mbWCyzNJziCFG7UcOayWAjTAeu-o-1kxQZseWoPksCfGwuQP8vJyLo5GeXGZUjxvdFkrUPFtOJ_sIP_s0RkD_eAdkNlw4jBeq5Jv5uY9BvNmFOY-zAQEYlhNkdHtNGoXXumzRMcpxyXltZ0m6IfGvj-HeW6TPFtUcv4XyyzDxSq2fV7ww56fhxmIq-f2ZKFve8qtVzPPajxz-8ug6Pyr8umqN0OXNS9vAGNHwVizUEglzH8eW2Lm0l2ZLSMJaY2QiYLa3fRzpT2NBNUhg4_-rmeiMxWxcBTGjC0qHgG-KZq8FrAkjFW0xxm-oQm8Jx8hPKB_0Cwff5-YWsGB7TqoD_ZinzY6S6WnkYiBeDanzxRBJftoscSqmqY_6jWra15IEnanX6vdPX19u1vNLSCraECQiN1dcMLoTeke45oKh8X6OtmoyKiNJWutSjrSgaza85_NphlgEMiwi-V97bHJTCrkKKzN4ZApmUa5UXllTTn4oekl8pJCnv8c9zxsiJyzCJX8XhtpV-VNTt3foJRCnRyEB7saskYiLk9YJQlDZhMUAEa9mTckjVvkgyqsTSN-qH1EETMGUYC_RJP8dMY_O3oL9NYlSvu30nAST1XaqsRZZDjxbHi3Fly0vq-ZcVVtX4aHLwZZWTYW-_LHWVZVD4bMq6OjtOSBV-Q4JHuPIUT03Y5DSGnC2kWv0q4lOHRWPSS4F4NavLpR1A8ORpSZB1_VtNiEfMbZwRiVhNQRu5_Sci0SrLy0v2ZLs9ugN2DNkLlEkKTF-Jrpf3MbuG2FCMvwXymvntzzqGHO8ZoXnlZXMJeqXIHfL0f1MnaxstnEKOmcmKKwY-39VNC3YCvMziWJ13vuY3-vfnep187pxXQn_mJVrvXp_nXpXkrkB1IQJWfDkjZLtlQudssNINbWGY12fLT8c0ouVK49n0j0oZJ335XKuMFeD2S08dh5LwbvUmhlEzA_7JiF2kukn3VVWVJsN6ZbW3vWvZcHizJPlY5v4cYSew6wuvEKOH3ikDnnq5dX4-yusf-KesdTu8hFfMTPG9LfFhHS0mwyE_3t_0p7QC6rImq9jMWm0qjm47EflFpchtU04ayzGbLfKgH4RhTqcJA-RatI56j1zfl0MY-mpXkhlfKfZ8o1Eyzu8r8ek84LtUofpZEJtV35as9YUhynUK8aKCTU9pP--f7rRdTP5zEP__p8ImLUbOTck5wzU7U4dcKH3SBBxswzMftW1IF7CzmaCCsnqsgZd_EVqU1wMj4ETCAvnsYgawdpM5bkU9IZFawX2o5y1H3OjrFVt2G224SV8Ni8KNEB0ATjlBoxz_riKiIJ7heKpUNaEmNBfgS8ph3rIaMs14xUG3Rm2VD8PLp6Ipc9B_d4XjTaKVhaVJbWU1HsmFZVlOyERW3DLN6uIUjxPqTmGVVe18fj5bbSFKSe2q82SYGaKk1IwC3j7IlxG1GG6oV34ebjg0qW0-mKqNz5mi5WcUr2All5T3SLsLtHnURS0oOkI2hzSa5Rpeg_Ve7A-yTske1aUquFkvMCultn7IB9oc5pKn5VAkqUvUrhurwEX8NakNwL2Y-JzKpl81nu0wC2G35B9ne2S3IMR663kDBDJaCVrI10tNR7JQzUKUYNv22Caco7xdxEuAETNEIaPJ5szSNNSKw6KHksPJiK0FdP1yKHRpEzeWFMiU8T4AjMb83wVpFQVZUFziWsqM2aKu46wS-jfKG_wJrWpDllmyjhioxDnyfSiVKsGzLSx-siyZRQdWk6xJpxWjGmF35_qmYK3LSQNwA5XOoIE0glA35mGznqq_wEl5RT4Gq8ILEMjGh0dc7h93VzwL8Qqb_n70I8JjrypltElBRIL6coSyGFhGIeLhkyZdBzKUgHXUxjaEHSDlPIc-swAgPlOWFXNcXUpOm5ZGJ68bWVVqEAUICMTXpi8WxTCn_Db6nj_IPpqpY7vAYZJKJPalwP-ZN9RkIYJcw7KrE-soG-Wqmm9QQjoXhDGFmhFvkLEPXsX8z4HRp0wy0KmIxb5AbKLpwc9jkkDXhq0dzEPuo-96DP7zJ_gfg2a0s_fsoLiJlLSql9PxmoGnbKs63pFp5oGpmbKEOKFYWSyBXjUWyDPWuwfc6la8wGh36uozn2fUkss8H4HZi9EjEU_oY7l2pc1tlbZs4gaY_h430jEgrg_rby3UWzLTN5aUze0o2GDeCZKN4x4r6yPe6Ju6TRWa6GuWY1nehfjFKTwHbbvaUeki-pP21He365cy8WhOAUmo74cuwKyWfWjsWdzjoyc0wZRFtIILQvZAhVdg9GDBnIaFdRbphN8LmE_IjKP3MkzmSWCViG6McUiZ2SzWNYSm5pMhPkN6u0vNzGvXduTzcXKJ1hyfDSr4AdFUeqZVmaKtGdbldjQaBmDGnOzKVr5u0CT5mSDj0u2-l1ribtluRERdnQkfsszo8EA-LWcDKCgSfvabYVALN0mA4655GJ3yH9bvbUiWtIpLJr5GdvI-SkS8IfjZ4hfj9nuZvbUpmgZWLnniFJ5RsMtvpRWAti5SHSETtf_2gv-I7VBoIUONvmYg-1hGdlX2OwxM2H2rac-XRZvxgy_hXfRQACJ8DjaQq61NNKibtQeyIBl88xNWw2Fuhenhs-d-X2OR0VQaTNwHgS0vOR2D5VcHjgNjNlfoJ16H8fNz3tWGHk3lTwdI1z7U7DifjgW14YRyVWNwRRwRabkgZUuxPJRK_wdmBKVFxU9Onwssp5pH9i0xtaOVJ1CGQTQyZpAGH4kflD1S8RdnzbMKe8mHLYt_zwtBODanooX9lHaj0bcPPrqEG7IuP8PgfDt_S_VsadY7GLO7r35QPnUxi0246HvWmZZ3ipMA5bgm3lbsaPv2keGYkEWD9PPV18JY9vqMMSDfYJRws1GA7tUyM5d1VqE53DP3geSEK_lbETRqnRetgsXSv1Q3fsobMVe5pMgz-qz2xGQ5DLZy6Kb0CqfQeOqk74ERFrpKxzpVW7iVN89GdjQJV9TGtRgveVIUNpfYpbzci1NqcRXJk7FeXniz5tEp3kogluHuxeD9Fb4cerV08k8qLNUcXo530lIWh8_xTFE8El3fj4Q8bSycHLTqipzbwv7-6LqYtB8ztMTlrK9mzjuijie-3J7qJ4N7pqPQRXpLs64DsProZGHcT4gIz6a_ep5-fwoubbhYVKs1MVlfJqYyrNx82kMn7MHRy5MZfGL2r8efspoxiAzGFh2W1M7mChizHVigm6dkthBHZRM3QqpZWxjGe6lyKf7Th6ju5hlHKHNUMTPqOQOWc4IloRA4ux2eXMA10DnrE6lqHKOiryVOQlY8habjMy2o69SX-PIvoslxoeyaZLT0os3KMQzXONtYbnRFGTGuYWCkdamvKbrRKgnGqhmb4dXaP2t5MLgHbDDk_nUIfzCPDtTd3xIlYLuI9_Cfu_HVmHv9J4k2vRF2dFnF2FjgMv1m9F2SIs6Dc6TLtzyMXYbIyM-ZB5bYE92BVecYUfndIQzr-b4dlQ9lM1aYNEWxphXL6WGth7st0UdZg318kl1mxN-cpJdIFTKbVIOenYx75lDB1jHHnHckEwMlbYbF6bZUWFwumhB46Yi7L_287EfmouP4oOhHjf1o2FisH_l1nrlca1k3wRyVGfUcy3oB-osd_08Cf2_CfrbKfP4Ug5lw9AK9ukqCALpMLdMZVAPbvIvFk1Ly6EVEC5fu5znPc8W0I0LIy1K2Lb1x57NDt6m5rhsoRoG_MwzrcMGhDqk7s36O3rZEuEo3YWPOyJy7HUjX_y2wkZ2yMjJTCcsiwiszb2POAD5s5rh422XpSn3IrgUlAkLB458FZcmc5wcthdOg_0ybfMOv1YLmSRAwW6Ff-Kvbu-9G7twz56Yzf4diHs3om5-Px_Uz9X6KngtvKl9XzLxoJOjNrW3sJh1Hm544ACnuR8asOZsNwg9ci4Zo8vmoa1b0NuJZYjSxtn27ENJraFiWv-i3vPNz3G5A5lSSltuFsxokmoq2o9Gl46HyuErJDr7ZTHsl-PNGjQIqOKe8Ze7BCnn83ld5AOXAXUilbEvMh1jfYigD_xyIDXcwRGe_SrMHGCeWX5HsqCNdv2J7tsiWcsS0M2SpQ9FY5Y7syud4WzMZVB7VEmPSunsZyqhRV41Mv-hyvEPXDNkhSVzIcWtdC2PM4VmMih9McmZrwRt1AOf-pR8yMxejRq_ktwVD5stDrjJE1cH-nTT9cUR1wZo4CTKhsJycV0IoHhRmAOlX0fFgsCbu8dYP-4PWhNy1BVoVz8XuWg1Ws2ReYmW0YVntCfjme2MNUpq1ZYbo5zeDxixxzVa6LOvxaoS8G43_JrugmSmNbdv4twArXdzd8dmVzcQMIAWS7LyKZzyNeupg9aaXtCwMw-cljpAm_2ez0YLHJGNkvtCgMxRU7rRe2m5dop0fz8D85zWcLR2O4IhBPrtIZM1SWkPrBqLGWLVyZUzTNyP1dfDr8ZTXLbDCOacwf3GFq7vNdTckmw7ZnVyCLrFcjGXJEBD9pNw2cg3PpwvW3_hzL45SjNA4XB24s-NMw6GrL5bcu5-A16EHHI47G-TGIqR8dfD2FT49pltEL9xdv5Ow413reFrRtu7wNc-j5Q2R-0pMfx6CDfD7H67_FvOhe3wpJb69QjAOh1xt7vY7dj_NmTlGRcY9jD_eVtSqpQWltGGYfRis-F17Cl-JvohIPyNMthVemn8_9cHvjImDSbog96Z4rK9VVLhMs1Qs9U6MaAFzqfrvbWfIsuBb67DsK7dkl6GNgZx39fZqIzVg8kxwXau9R9bSzjPsvhQ8lem2CbeBOaW0Ypq57CZQDwI0YZSN5EWPfReR54QsRM3ivnldqIAOq_ez2Jt5WL2P0vDvqDw7MyyhtGfrizwWDn87SWoB-t2fwZC2uKaE0A_DYPDZicD-IYtP-gYRzIm1AeWa_Sf6aUIhz57knac-irb4Zci-UgfNcGUVU8FlV1tmM-cf3t0wrGm74Z8Fyi4FWj_vRdrPj1K2qasdo_rpDxIGHxeDen2w5emUHbB2J4PYfmM4yqrC4_wn20LNIhxeA3rR8BabQkpsyO0HLsFzzATCJSAZ98gKoel2e_2Il6uxM_IPJ8cAP_yRH1ArCfzEywaMvzK438C2Wr47sPTMFasm0QV1sm_vmPcMsNwxDOiNi4G9rM2GV7Csl3e2w2Um6gqfjxvJmMGrnY6Lkrdc2V63nMgi3RELtf9_PAchJHRA")); let pr = []; while (true) { let m = r.RU(8); if (isNaN(m)) break; pr.push(m) } return new TextDecoder().decode(inflate(new Uint8Array(pr))).split(";") })()
|
|
|
|
let wordDictSmall = ["im", "we", "am", "it", "in", "my", "and", "the"] // Max Length: 8, entry length 2+
|
|
let wordDictTiny = ["i", " ", "a", "\n"] // Max Length: 4, entry length 1+
|
|
let Dictblklist = [" ", ".", ",", "\n", ":", ";", "\"", "'", "`", ">", "<", "?", "!", "@", "#", "$", "%", "^", "&", "*", "(", ")", "-", "_", "=", "+", "[", "]", "{", "}", "|", "\\", "/", "~"]
|
|
wordDict.forEach((w, i) => {
|
|
if (w.length < 3) throw new Error("Dict, " + (i + 1))
|
|
})
|
|
|
|
let type1 = /[a-z\.\-\: \n]/gm
|
|
let alphabet = "abcdefghijklmnopqrstuvwxyz"
|
|
let type1swap = "\nabcdefghijklmnopqrstuvwxyz.-: ".split("")
|
|
function runTest(str, specificTest, AntiBreak, settings) {
|
|
let CompData = new BB()
|
|
CompData.WU(5, 1)
|
|
let results = { type1: { done: false }, type2: { done: false }, type3: { done: false }, type4: { done: false }, type5: { done: false }, type6: { done: false } }
|
|
if (str.replace(type1, "") == "") {
|
|
let W = new BB()
|
|
str.split("").forEach((char) => {
|
|
W.WU(5, type1swap.indexOf(char))
|
|
})
|
|
results.type1.result = W.G()
|
|
results.type1.done = true
|
|
}
|
|
if (true) {
|
|
let W = new BB()
|
|
let largest = 0
|
|
let smallest = Infinity
|
|
str.split("").forEach((char) => {
|
|
if (char.charCodeAt(0) && char.charCodeAt(0) > largest) largest = char.charCodeAt(0)
|
|
if (char.charCodeAt(0) && char.charCodeAt(0) < smallest) smallest = char.charCodeAt(0)
|
|
})
|
|
let size = largest - smallest
|
|
if (size == 0) size++
|
|
W.WU(8, size)
|
|
W.WU(8, smallest)
|
|
str.split("").forEach((char) => {
|
|
W.WU(Math.ceil(Math.log2(size == 0 ? 1 : size)) + 1, char.charCodeAt(0) - smallest + 1)
|
|
})
|
|
results.type2.result = W.G()
|
|
results.type2.done = true
|
|
}
|
|
if (true) {
|
|
let W = new BB()
|
|
let drain = str
|
|
while (true) {
|
|
if (drain.length == 0) break
|
|
let fnd = false
|
|
if (drain.length > 2 && !Dictblklist.includes(drain.substring(0, 1)) && !Dictblklist.includes(drain.substring(1, 2)) && !Dictblklist.includes(drain.substring(2, 3))) {
|
|
wordDict.forEach((wrd, i) => {
|
|
if (!fnd && drain.startsWith(wrd)) {
|
|
W.WU(2, 0)
|
|
W.WU(12, i)
|
|
drain = drain.replace(wrd, "")
|
|
fnd = true
|
|
}
|
|
})
|
|
}
|
|
wordDictSmall.forEach((wrd, i) => {
|
|
if (!fnd && drain.startsWith(wrd)) {
|
|
W.WU(2, 1)
|
|
W.WU(3, i)
|
|
drain = drain.replace(wrd, "")
|
|
fnd = true
|
|
}
|
|
})
|
|
wordDictTiny.forEach((wrd, i) => {
|
|
if (!fnd && drain.startsWith(wrd)) {
|
|
W.WU(2, 2)
|
|
W.WU(2, i)
|
|
drain = drain.replace(wrd, "")
|
|
fnd = true
|
|
}
|
|
})
|
|
if (!fnd) {
|
|
if (!drain.charCodeAt(0)) throw new Error("Unknown char")
|
|
W.WU(2, 3)
|
|
W.WU(8, drain.charCodeAt(0))
|
|
drain = drain.substring(1)
|
|
}
|
|
}
|
|
results.type3.result = W.G()
|
|
results.type3.done = true
|
|
}
|
|
if (true) {
|
|
results.type4.result = str
|
|
results.type4.done = true
|
|
}
|
|
if (true) {
|
|
let W = new BB()
|
|
let drain = str
|
|
let good = true
|
|
while (true) {
|
|
if (drain.length == 0) break
|
|
let fnd = false
|
|
if (drain.length > 2 && !Dictblklist.includes(drain.substring(0, 1)) && !Dictblklist.includes(drain.substring(1, 2)) && !Dictblklist.includes(drain.substring(2, 3))) {
|
|
wordDictLarge.forEach((wrd, i) => {
|
|
if (!fnd && drain.startsWith(wrd)) {
|
|
W.WU(3, 0)
|
|
W.WU(13, i)
|
|
drain = drain.replace(wrd, "")
|
|
fnd = true
|
|
}
|
|
})
|
|
wordDict.forEach((wrd, i) => {
|
|
if (!fnd && drain.startsWith(wrd)) {
|
|
W.WU(3, 1)
|
|
W.WU(12, i)
|
|
drain = drain.replace(wrd, "")
|
|
fnd = true
|
|
}
|
|
})
|
|
}
|
|
wordDictSmall.forEach((wrd, i) => {
|
|
if (!fnd && drain.startsWith(wrd)) {
|
|
W.WU(3, 2)
|
|
W.WU(3, i)
|
|
drain = drain.replace(wrd, "")
|
|
fnd = true
|
|
}
|
|
})
|
|
wordDictTiny.forEach((wrd, i) => {
|
|
if (!fnd && drain.startsWith(wrd)) {
|
|
W.WU(3, 3)
|
|
W.WU(2, i)
|
|
drain = drain.replace(wrd, "")
|
|
fnd = true
|
|
}
|
|
})
|
|
if (!fnd) {
|
|
if (!drain.charCodeAt(0)) throw new Error("Unknown char")
|
|
if (drain.charCodeAt(0) <= 64) good = false
|
|
W.WU(3, 4)
|
|
W.WU(6, drain.charCodeAt(0) - 64)
|
|
drain = drain.substring(1)
|
|
}
|
|
}
|
|
results.type5.result = W.G()
|
|
results.type5.done = good
|
|
}
|
|
if (true && !AntiBreak) {
|
|
let W = new BB()
|
|
|
|
let freq = {}
|
|
let construct = []
|
|
let prem = construct
|
|
let parent = undefined
|
|
str.split("").forEach((char) => freq[char] = (freq[char] + 1) || 1)
|
|
while (true) {
|
|
let most = undefined
|
|
let mostlen = 0
|
|
let keys = Object.keys(freq)
|
|
keys.forEach((char) => {
|
|
if (freq[char] > mostlen) {
|
|
mostlen = freq[char]
|
|
most = char
|
|
}
|
|
})
|
|
if (most) {
|
|
prem[0] = most
|
|
prem[1] = []
|
|
parent = prem
|
|
prem = prem[1]
|
|
freq[most] = undefined
|
|
} else {
|
|
if (parent) {
|
|
parent.pop()
|
|
}
|
|
break
|
|
}
|
|
}
|
|
|
|
let out = ""
|
|
let cb = (rt) => {
|
|
out += rt[0]
|
|
if (rt[1]) cb(rt[1])
|
|
}
|
|
cb(construct)
|
|
out = runTest(out, null, true) || "UNCOMP" + out
|
|
W.WU(5, Math.floor(Math.log2(str.length == 0 ? 1 : str.length)) + 1)
|
|
W.WU(Math.floor(Math.log2(str.length == 0 ? 1 : str.length)) + 1, str.length)
|
|
str.split("").forEach((char) => {
|
|
function trnsv(sf) {
|
|
if (sf[0] == char) {
|
|
W.WU(1, 0)
|
|
} else {
|
|
W.WU(1, 1)
|
|
trnsv(sf[1])
|
|
}
|
|
}
|
|
trnsv(construct)
|
|
})
|
|
results.type6.result = out + ";" + W.G()
|
|
results.type6.done = true
|
|
}
|
|
Object.keys(results).forEach((type) => {
|
|
if (results[type] && results[type].done && results[type].result) {
|
|
let MD = new BB()
|
|
let LZC = ""
|
|
let PKC = ""
|
|
let RRC = ""
|
|
let temp = LZ.compress(results[type].result)
|
|
if (LZ.decompress(temp) == results[type].result) { LZC = temp.replace("` \" K", "⁑").replace("` \" ", "⁕").replace("` ", "•") } else { throw new Error("Mismatch 1") }
|
|
// if (settings && settings.PakoCompress) {
|
|
temp = deflate(results[type].result)
|
|
if (new TextDecoder().decode(inflate(temp)) == results[type].result) {
|
|
let W = new BB()
|
|
temp.forEach((byte) => {
|
|
if (byte >= 2 ** 8) throw new Error("OOR")
|
|
W.WU(8, byte)
|
|
})
|
|
PKC = W.G()
|
|
} else { throw new Error("Mismatch 2") }
|
|
// }
|
|
// if (!AntiBreak) RRC = runTest(str, null, true)
|
|
// console.log("DATA", "\n1.", LZC, "\n2.", PKC, "\n3.", PZC, "\n4.", LKC)
|
|
// if (LZC.length <= PKC.length && LZC.length <= PZC.length && LZC.length <= LKC.length && LZC.length < results[type].result.length) {
|
|
// MD.WU(5, 0)
|
|
// results[type].result = LZC
|
|
// } else if (PKC.length <= LZC.length && PKC.length <= PZC.length && PKC.length <= LKC.length && PKC.length < results[type].result.length) {
|
|
// MD.WU(5, 1)
|
|
// results[type].result = PKC
|
|
// } else if (PZC.length <= PKC.length && PZC.length <= PZC.length && PZC.length <= LKC.length && PZC.length < results[type].result.length) {
|
|
// MD.WU(5, 2)
|
|
// results[type].result = PZC
|
|
// } else if (LKC.length <= PKC.length && LKC.length <= PZC.length && LKC.length <= LZC.length && LKC.length < results[type].result.length) {
|
|
// MD.WU(5, 3)
|
|
// results[type].result = LKC
|
|
// } else {
|
|
// MD.WU(5, 31)
|
|
// }
|
|
// results[type].result = MD.G() + results[type].result
|
|
let success = [results[type].result.length]
|
|
if (PKC && PKC.length > 0) success.push(PKC.length)
|
|
if (LZC && LZC.length > 0) success.push(LZC.length)
|
|
if (RRC && RRC.length > 0) success.push(RRC.length)
|
|
let smallest = Math.min(...success)
|
|
if (smallest == LZC.length && LZC.length > 0) {
|
|
results[type].result = LZC
|
|
MD.WU(5, 1)
|
|
} else if (smallest == PKC.length && PKC.length > 0) {
|
|
results[type].result = PKC
|
|
MD.WU(5, 2)
|
|
}
|
|
// else if (smallest == RRC.length && RRC.length > 0) {
|
|
// results[type].result = RRC
|
|
// MD.WU(5, 3)
|
|
// }
|
|
else {
|
|
MD.WU(5, 31)
|
|
}
|
|
results[type].result = MD.G() + results[type].result
|
|
}
|
|
})
|
|
let largest = null
|
|
let size = Infinity
|
|
Object.keys(results).forEach((type) => {
|
|
if (results[type] && results[type].done && results[type].result) {
|
|
if (results[type].result.length < size) { size = results[type].result.length; largest = type }
|
|
}
|
|
})
|
|
if (specificTest) largest = specificTest
|
|
if (largest) {
|
|
let id = parseInt(largest.substring(4))
|
|
if (id) {
|
|
CompData.WU(5, id)
|
|
if (netdecompress(encodeSafe(CompData.G() + results[largest].result)) == str) {
|
|
return encodeSafe(CompData.G() + results[largest].result)
|
|
} else {
|
|
return "UNCOMP" + encodeSafe(str)
|
|
}
|
|
} else { throw new Error("Cannot find type " + largest) }
|
|
} else {
|
|
return "UNCOMP" + encodeSafe(str)
|
|
}
|
|
}
|
|
export function netcompress(str, imdtyp, sett) {
|
|
let out = runTest(str, imdtyp, false, sett); return out
|
|
}
|
|
export function netdecompress(str) {
|
|
if (str.startsWith("UNCOMP")) return decodeSafe(str.substring(6))
|
|
str = decodeSafe(str)
|
|
let meta = str.substring(0, 2)
|
|
str = str.substring(2)
|
|
let r = new BB()
|
|
r.F(meta)
|
|
let ver = r.RU(5)
|
|
let id = r.RU(5)
|
|
{
|
|
if (ver == 0 && (id == 5 || id == 3)) {
|
|
alert("Due to changes this version cannot uncompress this file. Please go back to 1.1.0 and convert.")
|
|
return
|
|
}
|
|
}
|
|
let out = ""
|
|
let finals = str.substring(0, 1)
|
|
str = str.substring(1)
|
|
r = new BB()
|
|
r.F(finals)
|
|
let typ = r.RU(5)
|
|
switch (typ) {
|
|
case 1:
|
|
str = LZ.decompress(str.replace("⁑", "` \" K").replace("•", "` ").replace("⁕", "` \" "))
|
|
break
|
|
case 2:
|
|
let sta = new BB()
|
|
sta.F(str)
|
|
let bk = []
|
|
while (true) { let nr = sta.RU(8); if (isNaN(nr)) { break }; bk.push(nr) }
|
|
str = new TextDecoder().decode(inflate(new Uint8Array(bk)))
|
|
break
|
|
case 3:
|
|
str = netdecompress(str) || str
|
|
break
|
|
}
|
|
let W = new BB()
|
|
W.F(str)
|
|
switch (id) {
|
|
case 1:
|
|
while (true) {
|
|
let n = W.RU(5)
|
|
if (!isNaN(n)) {
|
|
out += type1swap[n]
|
|
} else break
|
|
}
|
|
break;
|
|
case 2:
|
|
let size = W.RU(8)
|
|
let small = W.RU(8)
|
|
while (true) {
|
|
let n = W.RU(Math.ceil(Math.log2(size)) + 1)
|
|
if (!isNaN(n) && n != 0) {
|
|
out += String.fromCharCode(n + small - 1)
|
|
} else break
|
|
}
|
|
break;
|
|
case 3:
|
|
let go = true
|
|
while (go) {
|
|
let n = W.RU(2)
|
|
if (isNaN(n)) break
|
|
switch (n) {
|
|
case 0:
|
|
out += wordDict[W.RU(12)] || ""
|
|
break;
|
|
case 1:
|
|
out += wordDictSmall[W.RU(3)] || ""
|
|
break;
|
|
case 2:
|
|
out += wordDictTiny[W.RU(2)] || ""
|
|
break;
|
|
case 3:
|
|
let chid = 0
|
|
if (id == 5) chid = W.RU(6) + 64
|
|
if (id == 3) chid = W.RU(8)
|
|
out += String.fromCharCode(chid)
|
|
break;
|
|
}
|
|
}
|
|
break;
|
|
case 5:
|
|
let go2 = true
|
|
while (go2) {
|
|
let n = W.RU(3)
|
|
if (isNaN(n)) break
|
|
switch (n) {
|
|
case 0:
|
|
out += wordDictLarge[W.RU(13)] || ""
|
|
break;
|
|
case 1:
|
|
out += wordDict[W.RU(12)] || ""
|
|
break;
|
|
case 2:
|
|
out += wordDictSmall[W.RU(3)] || ""
|
|
break;
|
|
case 3:
|
|
out += wordDictTiny[W.RU(2)] || ""
|
|
break;
|
|
case 4:
|
|
let chid = 0
|
|
if (id == 5) chid = W.RU(6) + 64
|
|
if (id == 3) chid = W.RU(8)
|
|
out += String.fromCharCode(chid)
|
|
break;
|
|
}
|
|
}
|
|
break;
|
|
case 4:
|
|
out += str
|
|
break;
|
|
case 6:
|
|
let tree = netdecompress(str.split(";")[0])
|
|
let data = str.split(";")[1]
|
|
let nt = []
|
|
let prem = nt
|
|
let LW = new BB()
|
|
LW.F(data)
|
|
tree.split("").forEach((char) => {
|
|
prem[0] = char
|
|
prem[1] = []
|
|
prem = prem[1]
|
|
})
|
|
|
|
let hfout = ""
|
|
let cache = nt
|
|
let ss = LW.RU(5)
|
|
let slen = LW.RU(ss)
|
|
while (true) {
|
|
let nb = LW.RU(1)
|
|
if (nb >= 0) {
|
|
if (nb == 0) {
|
|
hfout += cache[0]
|
|
cache = nt
|
|
if (hfout.length >= slen) break
|
|
} else if (nb == 1) {
|
|
cache = cache[1]
|
|
}
|
|
} else {
|
|
break
|
|
}
|
|
}
|
|
out += hfout
|
|
break;
|
|
}
|
|
return out
|
|
}
|
|
|
|
export function plugincompress(file, str, settings) {
|
|
return undefined
|
|
|
|
|
|
let res = []
|
|
plugins.forEach((funcs, i) => {
|
|
if (funcs.CanDo && funcs.CanDo(file, str, settings)) {
|
|
let out = funcs.Compress(file, str, settings, BB)
|
|
if (out && out.length < str.length) res.push([i, out])
|
|
}
|
|
})
|
|
console.log(file, res)
|
|
return undefined
|
|
}
|
|
export function plugindecompress(file, str) {
|
|
return undefined
|
|
|
|
|
|
let res = []
|
|
plugins.forEach((funcs, i) => {
|
|
if (funcs.CanUnDo && funcs.CanUnDo(file, str)) {
|
|
let out = funcs.Decompress(file, str, BB)
|
|
if (out && out.length < str.length) res.push([i, out])
|
|
}
|
|
})
|
|
console.log(file, res)
|
|
return undefined
|
|
} |