eleven / ocho Public

scrub: remove the last luan.chat mentions outside CLAUDE.local.md (#449)

Follow-up to the PR #316 scrub — three stragglers: wildcard_test.go's
autocert-fallthrough example host, the 1Password item examples in
.claude/memory/deterministic-scripts-and-runbooks.md, and the home-blob
cross-impl vector (the URL lives inside the sealed fixture, so it's
regenerated — and the generator, previously a lost /tmp scratch script, is
now committed as home/test/gen-home-vector.mjs).
Co-authored-by: Claude Fable 5 <noreply@anthropic.com>
Paul Campbell 6e86d2ee970c39113bdfcfb2f347861c189b58f9 parent 4adacb3
5 files changed, +30 −8
  • .claude/memory/deterministic-scripts-and-runbooks.md +2 −2
  • home/test/gen-home-vector.mjs +22 −0
  • ios/LChatCore/Tests/LChatCoreTests/HomeCryptoTests.swift +2 −2
  • ios/LChatCore/Tests/LChatCoreTests/HomeCryptoVectors.swift +2 −2
  • wildcard_test.go +2 −2
diff --git a/.claude/memory/deterministic-scripts-and-runbooks.md b/.claude/memory/deterministic-scripts-and-runbooks.md
index c362632..6f712ed 100644
--- a/.claude/memory/deterministic-scripts-and-runbooks.md
+++ b/.claude/memory/deterministic-scripts-and-runbooks.md
@@ -70,8 +70,8 @@ echo "✅ Deployed $VERSION successfully"
**Work summary pattern:** When you finish server work, include a section like:
```
## Secrets stored in 1Password
-- Item: "lchat push relay token (new-instance.luan.chat)" — relay authentication token, needed for LCHAT_PUSH_RELAY_TOKEN env var
-- Item: "lchat admin token (new-instance.luan.chat)" — admin link at https://new-instance.luan.chat/admin#token=...
+- Item: "lchat push relay token (new-instance.example.com)" — relay authentication token, needed for LCHAT_PUSH_RELAY_TOKEN env var
+- Item: "lchat admin token (new-instance.example.com)" — admin link at https://new-instance.example.com/admin#token=...
## Scripts to run
- `./deploy-prod.sh v1.2.3` — deploys a new version to all instances (see docs/deploy-runbook.md for full procedure)
diff --git a/home/test/gen-home-vector.mjs b/home/test/gen-home-vector.mjs
new file mode 100644
index 0000000..c6a741f
--- /dev/null
+++ b/home/test/gen-home-vector.mjs
@@ -0,0 +1,22 @@
+// 🤖 Regenerates the cross-implementation home-blob vector that
+// ios/LChatCore/Tests/LChatCoreTests/HomeCryptoVectors.swift embeds (and
+// HomeCryptoTests.swift opens): a JS-sealed envelope with a FIXED DEK and
+// wrapped-DEK map, so Swift proving it opens byte-for-byte pins the KEK
+// derivation, AES-GCM layout, padding and framing across implementations.
+//
+// node home/test/gen-home-vector.mjs
+//
+// Paste the printed envelope into HomeCryptoVectors.swift. The inputs (prf,
+// dekRaw, credId, wrapped) are constants in HomeCryptoTests.swift — keep them
+// in sync if you ever change them here. The envelope bytes differ per run
+// (fresh AES-GCM iv); that's fine, only the opened contents are asserted.
+import { importDEK, sealBlob, bytesToB64url } from "../web/static/crypto.js";
+
+const dekRaw = "AAcOFRwjKjE4P0ZNVFtiaXB3foWMk5qhqK-2vcTL0tk";
+const credId = "cred-abc";
+const wrapped = "LfDy9OjW1vWNWfVcpShcxANG7mcWIpsrDtS2yrlhic7KwdN1abiQIF8zOg7EdHF5p9oaI0f09LGg_Wvl";
+
+const dek = await importDEK(dekRaw);
+const obj = { v: 1, servers: [{ url: "https://test.example.com", name: "Test" }] };
+const envelope = await sealBlob(obj, dek, { [credId]: wrapped });
+console.log(bytesToB64url(envelope));
diff --git a/ios/LChatCore/Tests/LChatCoreTests/HomeCryptoTests.swift b/ios/LChatCore/Tests/LChatCoreTests/HomeCryptoTests.swift
index 380a805..4b9dac6 100644
--- a/ios/LChatCore/Tests/LChatCoreTests/HomeCryptoTests.swift
+++ b/ios/LChatCore/Tests/LChatCoreTests/HomeCryptoTests.swift
@@ -7,7 +7,7 @@ import XCTest
// DEK. If Swift opens it to the expected server list, the KEK derivation,
// AES-GCM primitive layout, DEK unwrap, padding and envelope framing all match
// the web byte-for-byte — so a backup written on the web restores on the phone.
-// Regenerate with /tmp/genhomevec.mjs against the JS crypto.
+// Regenerate with `node home/test/gen-home-vector.mjs`.
final class HomeCryptoTests: XCTestCase {
// Base64url inputs from the JS generator.
let prf = "AAECAwQFBgcICQoLDA0ODxAREhMUFRYXGBkaGxwdHh8"
@@ -39,7 +39,7 @@ final class HomeCryptoTests: XCTestCase {
}
let blob = try JSONDecoder().decode(Blob.self, from: objJSON)
XCTAssertEqual(blob.v, 1)
- XCTAssertEqual(blob.servers.first?.url, "https://test.luan.chat")
+ XCTAssertEqual(blob.servers.first?.url, "https://test.example.com")
XCTAssertEqual(blob.servers.first?.name, "Test")
}
diff --git a/ios/LChatCore/Tests/LChatCoreTests/HomeCryptoVectors.swift b/ios/LChatCore/Tests/LChatCoreTests/HomeCryptoVectors.swift
index fa6d08f..b4b834c 100644
--- a/ios/LChatCore/Tests/LChatCoreTests/HomeCryptoVectors.swift
+++ b/ios/LChatCore/Tests/LChatCoreTests/HomeCryptoVectors.swift
@@ -1,7 +1,7 @@
import Foundation
-// 🤖 GENERATED by /tmp/genhomevec.mjs — the JS-sealed home blob envelope, the
+// 🤖 GENERATED by home/test/gen-home-vector.mjs — the JS-sealed home blob envelope, the
// cross-impl vector HomeCryptoTests opens. Do not hand-edit; regenerate.
enum HomeCryptoVectors {
- static let envelope = "RUhCMQAAAGh7ImtleXMiOnsiY3JlZC1hYmMiOiJMZkR5OU9qVzF2V05XZlZjcFNoY3hBTkc3bWNXSXBzckR0UzJ5cmxoaWM3S3dkTjFhYmlRSUY4ek9nN0VkSEY1cDlvYUkwZjA5TEdnX1d2bCJ9feX2_FHgHiOgyPqUTQAO09tkCyLCXaRzhbvfCJLVSZP4J7jostzcTdylEB7yKaLbJb2yS6GsgM3HVGkiUMfIH580UEjTIqni2QfLybkQbu3OeToE9axHhBjDlt4qPd5Su-ld4yEWY7-5iCuXlziWMBt0UHkv6v6hwdi6jrQfUv3qNv-ZZI8Ybdl0CGJmpDXIrsuuFs17aOx83IKYo-hWAJqToYprcDpMPFiJXsJXLIMUK9yJVAj8J6pIab9jeIHztUBLNliHy4XWpQfzYAxrfImOc2z4D6GG3E-JCb8okgr8lDshK3cTj1GfSIIxVsXEfgabpaRJJ9Lutme07YEMFp5XP78g15vyjt_DjmAuk2NqIctGUb-uE2npEMkCVQ0LRmksS0GYgBOUH1sfHYPBTahSOrZcRmPXMr4XCgfFvoepVNep-GGhOfyuBlOdEmRO6-p9_MxZBkXgnwrCi3iCj3mBRWlSNTBtNJQVaBmkm2YTnVxxEkOCILPOxTtm5TQ509EoCdVekZPnHSDIK2V9kVNiVXRNknH44anT6vkFcyTUAHqaW2wZZvjzc3W368P604yXnkXyFPXUuzO1dVDZB-Lv02fp7fZ6iDX-Z0j-cf8-IitnNHU0XaTjmJKxvgVaLjR88shGxnQOPalxrk8SipMUrJK02-nMIgsgEaxpJBYrbswykUxPS_xMYnoH_m-4RiwqbHB_BkGgRP_mnZehrT9AyA5SJib46nTHSGTCaZo393aRxwjbsmrHSBYJX8KatKLsMPQt4TpxpzK4Lp7aFOhrTzR0jA_4m7iNWMyuiQVwvhtJtaYu-oWJSXeotIHNeAD60TzSeIuIN8iRtmIkHQyYABQrA8TNxYe02DH07Jn6KWhx7Jw6GTBaRr1jsyf3_XbfOBFWqIN8GJAt2Y4dVY-TFAGNeok8S9CSEZ1hp4jnfxtbwDb7h8RfPP0G7fzw7KznVZq6dJvZEUAx9bvxVx-WSo4_gj00WM3yXefKYQtfwwcqjEeH3oq9u-93TOUVEG7w1nKmTf2O2JYcOqE8-VCeghfjpJgvb5n8Omjc8XwrVD1yjFvB-Dyy8VG858_i-MBDkdeCzS5HV9E-Gaqlz-6Z71VBBDB9HZ6rQxx0Tb6WDfwICLYbZPrxNY_D9otozy4-sRwBBXMzvcoTOpoDuOFPSBpGvt8ZK5YzeUVu20oPVteWtDvIfOPdYI2Tspt-ZVK4KjFkq688wKSyV6m_MoJdEa1Uc-ATjaZRMebDy0wKNCEM827DStRKLJnXqEinkEC1jS5eae7wOGWHirVcAGElYK6SgmDYfujdVb1NvGz17cuNThUc88uQ9IAff8GnmCSSZdSug8GrXlVjSGNvqt49jhcVRjF_buCAwQeHUbRX04EujXM2IFMmMY9kvoyc4wq8GprFn2RApdt7mdQpKuARGspQ1FYlve2XGgzJXLahdo-Vi4XtDuDDHKtzJ7XfWEz00KO-yD5wu6fZlqwqbSLDUXjBh8AAeJdg_dEBEea6ykOVaTVrrv9SZ8RUcQlD2sWUGOa95f4tCmAHL4r58kOX7XphZf9-ytL0SSiQ119agA024dqjfzGaTYCskSeezIsdKVGWayWbQjI2c_9MUTvgBcu_iUEW9CmZ5jdmpNmDeUYvdWCbxyCgXC2QZ_1_m5MR-7Zzgh24lbTKbAsVWuj5tTHR2ADxbNjmf_s5s6bBwi2Vb-Lqqf99zF_idh6UdGyOl9QTR4nhIZccNC_FQVaNIHDx9tyVmksbikXpJ4nTI0M1cTaOYFrBeM2E6f8x-pLNr5Xfd4NAS4IzDtPwmfu7vkL6t_AvZmndKUJBr5pGMw8Cv5Fju5qk6-7kqopthUKcYKroH7Tvf0W9ISfliVNf34QG3mKYzDbAMVjxItuAymBDxa9Ch3eGpe-SA-gsvkSqODA17BEiSSF7uLkiLGulAZtqiV93UHS92lL2md4JEByVh4V4xcLYL_4Brpp0t2AKqlYrVIMg12XQinZAC32eQtHaf8uJqb_enGmY4GOge9ENH0GKixMciPjxWDcCbJMuJLFr50RjpV5KE-N4ddUN0B6A5wgFpFGWowDDdh_D33RYWZ8ydSHbGytQFWdbAPfAKVAY1646i2JjDtnoLJeSIhd7jZv71uIkkmlXZY2YixSc9YbRKyXEGpn0eM4m0rkpts6oBhN8RrlQQim3Tt14JKX0fk45CAerPMG2tYVclqtoy2ex35OHu1HihYlnzyDmagdlIhnf_wr6ypGMQ3_8aj6IohxTfj21Wb0G9dKu7uB5LtLX0gm_Xc1pU2TdCViaNzxYFmZ-87miPz_-zENCIT52_m04GXpLCUTs9GtyP5VsJC2Hw1iOjzbHd_W9fbnnCzHwwH6Fr5Gsc4xbWA8ZhgqMaLkbg-ba6jF1UpgghuKvhYMtdgD-msmWarHb11Ewo1d-D33oFjdO1XyC5QdWrF0cVubufp92Xo_MQ_r-W5C5kh0xwKFCY7CmkbvWMRAwdBGPMNA3HRTh50ITXxL-mI9f_bGbdA1OuUmZJkpDnYBChT1_78K3S0lSZVX46VSizh80m_6Usc9s-fdvT6ztgnTTylAcwEZv-clG_uZIZgMVEgHwDfC9ol_CZa-cSbAtiI4_I0_EsSujg9a4PJ6uCemXL9k1o9UUlqQ2KqKR1ANiugX0cWl2ftJL-CxAj3Z6HD2msA2mmBVMGzPQHW8EMivVm6plWJVKDvSx_2WRZ-Nw1YchzziwhGPxlbxZPmfGHvJ7gQDDe6rR_tSpyhSGp2QAoOZFXNaR2TEA1N0zbtQTOyuTOHfGcsnQsNQu7-OVTiufRkatgkwhPAEKWwjAAbKkAU55JjLBP0VBoAgtdS2sACNetvSGp40QxoVx7dmlj-x3CIbltHpiNGag7bnHlen7qkDn4xWCsm_V2db3JgeZbIHz3W6RcinNsMaNuL1UMkyWEFRtKGWfFbZdOBl17b4d0LtSA26BqfTfa1P-Nl2ITzJSLZJ9-iw8AK7lTe-tbdbuR18f7bubwyWO8bveBY1i7CAtas3i8wKZRRjXPa-MbLh9ylTH5QjhXi47_hlDCSzSTtWUppe6sS9FHpvCH-A22yIzC-7ipKOLHeK6u-ichR6-4su61mFQC59ar3dwFw6PLqwRmvV-aSdzrVkJifmMboL8vbyyHbMHE_GI_SOOiLiQ3CtSQMRiPAdk7sr80jLkR50XEVjfDfJv2xDXBo-N-9V4joRmBiv8txaXauwR3mUHbbFzsOg6dZir3uD2RUXtjQEpdedMx0S6kxDI5YsKdj7tjf84A0idqPBq2ExUlkpJK-Ww8NFblmBxSWyj5_KbnLW8C8uB3H8z1vIEqvI11h3OotxKhjSghqRkAIvIYNml1rqonXM2xe4syDRV1-feBJBzkInGxXrujjo4wGRsAyD9kpRsFx3pfBAeMEvE2pOfp5wchDEyAhv-m4h04xEUwUB-ns7TsnIIbXOPQu5cM6YYci90y5enE8jYPEAq-ZDLeKMHC7nBNBe0wQcHOik7QmI_5bn8CRrmginaSTJgGvgaseegkheTULmXgDeLc6XE27uXlreAJaKMUzRQH4NLDchgizHTs_YLSjxYZSUP1dzvmrAysrkGf7Y_i4LY1LPAf8tpx5Ci_Mj6WeuS84ZkIwSfSx9GH-Ea2hSsOHNzzliDoYUNesXTwDIOYVoKxU06v9Q_cyk25K2YjrFPLn2MQCq11QrnoMGR3lqN7oJgsn2qXQ_7XtNKZAND-UQBikczrXB5BFA_kiMUqv260juAhyhlMXUCZlAvQ3bRkW9pd4CVz3UQGchkLln9vJ5CILtSbWtE5yf8iAh7YNpHXIQIW7fFbJ_-I2qSVdW6Ajn6D9ml0kWkfRAW2lXDzAu1Ck3bhaQLFM-CLh7t_J8jOxh5Z2-haUGVuJj7NDgB5k0QIOi-T7o3OboX4EVqvt1DWsAMs69hDUssYbFVsNTHGw94wZuAoHop-ezX1X0td2K7pUqXF8kf-CRr25z2U8YozaRMOg2v6zCn1Q0MWaAJzduIAcSRuB4TE4IOi7CCADFCMNl1VftzS3o1TVin6W9NA2mRhweMzaxFwuiLu_FNEBkQ1PFi16UoKLLKfG-xJwcz4W7SaU4Tv8-5s-HjpJm4Tx8QtvFSu0uZL9Rq-67kyKeKgA-Ejf8SWEd4L8KLw_K26W1RC5kFqo5AXEQ_26PVJrf0XoFre5nqnsvXwJStkBFkcwmY3w5kqHE4EemzuNhFnmq_r4bgd8y-NlGjURegy1xKtDU4F5G78wwoAn0YLpMhc7rNVWPN6ckSuo0X4ZYgtiWc8LPcrqB2bHzf11G-TxyNo-GldgvsFzDcJDKuuSUN1uX8FpvkdvPy2gANvozvMj903SqJ9WHpOxMd4DaTzHuaLHhwrsAzKt7RrcWSVGxkxU07-Bg-Qh7VaVd-ZsIRz6m2jrv_CWVx5N-RiRasFzZQ-C42qvkOEulg5zLHjSxoXyUV9e8DqavTdtoDy-fZBIVYRMS0pjmbuDXzGRuMUlTdJMq8fi1yhMdKR4U6O9g8gY1NLaPYt4id7i7dMuNntrD1vXzdz34PXI3IrtfEYPKG3jcwv1nWNgLwfjakfSCxuNrv00Ki-4aIGRpCpupQkruxDAc2Puxz7JuZ4oQOCsjIM0THl6pkIgvZPZCgvgrmOVnt6LnqCd3xJ9on3uO7BW1iaYmUzAZWcQ5dKDULoMeB1S9DY6aAmXqYA2utAB_0yGNW26Ek6U-XWO2gJFFQwlXfvRFldcROsWnTI06x7UL5AbkgEx5k_BzArQXOTELFY2LMq7Df5shai2t1kPSAcUWXxrCj2jKCROsK76ZzV7vD0Jthj1JUygUTetvQ8IaBcdaaMmsBjMdaTVC7_c06lhezkOD2a8kaEi3xaqSlgpFix5_HFGYKSkKH8vlr0et3Lv4h_g5pHqs0j4pTU-hwQOtf0erkXWPkRlc7vpdTTmI1wzEowRIZsirHs8vJTetFrjKG0KIv8S3knfziCVeWIzUKntA8xwhzgHHmhKoBT1yTmF-zEHl4uWoMV47dKkggAaxPYUOXBwhz91gyN5JZuNmWqtxKtTIVg3aKHUr1rqebc8LEHcI2DNx2xAISDBrros8G_K_fJu96RXY5uDzMwSp8jG_GN8ctZOe0po9TOw4sLgLAT67M7gV2VqKqzks4LP-mJ0SHeVEZmfv5vM9cMarBfQkk4lxsGYFFxbENrh5p0s1eCvjktIKxW1a69mvuJilCqsSEv1AA7K1ntjVcEA1UkJFKavG6JshRvbw8Ven-l4xTK6Zwrq7ivtOm3k8cALj1Ok3JCuNhGMBbwqGxbdmeaQpDVQTtCqGSf8hJsbrXg1BXvaliybDEYkLUzVU2kJ5qC2b3Y3zxnK4p4-VdY8Oe_t53ecmv-wky6Ot9NCvG5Rk_dzL0xE1Xo2JCDgwLTlpQ8gShYQKHkDsl_-urWRNZ84PMa4_ijxjhMF1zRzYlNaIS54_LxhSehLr2LQQQwFFfXe8nUaut_YpB-2uv8rv4JAP0iZz3FUm-D-X1p9wct64goaiY1LzbmOd7UB2PTIwvopS12593BQQJY8eimnarhX3TmfTkWG5aN7R9Ad4jBr945hj9JbmMsj9tQ6B4Bmz9lh-CaGqU-nc0b7Yi9NiGVegx9SAm1zB9ATh_UPLHo--pVAWqqfed6nKpUE-oIV2bE0OYuCmnXAC6gw_U9rx7ZnpRTgGTouRXg4mh3iFJrQcmZcXaJpeINQsJ5g06FZBes3pNenPvpiHqt5neOxt1BbVEmRTR_hbJeZF_ZO3CilSjQMpMR3oSmSIIRP6640wwp5ncUo1ymfkOkHQy9PCXH1GgrrT5g9PS0oNTh8za-nTw_NR45NB704a2m2vfuMI_4Cy6FBIT1LNQr3xhlb5B6v5Vj8Cbf7C9E5XpxgKDP_Fq9IWHlsJnVWTAb1udVJShj10_rPQMs2xe610-azOsxftCVI3fenF3c48psTEleJAzhCQlf1fo__fngKrfgGTh3ho1kQrzgLV_gaDHnFKjPJo52bqSNzARtEq_QcliQRcsx58pe2SQY9a7Y-ygo5hVtwS5z0bigAksw9iuOb9kVIGfeiF_RAmkEwqyzmB59GBJiMwjWGH6oqif8lEXTLvcJv0rvvG9Ijbn_Vm02ojfU_ynXv0axTfko3ZS_UtPC3_LIZqxtNwklkTp87bAtXCwDcTBru8KjXIhvL2KeUHsBcIGahEI7o8anZHsWcyYSrT4nn5DZvAHpKA90w6D3TUs3OQF1JbNcMM51JBjFWYmJCLHqMJsqUe5N5n_qmUId8_qRZuptZMOSq5QWvE9Ebsk6XF1kIby8dTu5oXs3gkG55dVpKZJKDuTUhUB-LXa5NFZ2DnKUZrHaGVyFcHY77272GA1IVyDFs-st9ZDwqrCNn1Mt1t-obc2p69jUGLfcR4VIaVZgxthySHKDNimigx5ICjnUio7pyKN3XdBeK3cAjI8zbrSvIKImBkxP48CzkOmuFRrrGYlb8R4C4GLDxtzzkgVqVLAPwpsFJTfjYTtNokIG1Azigh7hCRKa84fPXIQ1DgWHFffIyU8MYsgap3iYCKgLMbBkl55680t068kcSpnZOzBAbMJ9o-xG5UsOOjYbkISN66YWcvdHU16GDt9UyFh4k4AOgg8AjyMcacqrWNlRCPUiGkdStwfYI-iWnLl05bMeCJHRGY_QQjo3WNlODZKiNaUQkoVIocqptt8SGzlnYr-n1jX8kWlLtGlJZMMbgyoHAKl_JfBJJ2ZmR0p2unDMxmQRp5R7F9dP9O1qPcgd7NsW6c31g5_jx36I4zZ_IEL4IEK_K9zgT5JCfRge1dUNjCRI9khuoVTi8if1QuhbdwYAis4Ta2SmppxP_ro8XEemtSUvofAVNoAJUvUlphspavnuJKyBQCV_cfhwsKOfr0_2spReSMYckNh6i3wwpRQvkUsbqf7CKLgnEdNPdATK_dZJvhwEuaZuhUsz1MagxTLk8wjhINZGvgS4ux-OKZ_8T-8SCmOfYEqa3oqGr-3LUi2Kt1vHHEcVgmk2UVr2G8hyM8A34SgQquvqlOmc2WkFIc60dkXImc6Yx568U9FN7tMOWDTM7PCEXq-iYSqvdCfqxFqx0L8Dl66f3YA3mXO_O-J6ku0XfshzB86DVJ95_bEE42uxB2-rpnprFZnNPm2neCLdYRdAVA4CFwHk3xL3_i7uv-G1y5Kf7ESDwB2vmBTBfrJ0w8h6h4eYamAFfR63UOXh0pJIKLfGRWQgBLhFUBDrWmxcPV7rL94OCvZ3_sFfxTt-Xm4RHMPWEEHZoFfjmYe2G2Zn_uikOON3WC0paiFOI1YEIvfvAekXwTOwi7dHt3sNKjUWmJLbhxp1yYNk5Lfx6tW7ZWHxS7zi-VP1XN9ET2Xj5minq1p-KgHeXmctDlRI8OvtF3Yf2v1HnKSMvMkw5i5Fk_27QVrbIWcYe4mIT4WsLYXOn5V2b2jzAcgjfhZKYZSok680aTNpt3Qxlfl8TyjlOH0X4xmowaVYDxAMugCYzKeG69V2kXeT2enoKIM9sqYhcV-c3w3j3T0g4-bH7TrxPNVR-gFIdmZTPquloHOb-qi9xQ_HDygZpTdJ1fOvcWrtWFmOaoxH9jFUvHG6cAqtHZF04afoCMQpTwvhTdsqlVg7UsxX48pXqRGSCVHa5gGm_ictjQwYOhhRxJXqbdh9tCHhvPGs7MxMA5JtP344dAxHOXcScAsluQoSPJI0d6Cxh-MBrkBiPmJOSXBdqL51xRFQwI7Q6Jv8l9tcpE0WGR-_EeuabSGgYHvsVFj8znTf_0_ch4iAGeEl5utVN7Jm4LFYcN5ZNb-DLTk2HTmhSlVyrqBwScz6S1LnwcgVv4qy_GX5qTXzDHDmQBpGq9Wzl7nxCSElxEGMm9CgolVZL0naAD9Jmd6ZsvPDLTcUYaQSJrEgoo6iSf6U5MWXJ4m8J3noJkMU8G0qHGK_jwlKvtoPXm1D1cNzpZY0XrkOHgyMS1qKoWPX2_28iWIvk6mgGFzIX2jY5Q6JvdMq1lWb9nBl2EoKv5Es3c1KEXuiC1Z7I1jPIV3mbVRfkYEARQY6HahBI1NHgki1imEQemFnUd1M1M6lAxu1W7JPgOn_OT6mWI7NHAaUDjFMrmO769fRwYcUHURk9Vg-v6svjBmY8Wndwu9JNFXqXtEBpQfeGIk0KDBe6WsgIkaSESDiRu7ZlW0HYHix1GEXTOwrozs6XU2LawtUyIYxBjy534bBCaAW8GsK6dI_xefU4QlPGJv1i69R3_fFpueL4hFL2TtmxnWkxlbgyf2K5QETP3W_-u6t67gJ41uKcd6JUGJEXIXWsoleu8_BeB6wweMdWxTLdiw6aE5hCKe9mNNp3Z-sk3fCkpLIcVL-5YZYLrVg4AHUDBsHSwIzxZMJT7zDfH-qmrI4zDqhY6OcOVpU7Tpx303yVJLs6VhrhpBbWNOKmkmdiWzVuNJAfXlbjGukF2ruQoRsGxm2ihvWiqgJ5pQRMWsBjwynh8vm0CQ084NiNn7LhVuJADgmnvgJS4SPDwjyUpZOHAOpHAKwDHW1Dr8dR0aIGoJLSBgeTa53zGUT8vlb4cIhqyjcypK4gjKeO0fXd73lFLsyjjvFsnFXsFX1YUMJ25s-KhqnTUU0l8esDwxUSaxbb71-ATJZ72mUcRIXXlOL62AVClM0h0W4WPmAH35AyUw5lgV7kL5bdtgIhvZWWKEOHGDpm6XhEYAexM8w3sMYt_oFqM7L7C2DoP32kzk1RfKRcsy4fEaThKWWWDKI-gykoKJieHdVg8pnmw7H4bskJqrqb60TxybMJN1YnoSoc0tF8v9p0LJmDHKPtH-_nygzRqhVZuAqwcBNzOs7OJUWddjQWM8MMJH_g0kCF6cejv5kJHbT1JkaZXGxtBVtztJlJZiYRBVKVD21lEfCAFaxeYvNPd2aHcTeVz_Z2o1o5nBWvw4JnAfwv2Jw9P04IESDH3N0-DQORWT11oqrMu3DUjakaug56OKQpw2aQJQj1G6MegTBoKE25TH9nD5r2pvWO2jJowGZ_needcogd3gPJh-YY2SY9jPKqmNX2rWdPY19UW0kZ8MjsE9O7p743LmQ2NRll2BPntZ9F9aQqx3MG60NgSPAIdwfXrvhiWiQ4zGWcC5bFdweKYIdQtBJi42fuXCzvLJhIqdtSI-fy0Ah9iTZIl5LQXZe5gukWnrZsFluSlkLKGCFsTEF-VeMXT7H2P3hypfPrTX0TB-UBafXyVfr3Ifrkde03oarnxF5zO6SWI_SqB1qF-CEnV5AcCjsbAj7uYfve6fSzhsi1ayaqt0Atx_BZby_AdcI9aa1u_G8CYdnwyfhsCAIdRaelmm5JN5ihQYLOWaYyeGntcpUCpLHrKbNQI_1CreYQVwGhpksS3yy0eSGdNg7Fx0uFXCCIE-lkR9vUixOqLVQmXuUf4dc-fhTwUIoQPazbQEdrvuIWSOWkyJz5f8QrTNbb2wcrPbuHIL5kv1ofi30-iu-ISDmhJOCZ2IT_eDX4zq4yVClEXZAHryQYCAy1bmUCcMQN6Agpk6fYzZNOxbnJKiWA036ftJFXSCCoAahIg5itLgbrrLK3zO8d7Mz8u0lQkJKO9wBsuDGG8dpttFMr7i7FqCiMlngOoE4c9gv_FYVGAmBozlcBlVs3rKmBsGX3VKaZbczzwHT06Vk2MSbJPR1OLUu6xP1tjJOwGv0ikOf8cr1-NmJX1xnbTkaOOmJhyfFv_UhoosFDNs8X9J2UUz7OyR9CZI-tzISm3biIpXO4ugo6PxJ6rT8-7mK-hgWNQnhE4paz_MWk8mJr7FNsCYTYSvgYii8PohC5hjvNXnFTsmw3WILsN7zpdph7qPGU1SmMWPt1XNrmvRdS7nvYwOxHmuUInHdjzv6D9vGQcQp4Wx3L-6wrVHvAkiRAsiwJi3q6ufdOAFloq84OZg46KDWYhqvbo1AvehvX16Bm9Eqxunn3jgSY3rgX6CYBm4lMUZyPrtu2WgckgJSaHeEvTohNEo3aDo0M0JQO5UXZmuEI1LVGUhcVrlufDWZaRozoV02l-7c-YaAvRTCq7UkiuwnymZNZEM1LChpvcIH5EHUXJ0uR3D-1IIMakIYPqa4-mFryx2liDFWxWLIblDBZR2PDgyJf0t1Eab76GlVONCOdBw4e2mKo3Hgub1sFBRCIAHaDxJX8y_ujYMgqh4lAuV3oNu-ePOoJvMa5tMDjScZv6ZX_bTWIsfIAgmxRhA7vlIoFRFAVNbPbWBxsZNAD_VCX5OLA4udmyEfKkHBI62i3cuQKkHp4KZ8rtKwZpIIRNEIZuYxR4LHKy5_litXq4V3ODGvYbpMJvnjjkJYouBOIw5yWeXnkQ-qmKhUDpeNnACit56zFBwVfdqbm9bjGvt2-fP73Rm_UXHoUFpDT2V2bBwcMNq9cGrW-bvGdJgwcgxDOCA-tTKRa73t8VGjU5QiZri-ILD_ADG98IHcgtdQCWVEHerX85-A7sAHHY29min2eAe5cFBSxnjYdmM94T0dZHY3raKk_PW5Tk1EfPt4G5EPeBb0bWyjkndUWm6Gc87P1aGmssszveg4fPaAkRs9KZWIbEmwMOemLXrjkMUB5vmQzQzhB7Xo5ZdlXmiP1qJKgbVxTlfw1DCVd8PNEiQfq2NZXa7xfCfB46D5oUY2ATCGBwoBovGaT51ksh4yzqkc3GQy5jOYeC0NRS5ldkNpVg_yTeClfCc7WllRpvwCsDKWYjZTH5aHlYyaMe4ucpARij-BLevI98TC68TWmxeV9ivK_RWIdLmVojQsvwXBvErhjn9RPuSl_jJOdbzapr2mGiA-xeLaD6eVzdR0hE8HYGjaFigKhIB432uWQr26jNQlVgWm1bVTMWhVEUPYU4OdZzQJBNSerVvC-qtOM0PTEETmmqYtGowXNnl3xltzdR1QG-bNBF3t35tQUx0_XWIfsykdkrxOhU6vKDXxSY3S2sMLKZFElAb7Jc8rtfM886DFbt2QC4HS1fu4cvZihgMwqm0MygbhD1-_1I-5LrinBzBcd6y9k_h9vhJrPDvyskVXLf_sfY2ALFkQ0UcM4pwU01VR268zIqFHCOhDJ7dmARCiRhJCUk9egs7C4TTyxf4GAYLLh_JnTa9HZXacL2ltLOmaWVnSyJe-C0jgE6r19nbbRJokcbKQIwM5sx2SS2EasTc3kVKLa6IFO6Y1jziRBEuR_2dXtIhsFVnYZpPL5f5oYppg1yi7VPNBPMK95NbgjUzNAN6kPti5BOq4hyKwLmkAgQrzHUEaQbTIJk_B2B7yi7AzxCzACOg7NrtC4S01LXsNzTITbmr4jYRohj4DllIu50tSVnmlVNNQCzqla7qf4ADpHyaEjcdS4c72S3xWqQVu7LDJKiofx3_O5TtRszw-5VDbfPdk83SClvVsN9BVJ9Q74Z9DJ0Sj8Hqv_6uA4TvpEM6tRKsFdWIppPUe2ZBUZECVQzmqRx1k36VUsWzf6hLhXq8zzkFM7Ll8vIomzfLwTV502AVjEsOqnxjdzNNVLvqd24nxqUh34_t_ak3pGphZyujfkDsG-1-syCMGhee4G8P6XZFdU5rVuQxq856XFVGK9RO90SvUC7WMxLsQih70Tifn-NSdCaBD53pWn8cFSBq9Jd-A9PeurzxIZUwGK4rT5BD6PbU1Y75VQuX6dwqaXwk9LwqlEp7U1gmdxOiDUtPS4iu8WJexXmHiwQIWlaNxYFL5W3emQZ5W0PyGWS4eX_L370Ov1OZhbSeNi2_Mxg9hsR85TN-dOSy1mHR6Pcbqb61yQuOxBbjGGKpxQqdMOz47x-m8h9sHpKHLZ8YczQimoDJE0_4VYuNKw6Wk-DhV1u-DjVuAm9rWijO9YYNORLX0gEu5QYGNxX0X5FSD74S1j1WzsVwMtqxo9f0p4symLkLBWwdHNi7Nv3vjlvH9eNfxQDIZHAU4Q86wX_kPKxRaXs_wUE44OL49TyaBpu5MOfYHWwybkEKlZR2PHRuZI3-BsOoqnOyPolincM64Y0loPY75qysXOvuJWS8sKXbS5I-WdRwaDzNGnzei-6zBL9isBkdKho2AqsnVNB9yuXnqR9fobq11I1cR_HNqHsNiaYg8hfDcJ-PM26x34KhLeAWTnRj6XY7XFOQecW0pkC7PxHX6CHKGI4iTKyF2PER3Hm4N-t_s0xnvJ-_R2ma8wFTiSeFVwmygWlT_iBrabjj5gW82Y2lxUVxarTYykm-BRjwS6J15gwK67pro4gl4lAi5VNzpdwYPwAuuP8EB07JBiHcPmTlx6-KtLxhV6jMLzk009cHZV-Bk1UmrBUJ3n1VObRmHfab-ZkkoUJ16MkLBQpIlnwbNVLLR4AjVm9VxpcPe7HD710drZyajfBavOwAiAimYHZqkDiAB2rKswgRCgbbDRmXBcPmZxdTSK-f47rEKtdKLjk00XCS5fjRe63f2vVW2FKbmqIAMgcTyCyV-zdiuOzpj35wkiv59boY5krDZ98lQBnEpINaLuvw_Pbf502l21XdccUSk7mGAZAURl8RC3lWjZt1muX8uJQVFqooCojv7KE7FYg4De-cvkclkOUPcKFx9En2L_F6EExdf1QebGRCv3Oiop62-WdNBYsgfvZs2Eruma8m0oddzbBw9lonvPl8RN4hZ23h91jef7tJO7e3h5tN9knhn_WKXHh9WcNkPoad32ojwWEGo-vSGZslbCMAOuoH4iDwz7JRKyU_qZf-wVcVf0sQjh9By3W0YZwJK_fBWZ34I3ARZYxmwPR6jLU4ew111qo9pwNPJ843BsHgDHQtM2J7TmvAjc4iiKUALfOiEBZ439yQTIyEi__lzl9b1GHI8_8hmvgzcTUC3Kp8vzFMyNmJk1tOZAgyORTJ2oRAgV1r_wfUb-72baXB2RNOvvOnLtyMB8W2p9gtZx3xo3dtURWQ7w8_mKkkbV8PeaB0sH4uUtfpQgpDPTfNhRzS_L3djJKeb19FnOqZl7_G_WHzky2Y_72ZcFJRULeGAX2vWvdL3gZoOt5vK3akCXFY_n_ATrjtxJoa-kgMJhsZz2CnFW0GFQeYeYW2RYWeF6cfmm8pLO_P9zlja6P7vOZxHik3gtj5cjNYBd3Iv9IEx3X1k0SWeKJF0PaMKgiSQvCRxU2QPY8fwtzYFuhwymt6LBzPjkNYQivznhPrSyxqecMroSeUMCBsyfkKSpeYanOeXFaBzKVDeEbl9E2kncBH5wMTHUdjF5CJ8XMBxZl-MjB-7ZAqlUmYDi2f1r4GbotRiF6NqZI9rNjzBzDgMM_9sCiIAHLWESK1gwyL6uujOlYq1yrLEd4N7T3HQZi8FfZXfr9livEbrv_wDfDMaBY5ibRp_y3PNaLV7YZ5LYtwucH0E8LbhLB7ESovDf6sQyLewymjPmCX8gKTgFqiGT5O4zInaI5t8eVwVUDuRxOQC_UUGjye2GDa5hH89oqv7ehdfKCDjoUE0tAfRwt0fxV2EKItiYU5W32KQIoVXuE6usGMMTRtwJ2TNGnonOOsGqMFyRMUEsrTnrHDj2g16zx4BUhIjTFldSX-idIb5xXIY2NCkVgv-23xQVzUDTw_7yUuqMMZRK4oVjgpg8PKRHaf3_sLI-yd-8ST03nZjH2ZDboJkCs2zQG-kyfX35hu-FlfJvnX90miwgk3lkayKzMvVTY_xd8-a9ccOwlwWhfyDkyyEU3YpoJLQ8DIKbDjoIlGItyqFpha4m25jiiKL8YxeEOeM4zYBODy6CR-B0anzzmkjvGR81vo2SOTHdBHHXmkjPSC1EJp5grrFXMzeIj3240zri-2ygZ3bjFgZpb6WJu4HwTurbHd2T6smtnGLDKP2FTmF5aLGi82CAELZMLCPXSBkSMy76gO49yWAISpl331GuEkKAmjqgPQKtSkcR7V8eizCBeMzg2ePIMR1tpDgrjg33vX4cup6B_GOfMkWEsaBpcpxxd-Ei1lrjufnSW0NB4MDg60FhNVfE3fkM4p0Bp4Y6sDjsj4W_OCAxkt2jgaExg2XZdG4Lrqz75tV0CL7pFNVhBvT3uG5v-LoCHgnsJwdXxPlxA0exdNNdb2R2sa089svAUhbQJiH1-3PLA4P5NyJdGQr5DmQeFxMkPwaRwNRxfHcscQ3Dx6YGzSewmf2gQO7WZxG-Qr4DbZ8Ql4OdESFB7vHEjMbr21fsTaexSmLk6vPVqvd_89EY5AHzMOjzfmTrfA-VUh8lVI_DLRInhvJ5KU4qOi7BruGLaBVB41z9wyhn7bFxEw53j_MRg8QtsAR5KZf75Q5XK0EKdEij4k6DSEQEuTNpJlADxc0ZC-gbnhjWzkCpzF1Y9R9Pto_Z4OZkSo97u1cu_HSNumH2rStynbhCJgz-8tTow4t-9i6r9JVaWRVwKuWQWbiBr7aP25sHxGbOaC2YiRHWnmFPjKJ1TTmq-oM12fAJybUxtzo-Z0kvBsnD8Z1mkV9X_HcqK-WVAzfqH6KjS0aaMDwEn0yq38KH31-UvbUxKfgJKlfCcuVsv-UwAxYLJQ8qN0_gac58a7xpCNZuHpwBjYqBn52jCVvLF3ROIpKlFwtlERhMqKz_81NzYQ9lZb_8qjKRlKo2fx3Ch0U_Ud58y9YGtJeJs-UHYwCNOsY4krkFvBCt8HA7sFkj8Hfvi8GLMojlBzw7G09OxUs7G7MBygHtLqQwtvB2N8_CfZk7mX9rFI79ho5Usug-368EmipPPb3au9ugjVSMz5ZwEcVwTukI5ymmThk139sBpilNgXGn6U22vKjFIs5A0wAlggJfKXeu20vnVoZ5fCLyVeRDvzudqzuOZLfReCH2KZpE5eDOuZfqevQhlJxllkkyiR0K13yZ-5G1IZgGrcJYjv3tf3ADNepvTZg9PtyRWrnIJDjbqjaIQpv7purEIvBe-5WJPkJ4Ncq8FMKuvaHr2qMw9-nYuxHCMH14i6nMoehs06nWJqNrJe3oARtOOjvJgY7JXH9yhIXbxLUCA3i_myzea0l-1U1TQDBsDoYJjiW_lbILIlY5tON4XWXcYxr-KB-EhX8fYVO6JubUBSPu-05Yw1mllSF9C41xpZRSPWnMduRgS-niG9JW3r_tx60hkygdKq3fc0bGkApEyzmGIO3h1lpac5GzAp8ErsL6UWgoGBtWxn5DgvJUTOlLWfE0CcQoDdzcaYLUIWuySl_arGFS6_48FwAB1n0U7PxHLTtYsjfM_XyMcOrhmDv3VjqlNeFis_XiDsMne90q4auXE6oKea8KgI6ArU30p8ja_WaYZrCDw48ke7fYAnTwajvnqfn7eb3G0TW-UMdSNLz_KcVI89WvwYUXqk_fEQbrQInj8Y2FZ5FIjY2TCY-5X0lx13euo60azRwduaIuP3wGo0Z-i2FLvBbJFXwbDv8gaaxzBub5CpvK_y2ic3ClCikR6ZYGLicrsBHKALvDbo55fjzHNEJ72SJ_AHVcX757Qal51DZ_tvvio8bGwOMxbSig5hKOfTx18jQ44JG5UQIXl4zzYkp9zpuNicZ5SmL-qkQfCFTeqjoTR20uZhDzWoEi65LjVK-d4vEew2J4d1N1Dyhv0F1JUhrN1o7vfwc01iWvaaBrarX3c5I_RNP2RybhUu4Kdgy6auZmFjr_EKzTIIqRbk0ewtuAImACh6Jb6vY8VomF5T47GAOleKcLsf0KfIHPIzDoMJ0dkJAHeRu9623HRJyAnJW2T3qnbFnsd2kA2PEzqVfo0QkBufpPrYzsShV7FLpmHyeARLZeYKNNgI7oo45UCAeeXxU7y9u3zOAl4WFK2zofs3ci11Ay5_lppB_rbqtkdwMgaasqkJA2Dl34pMJX1HvEv2ZDmyjlNbBEW2nTd-PIyfSbMXsyMH-4iznGufshztvjenmumhaiHEgiLfceV4udX-HzQM3fqC6LLBAom9tWdl1tBDQ5To1m2Z90DC2V8Jm4O3lcFwZsamGMbmBAwyfFPqLtcdZRYxroNkjGoH8yJ2-dMvkCmMB2K6p0JzfYy0nD5D6p_W5lgZ3tLo0iqhoNW8GoMveJqUaAF0eV6Dh9slSrhRbpF3Q16xSJn8DwqGpGyu797FBnGe3AljY9NNb_APtJGWKC6XOrstSjsh0fhuAckB4BGaASnOHfZ_iBhJ7CFxzf0mFp56FNTNL1LDYTCE2tzk3VKqjqW5BeIbhf0jUzaSMBpVKA3YNkAbKe11NXp1HpiEI8HoSxhkTyjkUwO9_F6G1SNAuxz8kN7xc8u4Xcohx55GxqjKmwanV1dyorpWxIDMyMorudxFz-bIC8xEoGOUjjTMxOUbhwqBIJ4lWCigGow6j8DSzQYyLANgBzSGuDHF0nyoMGXDu-O1EYzizx8lISxAQZcNaXYAJGdWW8PuB6Nr7ugGl7P7RplyTLxJ75jYVJojwsz0VljuPBZBI1FcvfyDwm42vQceQOpO8YWJUJ8txtXKN5E07Kb4JF1gNFp9OSLMlhFrCQPzbTBTQslv0NRqEj6-CBeM6ZlS8ED7j9g4KF9NTJ6G4kzPvc7XUq-oIIphdTsMIzzajTuWPfZaGlgP0bZPZkyJnSnD60BbwcmFfqQ-Ef_-3rQCT5a_Eskr3F3s1DLPTAVwDiqFEzYNowcyCZkJ7f-8i7_Yqh9QSpQxMniVFyuMU-M0qgzYAFZqXp0EAcilBB3fh28lWXyx9wiGIKA98HAZBWJKMKdNHiqseSecOn8B0nTS0c-p22TDFIj0cLAOu8WYKVCc-U_zsbofxgbM22RCAp5HIW1j9kpH82CSY5gysusa4F5wNPJu6eAg0q-VTugWGu5zMOjkt38l5tmHXRbBoA9JiAtS-BFy4OpE_fAvm4pAr66x6c3d_tb2-_CCMDwPd_Dhbvd85xqLVJOAPxWt-hEilCZki-PnxYIWszua8bqQ4h4nGmOQ7HowIBiBswtN_Vu9cMwKLblIo-cyUC2hcySVjZ6Udg-Pq0StPCliqg1ypY3JDbdMGiLDgunSsmeC_jjMS_XNWHF41bBI5AeRjSUeNnuSZk3NUjQ2cymzeaeeIEShwHDq9XkZVr0FwtkcL7fmPoI7eBCMyh01SObb3f5Pja9glVcj9NdZpSWmqUXg2iSRBJP43R5cmhOnOn3b4U2hP0mJr34ivdn7kIZAw8oBtcs3tBIngIhNouWTC0Adtp9I9l8ynWIq4J5zijHyufpLnGe3vNH3rpVJvF9rkksnAWAEJ1ohiDN7f17oZvq9v7V3CaXXZcl6HN0ivxmmjTwJqyJUkV4-4axWnei6M5rpkQhGLEJOKLxdVJAW-wxHN_VRJcj4o4mXy3P6Scjl2iPZ4ncZerBK1xRX8VOBKu188V7tK3GDiMRfowQ0DNRONWtw7KgG5nYXi8mNXZBKrQ5s7Hf1Mqgaz81VrBRpIGOTMviLzRwD5R7RIXh_m6cm-mRIFeMHRgHJPxQI-UtxnMAesR6EbypI-0BWTinSLzeozOKENxvWyUVlZnguJMtSr3Uo3fCHw72CboWT02eWlIXWcnZXTu8iUn8bdWt6-ithJVqTTkzgbzdAwtuo2AL1i8h6j4PRjEhDJAm5gnGuUSt3UQ2r2ptqjfa6DR5qWhGo8ylpYFcL0YfzobEa3_eVZT7FPDqUjj8JbrIh56Rz0WV0G4wuMDbH14POeg_3N-qSNP0SXbHQ-i3QpRv-sTozLdokLHRrgacQCbYb0gQAlfrAo6i8bll-If5L6v9-pJ3eIdPMq8RElfuUpCxE9Garnw8ttBnXpPwZ_sjJLo6W7VZem57fswenf-OhYkaCrv5iQ3wuoQeSfk7Ktca2ogMIbZCk0gwxx-0as3bE5D-MnLjG6b3VdXngdqA98oqSE6Crl8eS0YNMniH3VoTt5-a4AILKfGxqsxKf75JHv81yXnYE_PFFeSfVYrJPEB7kHBbeXm44hQCij8So3oQ2w3cZC3zx9Hal7aBuQmKpKVSzQJvbOyIa9RD0aalAiMgIZhQt-jLEi4KGI1ctk1nEuA-hQ3SgcW2-56172wfCHvTxowN-khiD0qu-eyt3LQkpAI5nkTpyecPBkNTHFOJYF7J18jq8o-8MIp46_pRIhoYoW9l4xiG5HLe8QlwaaXmq1A0Afm-GwjAdzRhsw1f0e-6mditGvyWrv3uKYXcRz6n0APXTRH75ebBNQZdrDKcQOcV5nifp1ndAEU4uafPjZCpUKtPyT-bpJhYKD5Goi3MykXpMs_wdeHg6ctQlPnFHnGdqeqgzYHTkTW_KgjssFT-HPTRwDaXeXgPOzyyKmt61syntPMapgx4V2kvPCZcPcLFeQES15zYxM9scdvHhnbkzU-S8gVYmd15zAarpGC8mvF7hLIxXHVdjEwA1zwwgeOYSCxSK7eVlfyqPqpJ8QDYUJJJzkT02h2Vh_bAhxYYVGjfEujZJQXytES78Xqr_jiaiOrQr7NdNN16Dnh6UKn_yN_yqa9WPrOWSB5xfM3jWENMc381e-r8N2q6OdV0zhqeUp0FkiClei9q8F2ytMhUaxxCJsCy2Fk_VlNnniU5PWED-hPwiNiPyPyu_ArGfFgaQnSng0n1bhHk9IvrXG0psNjEx-UmQbeSRAxi0GcJtt9CN1XfCIWS2IhJ12j5fJrHWE61KP5h1rQAogA87_i75A964RIPebWIjSkOXkzMj533Cte6E9IfpGJg2J6jYsaF6U6P4-jTl2ZB2pJoQZAPQr6KTxqMQJrDHNi_fHDnJ1YwVJvdwusZFz5s1F8SQywm0pmVyNGkINM-oGKy63nNQijGGkCfDcX8a-2giQU229L0AYP4c92fn5AP2545gbKCVi_xylGV7k_hnyYmnCnGMomwgFvNAMssCxQUE0ZJvVG6zXQBQuDiiCyzwt5ScCozvSk3-lHlDyQTqzPVcLwCyghlCS27VCPZSV0vQ8nrk-E7TuJy6sQ7mThruQzJKlrub3S5LB-xNlngq7ZYF-neNfo0oTJbnv_2Xr6nONU-0YbnTM6wx1uyJijNiQP36oRXc-reu2oGmjFVKdCaVU34jF-uoHolQH8x-BPJQoIlwpCLoN5omU0p8XJhV9QUWrg2d1fedHSCtvfZKyoKwdte3t0mJsLD3dCsHIBIMXke1a6Y5m_9AqJt2vm3JC5R5DrnH0Y4T0gfESIxjg6mULNhuQPWgrrN1uB6CcRbZWFE4EhhQi0T3FpzMLvW0VrqFeOxyhd25B_7upnq3mH1condFrkdn-54e_XU12jodhJowjpzbSN_PoAOMLZWLW9fgw-JuSdpu1SowCFG3barXSrZNNXhoxe0SpKzhGKMPT9zl_TB3_KjoPrn1_MvLtGInzkt3xkGj-Hh75Vb3fok9BZ7zjccKz0dUIqrHcaRY7qtxz_po1ImMw-UgZHdqh2ZljnJizZn2x1YxpiViKIOpzkBZX7ZmumoH-pQ6diINMOxAxfIUqaHUYoQvP-fqrJld41AvE5mrH8jKJdEphGdfGxAWVpBhOcag0kNp7OO93WLmCvhj3tYXlYrUK6pV74_VdjDyzr0YaJGVh6G3CLdgCbxUez60HvkdX3KLF2fzAWwmfHP-ZLxjbxAQ8PwclinC2ao0AlL-lsoe_0ch1Q2Q356MRXtNgRtYs8JLHy-meFjQxUyZH8jIDZzagiSTfJmbk-7Mj1w6XLBUHI2Z1yd44HJHPzyluyBSPdvlIkxjvk7dongR1rDSHFR_JA4ER6fubJ2jHzBcyBw3m47dXoF0eEK8yZMSEVSdbdRJEVW0bQRhGpuZENfQ7JyKTJk8-DAHZX8w74a8G5575SB7_Pcbh1Aq8cZQ6375FugK-KUzNQXCBYAZYFNJsYu8cwijccWQDh7IbHmfmgv-5phfGdwaow0Q_jVxI_9K2gq1GqdpHSmYwhWoH66IR1H59rPUwKTZ_CNfLtGbJZtvwPi7ovChSM9kKWZD9kMLoEmEsjosBbCJN4U7vADDyHXNsJJLXQkr408aOqDSTbMFbiE8aEl4QXnvU6SvQIjOTtvfe7krK4Z6qNXRMI2dntglP5gmjnFRk22g2rAKTVcmEHy6CIFA0bFsNjtr07HpIJ8dvt8OvW5665YbBPyddzkXiZu66gVsqz6XlhWdGN21g6iDAB7Ge0s6eGb_ja8CyK32sXWj-RhEYzVWV_QiQpT6nJobYXLX260IPDihx6rkRkwR6GnM-doG0ZpX711ISylDPlC0bWpTJ0JBxCRubGnvo4SSmPOIZmWk4mYwa1YjVRbkuN-BAWzxGHUvNuPEu4zMZLUpdJsj3cNiCtLvBcr69spuLnM5RLsP4NFJZHuESKzAnSpCwZV88XPf1U4LHPivrdDtgQo2u4tUUMHjr2-gx9RZEQjJ7bzCtXUB2lt7WOsrTv-kzwd0OZInUDEwS7otTwNvqQ4h9VE7COyHXAh-4QukmHQeviR9duyabXuCQBgiOskmOoCP29-3VWA7G7pK_c2H0uxJQSdQGz-eIc3NjRm1fNeQyrQhjFlEj1fjKc4UWsfk4VDAVtarUZuAbNujCLLJZItJOms4tvmjETJFFglT_vlBipdAEQUsvVuyIUBNdI7zeJZ33GbT2PMdnZ-DY2QVoYqw3L7gFkj2z9xRUyyV8lRlp1nP-vUTyntx6DpzEwbBzuMfTINJ0YCeh-vObbfggeASy5qdrPylQn5kkB4X0tqpLs5PgDkllZrFQ4Lsvgh9RjTQ7k4zeQp7oD_-8gFZQgXWfjjpR3ap2xftGBIjIQU5YXXVs_pu_6O7cY3v_RSaEsabu8xLwjog9J3y0MRRd3y6DuoqrpespcpGCSBUk6Dgfx8l3kALdlGsW1NuVvQ99FUpYlEml7bzE7pQw9B0tnR_p5PX82dpDaIExYTExyPKJqOzyZ_O2rxO1YX9L99KAypco4kzzKCWp2v_lVKTMaJxDBCbtnNRi3knE0kiE1ZQjFMtux_inv0BuN4XYgq7FSkk7tkmt5gyjbkm10pOD9_KFV3rhHD8id1-FuPGCjq1uAA8SA3oEWmJ_sFHrxMSA-ikuHvM7gx_TVapKnt1CUpR8rWYXOHHNry0HI5T4AujfjcM9jQqXf11uUwmzUftPxepbwt-_iYefmeIT1AjT-86OP2cXbs-JKQnEEE1IPPk5FCUUWD_fLbSEOaQkqHFH36KEMOSZrZnFMDW9poaHT0sV6t8wCVDdOCCmw2GH2tdBdLEC1NxxG7yPM8q5RZMNqcMdFHylrpxl4JCmkj_VUe073MU29KFTW_Rbwc5aU7zuyCMtlzcXEY2849m_EWvjERp4GQ9iwk1BXuWgfdqcYH1cd2OEu-NKUPFrUc9DoV4kQ8CUuR_63lCGRkKnlJ1L-aIg8aUbVM0q6pajmrSfeBuw9MGwy2q6Rz1vPrR-VHWLTudk80oRh-jGNrJtOVQLzYTBaSsypFm2DbcZokawVAZVttkylkvaDajQ2-fqrDA5_psj5CO3wBLxVtNWXsKDeEx0ZWv3MJZNbeboqdk68Kr8GS0ZP4gIKtwGuXJxVsCHSoXaSzEYTevEqVhAbXpXhBcFWAy0n_wLUbBs5P3tv3_d40dkVLlL-GBy7IePuOCyu7xpSiQFYgInUOwR8UX-NtEto87sOFJUkaOnx_QhgFYn-eHdTdFQId9Hkr9aVe-aRx2py-D300PaeABmH-OrZMYBs1MAtfJH2avlbhSrXY4BtVWr2606Drrfg40rQ1VZ0nIghJIHpI2pJXC17a-YYLZOlohy1VdcQFi4Dv4FhhpkIcATiWOcJFdcOtjc7cyVBa3M-AaBWaLwD1jM56Ze0p9BXgMmOXB70Nw5oSf18G76I0Hc50sHYfOIV_BJ-GOaXWZPSuqUWpjoMDmHQE_IonP4C38"
+ static let envelope = "RUhCMQAAAGh7ImtleXMiOnsiY3JlZC1hYmMiOiJMZkR5OU9qVzF2V05XZlZjcFNoY3hBTkc3bWNXSXBzckR0UzJ5cmxoaWM3S3dkTjFhYmlRSUY4ek9nN0VkSEY1cDlvYUkwZjA5TEdnX1d2bCJ9feLlsq-zM5zgqUvFyAJcQCSafY493-IXJKg4kOrsLKntqmV-JSD4kqei1Qmp2O9oVNl0EP7NTp9Axkqfi54ktgeyBXKFLHvkdD8uALQ2HG69iXphw0Tv3t1TpLSFNgDMiPxGYBNVrNZNSGDB4CC1YGK1MK407bUx66NdHAL2z2SwEIpBTyChKwOgIxFSp9EY-kc2K29WT7E2v4q5caQXVTxyWYSso0XlmKP-r4qR_aL1jMH9WNF5-n2PEsMvuRs64aaAUqjijo6v0HMxghdRiB14DJoFxeNTkUIBMbgDBI6_XyHdnVzxiRidrW93NhL4rnIFvOzvj4S3SfBQmmN-_qS_BY8cURE8lnPKOTaz05_9riitW8MDkGpZhGA9ORdJDpJWWM1HLPG_A-jNQUjeu4erCY6wDxOinD6lk2scf0pBrBdeoDlgPi7MrBdj9iYWOJYfpyqw2Z1Yt1cAaYveDf5-yJoQJeZiC1Ya_5twe3UkUneChpw3i875PHIAT5KBbKcHaX4OBGwH58gt3NGF-bBstrW9UTTBv7uoXPHrrYYDx01hsk_oJjDQdU2uCJjNEnarqVhQTN18SFD2V_l_6ljebSFXtYAxbEsheMksFGvoYG03Mkeku5mApLFOlSDtpePsUnndAq_hJYmGW0FZn3qxJvKw_WukgSEwGdnmqaOS0syoUrFroHcot_uLiRrQDzzXofjyZsMp9WEQSkN_WwK1g_486QYj7jaeYociZ8_MF9QpNP2XbpF7ACv4HJqP8Enpw_X-L3ZYniZsQ9C6rDSIUkMUWqZ1ZuCbVKwTWF7sURdXcoaS2_eKCXvlMBs-KG6I9NkorLR5M_1lFNr8-Dpq4rIyYP2mix5Ab_Irb_q87iP-TkFTx5qikrcpKR3wZ0tVN-Gtkx71MyziHfBP6YuDxj5h73O6cbOBfbbTsV_zAy1aAfVZcBSHaMeCXnvtYKHZfpTBdtz1xEn1ruS3ktPRqU0KuXbZhrWlWUgVqtnfkK4PGiw3WEfppHZ_bF7KkHt09Tw9fYvruH8IOBDjnpMY0PbM39xxbOhKnKTWPvJ5bb5KeEc5723wFheUdPOKOmrMLWqDtzmvbPcOmPfMOM7xhgWrl4Djkdsne2KoW3GxWqKVGx1hksuU2Arqv6dEE62R4rStXtZYLzJi74oBo3uzyj_ioBpp6-lajCxqng8ocTEJCWxpgKonVDJAZ1vLxo7-Hw4LVOeBKDdKXLtoNzcPOuuggd1jS_II7rzhnq90_10MQ2tA3qHSyX5jltGrn2_q_I6cjeiG0gevYvda1vK4GG5c9yi2qQtz4A8MIAmeC9UrW3uAeOTXBzDl_kK_biIzc6CpyuhEX8vyi06tj0pwg59HgEJBgTnTNC1H7RMNFOAcj4w7F05bFJx6VzFRx2aauznkuGneFgD-x5dy_KLrB2UKuULRZxojC22bSA1y_XuU_U1lTXJapaGN26PZhbCDE1Kpcq3XvPvFaa31lhGLSMQnhfuh9QAublJaPcAras-bGPopbV0MePVOln8waaqGBe-ihaD0X6LorHcqVcz4G9tp9oWPa2AzqIOSOoyMwJewqpStVJotSnUMDNHNmhUASzPAZhMpnThw_BQ-KuaS6r2ucdNMh1uQ73rgD1vBmMoJGCOyUw3nnTm5NbVvxmq7ftM2qRHvcL1VdIHs_G8LOKOUkPqwqOqsj5kvPOv5U1AKcQYlXB-wamg_soYY-H6yc_dUcZl7cFkVloFIC9n_JjukMDmwgsgLJLzlYv7XFyqa4k0OslA1DTa5cUTu-EmnjRb2GMFEHSKCdMh19P2MvBb1aZ1obAzjUJOTgdRCjXmu0Meh1OTIl9EqSy9bzR63c2vyvLCpkRx4XKPgYWfzSBq8U773KxnYmR5PppWQGxDdFp5N3J4fjCKi3aFANNr2XhIDgtSgB5mHeLqQV7FWP91Q3_oJ0uhUbZKDTJpGIPyxvEz7dTshPKx6X-YZ9Cyo8rzlkjCzLHxQhYl1nC8BPVEs7TxDSYwG38ssHpNRYwWfFWFk1v2t31Fc4fQ6_lMh_qY857w7D_tshGtVZLJyFFK25ezz5MsNSIxaCGO-lGA9VqosVXrWHU8k_WGEtvvyVK9TdGsK5lrkWDi0SCv8yv7WjC9YWQccKhbf155nQK_mRRtIm2tbvw5bdBuz74gOcRnaczpSJE9aEClkW1ED925TspnMK7BVky9ce1gZFMs0YCqNARoQVAVkcnpXyvDVWC2XK-I4GoMI6OMwlMsYwEY3fcVMkYQ5jtLC0eDfKMHHeHdlIQ9Y1bxmXpcPuYr-7-Tju53zCwMWewaHiYRvv2nzYmRdfatxtEnY-YzdgWmsW9t4X1r_kBKcUXGptGAp6O29GajmpOpfmCc_GNOFtrYE3n5W2lQvEVcuNIk6soHT5pxp2QMLH9JM6FMO48dk_fzdlutvcS0X_1SHUZboc4BPXjrMQhvTYQdRRmPMx87Y07Qj-X4C6wDkC5EK3DcSOwT4cCSHvJMjgFYfzinSh4aAb7xajec_uhynLUpdtMTUrdLDMHTapwoIvKn5FEU9cX0x8NZ3UlEJpThluwCm8BGRbTIKGj6IXeX0a3GRBI_2BRw0LwRhMppmi77pJni9eiuNBtHNsa7MQ5hOPf-Xgqk6I27VPbgfRGI9tgrbVgTk5qyYvfo26sHXbo1naCPrPp_8KFuC2LFXA93H6lKgVmHuiaXxtSKeNuaQV3TfWanT91twY8cJ_TjwsCxPeV_-wNbBtQx-H5bXr2uqzNayKLSAEFFzNq64qoZZfye30roQRG7Z1QmccHOD8LtiZa9jyY14k_Y_NoxxiyPWaqhAV7kBWXhrgalck3FujaNRr9eI-3O-EjyaBWOOfCbvU3fh-H5BguoRrhV8pJ8A6kwL9ouyR0hpbLcFh_1hwVyUQyXU9FxDGM432v7g8LRdIOUDiLEiycKgqA3U-2DbpG5nnK4wWJyRh0z8pPd05pPDSXRTEoRxSOqQ6Q1KxCqt6iUtAy5QcVYXqPjfysLFoOCXStxODJ8McIHwFAWSMJd2GWSgCvd6NCxzy34HojznAeDOl-w9Qhb6mK-3QUA2g5xyOyqU4sfCKi_UKDJqPO_vuI3BQArkox9foDkeX36jW_eGmphZ-0A4hampesB_SPU62_ZgiWJXEwad8WqCjO1EdWyPnpT3H4iggvPqOUuTw0zuttotURe4A4WlmdlgpPPhVcqWeqmlSoxcjjc90MRmGoNTb6vA2FYxmJhoflbTMFLVa9Ry9d9m1g-xuaRBKjIgKEdLDcuq1Ne2ac_9t8uOpB0AWb2Rpmur_5qG0vhmb3O1WRqoKXhaUKJ-Xb13PNLpGceZq76w63dZ-FVexdjzQBvYWeIxJlvv8BMFL-CVeAIZbO0SlDsOWfFD9WKMMb4kyVbzOxEkOTEduaea0IG5BchidSb5NTxVTBpgyIkAYwRQgBMkbrbURze3-8uaKvbBfYtFLmRDROg1TGhdmtS-MB4445iMnii1G3mB1xeeHVyEek16EO0Oux0_SR35rCxFIW3mug06rZb6IGIgToUhuBI3o_YG2x_iFcV6GhEQ3dbsOYGfkzI1RhHN9AqqlrM_IcyalhMzP1GGhKRmwFqDaEQRj9QprDmmxynVoCe5kvWuHkB5-PRcawdQ_u1XNavfI0MlGeXyZu1N6J7tdsPs_CHXA3h-IEQz4cADhIdF1mMn_6ZAgHSY-Scl0E7msTFmeyofng-OBw2kN7S-b-r9xn-vtry8aa50XvSLd74XSjeyFD_CIHWnuDn6cUWRiWyUgLM0Qg8mupUGK7rSw7KYlpx1MQr4T13Ju-v_-rpy9mTCRfyo2lGh18xZKadtNLEZEpuQDi-RyNVNJPlwchqrFwTc9R7NK1OSso92SrfkCroq5F2Y2uTTjsqPsETEO69YUOkX87IomSrAxTfDWGeWk6aAkhp3g8NlLVlC_iWpR1aKforMmE_kyxJpcw2_7XrLzwLBBfcPZklcK9k3eAmxRrjUgPfv11gSoopZX2lp6xo0py3jwbIaObPsPPmb6JAAXdGco25MhqumEIiaGRDFybb4c4by5OmWwrUSYhmWwmTHQp4QLmwzrGWgdk8oPIXsoB1MY7Fpo2hqZ66-nUJqQ9qgctR1RUmVLVQtY4gNpbTE7-3Y7uUCl1ieezTUw-bUEuiv0rNWfObvpgsgh8qYAWQCBGNwHvuvl7pybjeavHHslaaJAEOlzr0HA5oHKndfc9a958RnVDtHUQ0oUYX5IxZDBwzrorWn5FFNRyJwa--apQYtzvTHT3XcgKvxTci4KntqfsllQm5rQ3yNt1EEdwhD0RqZjfAH4Zw1Z7FAeuCBRjfTYT2C5CIXXPGYcmbSScqDc_YJ3dCo42h_KNCuharRIKrWGsupAYrw12DeY1Bsxxd08Z0ZEN_PKPXo2p_wsZgHyJFHO7BOQ4EMoSNrbO3FVS3VVoZqIthLaYIRy8by1xmbDHTVMGRdpMEZgI1bUB-LCf7HqXP7brzy9pssRvGQW8eGUr2L1tNt58kcpFX8kG8c3BKScvzBWAftQzPn1Qjk1b4n3wOn9rq_270WhXuuFLtd2bkq0RF_RdJGj_AznXnAcY1J-C34CQLambEjPGQ9UL1Z8RI4J_xe3DbZsFF_zaiql6zSfKVO7gaB3FQYN7-NgQhcnENj1DuCywwUXpVIgWSPNsC_oZuEs-v7sJXUxv4wzRcJVAu5b5wvBSxZgFRiZfku4GQ290aSJY8yY8et4nfcEkZdGY240zRKyamvI_qOPUYG2-yDGSA4wVZ8EqQZJIBNZQnK8sPyOFVyXhoiaND1pkFPHt0SRpxoU4mCLN-Txqf5iTgQiXdc0-gGD1bFbPR13RJZUi5_Fz0FudE00nkvtIe5jXIdbzFQcqdVWP0ioRhywSSZ2oe78_yJHdc0Oujr_PYRQbcPiLLXzL0t1G_jLgm9AjiIFElIvyzW1X87tyfrxkggStiBZjvpyeYjklVUirWn3m7eo0VIoOUGCwdA_2Azb10iGoZhsRolTbwT9Ga9vXWB_CUGisAmgx6gNsVj5ikwpQzLKM-7_hv2plsfuj7ZrPwPARkONtKYvA4rFA_w6hcrW--iVT4LnLgsK9gusnkJhp8Ga5bgdpuzwwC_Fnq8k1IkDa5lmoep_YtIWKJgZYJjY1RBQSZfiVcJMyP4cFNK06zALkbXXDahlUF6tpsNqYplQEr4LTE3H3YSm8M3T83z7zkvrAdLLJc_CIopMz4bmrNs9Fte-B9Dau9YBrKrJSfzSUVBgInuaX3FSBjMAIOmAkrd_sNbCULmIvDNmany7ElrHBHElsbG6Qe2g8M5RYY2wSFW-DnZJpTL1QSAq1gBTZVRq-4S9Q8aeGAvCBWQ6DHPOlUSC8GWRq1YZR4gFfk9PchGFC1SJYxpe8YeIffGceTVOrp-JsnnCalzF1p42uKHpERgwXr4BaMGPQytTM7fIlVMiT_nCCLJhcMoEJ7y12p0ujYsT2LARQ-PXSBSbeaMiJ6F5382hQfUyVFkjpyPLYdgU_jgDpSMiJsluvf1kOyhVPLxkG-tF2dgrvVlRks-4K5akT-7-dbNb9x7ilgU7mlBODuJShQWrcrWPgZcspy_4T9qgIWczjKLpaRb9KZRJ1LK2BuOrSueAw5Hqh3zu1fD5Fw7k6kxV33SuVBJAO8MpoBS1sjkQrI2HlW46fakJ1zBtAkrLIevpbpFWoloVpjSvIpgxXun_DFtyl6sX8eFGSYxijWsq4BU5Mj7Tt1WaxjaD_cN_O7tLoDwPDxDg9cgCBx3YIitqBKnE-km1FTys-3DB6offIt41LtXzPW1wvYHYFCnF-Pkt7QubDHQ-HtNGYKMHVQghqnC1LAi1gate7Wg1ctgilOt2udOJeAm9U2lHdU-AAQAnmulDCFPeNf3rmfCekMUVv2KoZAqOZd_IbJ6MkbvlUgoJheVf2o072xwjxWdCdJtso505npQO8APcGF-3vmKRTxPhzLBGlnB03kYqg3VicIpvl8klznSzrLuu7h4Acd6D5L9Nx2lvEhg6TI4RZYo18wLI-NjPROihScoYLN4fBRlrYwj4fHnlD9Cdx5bkCeme34hn-YZ_b8SwhG8hDg9MPbSZ9shkRDHL_LgfLp_UwXmJp2dIBuYFvPOd8qS5N54XXbYCtRJ_d14Q2xmLN6NICUe-u4YbIlLW4l29EkKMZreW-DCAEsxZiyoJDLnSE5cRIqg3EbVXkrTXEscfbxcYLWHw6ZGZZWh6Xc6w3pMWk0khEO1Rvue-VqdhXSzFss_RoD1X3R2Al0tHcUQbnvwsc8eYjAeuCqo_oOGUm80wuEdiOP70-_qf08GFo6CYszz-KQ0WN8XWtiq7wPPurCInO6IZH2LZL9fj67m8idJUcLFjNznohiGT0RMS-5zpegv5FVIwzYiSLYaHdDIqoIp1o4pUzZ0VZGere36_7fUt7-ReMscnfPiyAr6S9VLbSeIv7nugXongVv2gG3GSBTJW5b89nVaQfuu2nVUAx4rqcr9159vu3HvPHpsyIuq-Mkc2NM7uuC9nPzXND6n6MhfFlHaiazD9kjJy2tt6yh_qjJx4kJR5jrZf7xYNCG9rVufivBe8M0UGEl6-M3WQvNeyVBayc-KbgGFMlCuT5WrbVQVw16Sc_j9Eu3xpXNY8UTmnlrgHI4o7bPXb4tBjQOH7cIu9t29fcTif7FF2WiD5sqoGYAbu15W39mJNMmBbia7HRAwyI9leb_oIqBsTdL01DJ3FPYGAoz5pMefSbk7t85hqvCTPoB7pbpEkwZYKmQxpGQ9hCxCd_umW9YvCYpctnAHVOvWldDzdRU2n8fckHs_h5bzpLCxNJu9zU044ZRKTRPJCj5tX_Na6U3RzwkjsLCrSRTVlrpE47WLsvV1_4KMiAnmeGaJV7y6CshEDipWBOpkZ1hPrsE3Req-D4AkaFqY3NC6rQ852SvhmwqS8pjf707nP7tvKFqqfb_aFizw9Xq4JZi-FTm1xnEjUm7CquB4gG7SAwwMxWR5xrJfTwNk4Py6cyR3Lky5L6fRFQoCCGHUXmjYbaDuBHN6OF3OFiXIUVI8Wi51Lxo2OcMfnGvK_zhbFmQlP4tnVmJs0bImAJwdNS0R5NOs5SXnkDXBpthgQ9I6KGg5ghhJ3wYum_m7TX0mfjRfTSp5wvUWOo0AjJLL5iNcVGhWalBlgJ_AumxfN7B6ToiRU1TsCg8VVqMMa-9EcXwFY7MmMoH_lPNVL87oKSIuvHrQQW3tSqQcnSF-ORg9ZC-xDbtFJ7j7ICmsd5c9hipye-cFyXdvnAA7qDAbb0r9nakb7Cem_X2zgYx9PEejV8kCJwLTyO0jWPkxH0gbA6roBFLPslokIJgN21xPGzOCsAqRTRYCJCh5KpEUXtINalUYyQMGh7m9hh70-dysXlxsIgy7wfNl4Sa-zdLqNMzfYtBJVL7K0GONAuHd3UYCs4iiiIx8m7AL9e5guFEGZWMPIdY3tQMxtq9c8Eb3GqJkBNiui2bDCEHldv9GwQiBbyoDHyi7v_SbAUMyMoSuoLqYfwLratoOSxRLTCb1jCG7kQayg9RRjn1cEYY-iaN3SNn_ptHjsEZTewHEju_gU1lmAEBOPDaGDKn6nKY5eCSdUwgmGRov9ZIhBF_dC57kblA8MjRyrvmOAX9FWaCmNpYCXsneKdMyLChCD54qu0kSpNuvZlY99na-O23ZAPe4UgyJg2L1c2iSuaLpY6n32y4WTMm1nmbf1e_h8wLp9q-RkibqyVacilbMqGeAnu50L_RdNMPdntgOScDmIVmg_-7ySO-Y8hZUuuuKWM39LRaqWErLWHhmFG_x5hwFdZAqA7s9cDmMKeEJ9MhFY_b1vKbU4iQ_49mjd1Z3dWD_E6ue6xSHUqrXLTZ3c2Zf9r1lWA3a-deh3jYjgFXQP0eqjtVkOJV9ap8_RcR4u8ncf3THBrbIT0ho7CzJnpYU2zQHqRKZ44QzXvpfhEldkv8Y8K75bGuJa8j4hZtDT6SPFmMbi_sGoSaJdOefz_k4z9703LUaYACoh0wSJTGsCzPkfp8w6968MTpvlp-He-vf-v1wdPZEWNaFcf45ew2GPeUKlirI6gNpTHXD4LFBkwnW1zRPR-tD-0FnU70uOhB9pV82Bjiom2mVK9Qoj9SNs4OI0I1xQFSESu4HYRMY4xZX3XzMpA3VQpHmWWVAhARWIBNP24vaHRIZQhxVL3rjb7HWTmI7G8cC3-nM-Y4DCkw7wzU6imNjrzuE3QyFV-t8xvpbvQv1_0NtVuKSOLkXVHYKlYaBaPaAvITF7Op4xbF0BEhPrWGWPMuoZymCMl2n6apP4Kpt7VId1KKB6C6c9hqOjAZZWFUi2wmtDTIXXE9UMrwzyTRUHDzc-75t3wbE3TA6i3ZGAEuTzjZ7JdFGirGcvoZXZdHB_CPwcOMjIoSlksbt1Rxe6G8KzSJsWtvBJyA7sj0V7C7Y-C80zry8zw7T3jmIGqZrofGaW4Tc1I7hmCYQBJnMZol_XB3U79lfwPibnskeFxPY_plWaxUazJUA1LQu36jGsXdfg-TAyLkWHHoi88ljytA8-vuy5RPvRUhw3P3PReJvcW2uCQroVLCP2gZxddQjTMSRCh1gyVWwvlvVZ2DJ2_hFla4NFBzul6vWTkMUf4LdGaNbzlsc7lj5Klr1IBJE5TjGmSilLNGDwFrI-dsXCdyl1A4VKC_-FXONNTOqjSyajOjrP2O0zFPEE9oLaIs4K81Sut8R9Wkzf7QK5C4c8tpmXdX-p7I-5hGSJ-qBi_pkyGR40r1eV6NmBfeHqAPIh1eXxxHMa5ZglMkbSHqRnA8RT9kDBBTluDwO0zKqL4-OmUfhVAnCKzahqWM29Uk71mpEUFl1rLyThboFgW_D9AbJmnFclWSilOaouQUInq19DO-sxzf9Mb-3P464aSAVkXz4615xK3sKk0-ovO8lZDZlqAE63ERHP-biB5TYRG5ms9fs6z794kW2jjv1KpET4eQOnNUgfM83_cL_V7X1gNrDQn6CSSNC28zXlr9A10waWgcQvbYOvnSrUCuoT2G4VoIqG09qxiPdxz5DuxnFE-eM3J7E1UCVcVNzI7UhcS_eU7cJ8ln6-GXg-yPMTKlRh1BwhKmc_PTPyhSoCbHX-yilHN-5N81sYHdD_fzX96BEXNglJm79VEKRb763aQxdl8WToRqwhR4poYTJsY3RqvLS6vEunTJOz7cbwUCsTVc707VMSn3QpUb5pQ-AvWbfIoGQdGn2xRcaj7-OR2342l9JTWel4xv22g0Lh1mRLfEdrCgj1H48r2lhEy_81wums3xVBBtr9O2QzM_wpNSXrbrxvSyiCJZGx7LTXxOxUtOV_2GFFsDTe96E2lf-zFFGgcUkKZ-llYPb6NIZ3M8PqQ6tt3UqSpkdyNjgmo9ehxujTRTCPLfBUrO4bNgCkVHm8_mpqWRlrOhddwypsKJKKtHPkWHyPPYlZArY04Dq0sn4msDAw_tKKmrRWcjNIMCA4Pf1epGaEDrV0WMRdiXvSN6Q12FuzydMiZSa7zTmUezVf77RuS5owkVJJFCi2wZqhragF1I4giO7SQDAeyFWdVy6W4Qqea9_XCaPYXY3Ltsr6CV1RkLPFsg4gvZ8XQVs8ZcXq-NjbNNVJNLzJtnDZsiKlnB0QcQ2OTFdhl7Y1WZVhlBmcPt8mLtWsGIZNW6AIjVjUuZW8VSqBd80swcUlZ_gcWRQMPCSrpNwZbA4LmjGafhrGXzQ3VByXw0cjwWq7yq_I72d3ruXk2Oviv5osiFB4KXdz-A9Tc8WuymL_SDQhiBuN2e4M_KH9F-3Y-EwPPB1knUW4My0zY0AlfONcciZYsphYAQW9oAwxuCkolJ6ejyIyTbjgC3K8a_D7ajYt1oJ-JA30AbM50A_iVHo05wXDMzmMe6E4gA7Ogzd7Rj69GszOH_VNtrDa_ZDEh7AUwCMPkwzGx3s4L2018F6d82LHgPAy3e3VWqbscmbKHC7B-tOzE0N2K0dxvA9w_Au0cz9kHAaG0CKzomzG7rYpbVJvDVMcxnzzDi22k4m0SaI5fpdJOiuU5mnoEiy3-AXa5zQFuGnFUObbmO4m4ssByPfEtb4m36imN67UGzjpCcK5s0swdkd3wZYoPNXF-dpFaSlOYhV-A3tGen1IPEdOc8mVSx_nnzwKR0i_DpP6bjDzMGpwzSlZqvg7pKdryHByf6LhrbdLNjKU0JChjsNOnti597cbKcpeGiqCIq3KhGfoRGVnbZthCjojdWyKBApr9mJ-L2LIoKBen5Td8_Y6BGf7i0TdboeBtskzkoAr2SnqODVJq17Z7O9aAPftTj7EtTgiRWZGK-HaULcU8k3PPPSzYo0j65h2QPU39i2-ljsOtPENCJTjtLwdxpLSEzLfugfpaN7jB3z6rDcyLoOco7o4DZsbAInehzDQaTIt3g1Uuc19p6nE98y5jMRZVM_SThxjGeWwgJCOEVacRVFr0FD-B7PNefhtxp-IOiwuN3b7CK8VYwPs2e-oIXM6kOYe05aOFkHsTXwyVGNvJaLzazE7m2yO0qDAwQzpjddTkdilGBNqI7XtXnlaXK9DvdJAjjcalgZSiY984aHjCurr9ZcyxowpG8iJ06SpkwmYaG3QRkJPQupZQ4xTaoc6YfpznAAiBVW8t2prcmZQnL5dlf0ZErDChMY3i3tgZ0VtRjZYVAlqpkfF_gjr2qzM1E7VabMVqyxHS4gufjTsVa2sQvTRnyZyop05dSSBNYCpoWJ8stTlaXt6t7_cXT1nw32yJndU7MIrEu3eUg3XkazyME_RW3k3-RkJck_9y926npkXrNzBCb6XQEx_rRdyvrmivIGBiQsbdad2KACMY42fVCqw_qjRHWJNMBZ2yoBU38GAR3FN2KyiZMJyOuQzaYtHRsMkoVv0CyFIzEDkk1tVBVBybUTtfyr_OeZq_MW1hgLtOphLqN_pGHWenCkinG2dQx9EV3HbLjb0ZNKh0_XOi8wnAPu5A4iTufdw4MEL9wCZj7z5AYPY0ecrE4DcLvYLhCM-Qnsapc27FNOcpXVvpLx_4voHGhXipzejubSuf6jfB4hkC0xA2xIUyDEEYxq-lNeFhyrchDMGuPkW6eRtb1pQ01pVO95NE8UXlj0MTTXMiH9wtYwvHx7R7kN7Segvt7vdH7lUh5NHOE65TTApnAMNCzSXo7L7kXdXOEfFzE3buf3YI7DkaUMrwGeAAYjIcToZ0vKFehRpVOTWCIbt4e5Fysir2X1weagi5C3RGQSuX-cObSuExCjS7zPGMLjumzBsaGGODvFAUJKm0qFOawEnMz_MXiw5ruM-0yqp_XNR8OO5SHW_0EqasLPilzVZ_CkqEOMOi05OU9WovcV7YTx4iXQbUIcbIQiGxT0ZP33N1ok-arYEbet1kwusuGXjbJlpYiZpDLsaFtobphFDrU2AZ-cIdcO35g7JPSx0Ui26LPuvhXzZhs0geAuqhy8voYyvXJ7uieDY1nB4XdYLzI5BKlIpH0RuJi04P1q7CqfcPbfr4d0SrLSug3-tbNiLBv5cohz0lgqeqVnAbSxhpFGQRedAoYDQV55xWFwjqctZXf_m6qZz84fPkJayxbIbPLK2dZO2pAsU3H03rTSoRE9llG8Q_TtXDxGV_4dPlS_XKKC4EzGK2YGTI7YoqiQ0G67BRveQ38uGRJ4hFww1J0dcfFasDXctBbSAqdc955GB1PlChzeK8755ezU00LKvaPZA3OWnSxZ5PFVZOb-1EF97FIzRRsNGh_vtxPbxzApq6jHth1n2tI1DtTN_XuXOSiaqbSvDtxQ2XWCD5JP65WB1oDX_bIVmytKDmLFWAfXK-R8E2nSo-nN-gjXDJ1YwgqPjkAIcFhjWgw0ol2Zsicfx3m8cfuStLm4HJ8h-DTYo6lXh6oPOxwgWuxti-vfj8axSX_r6nUGv_tTC7MA8Enzj9OGK5wgDV7gy2i8FcjziY5gC7OpNbyk2om8VjxlInhopxYIC7F_e6Aq4uMNEywesj2zWMgrB1bLoYywoPusB89-5TvUMZS06OTPy19JrRXJ_7OitiGvryjZhSPiWk204vN17bmQ7dh-LQ2AJYbOWkEizWXpQSqP5pC8uwchV2uY51EfhJ2ZUyz-wBwjVPEVaToEhir4Jy7obM4yX7XnrVoMb6uqWb53LajHVO8GT8YhJJKYNbFvH-6PGfjsMe7kTZM7uN-7KyZMIPLVltGz103Fq3ZoqH8_LS2WeXibZohiSBZXAsP_9sAkv8K0S2_rpW7b0t1ScOuyIIUVG17Gzhx5fTaVyY83gGcgikPmBsCJtwomJXTkob7605zH3XMHNDhE9uLYK9JBrZYZI8-g5v87p-HIBlKhMthhAgk-sDd8Cftf3wCcBEoCsQ9takxHiTzjkwqiErH8tIWJApesGvj1IDfPonhTe116LXtxzfW03ecpJ4I4zMGmbqoRis82GOWatdYJ5cGTWLvsktGegzkSptPfNmXW1J2hS-o09jY7fG8XKY_FNYdTrTrJwDnSsQzoPiHn4zWWsLos5J2jZuWizA-wV97E1n54okztQMBOcd0vU85GmesLCig_BRDhE5BYI1MP3sIT4h7poNi_L13aR82Unz_XRwOvQQr-292IG8Aq8cjB1qhKIXxgVra_yWzk8dABP2wTTYE2VGjG5P0E0ZXoWv0MKH60nhEDbjrnlx32MkIxbKsM42c_0cO1JKDQgtc0AxlhDVqDM3F7IG5w6ym_I4Cjzd1upD_q19WFRQDt0xf_YNz8XZaQXv3mIqsLWoQ1nYtLkKQkIEG3EzV9V1ymc0ni4xgQYwGnweX7RkIOHsFZGRBYWc4TU2KkaiMGV1vWOjweOHNe2vlLRFJF9JUz0w2uSv-jkyjqOAgSx9_YRzkCjlNhy3dnVXtZ0bbesWglN4y_-8x69vi9FHcKoWPywMQZBbcy64LlMXY5wFQHaCayFwdSWzwSUan49K9sQWQbskOkEtAB-LKj3xfhhesSWr3mYFdMWzu7ivNe1nPliLjUy5G3hoC_wLCcmYwfVt3OAaqm8mFuSc1eff1qgChYNg6wArZNW7Ud_xZcy0d_TIR_LpIajzKzbbNbMEOeyhSQ2Vm_FynmeFdqZAjVS-9yKZkDW23QWGP7R5zuog1NtOfNSDYrxoAv60HDiBzYSc63pd586IblPOmfvW-yHR7lVHlMxEupZl-cn_U6yhfGyQdwR0B6QhVkdv78VML3D0LruNH62w12Pqik3FLGy9XpOKQx09P7dif-5yrtskolSTykNEZqxM_Tqd_BonciYMLJwwM652vkm1jgpG1ot77_qDsgiQbyalSKbNdJHRMDcD7pwZmvGmHnay28bf6YTJiGc7qGw8UmZNU_SdUU2qUiRdjQWefrTgQYH5XqgRmP_rxQFjqzXvMaA465uYleaCSse70cYiBU6cuyX8rV7aJT16_AU5c6oKo97MRzO3EmgAP-dF5jecEcauUM-lFfbxM1jAO5fDQjnsrnFh14YvvzkC-d-qwETbzPtdAyMViyXm022JvgSEWSVE-jgGlc7ADP9z4uF__9XRuAZt5_zzQyICrhJd5PtnCX8A2lFaUDCchNzsPY2j4r5n6hrg9OmF7b6jLlLNLZu0ZGel9xmT7xGb7oDeh6eK7wTGvQzVqeIRymzi0JVNr6JkFh6iU1KTqY9y-qM0IU-Rt3Zk6mw_9ZM26YSrU8gY5rDatVzJ3Wiki7gjs42Zhsnsld0wfTP6v_pqXHqSBjoaNWWInT26h8N51F5VQNV-AC5rxFcQWaL9ZUAc-rAPUD4j-DBlW_s1grlBL4V7Iqule0XY47Tmaw9szwYXitUiBSsaYt87DFKOivKvyLsacvMEsik_at_znEpvLJ8PuSyKA6X_dsm5x-knUVG0QUOVOFj4BufrO2KPoaASzHZO_HVW7Jd3uIa2273Ba7D4kkZvnxC3z9Vbo6Qjm0iUz61QV644vkuVhDJUgpOFqSop_Ht9Jcv2RDWEwRBP7rAOjPWy93EjjwCy_9Sn9F1wA6rhTUsEK8oBCTFJH_yJ7zDpPlUhz-1JV6eOwiv4Jh9EgxTRE86jOEJ-C64wY7pj7dKI2cTcJTSD2LBcvSrX0y41_fWJhrfOvHG827ZoS1QT_cxArGCCNTiEGB3EUCQ2EIg4RKSI_uG2ci0fXHoqopcCnvOWTKpgb45y3KWTHJMNDsbCx_zTyBtEsW1gMv8ExAEpKtaOC-hbQzzgCEjZH2WCk6l6DZSBE5dQPoySh-j1pSJS5JXdp1ZgI1RZi6NrkYIJnrxLMNDS3FadU7uo-Y5a9tIWeqeAgJQpiAo0ykbNI3Jgq2hv-yv4an4Uzf3lQKrxRdB8pYsRxHzMK5iZmsUC7ttOlySYcw3O3j1K6ucwd4806JDfzt_fzF5bPx7O7-rgCqjwEkaIQjBpkxeBaZ0b14Cu4oviZv7uh_gNrVRMMW_z22fYxzo6n6OoPp0y4-a7mR0vg7nVZJuY4deW-WQ57P_LxvzIG8YcAokZvvoOVs_dshNRoxaretFJAM53RMuRf8NKk8xSa5xM3_YgJdEnBPMTj90j4X2UWJ9ObSpBYGdSJ-M6PyGDpeKtwNz4yH5c1zJxWMZLPHUY_dpJ3DI9QciKHn15D2GKdGIm8equPcOo-UpoTDBNVmAE7zisl5KDH3k_Ovg-AbjgdKzeebJ55UYhZAikx98J4mMcXDXL9ue5AdNKLsebJJ6hRZ3fxSQu1HEHdaJoOBcBp_0pYiEgCVV2wRc2UdNuM6uIOZ9mIX01XYI3dda4vczIl0Y2o6QdaNiHwUZvZ5OXkmYJAgIfKZPgweGy-F5Q0Inqq64Ja2y24cy380icdfCbi2JblpUKCdKpQ2bGZvm71di6Tqno6mJSZOrPj8w57mmeE9Tld9EaTAWOOMxGW4EdH7Qzq-AXZ5pSP1pPjrukcdaiCq20DSVPh79WQ8Zhd72d0dXpa5PxbUproguuMIJyHmN2Lo_VKnue4SqFomZgPtExsr__30dlrOfZTGfHsrevHguQXv5ejdtU03r1QU5Quf7WoYR1rf9yOCX_Z2sYmgDftMqft7PxGKGDm73bnxch8AZnvYYngGnkHs5IoaJ2-7Kl372DbBWga5UM0ztMJgB5kQq9dYDDKR2rSCViLf5co6ta8d-D9WhVSlCPC7Odk4V1lsPRkq3lJ9FkVAYGzjmEuWoJFQqaj5yVVUpTR3pRwMKqBT60G1eJ4KtnErgNx3j8JhDzt4sSHG0vnCw56dweCx1XTvSseBAw1Cnpd7CQxwIEyz5cQkHNWYqcH5sik1z5dXfbSmqrRGbVjPXZm45g1GE3cd_sO-J0h53Hv5uCKoda6O1Uua8rG4S4jBQzHEsfOrhvLsUs2nlokW1H_ovOgZvk1JZuVSblAoztVv8c5_Sr5Tfwtp612bx6MlGMzrVcCLzCYEgohGAHOgi1B8bWUjy2WTmhKj2YuDeYTLvKl8qYkn4gfgeYBRPcE4xkX4PvWOZMD11ca_IOyuAWVhlILjh_2DHE5YBaOhQtDRTDupIceoyqSzUvknLp1KJ_m6Mwzoo1MsKBHiaYNYXNWjfFcwC8EGaKgtVV1UqeVQb_Q1j8jVrow2aL5sixNBOy8iu5ZVZ5jCNOE6R34BqOe5qK_tcIflFUyvtb7ZElmCb3_7dGpiQtqnmTpsw2FoEmaNul9NZddvDb2lWRqga1Zl-cIShSAEEEYhgONzL5rxnWK7p3lW_xVBAvLtwd00vS4K3PW4ul1zA3uGMG7bzNcp-8iNuNr-9YqA3kiNAJcA5hxPJV2g9ZTIxFwuetxqfXubezUPEF2ztpSg4J1fapz6Jg1Lhx08oNlgaQC2mtWVsRaPmIYx7MSNahQSLf3YMBagJ5RHNEpvlYzn58fURY00gQ6sL6o4wUgb2PqUqY-i_OI-w1z59MJFPyZ7_e80yg9M7icluTA_sG7XlY_hEotadZ37Ckc6XktKw7JQnuurqdtXsCteSkme2nSY3DQwgcgk9gaOkBCje7l1xZPb26Vc_sgI3d79ePZFN-t6kucBn65AROVUpOnBcXcMspobPoWBscUtavXnGzwqwgyL45WqfWDVdFmubyu0Ki-PpzR6yjysqNnVziYwGevIj4yz-zLCFgUvgtrQGXIv1__Gg36BdD17riVWjjwf_MKiPDrkislv1qNFUDcxVvf6gb07PCUE2rHQg6BcFD8P8st_2h4p2l1nkE0XJ40Yir5lKZ5QDge09RXRg76M0kot2SnIUVklFKfsR9AYbpDD-y-uApNQsUoreVr-mY_AqbnxJQgi06uzeFPZi7FAhVW6tHN0GP2YLZuK-xlqvNRhX_lTfQ_vv_dOO4-GlMg19xuxaaj7LB1vj9LJ5sTnPnZvCRVcdWLWFGECGiTHzRP9fajjepdii9sAkFBh11QYSeiU21utZDP7oLVd3mUwn_5wuMP6idSokwKpIdNQJpLI9cNajPw5fSJ7HQyaIgnSoc5W_NsGW_KN7UUaXA48_fTLl8NdvawuaA8ljspFIQtwiGq6peWYaCImpprnHfyf2vTP2kmxAGScqATTaVjQ40IeW6rnniV4xpF1DP0bicznztgWUCZNVS6HKCEuc7u-yZYGbhNDX6ClTBeRiDTxZ19WeVHTTO5pKeFMR82j40OVqs89pBAZ829Lzd9EsIATHEfinhzoo7sxgX_qlxHrxxUpr27UPLBodzt8vwMQqgRE6iFoNWu7TcYdwnz0m94OQIz4NW8dhn-Ai1w5bQxS6vaHoykEBUrTgSCAgxvHq4koP9dUyaj_AiGfggb7x2-95VaexUWb0nhvON1J-cuHJV63hFEugiZ4B4trUeP8faH3up4rKpgLT-79ySbXsKRyXIXw4_a_bVS4gTlYrkEQbhlzNIIvDVfiKNQX5Y-ud8dKgx0Yzrnu5eZnHSzWWz09uYrU_zCxTE58AY-Chd6E-ieIUknjtnxZte8-LzZ3ebNffCvzbxlj-RHCBbP3WWbhN8In7Q-hZsLqsIlxzo-4lwzTnYm_CXTeJ-lfyBh5BFHSQ_0Qq2EHck7FOIK9Rz8T0MLkycHLd264zfA7Z8MbPbnxtI74iddUx4bD8Q6AGxqgpll1LInfHkCq5aQA32dU4Hrh7bLpdWVJxm7ajQfDrGJ7IepdlETtztc2O9Lo_JWCtXkO-B0kpTym8IEb-d-Y8P1DQRAjAmDHTA_c_t6yVU-L1zvu3vryENYTk7rI026_pOeR8WpwzgTCawlxxJhaUbS0vt81TF1cbdH4IuiV906Ssawaw133XLKO05jmvVYsqdqisbUikUV_WWZulmxlQPQugUMIvwqNXF32YBwE5w5laK1GQLuy4m7CS2vR0S-4fNrKvIeIerxUAL4cjptON3KYq2UkVRP5QXZFOxIWbTiGrNcqkpw_lnKJCROW0Lef_0R4c3scro4HHhmEVCZhpQbLQkz8tbTw031QlKTQ7F74hhB1-ubRk_4WvVkKo-ElSDMabsyhO_1NeVjiZ-tMTC8u6SenpUhUanJGxQW4VxFPpoWgAOe5HKto_Ugbk7kpsCPtyTEy71q_SAPqOKAmoKZMIzeWMu-DJIZMJ98WiTsUS8q6-qxLWjXM6KeOYKEmB93u8uzK_la7zG9iHi4BVp3GdAVkxhMsRGOzLAviHKgplohNZ59jyGjy3bwsX57tj7qvIq6G_RO5qj06t-3MuIqk7AlPPax7xzY5TyKKY9ChaQJlLRNwdoUVdZxIQvftbCG1A1sekoli9fLpbubdopDepUCsJ-j3zC5k_TUvZft0KuSEXZFf3s5mdQHvurbZ-yfTQGOmh8_rI8Y27Jsw3ibmyoiWsmRSpZcI2mEd3Nawcbv06fNTQtF7iku6WlRZ7GvsjqOQtNJSdxBIanBWpOjqbEf_zLU1HC6LEYVAnw7iMhHMQ0a9-SHFmeeRDNEzAJmV7eAmh_HOc4dP58XrKWcZEbxkLjpfMd-SNthrR2QZQ78b10u-QBj4zTbqXTCtnKNVBjmz3L1MqlWfCIcBpxwyXAYMwYBGWJFvQmVr254b9AOH3NbzkEot-KaR6OudGSCatw5cShd3Eg2RMpLOPMh-ajF_bEHLXZj_jhgsVt8T05ZYRfMeGYIzGcNAVR1iWFwJDU7XzM6v6pITd22_ZmjS3Nnjy7-wht73vo9A8raGV9MflkDNmWWR42r6uSuZUv9SuLmlPu6vje9uKhGs70EPzWVt1yprUne0wGgzr-kkHRil7U0TObf_jbJapxENJZh4vDQwpJVA_Yxww3-MhlYmPfKI6rht-dLiUV8N3WE9htgTkOZQP3fizB5zVf2uV6lyHu05bjS9HqGqx-XDl5VUGib-G1REgGP9sl5D9h9e9qYSm083wM_FatZ6D-sQABOEsHRmJogrZ1cLLO4rKJcIlJFQMhasKNT1NMPnHQsSPZO3BQLyhGbAoi-ns8LETwcwaxfyF3zZitqEfEE5WNqbYGdkKtq1gzFwA_yfFZsNqWr8LWJ-lEJwXKk_J_BYtUDuAuqB7D7084T_fUccid2l7NO4kEizb0qHHydw_-NPkFUbEQI6WPVoG68cX3kmo_bANlguRY3NppTHcN0tW6AS2h6gXv51Jb5Sxpj6iPih9AcRhGwTbV9FWN2Z0kDfhOa5M0Oberer3nrqwXFtNn6A2HZbZupgfBonQFqo7vJWOJdUpoz8F6gTZmhwhrLLs65oR597l7j7A2xqdVfAXLZSdDR5r-wGo9_AcMhCD_xbt0f_uPstjXN0U9bSguYHyK6IGQpDfO5XovUiaJsT7cVCmbLKVL2gxZuHHVquho1muj0IwlnuydNaoSKrGAN9l8tMPdyIqdJoYjXj6-0_1HsHctawl9i5dYFlg8RBXHjF_Y2lGq6Xg0h4Uw1JBg_7so0ruZSmAMeCIWsu38EEkkZgwhSE4teqKkXifFuqEGYwwoK9ab0TPpeTSkv8lnKrlYh9rAQfBsAj4eUAjy-AK-lGrfGc9d6vpMU1STVQeb05WKXasreLIbZpDq4pTm0nhfheFfXXB2-w0XnMjPikl8mcbTtgRbryfU-0S8PjZgO4TCIrurtofPY8nEBlJRhFwsQf3Zf9kE16YTnpFTHcQyqIDnEvBU26j-Kdv5bqfeD6mrGuI9SU4XB1oZ1yG96134mDxYLOOTp_EZsTVjQPOMhUEg3q8mY2pbLgn2_hm5FAKIF7sPobqP1c47b8uLBg6SH960XD3UvXW8ZcqcjHoju0WkxvP6F1FHlRz2MrSE5I8KYA023hJDGpbFcXmm8Fe-R_hqZ9c3MB6Ho4aVK2rRkYgbv5Fyr5-Y2B0XAsLq5DuoHqkT01z-IN6-JLJpLLJbE8dU8ggW6L9bp5MUKW6fXl19Bi0NeFNfjnmJ3MzsEP2s2soGbTYrZG6eVT99feWaOQXNV4A_jYxfcl84SnO3GUTareMqjR_pvovXsuEgCVPfo2xgZBoYxl5VrD7u0Jth3MpU-7b87YODseXl_nf_dVJHicYHN6bkZb19CI1K34bn6S0m6FbQ6c6uPGY4XEdmOuWfacy23UuiyHNKfTCbToM2wEyZrcVA9BXtK7bWeOHDhG18IlIy6EM7FrwRBaTqhbMzG_ACex_PCcu-ZIhtneXg0Z6NUjKBUEDSEEoTTU8X4AUSPJRg1GLC1kb8fmzHegR17Y7hC_ch3umMiB7hFlKddctbDcU5S_-KSvEHmxv1iZrhevlSPoaVeO85J5dADKRujfT3y8kq-fUyqzBWfJ14piNfXo_OeJNgUhJhgoTkadQYP_D1MYny06GsgliohjCsogMGJ1qi8Fsi2kqTeWPlrMMx5a2mDvQWZPc5OpiJ3qLxKOe72SrdBTw-kFFdslXdUPwvpQZ2R42jUf5G5dHLZ2vb6bfX6qY_f4GkxVlRe2CnU0_PwMNn9SJuMfZ_U31RIdShPaSIvwGZJPOS33IrSF2YWsuto6UbtCmYKMR7nLHVRDHHncAgX8wM4iU3jk3ICu5cDmipCCapANxMT5YOzLfq2xhByQ5IBqCooCmaQHc6vrRS51A_l2m2FNKZix4rNQwZM192ZYyLq3V-in5TqeIjJfEZg7Lvy1BqKWplbc60JKMAI37j4UngOBr2tTuv9hhhPF9zGPamVHm61nhXojIzRHisnyRHXGGnSfDJ40nyqcofuTXClmi5XDYXsz-4L7GMnxROp6cJfFBLhPxDBp6f34Dp67jreWaHU4pqB4BeM1ysk-97Y3YWV6ObJqvRev5cIqTjfA-UTYA1OxvJVaRtaPDdZ1xwsWe4FuZ4XDXJDdSZTiwvxJvS8oRxk7a8fPSIjRKf-NayzJ2ZM6lnb3HGfvx1CUgJ5SJfkc6oivuqJdHfLNJytBqCEXkbOhz-UWb3PvwOVqHeJ9TFF0lGltd3svo9qnp-fKkV1kdd6qtdCZQdAU69PRDncYqRR41Ahy38J-DelVSRW8-DCP3ZQA1pj6n60OiJC77W7uTQ36Eei9pukLk4QsbKcFyHt0EWTD8EdyI0rP2xHJl_zBJXlLjgj80YdT4ZfhM_PFm0TmzqLDqOM3VI349SBd89Trkz9bxnAshy83U6Nh414Bn2qZ40SBzCVnkNC0m0EzfyrQ5-zqXLKhNq5NLZXt9zC_8TYfpincmChEqHTasHk3KWoody-g2rjPk-aC0LbtZBbcPoU82jBsJgZ0GNfDT9unAejFLdUnvbbdzh30n_G7iA7JRT5Mfpm4rlyjYZ14K_mgZHaGn139OcpAC-jyhggXpl6pqeYKmQYfG5gAFRQxZdnoBJw_p5GO1uawELoIueUc94S-0ZiEdY4p3oiKDzTbZ_JOdYBRl8f3SEL59VKOnzLsdlJvLLzLBGIUjhtgUeuhvxWsU8rWng9uhFjtM9VpEy5VxfK07MZ8ABcZrv6ervyaR9R1ezd9kXJJvPDiiav3sR0TifNyvHL6Vj9oYCIl0q0DlNc0UhN2h_qczN4S4FhicVHcZ_srq6VPsi9eYylCoDdwdgVbeXAG2UnPrgY3cZ7guzQ_p4-NoQx36cBtYzp6M1kwiGCH2AQNzSbYBndq4DF2IIX2t9BqetOwk0wl6Ej3zZTpOH1SMO1NKFI-tMndxPNxvF9K0lbVhpjPlqD3T3AL9rf1ohvviojJcmXwqKPjJmAOatRAIjJ8YWjJL-vVlp5m67cQun9cTc2d-NCZ2mhjL2XtrM0NBnR3WSqkGGyjDPcXq9JPF7A4p_sSKkBlvilKNVcd_AgpNSJ8rCHRZ3GD899QSf6SGzGbU3rT_2LJPeYjIhrV5WJYVUGYLzQLTTT_QBemWXpRvm-e2l7KJe40F4X18hv05XO4QuiHGGSfMi3MA5C8CAZNdwaELDXMEULLSNbx8so-hxh3kkgLJn6_lg7GgTSXs3rnf1pK2cUw1V6tYw-PYGgFyg0RXj9nmBeqChs2RYAcFH9EKAoUqReGSpAmtkUfjZ0N8BvqapklBz7wUcJJzS2zUjT-PdVXfm6E0nvtDiXqGKWY10mlD44CO39B79DL4aLcoSquaY81zHEC6k9wMDP148w9LW-Ab_JXxx52m1yIcoWKJR08waD3MHV626ZXGFZ4MUQnXO-sVtQnC7tOFpXj9Xhx3xmm9VJ8q89pSgOlN3T6CevgJyVMBdYtJyqmvRT1zlQ8pL937DcaKJyemfsuKrfOu1kkgtLtCiY4iw8tAW9t1jMekfS33nRc3t_x256qIG_Enw__fZH2n80cfUU8QCYIDnmdFh9rCpHIfOzXOVCyhXFlPT9OnwHrr17QYeCs7KZ73ArdRPD_kslMKOvGGFY-tqz1xF2kPqiFQdquds3U8WwKBaen"
}
diff --git a/wildcard_test.go b/wildcard_test.go
index 978ad0e..ee6c5e4 100644
--- a/wildcard_test.go
+++ b/wildcard_test.go
@@ -62,7 +62,7 @@ func TestCertForMatchesExactlyOneLabel(t *testing.T) {
for _, host := range []string{
"11ch.at", // apex isn't covered by *.11ch.at
"a.b.11ch.at", // deeper level isn't either
- "family.luan.chat", // other domains take the autocert path
+ "chat.example.com", // other domains take the autocert path
"evil-11ch.at", // suffix must be a label boundary
"x.11ch.at.evil.com", // not our domain at all
} {
@@ -99,7 +99,7 @@ func TestWrappedGetCertificateFallsThrough(t *testing.T) {
if got, _ := get(&tls.ClientHelloInfo{ServerName: "space.11ch.at"}); got != cert {
t.Fatal("wildcard host didn't get the wildcard cert")
}
- if got, _ := get(&tls.ClientHelloInfo{ServerName: "family.luan.chat"}); got != fallthroughCert {
+ if got, _ := get(&tls.ClientHelloInfo{ServerName: "chat.example.com"}); got != fallthroughCert {
t.Fatal("non-wildcard host didn't fall through to autocert")
}
}