# apistudycn-pythonReptile **Repository Path**: chencaize/apistudycn-pythonReptile ## Basic Information - **Project Name**: apistudycn-pythonReptile - **Description**: python reptile to get the data from apistudy.cn - **Primary Language**: Python - **License**: Not specified - **Default Branch**: main - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2024-09-07 - **Last Updated**: 2024-09-07 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # 简介 为了学习,试爬取www.aqistudy.cn数据,作者使用了很多反爬技巧 # 返回的动态代码 三种类型 1. 不带dweklxde ```js eval(function (p, a, c, k, e, d) { e = function (c) { return (c < a ? '' : e(parseInt(c / a))) + ((c = c % a) > 35 ? String.fromCharCode(c + 29) : c.toString(36)) }; if (!''.replace(/^/, String)) { while (c--) { d[e(c)] = k[c] || e(c) } k = [function (e) { return d[e] }]; e = function () { return '\\w+' }; c = 1 }; while (c--) { if (k[c]) { p = p.replace(new RegExp('\\b' + e(c) + '\\b', 'g'), k[c]) } }return p; }('g 1i="22"; g 1j="1K"; g 1J="1I"; g 1H="1G"; g T="1F"; g P="1E"; g 1D="1C"; g 1v="1B"; g O=\'1A==\'; g N=\'1z\'; 2 u={m:6(4){2 b=s 1d(); a b.1y(4)}, i:6(4){2 b=s 1d(); a b.1x(4)}}; 2 F={m:6(4, 7, j){2 c=(3.t(7).k()).v(0, 16); 2 e=(3.t(j).k()).v(24, 8); c=3.n.p.o(c); e=3.n.p.o(e); 2 h=3. F.m(4, c, {j:e, w:3.w. J, L:3. I. K}); a h.k()}, i:6(4, 7, j){2 c=(3.t(7).k()).v(0, 16); 2 e=(3.t(j).k()).v(24, 8); c=3.n.p.o(c); e=3.n.p.o(e); 2 h=3. F.i(4, c, {j:e, w:3.w. J, L:3. I. K}); a h.k(3.n.p)}}; 2 G={m:6(4, 7, j){2 c=(3.t(7).k()).v(16, 16); 2 e=(3.t(j).k()).v(0, 16); c=3.n.p.o(c); e=3.n.p.o(e); 2 h=3. G.m(4, c, {j:e, w:3.w. J, L:3. I. K}); a h.k()}, i:6(4, 7, j){2 c=(3.t(7).k()).v(16, 16); 2 e=(3.t(j).k()).v(0, 16); c=3.n.p.o(c); e=3.n.p.o(e); 2 h=3. G.i(4, c, {j:e, w:3.w. J, L:3. I. K}); a h.k(3.n.p)}}; 2 X={18:6(l, 1r){2 4=D. M(1r); 4=u.m(4); 4=G.m(4, O, N); 1t{A.1p(l, 4)}1L(19){q(19.l===\'1N\'){17.1c(\'21 28 2a\'); A.2b(); A.1p(l, 4)}}}, 2e:6(l){a A.1e(l)}, 1b:6(l){2 4=A.1e(l); 2 h=S; q(4){4=G.i(4, O, N); 4=u.i(4); h=D.o(4)}a h}, 2c:6(l){A.27(l)}}; 6 23(f){f=F.i(f, T, P); a f}6 1O(f){f=u.i(f); a f}6 1f(7, y){q(20 y===\'1Z\'){y=0}2 d=F.m(7); d=u.m(7); 2 9=X.1b(7); q(9){g H=9. H; g 15=s x(). W(); q(s x(). R()>=0&&s x(). R()<5&&y>1){y=1}q(15-(y*13*13*1Y)>H){9=S}q(s x(). R()>=5&&s x(H).1a()!==s x().1a()&&y===24){9=S}}a 9}6 Y(C){2 B={}; 1k.1l(C).1m().1n(6(7){B[7]=C[7]}); a B}6 1q(9){9=u.i(9); 9=F.i(9, T, P); 9=G.i(9, 1i, 1j); 9=u.i(9); a 9}2 14=(6(){6 Y(C){2 B={}; 1k.1l(C).1m().1n(6(7){B[7]=C[7]}); a B}a 6(E, r){2 V=\'1U\'; 2 10=\'1T\'; 2 11=s x(). W(); 2 f={1S: V, 1R: E, 1Q:11, 1P:10, 2g:r, 1M:1g(V+E+11+10+D. M(Y(r)))}; f=u.m(D. M(f)); a f}})(); 6 1V(E, 12, Q, U){g Z=1g(E+D. M(12)); g z=1f(Z, U); q(!z){2 f=14(E, 12); $.1W({1X:\'26/29.2d\', 9:{2f:f}, 25:"1s", 1o:6(z){z=1q(z); r=D.o(z); q(r.1o){q(U>0){r.h. H=s x(). W(); X.18(Z, r.h)}Q(r.h)}1h{17.1c(r.1u, r.1w)}}})}1h{Q(z)}}', 62, 141, '||var|CryptoJS|text||function|key||data|return||secretkey||secretiv|pKXq9k0|const|result|decrypt|iv|toString|name|encrypt|enc|parse|Utf8|if|oM8ruJ|new|MD5|BASE64|substr|mode|Date|period|dlUb4|localStorage|newObject|obj|JSON|mOcgVseHn|DES|AES|time|pad|CBC|Pkcs7|padding|stringify|aes_local_iv|aes_local_key|dsiBOXwg2UBJ|cZ09KCmkH|getHours|null|dskDAgYmK6SI|pd9z4Pc|a4Wm|getTime|localStorageUtil|osg1joNgEV|k4zP|c3FwW|tTlUSOq|oF3vd90ZMz|60|pk0GHyVAaj6e3|current||console|save|oException|getDate|getValue|log|Base64|getItem|g86rThUpCaDiSRN5|hex_md5|else|askUF9apQbAF|asiO31kYxrVf|Object|keys|sort|map|success|setItem|dDMRAWpqMKf3iDde79|value|post|try|errcode|dciWk5bSQ4rt|errmsg|decode|encode|emhlbnFpcGFsbWl2|emhlbnFpcGFsbWtleQ|p5rQVAWAsRBDtcxT|orwYeZUfWtXvcGvx|dckOQPMNeeWp|xYh2wGx73p9cewaT|hB37kDIcOyjeKf21|fPk5T13o3hdhVuwH|acib12gHLxn5|dPbqZYmy3vXRUfLl|ackBjvqqwOgF|bGFcgtmEpPBaI0s3|catch|secret|QuotaExceededError|dStii7BsFM|clienttype|timestamp|method|appId|WEB|539e39d14a2386ab49f6b3181fe31793|sBninhfQtVpZpA|ajax|url|1000|undefined|typeof|Local|aFbsoGfgeIZ4r4nf|dwszZ64olQt||type|api|removeItem|limit|historyapi|exceeded|clear|remove|php|check|hwPaoAA5B|object'.split('|'), 0, {})) ``` 2. 带dweklxde ```js eval(function(p,a,c,k,e,d){e=function(c){return c.toString(36)};if(!''.replace(/^/,String)){while(c--){d[c.toString(a)]=k[c]||c.toString(a)}k=[function(e){return d[e]}];e=function(){return'\\w+'};c=1};while(c--){if(k[c]){p=p.replace(new RegExp('\\b'+e(c)+'\\b','g'),k[c])}}return p;}('j(4(\'5+0+6+1/7/8+9+3+b+a+d/e/f+0+g+0+h+1/i+c+2=\'))',20,20,'8jOWPr|G6ZKl5YGP56e76YePSVbvvIzlj6|PSAwICYmIG5ldyBEYXRlKCkuZ2V0SG91cnMoKSA8IDUgJiYgcGVyaW9kID4gMSkgewogICAgICAgICAgICBwZXJpb2QgPSAxOwogICAgICAgIH0KICAgICAgICBpZiAoY3VycmVudCAtIChwZXJpb2QgKiA2MCAqIDYwICogMTAwMCkgPiB0aW1lKSB7IC8vIOabtOaWsAogICAgICAgICAgIGRhdGEgPSBudWxsOwogICAgICAgIH0KICAgICAgICAvLyDpmLLmraIxLTXngrnnlKjmiLfkuI3miZPlvIDpobXpnaLvvIzot6jlpKnnmoTmg4XlhrUKICAgICAgICBpZiAobmV3IERhdGUoKS5nZXRIb3VycygpID49IDUgJiYgbmV3IERhdGUodGltZSkuZ2V0RGF0ZSgpICE9PSBuZXcgRGF0ZSgpLmdldERhdGUoKSAmJiBwZXJpb2QgPT09IDI0KSB7CiAgICAgICAgICAgZGF0YSA9IG51bGw7CiAgICAgICAgfQogICAgfQogICAgcmV0dXJuIGRhdGE7Cn0KCmZ1bmN0aW9uIG9zdlNWUGU1SDAob2JqKSB7CiAgICB2YXIgbmV3T2JqZWN0ID0ge307CiAgICBPYmplY3Qua2V5cyhvYmopLnNvcnQoKS5tYXAoZnVuY3Rpb24oa2V5KXsKICAgICAgbmV3T2JqZWN0W2tleV0gPSBvYmpba2V5XTsKICAgIH0pOwogICAgcmV0dXJuIG5ld09iamVjdDsKfQpmdW5jdGlvbiBkN3EzeXllallCSChkYXRhKSB7CiAgICBkYXRhID0gQkFTRTY0LmRlY3J5cHQoZGF0YSk7CiAgICBkYXRhID0gREVTLmRlY3J5cHQoZGF0YSwgZHNrbDF1Y2RaeFMzLCBkc2lzNHpiTnBEelQpOwogICAgZGF0YSA9IEFFUy5kZWNyeXB0KGRhdGEsIGFza3JQMjlXWUFOQywgYXNpZ2JOSGVQckp1KTsKICAgIGRhdGEgPSBCQVNFNjQuZGVjcnlwdChkYXRhKTsKICAgIHJldHVybiBkYXRhOwp9CnZhciBwYzF2dW1TQUZiS1Q5ZCA9IChmdW5jdGlvbigpewoKZnVuY3Rpb24gb3N2U1ZQZTVIMChvYmopewogICAgdmFyIG5ld09iamVjdCA9IHt9OwogICAgT2JqZWN0LmtleXMob2JqKS5zb3J0KCkubWFwKGZ1bmN0aW9uKGtleSl7CiAgICAgICAgbmV3T2JqZWN0W2tleV0gPSBvYmpba2V5XTsKICAgIH0pOwogICAgcmV0dXJuIG5ld09iamVjdDsKfQpyZXR1cm4gZnVuY3Rpb24obTdEY3R4N0NuLCBvdlN0MzMpewogICAgdmFyIGF0ZW8gPSAnOWE4OTRkMGNlZGJlZDU2OTMzNGJhY2U2NmMyYzVkOWMnOwogICAgdmFyIGN2MndKID0gJ1dFQic7CiAgICB2YXIgdFdLWDk2SCA9IG5ldyBEYXRlKCkuZ2V0VGltZSgpOwoKICAgIHZhciBwRVV5WjBNID0gewogICAgICBhcHBJZDogYXRlbywKICAgICAgbWV0aG9kOiBtN0RjdHg3Q24sCiAgICAgIHRpbWVzdGFtcDogdFdLWDk2SCwKICAgICAgY2xpZW50dHlwZTogY3Yyd0osCiAgICAgIG9iamVjdDogb3ZTdDMzLAogICAgICBzZWNyZXQ6IGhleF9tZDUoYXRlbyArIG03RGN0eDdDbiArIHRXS1g5NkggKyBjdjJ3SiArIEpTT04uc3RyaW5naWZ5KG9zdlNWUGU1SDAob3ZTdDMzKSkpCiAgICB9OwogICAgcEVVeVowTSA9IEJBU0U2NC5lbmNyeXB0KEpTT04uc3RyaW5naWZ5KHBFVXlaME0pKTsKICAgIHBFVXlaME0gPSBBRVMuZW5jcnlwdChwRVV5WjBNLCBhY2t3MkV1NjljRVcsIGFjaWgyWWtQNGNSbCk7CiAgICByZXR1cm4gcEVVeVowTTsKfTsKfSkoKTsKCmZ1bmN0aW9uIHNwWWRBdm9URW9rek9jUFRyKG03RGN0eDdDbiwgb1dqeVRGMURaaCwgYzBDOXY3RHh5LCBwcWxvT09uKSB7CiAgICBjb25zdCBreElBID0gaGV4X21kNShtN0RjdHg3Q24gKyBKU09OLnN0cmluZ2lmeShvV2p5VEYxRFpoKSk7CgogICAgY29uc3QgZDIwOGsgPSBnZmRGTGJ4T0RNNWRaU2ROKGt4SUEsIHBxbG9PT24pOwogICAgaWYgKCFkMjA4aykgewogICAgICAgIHZhciBwRVV5WjBNID0gcGMxdnVtU0FGYktUOWQobTdEY3R4N0NuLCBvV2p5VEYxRFpoKTsKICAgICAgICAkLmFqYXgoewogICAgICAgICAgICB1cmw6ICdhcGkvaGlzdG9yeWFwaS5waHAnLAogICAgICAgICAgICBkYXRhOiB7IGhHRTk5UnVRYTogcEVVeVowTSB9LAogICAgICAgICAgICB0eXBlOiAicG9zdCIsCiAgICAgICAgICAgIHN1Y2Nlc3M6IGZ1bmN0aW9uIChkMjA4aykgewogICAgICAgICAgICAgICAgZDIwOGsgPSBkN3EzeXllallCSChkMjA4ayk7CiAgICAgICAgICAgICAgICBvdlN0MzMgPSBKU09OLnBhcnNlKGQyMDhrKTsKICAgICAgICAgICAgICAgIGlmIChvdlN0MzMuc3VjY2VzcykgewogICAgICAgICAgICAgICAgICAgIGlmIChwcWxvT09uID4gMCkgewogICAgICAgICAgICAgICAgICAgICAgb3ZTdDMzLnJlc3VsdC50aW1lID0gbmV3IERhdGUoKS5nZXRUaW1lKCk7CiAgICAgICAgICAgICAgICAgICAgICBsb2NhbFN0b3JhZ2VVdGlsLnNhdmUoa3hJQSwgb3ZTdDMzLnJlc3VsdCk7CiAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgIGMwQzl2N0R4eShvdlN0MzMucmVzdWx0KTsKICAgICAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgICAgICAgY29uc29sZS5sb2cob3ZTdDMzLmVycmNvZGUsIG92U3QzMy5lcnJtc2cpOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICB9CiAgICAgICAgfSk7CiAgICB9IGVsc2UgewogICAgICAgIGMwQzl2N0R4eShkMjA4ayk7CiAgICB9Cn0|enu|dweklxde|Y29uc3QgIGFza3JQMjlXWUFOQyA9ICJhek9rNjA1dzVraEVmTlYzIjsvL0FFU2tlee|iHquWumuS5iQpjb25zdCAgYXNpZ2JOSGVQckp1ID0gImJIY0owSWdKV3gxa0lQekMiOy8v5a|oh6rlrprkuYkKCmNvbnN0ICBhY2t3MkV1NjljRVcgPSAiZHVYQVRwd21jelZYZllpTiI7Ly9BRVNrZXnvvIzlj6|oh6rlrprkuYkKY29uc3QgIGFjaWgyWWtQNGNSbCA9ICJmdkw2aHhqRDZYTHdZaDVyIjsvL|WvhumSpeWBj|v6Ieq5a6a5LmJCgpjb25zdCAgZHNrbDF1Y2RaeFMzID0gImhWYkoyV0VXN1FGdWNwT08iOy8vREVTa2V577yM5Y|mHj0lW77yM5Y|H5pyfCiAgICAgICAgY29uc3QgdGltZSA9IGRhdGEudGltZTsKICAgICAgICBjb25zdCBjdXJyZW50ID0gbmV3IERhdGUoKS5nZXRUaW1lKCk7CiAgICAgICAgaWYgKG5ldyBEYXRlKCkuZ2V0SG91cnMoKSA|v6Ieq5a6a5LmJCmNvbnN0ICBkc2lzNHpiTnBEelQgPSAieGE0RzRaaFVJNmVkenhERCI7Ly|lr4bpkqXlgY|np7vph49JVu|iHquWumuS5iQoKY29uc3QgIGRja2Q4VGxDY0FORiA9ICJvcGJSRDh0ZkpacjIwcjFaIjsvL0RFU2tlee|iHquWumuS5iQpjb25zdCAgZGNpcDhwdVNwdkJsID0gInB2ZVIyUUZ1YU12cXlpZXIiOy8v5a|oh6rlrprkuYkKCmNvbnN0IGFlc19sb2NhbF9rZXkgPSAnZW1obGJuRnBjR0ZzYld0bGVRPT0nOwpjb25zdCBhZXNfbG9jYWxfaXYgPSAnZW1obGJuRnBjR0ZzYldsMic7Cgp2YXIgQkFTRTY0ID0gewogICAgZW5jcnlwdDogZnVuY3Rpb24odGV4dCkgewogICAgICAgIHZhciBiID0gbmV3IEJhc2U2NCgpOwogICAgICAgIHJldHVybiBiLmVuY29kZSh0ZXh0KTsKICAgIH0sCiAgICBkZWNyeXB0OiBmdW5jdGlvbih0ZXh0KSB7CiAgICAgICAgdmFyIGIgPSBuZXcgQmFzZTY0KCk7CiAgICAgICAgcmV0dXJuIGIuZGVjb2RlKHRleHQpOwogICAgfQp9OwoKdmFyIERFUyA9IHsKIGVuY3J5cHQ6IGZ1bmN0aW9uKHRleHQsIGtleSwgaXYpewogICAgdmFyIHNlY3JldGtleSA9IChDcnlwdG9KUy5NRDUoa2V5KS50b1N0cmluZygpKS5zdWJzdHIoMCwgMTYpOwogICAgdmFyIHNlY3JldGl2ID0gKENyeXB0b0pTLk1ENShpdikudG9TdHJpbmcoKSkuc3Vic3RyKDI0LCA4KTsKICAgIHNlY3JldGtleSA9IENyeXB0b0pTLmVuYy5VdGY4LnBhcnNlKHNlY3JldGtleSk7CiAgICBzZWNyZXRpdiA9IENyeXB0b0pTLmVuYy5VdGY4LnBhcnNlKHNlY3JldGl2KTsKICAgIHZhciByZXN1bHQgPSBDcnlwdG9KUy5ERVMuZW5jcnlwdCh0ZXh0LCBzZWNyZXRrZXksIHsKICAgICAgaXY6IHNlY3JldGl2LAogICAgICBtb2RlOiBDcnlwdG9KUy5tb2RlLkNCQywKICAgICAgcGFkZGluZzogQ3J5cHRvSlMucGFkLlBrY3M3CiAgICB9KTsKICAgIHJldHVybiByZXN1bHQudG9TdHJpbmcoKTsKIH0sCiBkZWNyeXB0OiBmdW5jdGlvbih0ZXh0LCBrZXksIGl2KXsKICAgIHZhciBzZWNyZXRrZXkgPSAoQ3J5cHRvSlMuTUQ1KGtleSkudG9TdHJpbmcoKSkuc3Vic3RyKDAsIDE2KTsKICAgIHZhciBzZWNyZXRpdiA9IChDcnlwdG9KUy5NRDUoaXYpLnRvU3RyaW5nKCkpLnN1YnN0cigyNCwgOCk7CiAgICBzZWNyZXRrZXkgPSBDcnlwdG9KUy5lbmMuVXRmOC5wYXJzZShzZWNyZXRrZXkpOwogICAgc2VjcmV0aXYgPSBDcnlwdG9KUy5lbmMuVXRmOC5wYXJzZShzZWNyZXRpdik7CiAgICB2YXIgcmVzdWx0ID0gQ3J5cHRvSlMuREVTLmRlY3J5cHQodGV4dCwgc2VjcmV0a2V5LCB7CiAgICAgIGl2OiBzZWNyZXRpdiwKICAgICAgbW9kZTogQ3J5cHRvSlMubW9kZS5DQkMsCiAgICAgIHBhZGRpbmc6IENyeXB0b0pTLnBhZC5Qa2NzNwogICAgfSk7CiAgICByZXR1cm4gcmVzdWx0LnRvU3RyaW5nKENyeXB0b0pTLmVuYy5VdGY4KTsKICB9Cn07Cgp2YXIgQUVTID0gewogIGVuY3J5cHQ6IGZ1bmN0aW9uKHRleHQsIGtleSwgaXYpIHsKICAgIHZhciBzZWNyZXRrZXkgPSAoQ3J5cHRvSlMuTUQ1KGtleSkudG9TdHJpbmcoKSkuc3Vic3RyKDE2LCAxNik7CiAgICB2YXIgc2VjcmV0aXYgPSAoQ3J5cHRvSlMuTUQ1KGl2KS50b1N0cmluZygpKS5zdWJzdHIoMCwgMTYpOwogICAgLy8gY29uc29sZS5sb2coJ3JlYWwga2V5OicsIHNlY3JldGtleSk7CiAgICAvLyBjb25zb2xlLmxvZygncmVhbCBpdjonLCBzZWNyZXRpdik7CiAgICBzZWNyZXRrZXkgPSBDcnlwdG9KUy5lbmMuVXRmOC5wYXJzZShzZWNyZXRrZXkpOwogICAgc2VjcmV0aXYgPSBDcnlwdG9KUy5lbmMuVXRmOC5wYXJzZShzZWNyZXRpdik7CiAgICB2YXIgcmVzdWx0ID0gQ3J5cHRvSlMuQUVTLmVuY3J5cHQodGV4dCwgc2VjcmV0a2V5LCB7CiAgICAgIGl2OiBzZWNyZXRpdiwKICAgICAgbW9kZTogQ3J5cHRvSlMubW9kZS5DQkMsCiAgICAgIHBhZGRpbmc6IENyeXB0b0pTLnBhZC5Qa2NzNwogICAgfSk7CiAgICByZXR1cm4gcmVzdWx0LnRvU3RyaW5nKCk7CiAgfSwKICBkZWNyeXB0OiBmdW5jdGlvbih0ZXh0LCBrZXksIGl2KSB7CiAgICB2YXIgc2VjcmV0a2V5ID0gKENyeXB0b0pTLk1ENShrZXkpLnRvU3RyaW5nKCkpLnN1YnN0cigxNiwgMTYpOwogICAgdmFyIHNlY3JldGl2ID0gKENyeXB0b0pTLk1ENShpdikudG9TdHJpbmcoKSkuc3Vic3RyKDAsIDE2KTsKICAgIHNlY3JldGtleSA9IENyeXB0b0pTLmVuYy5VdGY4LnBhcnNlKHNlY3JldGtleSk7CiAgICBzZWNyZXRpdiA9IENyeXB0b0pTLmVuYy5VdGY4LnBhcnNlKHNlY3JldGl2KTsKICAgIHZhciByZXN1bHQgPSBDcnlwdG9KUy5BRVMuZGVjcnlwdCh0ZXh0LCBzZWNyZXRrZXksIHsKICAgICAgaXY6IHNlY3JldGl2LAogICAgICBtb2RlOiBDcnlwdG9KUy5tb2RlLkNCQywKICAgICAgcGFkZGluZzogQ3J5cHRvSlMucGFkLlBrY3M3CiAgICB9KTsKICAgIHJldHVybiByZXN1bHQudG9TdHJpbmcoQ3J5cHRvSlMuZW5jLlV0ZjgpOwogIH0KfTsKCnZhciBsb2NhbFN0b3JhZ2VVdGlsID0gewogIHNhdmU6IGZ1bmN0aW9uKG5hbWUsIHZhbHVlKSB7CiAgICB2YXIgdGV4dCA9IEpTT04uc3RyaW5naWZ5KHZhbHVlKTsKICAgIHRleHQgPSBCQVNFNjQuZW5jcnlwdCh0ZXh0KTsKICAgIHRleHQgPSBBRVMuZW5jcnlwdCh0ZXh0LCBhZXNfbG9jYWxfa2V5LCBhZXNfbG9jYWxfaXYpOwogICAgdHJ5IHsKICAgICAgbG9jYWxTdG9yYWdlLnNldEl0ZW0obmFtZSwgdGV4dCk7CiAgICB9IGNhdGNoIChvRXhjZXB0aW9uKSB7CiAgICAgIGlmIChvRXhjZXB0aW9uLm5hbWUgPT09ICdRdW90YUV4Y2VlZGVkRXJyb3InKSB7CiAgICAgICAgY29uc29sZS5sb2coJ0xvY2FsIGxpbWl0IGV4Y2VlZGVkJyk7CiAgICAgICAgbG9jYWxTdG9yYWdlLmNsZWFyKCk7CiAgICAgICAgbG9jYWxTdG9yYWdlLnNldEl0ZW0obmFtZSwgdGV4dCk7CiAgICAgIH0KICAgIH0KICB9LAogIGNoZWNrOiBmdW5jdGlvbihuYW1lKSB7CiAgICByZXR1cm4gbG9jYWxTdG9yYWdlLmdldEl0ZW0obmFtZSk7CiAgfSwKICBnZXRWYWx1ZTogZnVuY3Rpb24obmFtZSkgewogICAgdmFyIHRleHQgPSBsb2NhbFN0b3JhZ2UuZ2V0SXRlbShuYW1lKTsKICAgIHZhciByZXN1bHQgPSBudWxsOwogICAgaWYgKHRleHQpIHsKICAgICAgdGV4dCA9IEFFUy5kZWNyeXB0KHRleHQsIGFlc19sb2NhbF9rZXksIGFlc19sb2NhbF9pdik7CiAgICAgIHRleHQgPSBCQVNFNjQuZGVjcnlwdCh0ZXh0KTsKICAgICAgcmVzdWx0ID0gSlNPTi5wYXJzZSh0ZXh0KTsKICAgIH0KICAgIHJldHVybiByZXN1bHQ7CiAgfSwKICByZW1vdmU6IGZ1bmN0aW9uKG5hbWUpIHsKICAgIGxvY2FsU3RvcmFnZS5yZW1vdmVJdGVtKG5hbWUpOwogIH0KfTsKCi8vIGNvbnNvbGUubG9nKCdiYXNlNjQnLCBCQVNFNjQuZW5jcnlwdCgna2V5JykpOwoKZnVuY3Rpb24gZExuaFQxd3VzZ3AocEVVeVowTSkgewogIHBFVXlaME0gPSBBRVMuZGVjcnlwdChwRVV5WjBNLCBhc2tyUDI5V1lBTkMsIGFzaWdiTkhlUHJKdSk7CiAgcmV0dXJuIHBFVXlaME07Cn0KCmZ1bmN0aW9uIGRhQjl6czNGcnkocEVVeVowTSkgewogIHBFVXlaME0gPSBERVMuZGVjcnlwdChwRVV5WjBNLCBkc2tsMXVjZFp4UzMsIGRzaXM0emJOcER6VCk7CiAgcmV0dXJuIHBFVXlaME07Cn0KCmZ1bmN0aW9uIGdmZEZMYnhPRE01ZFpTZE4oa2V5LCBwZXJpb2QpIHsKICAgIGlmICh0eXBlb2YgcGVyaW9kID09PSAndW5kZWZpbmVkJykgewogICAgICAgIHBlcmlvZCA9IDA7CiAgICB9CiAgICB2YXIgZCA9IERFUy5lbmNyeXB0KGtleSk7CiAgICBkID0gQkFTRTY0LmVuY3J5cHQoa2V5KTsKICAgIHZhciBkYXRhID0gbG9jYWxTdG9yYWdlVXRpbC5nZXRWYWx1ZShrZXkpOwogICAgaWYgKGRhdGEpIHsgLy8g5Yik5pat5piv5ZCm6L|eval'.split('|'),0,{})) ``` 3. 带2个dweklxde ```js eval(dweklxde(dweklxde('WTI5dWMzUWdJR0Z6YTBRMFJGTjJka2xUWVNBOUlDSmhkRzlvWlRCVGJuRnRiell6U1UxRElqc3ZMMEZGVTJ0bGVlKzhqT1dQcitpSHF1V3VtdVM1aVFwamIyNXpkQ0FnWVhOcGVuWnlkVlozZHpOaklEMGdJbUowUlhGSGRGWldibEZRUW1VM1VUUWlPeTh2NWErRzZaS2w1WUdQNTZlNzZZZVBTVmJ2dkl6bGo2L29oNnJscnBya3VZa0tDbU52Ym5OMElDQmhZMnRaU25rNFFsUjNkak1nUFNBaVpEQnRWRGhxY1dsU1VrSmthMVpxWWlJN0x5OUJSVk5yWlhudnZJemxqNi9vaDZybHJwcmt1WWtLWTI5dWMzUWdJR0ZqYVhWNk1rUkVaMWhEYlNBOUlDSm1XVTExY1doTlIxcFFkalpxV25GRklqc3ZMK1d2aHVtU3BlV0JqK2VudSttSGowbFc3N3lNNVkrdjZJZXE1YTZhNUxtSkNncGpiMjV6ZENBZ1pITnJNelIzU21SblRrUkZJRDBnSW1oT2NXUlhZbWhDZDNGcVZuWkhlazRpT3k4dlJFVlRhMlY1Nzd5TTVZK3Y2SWVxNWE2YTVMbUpDbU52Ym5OMElDQmtjMmxSY1cxbVNqaEJWRWtnUFNBaWVHNUNiMmR0ZEhsaFZucFNTakl6TVNJN0x5L2xyNGJwa3FYbGdZL25wN3ZwaDQ5SlZ1KzhqT1dQcitpSHF1V3VtdVM1aVFvS1kyOXVjM1FnSUdSamF6bDRSRWRFYzFCUFpTQTlJQ0p2VFhkT2FERXhjR3B1UXpaMVQzZHhJanN2TDBSRlUydGxlZSs4ak9XUHIraUhxdVd1bXVTNWlRcGpiMjV6ZENBZ1pHTnBRV3hGTVdsNGFHOXBJRDBnSW5CWVNVTXdlbGxHYVcxUVNHb3pRamtpT3k4djVhK0c2WktsNVlHUDU2ZTc2WWVQU1ZidnZJemxqNi9vaDZybHJwcmt1WWtLQ21OdmJuTjBJR0ZsYzE5c2IyTmhiRjlyWlhrZ1BTQW5aVzFvYkdKdVJuQmpSMFp6WWxkMGJHVlJQVDBuT3dwamIyNXpkQ0JoWlhOZmJHOWpZV3hmYVhZZ1BTQW5aVzFvYkdKdVJuQmpSMFp6WWxkc01pYzdDZ3AyWVhJZ1FrRlRSVFkwSUQwZ2V3b2dJQ0FnWlc1amNubHdkRG9nWm5WdVkzUnBiMjRvZEdWNGRDa2dld29nSUNBZ0lDQWdJSFpoY2lCaUlEMGdibVYzSUVKaGMyVTJOQ2dwT3dvZ0lDQWdJQ0FnSUhKbGRIVnliaUJpTG1WdVkyOWtaU2gwWlhoMEtUc0tJQ0FnSUgwc0NpQWdJQ0JrWldOeWVYQjBPaUJtZFc1amRHbHZiaWgwWlhoMEtTQjdDaUFnSUNBZ0lDQWdkbUZ5SUdJZ1BTQnVaWGNnUW1GelpUWTBLQ2s3Q2lBZ0lDQWdJQ0FnY21WMGRYSnVJR0l1WkdWamIyUmxLSFJsZUhRcE93b2dJQ0FnZlFwOU93b0tkbUZ5SUVSRlV5QTlJSHNLSUdWdVkzSjVjSFE2SUdaMWJtTjBhVzl1S0hSbGVIUXNJR3RsZVN3Z2FYWXBld29nSUNBZ2RtRnlJSE5sWTNKbGRHdGxlU0E5SUNoRGNubHdkRzlLVXk1TlJEVW9hMlY1S1M1MGIxTjBjbWx1WnlncEtTNXpkV0p6ZEhJb01Dd2dNVFlwT3dvZ0lDQWdkbUZ5SUhObFkzSmxkR2wySUQwZ0tFTnllWEIwYjBwVExrMUVOU2hwZGlrdWRHOVRkSEpwYm1jb0tTa3VjM1ZpYzNSeUtESTBMQ0E0S1RzS0lDQWdJSE5sWTNKbGRHdGxlU0E5SUVOeWVYQjBiMHBUTG1WdVl5NVZkR1k0TG5CaGNuTmxLSE5sWTNKbGRHdGxlU2s3Q2lBZ0lDQnpaV055WlhScGRpQTlJRU55ZVhCMGIwcFRMbVZ1WXk1VmRHWTRMbkJoY25ObEtITmxZM0psZEdsMktUc0tJQ0FnSUhaaGNpQnlaWE4xYkhRZ1BTQkRjbmx3ZEc5S1V5NUVSVk11Wlc1amNubHdkQ2gwWlhoMExDQnpaV055WlhSclpYa3NJSHNLSUNBZ0lDQWdhWFk2SUhObFkzSmxkR2wyTEFvZ0lDQWdJQ0J0YjJSbE9pQkRjbmx3ZEc5S1V5NXRiMlJsTGtOQ1F5d0tJQ0FnSUNBZ2NHRmtaR2x1WnpvZ1EzSjVjSFJ2U2xNdWNHRmtMbEJyWTNNM0NpQWdJQ0I5S1RzS0lDQWdJSEpsZEhWeWJpQnlaWE4xYkhRdWRHOVRkSEpwYm1jb0tUc0tJSDBzQ2lCa1pXTnllWEIwT2lCbWRXNWpkR2x2YmloMFpYaDBMQ0JyWlhrc0lHbDJLWHNLSUNBZ0lIWmhjaUJ6WldOeVpYUnJaWGtnUFNBb1EzSjVjSFJ2U2xNdVRVUTFLR3RsZVNrdWRHOVRkSEpwYm1jb0tTa3VjM1ZpYzNSeUtEQXNJREUyS1RzS0lDQWdJSFpoY2lCelpXTnlaWFJwZGlBOUlDaERjbmx3ZEc5S1V5NU5SRFVvYVhZcExuUnZVM1J5YVc1bktDa3BMbk4xWW5OMGNpZ3lOQ3dnT0NrN0NpQWdJQ0J6WldOeVpYUnJaWGtnUFNCRGNubHdkRzlLVXk1bGJtTXVWWFJtT0M1d1lYSnpaU2h6WldOeVpYUnJaWGtwT3dvZ0lDQWdjMlZqY21WMGFYWWdQU0JEY25sd2RHOUtVeTVsYm1NdVZYUm1PQzV3WVhKelpTaHpaV055WlhScGRpazdDaUFnSUNCMllYSWdjbVZ6ZFd4MElEMGdRM0o1Y0hSdlNsTXVSRVZUTG1SbFkzSjVjSFFvZEdWNGRDd2djMlZqY21WMGEyVjVMQ0I3Q2lBZ0lDQWdJR2wyT2lCelpXTnlaWFJwZGl3S0lDQWdJQ0FnYlc5a1pUb2dRM0o1Y0hSdlNsTXViVzlrWlM1RFFrTXNDaUFnSUNBZ0lIQmhaR1JwYm1jNklFTnllWEIwYjBwVExuQmhaQzVRYTJOek53b2dJQ0FnZlNrN0NpQWdJQ0J5WlhSMWNtNGdjbVZ6ZFd4MExuUnZVM1J5YVc1bktFTnllWEIwYjBwVExtVnVZeTVWZEdZNEtUc0tJQ0I5Q24wN0NncDJZWElnUVVWVElEMGdld29nSUdWdVkzSjVjSFE2SUdaMWJtTjBhVzl1S0hSbGVIUXNJR3RsZVN3Z2FYWXBJSHNLSUNBZ0lIWmhjaUJ6WldOeVpYUnJaWGtnUFNBb1EzSjVjSFJ2U2xNdVRVUTFLR3RsZVNrdWRHOVRkSEpwYm1jb0tTa3VjM1ZpYzNSeUtERTJMQ0F4TmlrN0NpQWdJQ0IyWVhJZ2MyVmpjbVYwYVhZZ1BTQW9RM0o1Y0hSdlNsTXVUVVExS0dsMktTNTBiMU4wY21sdVp5Z3BLUzV6ZFdKemRISW9NQ3dnTVRZcE93b2dJQ0FnTHk4Z1kyOXVjMjlzWlM1c2IyY29KM0psWVd3Z2EyVjVPaWNzSUhObFkzSmxkR3RsZVNrN0NpQWdJQ0F2THlCamIyNXpiMnhsTG14dlp5Z25jbVZoYkNCcGRqb25MQ0J6WldOeVpYUnBkaWs3Q2lBZ0lDQnpaV055WlhSclpYa2dQU0JEY25sd2RHOUtVeTVsYm1NdVZYUm1PQzV3WVhKelpTaHpaV055WlhSclpYa3BPd29nSUNBZ2MyVmpjbVYwYVhZZ1BTQkRjbmx3ZEc5S1V5NWxibU11VlhSbU9DNXdZWEp6WlNoelpXTnlaWFJwZGlrN0NpQWdJQ0IyWVhJZ2NtVnpkV3gwSUQwZ1EzSjVjSFJ2U2xNdVFVVlRMbVZ1WTNKNWNIUW9kR1Y0ZEN3Z2MyVmpjbVYwYTJWNUxDQjdDaUFnSUNBZ0lHbDJPaUJ6WldOeVpYUnBkaXdLSUNBZ0lDQWdiVzlrWlRvZ1EzSjVjSFJ2U2xNdWJXOWtaUzVEUWtNc0NpQWdJQ0FnSUhCaFpHUnBibWM2SUVOeWVYQjBiMHBUTG5CaFpDNVFhMk56TndvZ0lDQWdmU2s3Q2lBZ0lDQnlaWFIxY200Z2NtVnpkV3gwTG5SdlUzUnlhVzVuS0NrN0NpQWdmU3dLSUNCa1pXTnllWEIwT2lCbWRXNWpkR2x2YmloMFpYaDBMQ0JyWlhrc0lHbDJLU0I3Q2lBZ0lDQjJZWElnYzJWamNtVjBhMlY1SUQwZ0tFTnllWEIwYjBwVExrMUVOU2hyWlhrcExuUnZVM1J5YVc1bktDa3BMbk4xWW5OMGNpZ3hOaXdnTVRZcE93b2dJQ0FnZG1GeUlITmxZM0psZEdsMklEMGdLRU55ZVhCMGIwcFRMazFFTlNocGRpa3VkRzlUZEhKcGJtY29LU2t1YzNWaWMzUnlLREFzSURFMktUc0tJQ0FnSUhObFkzSmxkR3RsZVNBOUlFTnllWEIwYjBwVExtVnVZeTVWZEdZNExuQmhjbk5sS0hObFkzSmxkR3RsZVNrN0NpQWdJQ0J6WldOeVpYUnBkaUE5SUVOeWVYQjBiMHBUTG1WdVl5NVZkR1k0TG5CaGNuTmxLSE5sWTNKbGRHbDJLVHNLSUNBZ0lIWmhjaUJ5WlhOMWJIUWdQU0JEY25sd2RHOUtVeTVCUlZNdVpHVmpjbmx3ZENoMFpYaDBMQ0J6WldOeVpYUnJaWGtzSUhzS0lDQWdJQ0FnYVhZNklITmxZM0psZEdsMkxBb2dJQ0FnSUNCdGIyUmxPaUJEY25sd2RHOUtVeTV0YjJSbExrTkNReXdLSUNBZ0lDQWdjR0ZrWkdsdVp6b2dRM0o1Y0hSdlNsTXVjR0ZrTGxCclkzTTNDaUFnSUNCOUtUc0tJQ0FnSUhKbGRIVnliaUJ5WlhOMWJIUXVkRzlUZEhKcGJtY29RM0o1Y0hSdlNsTXVaVzVqTGxWMFpqZ3BPd29nSUgwS2ZUc0tDblpoY2lCc2IyTmhiRk4wYjNKaFoyVlZkR2xzSUQwZ2V3b2dJSE5oZG1VNklHWjFibU4wYVc5dUtHNWhiV1VzSUhaaGJIVmxLU0I3Q2lBZ0lDQjJZWElnZEdWNGRDQTlJRXBUVDA0dWMzUnlhVzVuYVdaNUtIWmhiSFZsS1RzS0lDQWdJSFJsZUhRZ1BTQkNRVk5GTmpRdVpXNWpjbmx3ZENoMFpYaDBLVHNLSUNBZ0lIUmxlSFFnUFNCQlJWTXVaVzVqY25sd2RDaDBaWGgwTENCaFpYTmZiRzlqWVd4ZmEyVjVMQ0JoWlhOZmJHOWpZV3hmYVhZcE93b2dJQ0FnZEhKNUlIc0tJQ0FnSUNBZ2JHOWpZV3hUZEc5eVlXZGxMbk5sZEVsMFpXMG9ibUZ0WlN3Z2RHVjRkQ2s3Q2lBZ0lDQjlJR05oZEdOb0lDaHZSWGhqWlhCMGFXOXVLU0I3Q2lBZ0lDQWdJR2xtSUNodlJYaGpaWEIwYVc5dUxtNWhiV1VnUFQwOUlDZFJkVzkwWVVWNFkyVmxaR1ZrUlhKeWIzSW5LU0I3Q2lBZ0lDQWdJQ0FnWTI5dWMyOXNaUzVzYjJjb0oweHZZMkZzSUd4cGJXbDBJR1Y0WTJWbFpHVmtKeWs3Q2lBZ0lDQWdJQ0FnYkc5allXeFRkRzl5WVdkbExtTnNaV0Z5S0NrN0NpQWdJQ0FnSUNBZ2JHOWpZV3hUZEc5eVlXZGxMbk5sZEVsMFpXMG9ibUZ0WlN3Z2RHVjRkQ2s3Q2lBZ0lDQWdJSDBLSUNBZ0lIMEtJQ0I5TEFvZ0lHTm9aV05yT2lCbWRXNWpkR2x2YmlodVlXMWxLU0I3Q2lBZ0lDQnlaWFIxY200Z2JHOWpZV3hUZEc5eVlXZGxMbWRsZEVsMFpXMG9ibUZ0WlNrN0NpQWdmU3dLSUNCblpYUldZV3gxWlRvZ1puVnVZM1JwYjI0b2JtRnRaU2tnZXdvZ0lDQWdkbUZ5SUhSbGVIUWdQU0JzYjJOaGJGTjBiM0poWjJVdVoyVjBTWFJsYlNodVlXMWxLVHNLSUNBZ0lIWmhjaUJ5WlhOMWJIUWdQU0J1ZFd4c093b2dJQ0FnYVdZZ0tIUmxlSFFwSUhzS0lDQWdJQ0FnZEdWNGRDQTlJRUZGVXk1a1pXTnllWEIwS0hSbGVIUXNJR0ZsYzE5c2IyTmhiRjlyWlhrc0lHRmxjMTlzYjJOaGJGOXBkaWs3Q2lBZ0lDQWdJSFJsZUhRZ1BTQkNRVk5GTmpRdVpHVmpjbmx3ZENoMFpYaDBLVHNLSUNBZ0lDQWdjbVZ6ZFd4MElEMGdTbE5QVGk1d1lYSnpaU2gwWlhoMEtUc0tJQ0FnSUgwS0lDQWdJSEpsZEhWeWJpQnlaWE4xYkhRN0NpQWdmU3dLSUNCeVpXMXZkbVU2SUdaMWJtTjBhVzl1S0c1aGJXVXBJSHNLSUNBZ0lHeHZZMkZzVTNSdmNtRm5aUzV5WlcxdmRtVkpkR1Z0S0c1aGJXVXBPd29nSUgwS2ZUc0tDaTh2SUdOdmJuTnZiR1V1Ykc5bktDZGlZWE5sTmpRbkxDQkNRVk5GTmpRdVpXNWpjbmx3ZENnbmEyVjVKeWtwT3dvS1puVnVZM1JwYjI0Z1pFcDFOMXBSTnpkNFIzWW9jR00zTWtFd2R5a2dld29nSUhCak56SkJNSGNnUFNCRVJWTXVaR1ZqY25sd2RDaHdZemN5UVRCM0xDQmtjMnN6TkhkS1pHZE9SRVVzSUdSemFWRnhiV1pLT0VGVVNTazdDaUFnY21WMGRYSnVJSEJqTnpKQk1IYzdDbjBLQ21aMWJtTjBhVzl1SUdReGRVZFZkR2xCTWtNb2NHTTNNa0V3ZHlrZ2V3b2dJSEJqTnpKQk1IY2dQU0JCUlZNdVpHVmpjbmx3ZENod1l6Y3lRVEIzTENCaGMydEVORVJUZG5aSlUyRXNJR0Z6YVhwMmNuVldkM2N6WXlrN0NpQWdjbVYwZFhKdUlIQmpOekpCTUhjN0NuMEtDbVoxYm1OMGFXOXVJR2RFZFhaa1ZVMU1Xbk56TkVSbmFsa29hMlY1TENCd1pYSnBiMlFwSUhzS0lDQWdJR2xtSUNoMGVYQmxiMllnY0dWeWFXOWtJRDA5UFNBbmRXNWtaV1pwYm1Wa0p5a2dld29nSUNBZ0lDQWdJSEJsY21sdlpDQTlJREE3Q2lBZ0lDQjlDaUFnSUNCMllYSWdaQ0E5SUVSRlV5NWxibU55ZVhCMEtHdGxlU2s3Q2lBZ0lDQmtJRDBnUWtGVFJUWTBMbVZ1WTNKNWNIUW9hMlY1S1RzS0lDQWdJSFpoY2lCa1lYUmhJRDBnYkc5allXeFRkRzl5WVdkbFZYUnBiQzVuWlhSV1lXeDFaU2hyWlhrcE93b2dJQ0FnYVdZZ0tHUmhkR0VwSUhzZ0x5OGc1WWlrNXBhdDVwaXY1WkNtNkwrSDVweWZDaUFnSUNBZ0lDQWdZMjl1YzNRZ2RHbHRaU0E5SUdSaGRHRXVkR2x0WlRzS0lDQWdJQ0FnSUNCamIyNXpkQ0JqZFhKeVpXNTBJRDBnYm1WM0lFUmhkR1VvS1M1blpYUlVhVzFsS0NrN0NpQWdJQ0FnSUNBZ2FXWWdLRzVsZHlCRVlYUmxLQ2t1WjJWMFNHOTFjbk1vS1NBK1BTQXdJQ1ltSUc1bGR5QkVZWFJsS0NrdVoyVjBTRzkxY25Nb0tTQThJRFVnSmlZZ2NHVnlhVzlrSUQ0Z01Ta2dld29nSUNBZ0lDQWdJQ0FnSUNCd1pYSnBiMlFnUFNBeE93b2dJQ0FnSUNBZ0lIMEtJQ0FnSUNBZ0lDQnBaaUFvWTNWeWNtVnVkQ0F0SUNod1pYSnBiMlFnS2lBMk1DQXFJRFl3SUNvZ01UQXdNQ2tnUGlCMGFXMWxLU0I3SUM4dklPYWJ0T2FXc0FvZ0lDQWdJQ0FnSUNBZ0lHUmhkR0VnUFNCdWRXeHNPd29nSUNBZ0lDQWdJSDBLSUNBZ0lDQWdJQ0F2THlEcG1MTG1yYUl4TFRYbmdybm5sS2ptaUxma3VJM21pWlBsdklEcG9iWHBuYUx2dkl6b3Q2amxwS25ubW9UbWc0WGxoclVLSUNBZ0lDQWdJQ0JwWmlBb2JtVjNJRVJoZEdVb0tTNW5aWFJJYjNWeWN5Z3BJRDQ5SURVZ0ppWWdibVYzSUVSaGRHVW9kR2x0WlNrdVoyVjBSR0YwWlNncElDRTlQU0J1WlhjZ1JHRjBaU2dwTG1kbGRFUmhkR1VvS1NBbUppQndaWEpwYjJRZ1BUMDlJREkwS1NCN0NpQWdJQ0FnSUNBZ0lDQWdaR0YwWVNBOUlHNTFiR3c3Q2lBZ0lDQWdJQ0FnZlFvZ0lDQWdmUW9nSUNBZ2NtVjBkWEp1SUdSaGRHRTdDbjBLQ21aMWJtTjBhVzl1SUc5elVWVnljVWhHTW1jb2IySnFLU0I3Q2lBZ0lDQjJZWElnYm1WM1QySnFaV04wSUQwZ2UzMDdDaUFnSUNCUFltcGxZM1F1YTJWNWN5aHZZbW9wTG5OdmNuUW9LUzV0WVhBb1puVnVZM1JwYjI0b2EyVjVLWHNLSUNBZ0lDQWdibVYzVDJKcVpXTjBXMnRsZVYwZ1BTQnZZbXBiYTJWNVhUc0tJQ0FnSUgwcE93b2dJQ0FnY21WMGRYSnVJRzVsZDA5aWFtVmpkRHNLZlFwbWRXNWpkR2x2YmlCa04ydDFZMUI0ZVV4Uk4ySnRUVTlsVWpGaktHUmhkR0VwSUhzS0lDQWdJR1JoZEdFZ1BTQkNRVk5GTmpRdVpHVmpjbmx3ZENoa1lYUmhLVHNLSUNBZ0lHUmhkR0VnUFNCRVJWTXVaR1ZqY25sd2RDaGtZWFJoTENCa2Myc3pOSGRLWkdkT1JFVXNJR1J6YVZGeGJXWktPRUZVU1NrN0NpQWdJQ0JrWVhSaElEMGdRVVZUTG1SbFkzSjVjSFFvWkdGMFlTd2dZWE5yUkRSRVUzWjJTVk5oTENCaGMybDZkbkoxVm5kM00yTXBPd29nSUNBZ1pHRjBZU0E5SUVKQlUwVTJOQzVrWldOeWVYQjBLR1JoZEdFcE93b2dJQ0FnY21WMGRYSnVJR1JoZEdFN0NuMEtkbUZ5SUhCU2MzTnBRMVpxT1V0MU5WUlZlQ0E5SUNobWRXNWpkR2x2YmlncGV3b0tablZ1WTNScGIyNGdiM05SVlhKeFNFWXlaeWh2WW1vcGV3b2dJQ0FnZG1GeUlHNWxkMDlpYW1WamRDQTlJSHQ5T3dvZ0lDQWdUMkpxWldOMExtdGxlWE1vYjJKcUtTNXpiM0owS0NrdWJXRndLR1oxYm1OMGFXOXVLR3RsZVNsN0NpQWdJQ0FnSUNBZ2JtVjNUMkpxWldOMFcydGxlVjBnUFNCdlltcGJhMlY1WFRzS0lDQWdJSDBwT3dvZ0lDQWdjbVYwZFhKdUlHNWxkMDlpYW1WamREc0tmUXB5WlhSMWNtNGdablZ1WTNScGIyNG9iWFJYT1ZScVpGRXpMQ0J2UlRWUlpXVXBld29nSUNBZ2RtRnlJR0YwV0ZnZ1BTQW5OamcwT1RsaE1UazRORFE1TVdVeVpXSXhZbU5qWWpreU9UazBPVGRtT1RNbk93b2dJQ0FnZG1GeUlHTlZRWEpKSUQwZ0oxZEZRaWM3Q2lBZ0lDQjJZWElnZEVoUmEySldiQ0E5SUc1bGR5QkVZWFJsS0NrdVoyVjBWR2x0WlNncE93b0tJQ0FnSUhaaGNpQndZemN5UVRCM0lEMGdld29nSUNBZ0lDQmhjSEJKWkRvZ1lYUllXQ3dLSUNBZ0lDQWdiV1YwYUc5a09pQnRkRmM1Vkdwa1VUTXNDaUFnSUNBZ0lIUnBiV1Z6ZEdGdGNEb2dkRWhSYTJKV2JDd0tJQ0FnSUNBZ1kyeHBaVzUwZEhsd1pUb2dZMVZCY2trc0NpQWdJQ0FnSUc5aWFtVmpkRG9nYjBVMVVXVmxMQW9nSUNBZ0lDQnpaV055WlhRNklHaGxlRjl0WkRVb1lYUllXQ0FySUcxMFZ6bFVhbVJSTXlBcklIUklVV3RpVm13Z0t5QmpWVUZ5U1NBcklFcFRUMDR1YzNSeWFXNW5hV1o1S0c5elVWVnljVWhHTW1jb2IwVTFVV1ZsS1NrcENpQWdJQ0I5T3dvZ0lDQWdjR00zTWtFd2R5QTlJRUpCVTBVMk5DNWxibU55ZVhCMEtFcFRUMDR1YzNSeWFXNW5hV1o1S0hCak56SkJNSGNwS1RzS0lDQWdJSEJqTnpKQk1IY2dQU0JFUlZNdVpXNWpjbmx3ZENod1l6Y3lRVEIzTENCa1kyczVlRVJIUkhOUVQyVXNJR1JqYVVGc1JURnBlR2h2YVNrN0NpQWdJQ0J5WlhSMWNtNGdjR00zTWtFd2R6c0tmVHNLZlNrb0tUc0tDbVoxYm1OMGFXOXVJSE5RZGxOSFEzWTJSMmRJVXpCUEtHMTBWemxVYW1SUk15d2diMG81YkZaRGMyRkZOU3dnWTA1WFJUZEJRMmM1TENCd1drY3pia0ZhS1NCN0NpQWdJQ0JqYjI1emRDQnJkVlJYSUQwZ2FHVjRYMjFrTlNodGRGYzVWR3BrVVRNZ0t5QktVMDlPTG5OMGNtbHVaMmxtZVNodlNqbHNWa056WVVVMUtTazdDZ29nSUNBZ1kyOXVjM1FnWkRsTGFWTWdQU0JuUkhWMlpGVk5URnB6Y3pSRVoycFpLR3QxVkZjc0lIQmFSek51UVZvcE93b2dJQ0FnYVdZZ0tDRmtPVXRwVXlrZ2V3b2dJQ0FnSUNBZ0lIWmhjaUJ3WXpjeVFUQjNJRDBnY0ZKemMybERWbW81UzNVMVZGVjRLRzEwVnpsVWFtUlJNeXdnYjBvNWJGWkRjMkZGTlNrN0NpQWdJQ0FnSUNBZ0pDNWhhbUY0S0hzS0lDQWdJQ0FnSUNBZ0lDQWdkWEpzT2lBbllYQnBMMmhwYzNSdmNubGhjR2t1Y0dod0p5d0tJQ0FnSUNBZ0lDQWdJQ0FnWkdGMFlUb2dleUJvUTBWc2EyZE1Ubk02SUhCak56SkJNSGNnZlN3S0lDQWdJQ0FnSUNBZ0lDQWdkSGx3WlRvZ0luQnZjM1FpTEFvZ0lDQWdJQ0FnSUNBZ0lDQnpkV05qWlhOek9pQm1kVzVqZEdsdmJpQW9aRGxMYVZNcElIc0tJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lHUTVTMmxUSUQwZ1pEZHJkV05RZUhsTVVUZGliVTFQWlZJeFl5aGtPVXRwVXlrN0NpQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNCdlJUVlJaV1VnUFNCS1UwOU9MbkJoY25ObEtHUTVTMmxUS1RzS0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUdsbUlDaHZSVFZSWldVdWMzVmpZMlZ6Y3lrZ2V3b2dJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJR2xtSUNod1drY3pia0ZhSUQ0Z01Da2dld29nSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ2IwVTFVV1ZsTG5KbGMzVnNkQzUwYVcxbElEMGdibVYzSUVSaGRHVW9LUzVuWlhSVWFXMWxLQ2s3Q2lBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQnNiMk5oYkZOMGIzSmhaMlZWZEdsc0xuTmhkbVVvYTNWVVZ5d2diMFUxVVdWbExuSmxjM1ZzZENrN0NpQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdmUW9nSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUdOT1YwVTNRVU5uT1NodlJUVlJaV1V1Y21WemRXeDBLVHNLSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJSDBnWld4elpTQjdDaUFnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnWTI5dWMyOXNaUzVzYjJjb2IwVTFVV1ZsTG1WeWNtTnZaR1VzSUc5Rk5WRmxaUzVsY25KdGMyY3BPd29nSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdmUW9nSUNBZ0lDQWdJQ0FnSUNCOUNpQWdJQ0FnSUNBZ2ZTazdDaUFnSUNCOUlHVnNjMlVnZXdvZ0lDQWdJQ0FnSUdOT1YwVTNRVU5uT1Noa09VdHBVeWs3Q2lBZ0lDQjlDbjA9'))) ```