Created
January 21, 2024 06:12
-
-
Save dingcang/bab673e8c9685106d75daff3bd35dc60 to your computer and use it in GitHub Desktop.
某md5解密网站代码分析结果
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| <!DOCTYPE html> | |
| <html lang="zh-cn"> | |
| <head> | |
| <meta charset="utf-8" /> | |
| <meta name="baidu_union_verify" content="df1a9a844ad16db7b31cc021f2ff13e4"> | |
| <link rel="dns-prefetch" href="//cdn.sojson.com" /> | |
| <link rel="dns-prefetch" href="//cdn.vfan.top" /> | |
| <meta content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=no" name="viewport" /> | |
| <meta http-equiv="X-UA-Compatible" content="IE=edge"> | |
| <meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1"> | |
| <meta name="apple-mobile-web-app-status-bar-style" content="black"> | |
| <meta name="apple-mobile-web-app-capable" content="yes"> | |
| <meta name="format-detection" content="telephone=no"> | |
| <link rel="icon" type="image/png" sizes="16x16" href="//cdn.sojson.com/sojson/favicon16.png" /> | |
| <link rel="icon" type="image/png" sizes="32x32" href="//cdn.sojson.com/sojson/favicon32.png" /> | |
| <link rel="icon" type="image/png" sizes="48x48" href="//cdn.sojson.com/sojson/favicon48.png" /> | |
| <link rel="icon" type="image/png" sizes="64x64" href="//cdn.sojson.com/sojson/favicon64.png" /> | |
| <script> | |
| window.DOMAIN = { www: "https://www.sojson.com", www_m: "https://m.sojson.com", admin: "http://admin1.sojson.com", fang: "", cdn: "//cdn.sojson.com", _v: "202211140930", _ip: "125.35.69.14", _address: { mainInfo: "北京市", subInfo: "联通" } }; window.MS = { top: "新版陆续上线,<a target='_blank' href='http://www.sojson.com/other/3.0.html'>SOJSON 3.0</a>", bar: "" }; try { top.location.hostname; if (top.location.hostname != window.location.hostname) { top.location.href = window.location.href; } } catch (e) { top.location.href = window.location.href; }; | |
| </script> | |
| <meta name="keywords" content="md5加密,md5加密算法,md5加密工具" /> | |
| <meta name="description" | |
| content="在线md5加密,md5解密,md5加密算法,md5加密工具,免费MD5在线加密,MD5在线解密破解,MD5在线查询,免费MD5解密,支持32位MD5&6位MD5 。" /> | |
| <title>MD5在线加密/解密/破解—MD5在线</title> | |
| <link rel="alternate" media="only screen and(max-width: 780px)" href="https://m.sojson.com/encrypt_md5.html"> | |
| <meta name="mobile-agent" content="format=html5; url=https://m.sojson.com/encrypt_md5.html"> | |
| <meta name="applicable-device" content="pc"> | |
| <script> | |
| window.TOOL = { "groups": [{ "id": 2, "name": "加密/解密", "url": "/encrypt/" }, { "id": 6, "name": "在线转换", "url": "/convert/" }], "id": 20, "name": "MD5加密/解密", "title": "MD5在线加密/解密/破解—MD5在线", "url": "/encrypt_md5.html", "description": "在线md5加密,md5解密,md5加密算法,md5加密工具,免费MD5在线加密,MD5在线解密破解,MD5在线查询,免费MD5解密,支持32位MD5\u00266位MD5 。", "keywords": "md5加密,md5加密算法,md5加密工具", "intro": "在线MD5加密/MD5解密,支持32位和16位。", "icon": "", "type": 3 } | |
| </script> | |
| <link rel="stylesheet" href="//cdn.sojson.com/ui/layui/css/layui.css" /> | |
| <link rel="stylesheet" href="//cdn.sojson.com/ui/css/index.css" /> | |
| <style> | |
| @media screen and (max-width:450px) { | |
| .apend-txt { | |
| display: none; | |
| } | |
| .layui-form-item .layui-input-inline { | |
| display: block; | |
| float: left; | |
| left: 0px; | |
| width: auto; | |
| margin: 5px 10px; | |
| } | |
| .mr0.fr, | |
| .xpswd, | |
| .mbt, | |
| .layui-input-inline.fr { | |
| float: none !important; | |
| margin-left: 10px !important; | |
| padding-top: 10px; | |
| } | |
| .layui-form-item { | |
| margin-bottom: 0px; | |
| } | |
| } | |
| </style> | |
| </head> | |
| <body> | |
| <div class="layout"> | |
| <div id="so_box" class="layui-row layout-container"> | |
| <div class="layui-row layui-anim-scale pt10" style="width: 100%;"> | |
| <div class="layui-col-md5"> | |
| <div> <textarea style="resize: none;height: 200px;" placeholder="原文放到这里即可。" class="layui-textarea w99 fl " | |
| id='source' maxlength="1000"></textarea> </div> | |
| <div style="display: inline-block;margin-top: 10px;margin-bottom:20px;"> <button class="layui-btn" | |
| id="enmd5">MD5加密<i class="layui-icon"></i></button> <a href="/jsdecode.html" | |
| class="blue">Javascript脚本人工解密</a> <a target="_blank" | |
| href="//promotion.aliyun.com/ntms/yunparter/invite.html?userCode=lpbnxpc2" class="blue" | |
| rel="external nofollow noindex">领取阿里云1888优惠券</a> </div> | |
| <h2>MD5解密<small>目前只能解密1~8位数字</small></h2> | |
| <hr> | |
| <div class="layui-form layui-form-pane"> | |
| <div class="layui-form-item"> <label class="layui-form-label">MD5</label> | |
| <div class="layui-input-inline" style="width: 295px;"> <input type="text" id="demd5Source" | |
| style="width: 300px;" placeholder="在这里输入16 & 32位 MD5,再点击MD5解密。" autocomplete="off" | |
| class="layui-input"> | |
| </div> <button class="layui-btn" id="demd5">MD5解密<i class="layui-icon"></i></button> | |
| </div> | |
| </div> | |
| <div class="layui-form-item "> | |
| <div class="layui-form-mid layui-word-aux ">目前只能解密8位的数字16/32位MD5。正在努力收集更多 MD5数据。</div> | |
| </div> <ins class="adsbygoogle" style="display:block; text-align:center;" data-ad-layout="in-article" | |
| data-ad-format="fluid" data-ad-client="ca-pub-5366069415012676" data-ad-slot="9990104427"></ins> | |
| <script>(adsbygoogle = window.adsbygoogle || []).push({});</script> | |
| </div> | |
| <div class="layui-col-md4"> | |
| <form class="layui-form" action="" onsubmit="return !1;"> | |
| <div class="layui-form-item"> <label class="layui-form-label">32位大写</label> | |
| <div class="layui-input-block"> <input type="text" id="_32Up" placeholder="32位大写。" click-type="copycode" | |
| data-clipboard-target="#_32Up" autocomplete="off" readonly class="layui-input"> </div> | |
| </div> | |
| <div class="layui-form-item"> <label class="layui-form-label">32位小写</label> | |
| <div class="layui-input-block"> <input type="text" id="_32Low" placeholder="32位小写。" click-type="copycode" | |
| data-clipboard-target="#_32Low" autocomplete="off" readonly class="layui-input"> </div> | |
| </div> | |
| <div class="layui-form-item"> <label class="layui-form-label">16位大写</label> | |
| <div class="layui-input-block"> <input type="text" id="_16Up" placeholder="16位大写。" click-type="copycode" | |
| data-clipboard-target="#_16Up" autocomplete="off" readonly class="layui-input"> </div> | |
| </div> | |
| <div class="layui-form-item"> <label class="layui-form-label">16位小写</label> | |
| <div class="layui-input-block"> <input type="text" id="_16Low" placeholder="16位小写。" click-type="copycode" | |
| data-clipboard-target="#_16Low" autocomplete="off" readonly class="layui-input"> </div> | |
| </div> | |
| <div class="layui-form-item"> <ins class="adsbygoogle" style="display:block; text-align:center;" | |
| data-ad-layout="in-article" data-ad-format="fluid" data-ad-client="ca-pub-5366069415012676" | |
| data-ad-slot="9990104427"></ins> | |
| <script>(adsbygoogle = window.adsbygoogle || []).push({});</script> | |
| </div> | |
| </form> | |
| </div> | |
| <div class="layui-col-md3 pl10"> <ins class="adsbygoogle" style="display:inline-block;width:300px;height:600px" | |
| data-ad-client="ca-pub-5366069415012676" data-ad-slot="6173043800"></ins> | |
| <script>(adsbygoogle = window.adsbygoogle || []).push({});</script> | |
| </div> | |
| </div> | |
| <fieldset class="layui-elem-field layui-field-title site-title"> | |
| <legend> | |
| <h1 name="grid">MD5解密说明</h1> | |
| </legend> | |
| </fieldset> | |
| <div class="site-text"> | |
| <div class="layui-text pl40"> | |
| <ul> | |
| <li>MD5再次申明没有解密的方法,最好的反驳就是:数据源是无穷尽的,而 MD5密文是有限的。</li> | |
| <li>本工具是采用先加密存储,然后再反查询,上千 PB 级别毫秒级响应。</li> | |
| <li>16位 MD5和32位 MD5区别是取的是8~24位。</li> | |
| <li>目前 MD5 数据正在拓展,拓展一个量级会同步到工具中来。</li> | |
| </ul> | |
| </div> | |
| </div> | |
| </div> | |
| </div> | |
| <script src="//cdn.sojson.com/ui/js/common/sojson.security.m.js"></script> | |
| <script src="//cdn.sojson.com/ui/js/common/sojson.core.2.0.js"></script> | |
| <script src="//cdn.sojson.com/ui/layui/layui.js"></script> | |
| <script src="/format.js"></script> | |
| <script> | |
| setTimeout(function () { try { so.insert.js('//nos.netease.com/yyimgs/kVpqwysXxxwFiIkU1iWX1A==/109951163721200422'); } catch (e) { } }, 2e3); | |
| </script> | |
| </body> | |
| </html> |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| var encode_version = "sojson.v4"; | |
| const coreArray = [ | |
| "w4Rcaw==", | |
| "wrdcwppEwpU=", | |
| "w4kPwoIZBw==", | |
| "wpYmRGfDkQ==", | |
| "w4rDs2powos=", | |
| "BUMhWsO6w5vCp8KaBFMpEcOtCkXDmw==", | |
| "d8K/c8KbD8OCwqITwptZw59BRS0vSzfCryrDnj9VGsKwOsKbw7wQDcO0wrbCvsOgw48nw5XDgk55w54EKsKbCkN8fMKpwpsCJ8Ozwo8mPcO8E3hbw7PCih8=", | |
| "YcK/wqnCrw==", | |
| "w5rCmsK7T8KZ", | |
| "wrNawq5+wpA=", | |
| "ClHDmE7Cpg==", | |
| "KAjDrgRQ", | |
| "wqEiwqY6w4s=", | |
| "TcKkwofCv8KP", | |
| "Q1YSwos1", | |
| "w4TDuUsb", | |
| "wp3DqcOWUMOj", | |
| "HG1cw4Qh", | |
| "w5NOwrZk", | |
| "w6/DhFtLwp0=", | |
| "w6QhcC8g", | |
| "JFzDnX7Ctw==", | |
| "JkfDl3zCgw==", | |
| "wo03JMKO", | |
| "CMOFwo5nAmo=", | |
| "wpEgMsKc", | |
| "wq7ChcOQQw==", | |
| "PF/DvAjCiA==", | |
| "PWx2w7QdZg==", | |
| "wqXCk8Ob", | |
| "wrQzwqd0Om7Cqg==", | |
| "w5JYwqA=", | |
| "CRXDlQBrBw==", | |
| "wpPDuF0Cw6TCnA==", | |
| "w63CucOvw53Cog==", | |
| "R8O7w6N3w5pI", | |
| "PgFrVcKw", | |
| "wq3CjhPCt8KL", | |
| "GGMnCgQ=", | |
| "SQbCjw8wFcKgw4jDvMOKwqQ=", | |
| "w49pwqQ=", | |
| "w7fCrsOc", | |
| "6K+O6LyK5YWY6Z+q6KeJ6Kak5a2855mhFsKCwqnDmuOBiQ==", | |
| "wpPDlcKELgVbw7t2T8OOanXDhMO8NVjCvWZhVsO6w4Zqwop4WMO7wqZ2KcOHfx3Dvh8=", | |
| "w4bDpy94", | |
| "5q2I56O055qHQ8O5wq7lub3orYzmm7rmlL3lrZXlkablrLvmrJnnmqznuaTlk4DvvIrlu6bkuJjmmL45I+S+peaLqOiCu3nCveS+tOOAqQ==", | |
| "wprClsK/S8KTP2gnXV3Cuig=", | |
| "w4doWcKvXw==", | |
| "w5fCisOZAcOo", | |
| "w5PDtMOcBBc=", | |
| "SMKowrVSHw==", | |
| "w5PDlHUFw4I=", | |
| "RsOpZA==", | |
| "w73DkQPDgsKj", | |
| "w53Cl8K8SA==", | |
| "wqfCh8OFScOP", | |
| "w67DnB3Drw==", | |
| "wpEoRU7Dhw==", | |
| "wrLCtAU=", | |
| "w6TCr8Kie8OV", | |
| "YMKawqw=", | |
| "KEMD", | |
| "6KaR5a+y5oq+5Yu6", | |
| "6Kaq5ayr5Lml5oua5Ym/772p5oi05LqF5q2d5Z+75YqS5YqE44K6", | |
| "wrXCuTXCncKo", | |
| "wrzCoATClcKr", | |
| "w6c0dA4/", | |
| "FsOmPsO7w4o=", | |
| "PkYGKBg=", | |
| "wrcbaVHDsyw=", | |
| "w4nCgMK1S8KHfg==", | |
| "w57DtF03w6w=", | |
| "EcOrJcOp", | |
| "JShZ", | |
| "w5fDpsKRwpbDmQ==", | |
| "w7rDlgjDtQ==", | |
| "C04BSsOM", | |
| "w4XCvgAXw5k=", | |
| "wotowobCtQ==", | |
| "BlHDnRE=", | |
| "FwnDmA==", | |
| "w63CkiEYw7U=", | |
| "LcKIDsKk", | |
| "PcKfAcKn", | |
| "RmEbwoQt", | |
| "wqcCQMKgDA==", | |
| "w7vCp8Kv", | |
| "AMOFwoJi", | |
| "wpQEwrgUw7k=", | |
| "w7YLwoguCA==", | |
| "IMO8FsOyw6I=", | |
| "w4/CmBM=", | |
| "D8OSwqU=", | |
| "6K626L6M5YeO6Z2N6KWO6Kay5a+M55iOw6/ChQTDnuOCmA==", | |
| "wpVXw7Rsw6gocMOqRg==", | |
| "wpoKDw==", | |
| "6KyI5Z2t5baC5aSH5qCM6LyY5YSH6ZyB6KStwq7CoBLnm6/lhq/lr5DjgKM=", | |
| "QEUgTMO8w5HCrQ==", | |
| "DVE3wpksw6YtZ15tw4cgwqxUZsO4FsKRDRTDh8O4VcKeHcKMwrHDklnCmFjCpHnCsio=", | |
| "6ZyI6KWQwo3Cn8OD5Yqs5a+R55uX5a2u56665LiV6IO+6LWK6L2IwrhjQ8Kq44OH", | |
| "NcOWw4hKw6Y=", | |
| "wpsDMFcp", | |
| "J8O7O8OSw4U=", | |
| "w53Dr18=", | |
| "wpQlw7gfw5Y=", | |
| "wqAIwqQs", | |
| "cMK1wqfClcKh", | |
| "UMK6wo1SIg==", | |
| "w6UaQTw=", | |
| "w4nCmsOWw63Cug==", | |
| "XMOcf8OITg==", | |
| "wo4aB8KCwpA=", | |
| "w4VLfsKddA==", | |
| "w6PCpsOh", | |
| "SF8zwog1", | |
| "R8KvwodV", | |
| "GMOYwopr", | |
| "DQdUbsKo", | |
| "FsOaw6VNw7o=", | |
| "wrDClsOZ", | |
| "w4DDs0sb", | |
| "wpcmCmIJ", | |
| "w7dSRQ==", | |
| "RFc6wqwF", | |
| "w6hRwoI=", | |
| "IsKLGw==", | |
| "w6oyH8K7ecODw5DDuwZvRQ==", | |
| "wrgZw71pHHLDsg==", | |
| "wpPDgwlZw5XDmQ==", | |
| "5Yu95ay25ouJ5Yqc", | |
| "w5waVxIfw7s=", | |
| "wq3CisK3wojChTbCvA==", | |
| "C8OAwq1uAA==", | |
| "BlPDr0/CnA==", | |
| "O8KgwqFWwoE=", | |
| "RsK9wqPCgsKX", | |
| "wo/DqEjDvMKw", | |
| "XMOiS1rDsA==", | |
| "w400eig5", | |
| "XcO1Qw==", | |
| "w7PDvcKG", | |
| "N2jDmQ7Cgg==", | |
| "w4nCnyoxw5c=", | |
| "wqxVwrI=", | |
| "RsOwGsKBGQ==", | |
| "X8O7esOAX8KNw7hvw4B1woo=", | |
| "w57Dklo=", | |
| "w6BiwqNgwrA=", | |
| "E8OTAMOtw40=", | |
| "BcKIJsKpwok=", | |
| "w5LCm8OZ", | |
| "RsOwGg==", | |
| "w5/DrE90woJuwrAaw5Frw5Y=", | |
| "LnkPAyw=", | |
| "OFpJw7cW", | |
| "IlMEVsO0", | |
| "wpjCgBs=", | |
| "w4bDpy81w4Q=", | |
| "wrhbwq9Zwo8=", | |
| "HnAoOS8=", | |
| "wqgKZkLDsjc=", | |
| "w6bChAU=", | |
| "w5cIwr02AA==", | |
| "XcO8W8KE", | |
| "PW9c", | |
| "wo1nwoc=", | |
| "w6JkQQ==", | |
| "wpEMaQ==", | |
| "w64yGMK7e8ODw5HDuwE=", | |
| "wpzDosKHwqHDusOqHg==", | |
| "wpDDsMKdwqDDoMOWDVnCins5QnJmcV5OR8Knw6YbJsO2wr0HRQFlU3LCuxBuNsKq", | |
| "6Z+86KSZacORw7HlibblrLrnm4/lrb7nrbnkuKTog4botazovq7DqcKYCxbjg5g=", | |
| "6K2O5Z+a5bS85aSB5qKx6L6Z5YWe6Z2I6KapYsKdeOebpeWFk+Wsr+OBnw==", | |
| "wr7CtcOc", | |
| "MmvDmSTCoTY=", | |
| "asKtwq0=", | |
| "Nlpe", | |
| "wqXCjcOU", | |
| "w41PwrU=", | |
| "w4tOwqt3wqg8", | |
| "6KaZ5a685oqv5Yus", | |
| "6Ka+5ay25LuU5oiT5YmU776V5omF5Li65qyi5Z6P5YiV5YuD44Oi", | |
| "ccOMbMKwLA==", | |
| "wpULFMKzwp0=", | |
| "w4tywoZZwrA=", | |
| "w7EEwroSEw==", | |
| "wrUXw7UKw6A=", | |
| "w6fChMK3X8OT", | |
| "wpvDmmPDrcKH", | |
| "wrNfwp9Owo8=", | |
| "QMK4wrFQDg==", | |
| "w6BEwqFVwpY=", | |
| "w6pnRsKWbQ==", | |
| "c1UJwpcS", | |
| "Skkowr03", | |
| "w6QdRzIH", | |
| "csKAwoxpDg==", | |
| "HWRhw78u", | |
| "w4PCosKwRsOX", | |
| "BsOowpdPKA==", | |
| "wqkXBkow", | |
| "w4bDhsKHCxU=", | |
| "QMKmwo5IMw==", | |
| "wrVdwp3CrMOM", | |
| "EEIuTcO7w4E=", | |
| "w7vChQ0/w4Et", | |
| "b8OXacOzQg==", | |
| "HhvDixI=", | |
| "w5TCgcK9", | |
| "Om87Q8OM", | |
| "w5LDrsOZHik=", | |
| "CxXDsjxT", | |
| "bsO1c2nDjw==", | |
| "w5fDmRvDjsKO", | |
| "w6tcwq9EwrU=", | |
| "w5nDjH1swoo=", | |
| "CMObw7R5w5I=", | |
| "DjTDtSVi", | |
| "Mm/DhyTCuw==", | |
| "wrjDuMO3ew==", | |
| "KEPDr0/ChQ==", | |
| "w5zCgMOBw7jCmg==", | |
| "FVcj", | |
| "w6fCmAM2", | |
| "HMOFwpBy", | |
| "H8KpwpB5wrI=", | |
| "G8OdwpQ=", | |
| "EsKWwp9Hwpg=", | |
| "w6cpwqoTwp3DuXF3w4M/GA==", | |
| "wqoqE2oGBQ==", | |
| "wr3DrF3CqcKJw5LDlg==", | |
| "wr3DrF/CrcKQw40=", | |
| "5Ym+5a6I5oi85YmY", | |
| "w43CvkbCg0Elwo4=", | |
| "wqzCtg3DmmE=", | |
| "w63DgwLDssKx", | |
| "w5bDqm8Nw6g=", | |
| "w4LDvl4Iw5U=", | |
| "w53DonY=", | |
| "JMKJXQ==", | |
| "w5DClcOgGMOsw75kw6Mnw5TDqg==", | |
| "w73DtcOcOSU=", | |
| "w6ZTZcK9Rg==", | |
| "wp/CvcOSd8O6", | |
| "w4pPw7A=", | |
| "w4fChSgCw5A=", | |
| "w7bCtsOxLsOM", | |
| "F0jDtg==", | |
| "w53DuA1ewrY=", | |
| "DhXDqgN0DMOgw7fCqMOFw7A=", | |
| "IGYH", | |
| "wpUvwrA3w7Y=", | |
| "w7/Dk3fCt8O0", | |
| "GsO8OcOrw6o=", | |
| "DBvDkw==", | |
| "DlJ6CMK4", | |
| "FQRgXsKD", | |
| "JcKIBsKtwpQN", | |
| "DFrDvQ==", | |
| "w4jDu8K3FTg=", | |
| "bMK0wqbCtQ==", | |
| "GMO5Ng==", | |
| "CcKSwptZwrk=", | |
| "wqLCksOTSw==" | |
| ] // 147位转换后的。 | |
| /** | |
| * | |
| * @description 这段代码注释掉了。主要功能是将coreArray的前147位拼接到最后。并做了反格式化,引起页面崩溃。 | |
| */ | |
| // (function (_0xd643ec, _0x4526c0) { | |
| // var _0x35d6c3 = function (_0xc81e8b) { | |
| // while (--_0xc81e8b) { | |
| // _0xd643ec["push"](_0xd643ec["shift"]()); | |
| // } | |
| // }; | |
| // var _0x243eb6 = function () { | |
| // var _0x251c73 = { | |
| // data: { key: "cookie", value: "timeout" }, | |
| // setCookie: function (_0x19599a, _0x5672dd, _0x57c295, _0x241421) { | |
| // _0x241421 = _0x241421 || {}; | |
| // var _0x5dcc4b = _0x5672dd + "=" + _0x57c295; | |
| // var _0xe20a36 = 0x0; | |
| // for ( | |
| // var _0xe20a36 = 0x0, _0x2bbce2 = _0x19599a["length"]; | |
| // _0xe20a36 < _0x2bbce2; | |
| // _0xe20a36++ | |
| // ) { | |
| // var _0x4866db = _0x19599a[_0xe20a36]; | |
| // _0x5dcc4b += ";\x20" + _0x4866db; | |
| // var _0x37465f = _0x19599a[_0x4866db]; | |
| // _0x19599a["push"](_0x37465f); | |
| // _0x2bbce2 = _0x19599a["length"]; | |
| // if (_0x37465f !== !![]) { | |
| // _0x5dcc4b += "=" + _0x37465f; | |
| // } | |
| // } | |
| // _0x241421["cookie"] = _0x5dcc4b; | |
| // }, | |
| // removeCookie: function () { | |
| // return "dev"; | |
| // }, | |
| // getCookie: function (_0xa21fcd, _0xdac422) { | |
| // _0xa21fcd = | |
| // _0xa21fcd || | |
| // function (_0x4dfd88) { | |
| // return _0x4dfd88; | |
| // }; | |
| // var _0x22809f = _0xa21fcd( | |
| // new RegExp( | |
| // "(?:^|;\x20)" + | |
| // _0xdac422["replace"](/([.$?*|{}()[]\/+^])/g, "$1") + | |
| // "=([^;]*)" | |
| // ) | |
| // ); | |
| // var _0x43556a = function (_0x408559, _0x45c7da) { | |
| // _0x408559(++_0x45c7da); | |
| // }; | |
| // _0x43556a(_0x35d6c3, _0x4526c0); | |
| // return _0x22809f ? decodeURIComponent(_0x22809f[0x1]) : undefined; | |
| // }, | |
| // }; | |
| // var _0x288c41 = function () { | |
| // var _0x279436 = new RegExp( | |
| // "\x5cw+\x20*\x5c(\x5c)\x20*{\x5cw+\x20*[\x27|\x22].+[\x27|\x22];?\x20*}" | |
| // ); | |
| // return _0x279436["test"](_0x251c73["removeCookie"]["toString"]()); | |
| // }; | |
| // _0x251c73["updateCookie"] = _0x288c41; | |
| // var _0x47c801 = ""; | |
| // var _0x3e9624 = _0x251c73["updateCookie"](); | |
| // if (!_0x3e9624) { | |
| // _0x251c73["setCookie"](["*"], "counter", 0x1); | |
| // } else if (_0x3e9624) { | |
| // _0x47c801 = _0x251c73["getCookie"](null, "counter"); | |
| // } else { | |
| // _0x251c73["removeCookie"](); | |
| // } | |
| // }; | |
| // _0x243eb6(); | |
| // })(coreArray, 146); | |
| const format = function (paramA, paramB) { | |
| paramA -= 0; | |
| let str = coreArray[paramA]; | |
| if (format.initialized === undefined) { | |
| format.rc4= function (str1, str2) { | |
| const arr = []; | |
| let _0x38b90d = 0; | |
| let _0x208c8f; | |
| let _0x4b54ca = ''; | |
| let _0x3a26d8 = ''; | |
| str1 = atob(str1); | |
| for ( | |
| let _0x11d8c4 = 0, _0x2f1d75 = str1.length; | |
| _0x11d8c4 < _0x2f1d75; | |
| _0x11d8c4++ | |
| ) { | |
| _0x3a26d8 | |
| += `%${ | |
| (`00${str1.charCodeAt(_0x11d8c4).toString(0x10)}`).slice(-2)}`; | |
| } | |
| str1 = decodeURIComponent(_0x3a26d8); | |
| for (var _0x4d0792 = 0; _0x4d0792 < 0x100; _0x4d0792++) { | |
| arr[_0x4d0792] = _0x4d0792; | |
| } | |
| for (_0x4d0792 = 0; _0x4d0792 < 0x100; _0x4d0792++) { | |
| _0x38b90d = (_0x38b90d | |
| + arr[_0x4d0792] | |
| + str2.charCodeAt(_0x4d0792 % str2.length)) | |
| % 0x100; | |
| _0x208c8f = arr[_0x4d0792]; | |
| arr[_0x4d0792] = arr[_0x38b90d]; | |
| arr[_0x38b90d] = _0x208c8f; | |
| } | |
| _0x4d0792 = 0; | |
| _0x38b90d = 0; | |
| for (let _0x332b4d = 0; _0x332b4d < str1.length; _0x332b4d++) { | |
| _0x4d0792 = (_0x4d0792 + 1) % 0x100; | |
| _0x38b90d = (_0x38b90d + arr[_0x4d0792]) % 0x100; | |
| _0x208c8f = arr[_0x4d0792]; | |
| arr[_0x4d0792] = arr[_0x38b90d]; | |
| arr[_0x38b90d] = _0x208c8f; | |
| _0x4b54ca += String.fromCharCode( | |
| str1.charCodeAt(_0x332b4d) | |
| ^ arr[(arr[_0x4d0792] + arr[_0x38b90d]) % 0x100], | |
| ); | |
| } | |
| return _0x4b54ca; | |
| }; | |
| format.data = {}; | |
| format.initialized = true; | |
| } | |
| const res = format.data[paramA]; | |
| if (res === undefined) { | |
| // if (format.once === undefined) { | |
| // const formatOnce = function (format) { | |
| // this.format = format; | |
| // this.states = [1, 0, 0]; | |
| // this.newState=function(){return'newState';}; | |
| // // this.firstState = '\x5cw+ *\x5c(\x5c) *{\x5cw+ *'; | |
| // // this.secondState = '[\x27|\x22].+[\x27|\x22];? *}'; | |
| // this.firstState = '\\w+ *\\(\\) *{\\w+ *'; | |
| // this.secondState = `['|"].+['|"];? *}`; | |
| // }; | |
| // formatOnce.prototype.checkState = function () { | |
| // // const reg = new RegExp(this.firstState + this.secondState); | |
| // const reg = new RegExp(`\\w+ *\\(\\) *{\\w+ *['|"].+['|"];? *}`); | |
| // return this.runState( | |
| // reg.test(this.newState.toString()) | |
| // ? --this.states[1] // 后面会转为true | |
| // : --this.states[0], // false | |
| // ); | |
| // }; | |
| // formatOnce.prototype.runState = function (_0x14b102) { | |
| // if (!~_0x14b102) { | |
| // return _0x14b102; | |
| // } | |
| // return this.getState(this.format); | |
| // }; | |
| // formatOnce.prototype.getState = function (format) { | |
| // for ( | |
| // let _0x320545 = 0, _0xcd64af = this.states.length; | |
| // _0x320545 < _0xcd64af; | |
| // _0x320545++ | |
| // ) { | |
| // this.states.push(Math.round(Math.random())); | |
| // _0xcd64af = this.states.length; | |
| // } | |
| // return format(this.states[0]); | |
| // }; | |
| // new formatOnce(format).checkState(); | |
| // format.once = true; | |
| // } | |
| str = format.rc4(str, paramB); | |
| format.data[paramA] = str; | |
| } else { | |
| str = res; | |
| } | |
| return str; | |
| }; | |
| const _0x68e87f = (function () { | |
| let _0x4d8331 = true; | |
| return function (_0x48d0ba, _0x3f5548) { | |
| const _0x486edd = _0x4d8331 | |
| ? function () { | |
| if (_0x3f5548) { | |
| const _0x48e531 = _0x3f5548.apply(_0x48d0ba, arguments); | |
| _0x3f5548 = null; | |
| return _0x48e531; | |
| } | |
| } | |
| : function () { }; | |
| _0x4d8331 = false; | |
| return _0x486edd; | |
| }; | |
| }()); | |
| const _0x28f610 = _0x68e87f(this, () => { | |
| const _0x19a427 = function () { | |
| return 'dev'; | |
| }; | |
| const _0x57a871 = function () { | |
| return 'window'; | |
| }; | |
| const _0x460570 = function () { | |
| const _0x150fdc = /\w+ *\(\) *{\w+ *['|"].+['|"];? *}/; | |
| return !_0x150fdc.test( | |
| _0x19a427.toString(), | |
| ); // false | |
| }; | |
| const _0x3f9948 = function () { | |
| const _0x51495f = /(\\[x|u](\w){2,4})+/; | |
| return _0x51495f.test( | |
| _0x57a871.toString(), | |
| ); | |
| }; | |
| const _0x280b6c = function (_0x34e3b7) { | |
| const _0x506245 = ~-1 >> (1 + (0xff % 0)); | |
| console.log("🚀 ~ const_0x28f610=_0x68e87f ~ _0x506245:", _0x506245); | |
| if (_0x34e3b7.indexOf(_0x506245 === '\x69')) { | |
| console.log(1); | |
| _0x2e5de9(_0x34e3b7); | |
| } | |
| console.log(2); | |
| }; | |
| var _0x2e5de9 = function (_0x44b3be) { | |
| const _0x25ce16 = ~-4 >> (1 + (0xff % 0)); | |
| if ( | |
| _0x44b3be.indexOf((`${ true}`)[3]) !== _0x25ce16 | |
| ) { | |
| _0x280b6c(_0x44b3be); | |
| } | |
| }; | |
| if (!_0x460570()) { // 正常流程 | |
| if (!_0x3f9948()) { | |
| _0x280b6c('\x69\x6e\x64\u0435\x78\x4f\x66'); // 'indеxOf' | |
| } else { | |
| // 正常流程 | |
| _0x280b6c('\x69\x6e\x64\x65\x78\x4f\x66'); // 'indexOf' | |
| } | |
| } else { | |
| _0x280b6c('\x69\x6e\x64\u0435\x78\x4f\x66'); | |
| } | |
| }); | |
| // _0x28f610(); // 检测代码格式化,函数无限循环调用,堆栈溢出 | |
| const applyFn = (function () { | |
| let _0x406873 = true; | |
| return function (_0x2e9e79, _0x2a72a0) { | |
| const _0x2a2007 = _0x406873 | |
| ? function () { | |
| const _0x517b46 = { | |
| mhDOq: function _0x4ad968(_0x5e8a05, _0x341ccb) { | |
| return _0x5e8a05 !== _0x341ccb; | |
| }, | |
| RILBW: 'DyY', // DyY | |
| }; | |
| if ( | |
| _0x517b46['mhDOq']( // mhDOq | |
| _0x517b46['RILBW'], // RILBW | |
| _0x517b46['RILBW'], // RILBW | |
| ) | |
| ) { | |
| debugger; | |
| } else if (_0x2a72a0) { | |
| const _0x59b231 = _0x2a72a0[format('4', '[O*8')]( // apply | |
| _0x2e9e79, | |
| arguments, | |
| ); | |
| _0x2a72a0 = null; | |
| return _0x59b231; | |
| } | |
| } | |
| : function () { }; | |
| _0x406873 = false; | |
| return _0x2a2007; | |
| }; | |
| }()); | |
| (function () { | |
| const operaObj = { | |
| RrQwT: 'function *\\( *\\)', | |
| eOdxd: '\\+\\+ *(?:_0x(?:[a-f0-9]){4,6}|(?:\\b|\\d)[a-z0-9]{1,4}(?:\\b|\\d))', | |
| EuGdy: function (a, b) { | |
| return a(b); | |
| }, | |
| afPfq: 'init', | |
| QcHFS: function (a, b) { | |
| return a + b; | |
| }, | |
| BnDVU: 'chain', | |
| DGAOo: function (a, b) { | |
| return a + b; | |
| }, | |
| mTPws: 'input', | |
| GnMfM: function (fn) { | |
| return fn(); | |
| }, | |
| kxBTh: function (fn, a, b) { | |
| return fn(a, b); | |
| }, | |
| }; | |
| applyFn(this, () => { | |
| const _0x119078 = /function *\( *\)/; | |
| const _0x5dd1c6 = /\+\+ *(?:_0x(?:[a-f0-9]){4,6}|(?:\b|\d)[a-z0-9]{1,4}(?:\b|\d))/i; // | |
| const _0x197c83 = core('init'); | |
| if ( | |
| !_0x119078.test(_0x197c83 + 'chain') | |
| || !_0x5dd1c6.test(_0x197c83 + 'input') | |
| ) { | |
| // _0x197c83('0'); // 有毒 | |
| } else { | |
| core(); | |
| } | |
| })(); | |
| }()); | |
| // if ( | |
| // !/^((([a-z0-9]{1,10})\.)?sojson\.com)/.test( | |
| // document['domain'], | |
| // ) | |
| // ) { | |
| // for (!0; !0;) { | |
| // location['href'] = location['href']; | |
| // } | |
| // } // 域名不对,无限刷新页面 | |
| setInterval(() => { | |
| // core(); | |
| }, 4000); | |
| layui['config']({ | |
| base: DOMAIN['cdn'] + '/ui/js/', | |
| version: DOMAIN._v, | |
| }).use('sojson', () => { | |
| const operateObj4 = { | |
| rKNHJ: function (a, b) { | |
| return a(b); | |
| }, | |
| hMaLW: '#demd5', | |
| UvGzM: 'click', | |
| PizVV: function (a, b) { | |
| return a(b); | |
| }, | |
| mMFuX: '#enmd5', | |
| }; | |
| so('#demd5').on('click', () => { | |
| const operaObj2 = { | |
| GMkpq: '3|0|4|2|5|1', | |
| MmoNW: function _0x240363(a, b) { | |
| return a !== b; | |
| }, | |
| kbTiI: 'VMD', | |
| cHMjB: 'STi', | |
| cbmYf: '请输入需要解密的 MD5。', | |
| UGMkA: function _0x14a4ed(a, b) { | |
| return a + b; | |
| }, | |
| iiamE: '/auth_v_1_0/encrypt/decodeMD5.shtml', | |
| hxNsB: function _0xdd9a26(a, b) { | |
| return a + b; | |
| }, | |
| NIbEh: 'md5|', | |
| feCJD: '正确的MD5应该是数字和字母的组合,并且是16位或者32位。', | |
| dQYii: function _0x5a9f4b(a, b) { | |
| return a(b); | |
| }, | |
| yLlgD: '#demd5Source', | |
| }; | |
| const arr = ['3', '0', '4', '2', '5', '1']; | |
| let idx = 0; | |
| while ([]) { | |
| switch (arr[idx++]) { | |
| case '0': | |
| if (!demd5Source) { | |
| if ( | |
| operaObj2[format('0x31', 'z%eD')]( | |
| operaObj2[format('0x32', 'IOJ]')], | |
| operaObj2[format('0x33', 'mE#h')], | |
| ) // true | |
| ) { | |
| return ( | |
| layer['msg']( | |
| '请输入需要解密的 MD5。', | |
| so['defn'], | |
| ), | |
| false | |
| ); | |
| } | |
| const _0x56fc16 = firstCall | |
| ? function () { | |
| if (fn) { | |
| const _0x45dbf2 = fn[format('0x37', 'qOi*')]( | |
| context, | |
| arguments, | |
| ); | |
| fn = null; | |
| return _0x45dbf2; | |
| } | |
| } | |
| : function () { }; | |
| firstCall = false; | |
| return _0x56fc16; | |
| } | |
| continue; | |
| case '1': | |
| so['post']( | |
| operaObj2[format('0x39', 'm&yL')]( | |
| DOMAIN['www'], | |
| '/auth_v_1_0/encrypt/decodeMD5.shtml', | |
| ), | |
| { text: demd5Source }, | |
| (response) => { | |
| const operateObj3 = { | |
| pzGft: function _0x33f287(a, b) { | |
| return a === b; | |
| }, | |
| ycvnw: 'CPM', | |
| nATVl: 'KuL', | |
| sSfXQ: function _0x268003(a, b) { | |
| return a == b; | |
| }, | |
| nheXl: '解密成功', | |
| hwyBQ: '解密不成功,我们正在努力。', | |
| }; | |
| if ( | |
| operateObj3[format('0x40', 'VgY6')]( | |
| operateObj3[format('0x41', 'VgY6')], | |
| operateObj3[format('0x42', 'qu)Y')], | |
| ) // false | |
| ) { | |
| while ([]) { } // 下毒 | |
| } else { | |
| layer['close'](layerLoad); | |
| if ( | |
| response | |
| && response['status'] == 200 | |
| ) { | |
| layer[format('0x46', 'i2ZT')]({ | |
| title: operateObj3[format('0x47', 'mE#h')], | |
| formType: 2, | |
| btn: '', | |
| value: response[format('0x48', 'BqeZ')], | |
| }); | |
| } else { | |
| layer[format('0x49', 'jhmB')]( | |
| operateObj3[format('0x4a', 'Iu^c')], // 'hwyBQ' | |
| so[format('0x4b', '^Cci')], | |
| ); | |
| } | |
| } | |
| }, | |
| { | |
| sojsonData: so.sf.en( | |
| 'md5|' + demd5Source | |
| ), | |
| }, | |
| ); | |
| continue; | |
| case '2': | |
| if ( | |
| !/^[a-zA-Z0-9]{32}$/.test(demd5Source) | |
| && !/^[a-zA-Z0-9]{16}$/.test(demd5Source) | |
| ) { | |
| return ( | |
| layer['msg']( | |
| '正确的MD5应该是数字和字母的组合,并且是16位或者32位。', | |
| so['defn'], | |
| ), | |
| false | |
| ); | |
| } | |
| continue; | |
| case '3': | |
| var demd5Source = so['trim']( | |
| so( | |
| '#demd5Source', | |
| )['val'](), | |
| ); | |
| continue; | |
| case '4': | |
| continue; | |
| case '5': | |
| var layerLoad = layer['load'](); | |
| continue; | |
| } | |
| break; | |
| } | |
| }); | |
| so('#enmd5').on('click', () => { | |
| const _0x53e65d = { | |
| QHEPX: function _0x506195(_0x18d244, _0x2bcedc) { | |
| return _0x18d244 === _0x2bcedc; | |
| }, | |
| dFTwc: format('0x5b', 'ME3B'), | |
| RqjZj: format('0x5c', 'U*bz'), | |
| Bpbpx: format('0x5d', '5B63'), | |
| xdgNW: format('0x5e', 'z)*D'), | |
| GOPSs: function _0x3fc8a3(_0x2013f5, _0x2f11a3) { | |
| return _0x2013f5 !== _0x2f11a3; | |
| }, | |
| wHPxa: format('0x5f', 'Q9D4'), | |
| EnLBZ: function _0x56ebb1(_0xffbe94) { | |
| return _0xffbe94(); | |
| }, | |
| joqeq: format('0x60', 'Qhi6'), | |
| AMqsR: function _0x3ca261(_0xd8125b, _0x1e4a55) { | |
| return _0xd8125b(_0x1e4a55); | |
| }, | |
| rDhWD: format('0x61', 'Edyd'), | |
| hcnBC: function _0x1a7f97(_0x18d8a0, _0x1d36c3) { | |
| return _0x18d8a0 + _0x1d36c3; | |
| }, | |
| fgxAA: format('0x62', 'Lq8I'), | |
| SeHIf: function _0x4dcb09(_0x1f51a7, _0x5c87a7) { | |
| return _0x1f51a7 > _0x5c87a7; | |
| }, | |
| LNsmP: format('0x63', '&rR@'), | |
| }; | |
| if ( | |
| _0x53e65d[format('0x64', 'jnci')]( | |
| _0x53e65d[format('0x65', 'Qhi6')], | |
| _0x53e65d[format('0x66', 'BqeZ')], | |
| ) | |
| ) { | |
| return ( | |
| layer[format('0x67', 'mE#h')]( | |
| _0x53e65d[format('0x68', 'UCRp')], | |
| so[format('0x69', '(9OQ')], | |
| ), | |
| false | |
| ); | |
| } | |
| const _0xe291eb = _0x53e65d[format('0x6a', '&rR@')][format('0x6b', 'IOJ]')]('|'); | |
| let _0xe8bb0f = 0; | |
| while ([]) { | |
| switch (_0xe291eb[_0xe8bb0f++]) { | |
| case '0': | |
| var _0x1778d9 = layer[format('0x6c', 'qu)Y')](); | |
| continue; | |
| case '1': | |
| if (!_0x61c5ca) { | |
| if ( | |
| _0x53e65d[format('0x6d', 'krj0')]( | |
| _0x53e65d[format('0x6e', 'A8m!')], | |
| _0x53e65d[format('0x6f', 'Q9D4')], | |
| ) | |
| ) { | |
| _0x53e65d[format('0x70', 'w3tt')](core); | |
| } else { | |
| return ( | |
| layer[format('0x71', 'krj0')]( | |
| _0x53e65d[format('0x72', 'Lq8I')], | |
| so[format('0x73', 'IOJ]')], | |
| ), | |
| false | |
| ); | |
| } | |
| } | |
| continue; | |
| case '2': | |
| var _0x61c5ca = so[format('0x74', 'U*bz')]( | |
| _0x53e65d[format('0x75', 'vEj%')]( | |
| so, | |
| _0x53e65d[format('0x76', 'jnci')], | |
| )[format('0x77', 'qOi*')](), | |
| ); | |
| continue; | |
| case '3': | |
| so['post']( | |
| _0x53e65d[format('0x79', 'Qhi6')]( | |
| DOMAIN[format('0x7a', 'w3tt')], | |
| _0x53e65d['fgxAA'], | |
| ), | |
| { text: _0x61c5ca }, | |
| (_0x388307) => { | |
| const _0x2f7153 = { | |
| gjNhk: function _0x12c5e6(_0x21844d, _0x5d1edf) { | |
| return _0x21844d !== _0x5d1edf; | |
| }, | |
| gzuUR: format('0x7c', 'UESF'), | |
| fPxUJ: format('0x7d', 'Zo3k'), | |
| NlcYa: format('0x7e', 'zoKQ'), | |
| wxHTM: function _0x1952eb(_0x5935a2, _0x40f1d4) { | |
| return _0x5935a2(_0x40f1d4); | |
| }, | |
| DAZpj: format('0x7f', 'cl@#'), | |
| vwrCM: function _0x147987(_0x17b669, _0x51f416) { | |
| return _0x17b669(_0x51f416); | |
| }, | |
| BhHcf: format('0x80', 'mE#h'), | |
| GIfpl: format('0x81', '3G9R'), | |
| fYQeb: function _0x124646(_0x4b7370, _0x5c686a) { | |
| return _0x4b7370(_0x5c686a); | |
| }, | |
| LeNci: format('0x82', 'Qhi6'), | |
| AeKoz: format('0x83', 'krj0'), | |
| boqRk: function _0x5db551(_0x2f48e2) { | |
| return _0x2f48e2(); | |
| }, | |
| }; | |
| if ( | |
| _0x2f7153[format('0x84', 'U*bz')]( | |
| _0x2f7153[format('0x85', 'weRA')], | |
| _0x2f7153[format('0x86', '3G9R')], | |
| ) | |
| ) { | |
| const _0x394326 = _0x2f7153[format('0x87', '&rR@')][ | |
| format('0x88', 'fnuD') | |
| ]('|'); | |
| let _0x186ed5 = 0; | |
| while ([]) { | |
| switch (_0x394326[_0x186ed5++]) { | |
| case '0': | |
| _0x2f7153[format('0x89', '^heg')]( | |
| so, | |
| _0x2f7153[format('0x8a', 'qu)Y')], | |
| )[format('0x8b', 'A8m!')]( | |
| _0x388307[format('0x8c', 'z%eD')], | |
| ); | |
| continue; | |
| case '1': | |
| _0x2f7153[format('0x8d', '5B63')]( | |
| so, | |
| _0x2f7153[format('0x8e', 'ME3B')], | |
| )[format('0x8f', 'ghet')]( | |
| _0x388307[format('0x90', 'A8m!')][ | |
| format('0x91', 'A8m!') | |
| ](), | |
| ); | |
| continue; | |
| case '2': | |
| layer[format('0x92', 'kS!H')]( | |
| _0x2f7153[format('0x93', 'z)*D')], | |
| ); | |
| continue; | |
| case '3': | |
| _0x2f7153[format('0x94', 'BqeZ')]( | |
| so, | |
| _0x2f7153[format('0x95', 'Zo3k')], | |
| )[format('0x96', 'Ccp$')]( | |
| _0x388307[format('0x97', 'A8m!')][ | |
| format('0x98', '[O*8') | |
| ](), | |
| ); | |
| continue; | |
| case '4': | |
| layer[format('0x99', 'cC(v')](_0x1778d9); | |
| continue; | |
| case '5': | |
| _0x2f7153[format('0x9a', 'ZG5j')]( | |
| so, | |
| _0x2f7153[format('0x9b', 'Edyd')], | |
| )[format('0x9c', 'O7np')]( | |
| _0x388307[format('0x9d', '[O*8')], | |
| ); | |
| continue; | |
| } | |
| break; | |
| } | |
| } else { | |
| _0x2f7153[format('0x9e', 'ghet')](core); | |
| } | |
| }, | |
| ); | |
| continue; | |
| case '4': | |
| if ( | |
| _0x53e65d[format('0x9f', 'cC(v')]( | |
| _0x61c5ca[format('0xa0', 'm&yL')], | |
| 0x3e8, | |
| ) | |
| ) { | |
| return ( | |
| layer[format('0xa1', 'ME3B')]( | |
| _0x53e65d[format('0xa2', 'cl@#')], | |
| so[format('0xa3', 'aD3G')], | |
| ), | |
| false | |
| ); | |
| } | |
| continue; | |
| } | |
| break; | |
| } | |
| }); | |
| }); // 加密解密事件监听 | |
| function core(type) { | |
| const operaObj1 = { | |
| LwjTi: function (a, b) { | |
| return a === b; | |
| }, | |
| qoMOW: 'clD', | |
| Eopgr: 'WSY', | |
| IjuUK: function (a, b) { | |
| return a(b); | |
| }, | |
| rOghx: 'bAs', | |
| lEycl: 'Uca', | |
| tNJVf: '0|4|3|1|2', | |
| RUGFS: '#source', | |
| BYIzy: function (a, b) { | |
| return a + b; | |
| }, | |
| OfFDS: '/auth_v_1_0/encrypt/encodeMD5.shtml', | |
| YNECy: function (a, b) { | |
| return a > b; | |
| }, | |
| tOFOU: '需要MD5加密的字符不能超过1000。', | |
| TbBZr: '请在左大框输入需要MD5的内容。', | |
| }; | |
| function coreInner(paramA) { | |
| const operateObj5 = { | |
| HUQZd: function (a, b) { | |
| return a === b; | |
| }, | |
| lYCIl: 'xBi', | |
| jBtIC: function (a, b) { | |
| return a === b; | |
| }, | |
| cBoeN: 'string', | |
| gBGxC: 'IgL', | |
| ikAEk: 'hYF', | |
| crPkX: function (a, b) {s | |
| return a(b); | |
| }, | |
| GodEJ: function (a) { | |
| return a(); | |
| }, | |
| QeKzV: 'cza', | |
| hyjPs: 'jdp', | |
| mhgjT: function (a, b) { | |
| return a !== b; | |
| }, | |
| QJmRX: function (a, b) { | |
| return a + b; | |
| }, | |
| CgymZ: function (a, b) { | |
| return a / b; | |
| }, | |
| NdsPG: 'length', | |
| VRbjz: function (a, b) { | |
| return a % b; | |
| }, | |
| zrvQx: function (a, b) { | |
| return a(b); | |
| }, | |
| JPhmq: function (a, b) { | |
| return a == b; | |
| }, | |
| DCFCm: '解密成功', | |
| YYtzB: '解密不成功,我们正在努力。', | |
| }; | |
| if ( | |
| operateObj5[format('0xb6', 'aD3G')]( | |
| operateObj5[format('0xb7', 'Q9D4')], | |
| operateObj5[format('0xb8', 'z)*D')], | |
| ) // true | |
| ) { | |
| if ( | |
| typeof paramA === 'string' | |
| ) { | |
| if ( | |
| operateObj5[format('0xbb', 'bP!u')]( | |
| operateObj5[format('0xbc', 'fnuD')], | |
| operateObj5[format('0xbd', 'ghet')], | |
| ) // false | |
| ) { | |
| if (type) { | |
| return coreInner; | |
| } | |
| operateObj5[format('0xbe', 'IOJ]')](coreInner, 0); | |
| } else { | |
| console.log('下毒'); | |
| // const _0xce9755 = function () { | |
| // while ([]) { } | |
| // }; | |
| // return _0xce9755(); | |
| } | |
| } else if ( | |
| operateObj5[format('0xc0', 'w3tt')]( | |
| operateObj5[format('0xc1', 'Lq8I')], | |
| operateObj5[format('0xc2', 'Lq8I')], | |
| ) // false | |
| ) { | |
| } else if ( | |
| ('' + paramA / paramA).length !== 1 | |
| || | |
| paramA % 20 ===0 | |
| ) { | |
| debugger; | |
| } else { | |
| debugger; | |
| } | |
| operateObj5[format('0xc9', '@8[3')](coreInner, ++paramA); | |
| } else { | |
| layer[format('0xca', 'IOJ]')](load); | |
| if ( | |
| result | |
| && result['status'] == 200 | |
| ) { | |
| layer['prompt']({ | |
| title: '解密成功', | |
| formType: 2, | |
| btn: '', | |
| value: result['data'], | |
| }); | |
| } else { | |
| layer['msg']( | |
| '解密不成功,我们正在努力。', | |
| so['defn'], | |
| ); | |
| } | |
| } | |
| } | |
| try { | |
| if (type) { | |
| return coreInner; | |
| } | |
| if ( | |
| operaObj1[format('0xd2', 'z%eD')]( | |
| operaObj1[format('0xd3', '#Uhc')], | |
| operaObj1[format('0xd4', '^heg')], | |
| ) // false | |
| ) { | |
| debugger; | |
| } else { | |
| coreInner(0); | |
| } | |
| } catch (_0x3154f3) { | |
| if ( | |
| operaObj1[format('0xd6', 'z)*D')]( | |
| operaObj1[format('0xd7', '[O*8')], | |
| operaObj1[format('0xd8', 'jnci')], | |
| ) // false | |
| ) { | |
| const _0x4dc636 = [ | |
| "0", | |
| "4", | |
| "3", | |
| "1", | |
| "2" | |
| ]; | |
| let _0x535336 = 0; | |
| while ([]) { | |
| switch (_0x4dc636[_0x535336++]) { | |
| case '0': | |
| var _0x5bf915 = so[format('0xdb', 'y]hN')]( | |
| operaObj1[format('0xdc', 'weRA')]( | |
| so, | |
| operaObj1[format('0xdd', 'krj0')], | |
| )[format('0xde', 'Edyd')](), | |
| ); | |
| continue; | |
| case '1': | |
| var _0x2675ff = layer[format('0xdf', 'ME3B')](); | |
| continue; | |
| case '2': | |
| so[format('0xe0', 'U*bz')]( | |
| operaObj1[format('0xe1', '3G9R')]( | |
| DOMAIN[format('0xe2', 'U*bz')], | |
| operaObj1[format('0xe3', '3G9R')], | |
| ), | |
| { text: _0x5bf915 }, | |
| (_0xd46bd4) => { | |
| const _0xcac8f6 = { | |
| BWzol: format('0xe4', 'UCRp'), | |
| fvWbh: function _0x58ef02(_0xd564f2, _0x2215f4) { | |
| return _0xd564f2(_0x2215f4); | |
| }, | |
| rbfgU: format('0xe5', 'qu)Y'), | |
| YJgRL: format('0xe6', '^Cci'), | |
| LrJPa: function _0x1e0605(_0x4236fa, _0x1dad91) { | |
| return _0x4236fa(_0x1dad91); | |
| }, | |
| RLDFP: format('0xe7', '^Cci'), | |
| QBruY: format('0xe8', 'zoKQ'), | |
| ovhcE: format('0xe9', 'O7np'), | |
| }; | |
| const _0x4a8041 = _0xcac8f6[format('0xea', 'O7np')][format('0xeb', '^Cci')]( | |
| '|', | |
| ); | |
| let _0x49729e = 0; | |
| while ([]) { | |
| switch (_0x4a8041[_0x49729e++]) { | |
| case '0': | |
| _0xcac8f6[format('0xec', 'mE#h')]( | |
| so, | |
| _0xcac8f6[format('0xed', 'mE#h')], | |
| )[format('0xee', '[O*8')]( | |
| _0xd46bd4[format('0xef', 'Zo3k')][ | |
| format('0xf0', 'Ccp$') | |
| ](), | |
| ); | |
| continue; | |
| case '1': | |
| layer[format('0xf1', 'z%eD')](_0x2675ff); | |
| continue; | |
| case '2': | |
| _0xcac8f6[format('0xf2', 'w3tt')]( | |
| so, | |
| _0xcac8f6[format('0xf3', 'qOi*')], | |
| )[format('0x56', 'bP!u')]( | |
| _0xd46bd4[format('0xf4', 'z)*D')], | |
| ); | |
| continue; | |
| case '3': | |
| _0xcac8f6[format('0xf5', 'ME3B')]( | |
| so, | |
| _0xcac8f6[format('0xf6', 'Ccp$')], | |
| )[format('0xf7', 'weRA')]( | |
| _0xd46bd4[format('0xf8', 'mE#h')][ | |
| format('0xf9', '#Uhc') | |
| ](), | |
| ); | |
| continue; | |
| case '4': | |
| layer[format('0xfa', 'cC(v')]( | |
| _0xcac8f6[format('0xfb', '(9OQ')], | |
| ); | |
| continue; | |
| case '5': | |
| _0xcac8f6[format('0xfc', 'kS!H')]( | |
| so, | |
| _0xcac8f6[format('0xfd', 'BqeZ')], | |
| )[format('0xfe', '#Uhc')]( | |
| _0xd46bd4[format('0xff', 'Edyd')], | |
| ); | |
| continue; | |
| } | |
| break; | |
| } | |
| }, | |
| ); | |
| continue; | |
| case '3': | |
| if ( | |
| operaObj1[format('0x100', 'vEj%')]( | |
| _0x5bf915[format('0x101', 'Zo3k')], | |
| 0x3e8, | |
| ) | |
| ) { | |
| return ( | |
| layer[format('0x102', 'weRA')]( | |
| operaObj1[format('0x103', '@8[3')], | |
| so[format('0x104', '&rR@')], | |
| ), | |
| false | |
| ); | |
| } | |
| continue; | |
| case '4': | |
| if (!_0x5bf915) { | |
| return ( | |
| layer[format('0x105', 'BqeZ')]( | |
| operaObj1[format('0x106', '3G9R')], | |
| so[format('0x107', 'qOi*')], | |
| ), | |
| false | |
| ); | |
| } | |
| continue; | |
| } | |
| break; | |
| } | |
| } else { | |
| } | |
| } | |
| } | |
| var encode_version = "sojson.v4"; | |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| /*! jQuery v1.9.1 | (c) jQuery Foundation | jquery.org/license */ | |
| (function (r, n) { | |
| function Ba(a) { | |
| var b = a.length, | |
| d = c.type(a); | |
| return c.isWindow(a) | |
| ? !1 | |
| : 1 === a.nodeType && b | |
| ? !0 | |
| : "array" === d || | |
| ("function" !== d && | |
| (0 === b || ("number" === typeof b && 0 < b && b - 1 in a))); | |
| } | |
| function Sb(a) { | |
| var b = (Va[a] = {}); | |
| c.each(a.match(R) || [], function (a, c) { | |
| b[c] = !0; | |
| }); | |
| return b; | |
| } | |
| function Wa(a, b, d, e) { | |
| if (c.acceptData(a)) { | |
| var f = c.expando, | |
| g = "string" === typeof b, | |
| h = a.nodeType, | |
| k = h ? c.cache : a, | |
| l = h ? a[f] : a[f] && f; | |
| if ((l && k[l] && (e || k[l].data)) || !g || d !== n) { | |
| l || (h ? (a[f] = l = aa.pop() || c.guid++) : (l = f)); | |
| k[l] || ((k[l] = {}), h || (k[l].toJSON = c.noop)); | |
| if ("object" === typeof b || "function" === typeof b) | |
| e ? (k[l] = c.extend(k[l], b)) : (k[l].data = c.extend(k[l].data, b)); | |
| a = k[l]; | |
| e || (a.data || (a.data = {}), (a = a.data)); | |
| d !== n && (a[c.camelCase(b)] = d); | |
| g ? ((d = a[b]), null == d && (d = a[c.camelCase(b)])) : (d = a); | |
| return d; | |
| } | |
| } | |
| } | |
| function Xa(a, b, d) { | |
| if (c.acceptData(a)) { | |
| var e, | |
| f, | |
| g = a.nodeType, | |
| h = g ? c.cache : a, | |
| k = g ? a[c.expando] : c.expando; | |
| if (h[k]) { | |
| if (b && (f = d ? h[k] : h[k].data)) { | |
| c.isArray(b) | |
| ? (b = b.concat(c.map(b, c.camelCase))) | |
| : b in f | |
| ? (b = [b]) | |
| : ((b = c.camelCase(b)), (b = b in f ? [b] : b.split(" "))); | |
| var l = 0; | |
| for (e = b.length; l < e; l++) delete f[b[l]]; | |
| if (!(d ? Ca : c.isEmptyObject)(f)) return; | |
| } | |
| if (!d && (delete h[k].data, !Ca(h[k]))) return; | |
| g | |
| ? c.cleanData([a], !0) | |
| : c.support.deleteExpando || h != h.window | |
| ? delete h[k] | |
| : (h[k] = null); | |
| } | |
| } | |
| } | |
| function Ya(a, b, d) { | |
| if (d === n && 1 === a.nodeType) | |
| if ( | |
| ((d = "data-" + b.replace(Tb, "-$1").toLowerCase()), | |
| (d = a.getAttribute(d)), | |
| "string" === typeof d) | |
| ) { | |
| try { | |
| d = | |
| "true" === d | |
| ? !0 | |
| : "false" === d | |
| ? !1 | |
| : "null" === d | |
| ? null | |
| : +d + "" === d | |
| ? +d | |
| : Ub.test(d) | |
| ? c.parseJSON(d) | |
| : d; | |
| } catch (e) {} | |
| c.data(a, b, d); | |
| } else d = n; | |
| return d; | |
| } | |
| function Ca(a) { | |
| for (var b in a) | |
| if (("data" !== b || !c.isEmptyObject(a[b])) && "toJSON" !== b) return !1; | |
| return !0; | |
| } | |
| function qa() { | |
| return !0; | |
| } | |
| function W() { | |
| return !1; | |
| } | |
| function Za(a, b) { | |
| do a = a[b]; | |
| while (a && 1 !== a.nodeType); | |
| return a; | |
| } | |
| function $a(a, b, d) { | |
| b = b || 0; | |
| if (c.isFunction(b)) | |
| return c.grep(a, function (a, c) { | |
| return !!b.call(a, c, a) === d; | |
| }); | |
| if (b.nodeType) | |
| return c.grep(a, function (a) { | |
| return (a === b) === d; | |
| }); | |
| if ("string" === typeof b) { | |
| var e = c.grep(a, function (a) { | |
| return 1 === a.nodeType; | |
| }); | |
| if (Vb.test(b)) return c.filter(b, e, !d); | |
| b = c.filter(b, e); | |
| } | |
| return c.grep(a, function (a) { | |
| return 0 <= c.inArray(a, b) === d; | |
| }); | |
| } | |
| function ab(a) { | |
| var b = bb.split("|"); | |
| a = a.createDocumentFragment(); | |
| if (a.createElement) for (; b.length; ) a.createElement(b.pop()); | |
| return a; | |
| } | |
| function Wb(a, b) { | |
| return ( | |
| a.getElementsByTagName(b)[0] || | |
| a.appendChild(a.ownerDocument.createElement(b)) | |
| ); | |
| } | |
| function cb(a) { | |
| var b = a.getAttributeNode("type"); | |
| a.type = (b && b.specified) + "/" + a.type; | |
| return a; | |
| } | |
| function db(a) { | |
| var b = Xb.exec(a.type); | |
| b ? (a.type = b[1]) : a.removeAttribute("type"); | |
| return a; | |
| } | |
| function Da(a, b) { | |
| for (var d, e = 0; null != (d = a[e]); e++) | |
| c._data(d, "globalEval", !b || c._data(b[e], "globalEval")); | |
| } | |
| function eb(a, b) { | |
| if (1 === b.nodeType && c.hasData(a)) { | |
| var d, e; | |
| var f = c._data(a); | |
| a = c._data(b, f); | |
| var g = f.events; | |
| if (g) | |
| for (d in (delete a.handle, (a.events = {}), g)) | |
| for (f = 0, e = g[d].length; f < e; f++) c.event.add(b, d, g[d][f]); | |
| a.data && (a.data = c.extend({}, a.data)); | |
| } | |
| } | |
| function x(a, b) { | |
| var d, | |
| e, | |
| f = 0, | |
| g = | |
| typeof a.getElementsByTagName !== H | |
| ? a.getElementsByTagName(b || "*") | |
| : typeof a.querySelectorAll !== H | |
| ? a.querySelectorAll(b || "*") | |
| : n; | |
| if (!g) | |
| for (g = [], d = a.childNodes || a; null != (e = d[f]); f++) | |
| !b || c.nodeName(e, b) ? g.push(e) : c.merge(g, x(e, b)); | |
| return b === n || (b && c.nodeName(a, b)) ? c.merge([a], g) : g; | |
| } | |
| function Yb(a) { | |
| Ea.test(a.type) && (a.defaultChecked = a.checked); | |
| } | |
| function fb(a, b) { | |
| if (b in a) return b; | |
| for ( | |
| var c = b.charAt(0).toUpperCase() + b.slice(1), e = b, f = gb.length; | |
| f--; | |
| ) | |
| if (((b = gb[f] + c), b in a)) return b; | |
| return e; | |
| } | |
| function X(a, b) { | |
| a = b || a; | |
| return "none" === c.css(a, "display") || !c.contains(a.ownerDocument, a); | |
| } | |
| function hb(a, b) { | |
| for (var d, e, f, g = [], h = 0, k = a.length; h < k; h++) | |
| (e = a[h]), | |
| e.style && | |
| ((g[h] = c._data(e, "olddisplay")), | |
| (d = e.style.display), | |
| b | |
| ? (g[h] || "none" !== d || (e.style.display = ""), | |
| "" === e.style.display && | |
| X(e) && | |
| (g[h] = c._data(e, "olddisplay", ib(e.nodeName)))) | |
| : g[h] || | |
| ((f = X(e)), | |
| ((d && "none" !== d) || !f) && | |
| c._data(e, "olddisplay", f ? d : c.css(e, "display")))); | |
| for (h = 0; h < k; h++) | |
| (e = a[h]), | |
| !e.style || | |
| (b && "none" !== e.style.display && "" !== e.style.display) || | |
| (e.style.display = b ? g[h] || "" : "none"); | |
| return a; | |
| } | |
| function jb(a, b, c) { | |
| return (a = Zb.exec(b)) ? Math.max(0, a[1] - (c || 0)) + (a[2] || "px") : b; | |
| } | |
| function kb(a, b, d, e, f) { | |
| b = d === (e ? "border" : "content") ? 4 : "width" === b ? 1 : 0; | |
| for (var g = 0; 4 > b; b += 2) | |
| "margin" === d && (g += c.css(a, d + ba[b], !0, f)), | |
| e | |
| ? ("content" === d && (g -= c.css(a, "padding" + ba[b], !0, f)), | |
| "margin" !== d && | |
| (g -= c.css(a, "border" + ba[b] + "Width", !0, f))) | |
| : ((g += c.css(a, "padding" + ba[b], !0, f)), | |
| "padding" !== d && | |
| (g += c.css(a, "border" + ba[b] + "Width", !0, f))); | |
| return g; | |
| } | |
| function lb(a, b, d) { | |
| var e = !0, | |
| f = "width" === b ? a.offsetWidth : a.offsetHeight, | |
| g = S(a), | |
| h = c.support.boxSizing && "border-box" === c.css(a, "boxSizing", !1, g); | |
| if (0 >= f || null == f) { | |
| f = ea(a, b, g); | |
| if (0 > f || null == f) f = a.style[b]; | |
| if (ra.test(f)) return f; | |
| e = h && (c.support.boxSizingReliable || f === a.style[b]); | |
| f = parseFloat(f) || 0; | |
| } | |
| return f + kb(a, b, d || (h ? "border" : "content"), e, g) + "px"; | |
| } | |
| function ib(a) { | |
| var b = q, | |
| d = mb[a]; | |
| d || | |
| ((d = nb(a, b)), | |
| ("none" !== d && d) || | |
| ((ca = ( | |
| ca || | |
| c("<iframe frameborder='0' width='0' height='0'/>").css( | |
| "cssText", | |
| "display:block !important" | |
| ) | |
| ).appendTo(b.documentElement)), | |
| (b = (ca[0].contentWindow || ca[0].contentDocument).document), | |
| b.write("<!doctype html><html><body>"), | |
| b.close(), | |
| (d = nb(a, b)), | |
| ca.detach()), | |
| (mb[a] = d)); | |
| return d; | |
| } | |
| function nb(a, b) { | |
| a = c(b.createElement(a)).appendTo(b.body); | |
| b = c.css(a[0], "display"); | |
| a.remove(); | |
| return b; | |
| } | |
| function Fa(a, b, d, e) { | |
| var f; | |
| if (c.isArray(b)) | |
| c.each(b, function (b, c) { | |
| d || $b.test(a) | |
| ? e(a, c) | |
| : Fa(a + "[" + ("object" === typeof c ? b : "") + "]", c, d, e); | |
| }); | |
| else if (d || "object" !== c.type(b)) e(a, b); | |
| else for (f in b) Fa(a + "[" + f + "]", b[f], d, e); | |
| } | |
| function ob(a) { | |
| return function (b, d) { | |
| "string" !== typeof b && ((d = b), (b = "*")); | |
| var e = 0, | |
| f = b.toLowerCase().match(R) || []; | |
| if (c.isFunction(d)) | |
| for (; (b = f[e++]); ) | |
| "+" === b[0] | |
| ? ((b = b.slice(1) || "*"), (a[b] = a[b] || []).unshift(d)) | |
| : (a[b] = a[b] || []).push(d); | |
| }; | |
| } | |
| function pb(a, b, d, e) { | |
| function f(k) { | |
| var l; | |
| g[k] = !0; | |
| c.each(a[k] || [], function (a, c) { | |
| a = c(b, d, e); | |
| if ("string" === typeof a && !h && !g[a]) | |
| return b.dataTypes.unshift(a), f(a), !1; | |
| if (h) return !(l = a); | |
| }); | |
| return l; | |
| } | |
| var g = {}, | |
| h = a === Ga; | |
| return f(b.dataTypes[0]) || (!g["*"] && f("*")); | |
| } | |
| function Ha(a, b) { | |
| var d, | |
| e, | |
| f = c.ajaxSettings.flatOptions || {}; | |
| for (e in b) b[e] !== n && ((f[e] ? a : d || (d = {}))[e] = b[e]); | |
| d && c.extend(!0, a, d); | |
| return a; | |
| } | |
| function qb() { | |
| try { | |
| return new r.XMLHttpRequest(); | |
| } catch (a) {} | |
| } | |
| function rb() { | |
| setTimeout(function () { | |
| fa = n; | |
| }); | |
| return (fa = c.now()); | |
| } | |
| function ac(a, b) { | |
| c.each(b, function (b, c) { | |
| for ( | |
| var d = (da[b] || []).concat(da["*"]), e = 0, h = d.length; | |
| e < h && !d[e].call(a, b, c); | |
| e++ | |
| ); | |
| }); | |
| } | |
| function sb(a, b, d) { | |
| var e, | |
| f = 0, | |
| g = sa.length, | |
| h = c.Deferred().always(function () { | |
| delete k.elem; | |
| }), | |
| k = function () { | |
| if (e) return !1; | |
| var b = fa || rb(); | |
| b = Math.max(0, l.startTime + l.duration - b); | |
| for ( | |
| var c = 1 - (b / l.duration || 0), d = 0, f = l.tweens.length; | |
| d < f; | |
| d++ | |
| ) | |
| l.tweens[d].run(c); | |
| h.notifyWith(a, [l, c, b]); | |
| if (1 > c && f) return b; | |
| h.resolveWith(a, [l]); | |
| return !1; | |
| }, | |
| l = h.promise({ | |
| elem: a, | |
| props: c.extend({}, b), | |
| opts: c.extend( | |
| !0, | |
| { | |
| specialEasing: {}, | |
| }, | |
| d | |
| ), | |
| originalProperties: b, | |
| originalOptions: d, | |
| startTime: fa || rb(), | |
| duration: d.duration, | |
| tweens: [], | |
| createTween: function (b, d) { | |
| b = c.Tween( | |
| a, | |
| l.opts, | |
| b, | |
| d, | |
| l.opts.specialEasing[b] || l.opts.easing | |
| ); | |
| l.tweens.push(b); | |
| return b; | |
| }, | |
| stop: function (b) { | |
| var c = 0, | |
| d = b ? l.tweens.length : 0; | |
| if (e) return this; | |
| for (e = !0; c < d; c++) l.tweens[c].run(1); | |
| b ? h.resolveWith(a, [l, b]) : h.rejectWith(a, [l, b]); | |
| return this; | |
| }, | |
| }); | |
| d = l.props; | |
| for (bc(d, l.opts.specialEasing); f < g; f++) | |
| if ((b = sa[f].call(l, a, d, l.opts))) return b; | |
| ac(l, d); | |
| c.isFunction(l.opts.start) && l.opts.start.call(a, l); | |
| c.fx.timer( | |
| c.extend(k, { | |
| elem: a, | |
| anim: l, | |
| queue: l.opts.queue, | |
| }) | |
| ); | |
| return l | |
| .progress(l.opts.progress) | |
| .done(l.opts.done, l.opts.complete) | |
| .fail(l.opts.fail) | |
| .always(l.opts.always); | |
| } | |
| function bc(a, b) { | |
| var d, e; | |
| for (d in a) { | |
| var f = c.camelCase(d); | |
| var g = b[f]; | |
| var h = a[d]; | |
| c.isArray(h) && ((g = h[1]), (h = a[d] = h[0])); | |
| d !== f && ((a[f] = h), delete a[d]); | |
| if ((e = c.cssHooks[f]) && "expand" in e) | |
| for (d in ((h = e.expand(h)), delete a[f], h)) | |
| d in a || ((a[d] = h[d]), (b[d] = g)); | |
| else b[f] = g; | |
| } | |
| } | |
| function D(a, b, c, e, f) { | |
| return new D.prototype.init(a, b, c, e, f); | |
| } | |
| function ta(a, b) { | |
| var c = { | |
| height: a, | |
| }, | |
| e = 0; | |
| for (b = b ? 1 : 0; 4 > e; e += 2 - b) { | |
| var f = ba[e]; | |
| c["margin" + f] = c["padding" + f] = a; | |
| } | |
| b && (c.opacity = c.width = a); | |
| return c; | |
| } | |
| function tb(a) { | |
| return c.isWindow(a) | |
| ? a | |
| : 9 === a.nodeType | |
| ? a.defaultView || a.parentWindow | |
| : !1; | |
| } | |
| var ha, | |
| H = typeof n, | |
| q = r.document, | |
| cc = r.location, | |
| dc = r.jQuery, | |
| ec = r.$, | |
| ma = {}, | |
| aa = [], | |
| ub = aa.concat, | |
| Ia = aa.push, | |
| O = aa.slice, | |
| vb = aa.indexOf, | |
| fc = ma.toString, | |
| na = ma.hasOwnProperty, | |
| Ja = "2.0".trim, | |
| c = function (a, b) { | |
| return new c.fn.init(a, b, gc); | |
| }, | |
| xa = /[+-]?(?:\d*\.|)\d+(?:[eE][+-]?\d+|)/.source, | |
| R = /\S+/g, | |
| hc = /^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g, | |
| ic = /^(?:(<[\w\W]+>)[^>]*|#([\w-]*))$/, | |
| wb = /^<(\w+)\s*\/?>(?:<\/\1>|)$/, | |
| jc = /^[\],:{}\s]*$/, | |
| kc = /(?:^|:|,)(?:\s*\[)+/g, | |
| lc = /\\(?:["\\\/bfnrt]|u[\da-fA-F]{4})/g, | |
| mc = /"[^"\\\r\n]*"|true|false|null|-?(?:\d+\.|)\d+(?:[eE][+-]?\d+|)/g, | |
| nc = /^-ms-/, | |
| oc = /-([\da-z])/gi, | |
| pc = function (a, b) { | |
| return b.toUpperCase(); | |
| }, | |
| F = function (a) { | |
| if ( | |
| q.addEventListener || | |
| "load" === a.type || | |
| "complete" === q.readyState | |
| ) | |
| xb(), c.ready(); | |
| }, | |
| xb = function () { | |
| q.addEventListener | |
| ? (q.removeEventListener("DOMContentLoaded", F, !1), | |
| r.removeEventListener("load", F, !1)) | |
| : (q.detachEvent("onreadystatechange", F), r.detachEvent("onload", F)); | |
| }; | |
| c.fn = c.prototype = { | |
| jquery: "2.0", | |
| constructor: c, | |
| init: function (a, b, d) { | |
| if (!a) return this; | |
| if ("string" === typeof a) { | |
| var e = | |
| "<" === a.charAt(0) && ">" === a.charAt(a.length - 1) && 3 <= a.length | |
| ? [null, a, null] | |
| : ic.exec(a); | |
| if (!e || (!e[1] && b)) | |
| return !b || b.jquery | |
| ? (b || d).find(a) | |
| : this.constructor(b).find(a); | |
| if (e[1]) { | |
| if ( | |
| (b instanceof c && (b = b[0]), | |
| c.merge( | |
| this, | |
| c.parseHTML(e[1], b && b.nodeType ? b.ownerDocument || b : q, !0) | |
| ), | |
| wb.test(e[1]) && c.isPlainObject(b)) | |
| ) | |
| for (e in b) | |
| if (c.isFunction(this[e])) this[e](b[e]); | |
| else this.attr(e, b[e]); | |
| } else { | |
| if ((b = q.getElementById(e[2])) && b.parentNode) { | |
| if (b.id !== e[2]) return d.find(a); | |
| this.length = 1; | |
| this[0] = b; | |
| } | |
| this.context = q; | |
| this.selector = a; | |
| } | |
| return this; | |
| } | |
| if (a.nodeType) | |
| return (this.context = this[0] = a), (this.length = 1), this; | |
| if (c.isFunction(a)) return d.ready(a); | |
| a.selector !== n && | |
| ((this.selector = a.selector), (this.context = a.context)); | |
| return c.makeArray(a, this); | |
| }, | |
| selector: "", | |
| length: 0, | |
| size: function () { | |
| return this.length; | |
| }, | |
| toArray: function () { | |
| return O.call(this); | |
| }, | |
| get: function (a) { | |
| return null == a | |
| ? this.toArray() | |
| : 0 > a | |
| ? this[this.length + a] | |
| : this[a]; | |
| }, | |
| pushStack: function (a) { | |
| a = c.merge(this.constructor(), a); | |
| a.prevObject = this; | |
| a.context = this.context; | |
| return a; | |
| }, | |
| each: function (a, b) { | |
| return c.each(this, a, b); | |
| }, | |
| ready: function (a) { | |
| c.ready.promise().done(a); | |
| return this; | |
| }, | |
| slice: function () { | |
| return this.pushStack(O.apply(this, arguments)); | |
| }, | |
| first: function () { | |
| return this.eq(0); | |
| }, | |
| last: function () { | |
| return this.eq(-1); | |
| }, | |
| eq: function (a) { | |
| var b = this.length; | |
| a = +a + (0 > a ? b : 0); | |
| return this.pushStack(0 <= a && a < b ? [this[a]] : []); | |
| }, | |
| map: function (a) { | |
| return this.pushStack( | |
| c.map(this, function (b, c) { | |
| return a.call(b, c, b); | |
| }) | |
| ); | |
| }, | |
| end: function () { | |
| return this.prevObject || this.constructor(null); | |
| }, | |
| push: Ia, | |
| sort: [].sort, | |
| splice: [].splice, | |
| }; | |
| c.fn.init.prototype = c.fn; | |
| c.extend = c.fn.extend = function () { | |
| var a, | |
| b, | |
| d, | |
| e = arguments[0] || {}, | |
| f = 1, | |
| g = arguments.length, | |
| h = !1; | |
| "boolean" === typeof e && ((h = e), (e = arguments[1] || {}), (f = 2)); | |
| "object" === typeof e || c.isFunction(e) || (e = {}); | |
| g === f && ((e = this), --f); | |
| for (; f < g; f++) | |
| if (null != (d = arguments[f])) | |
| for (b in d) { | |
| var k = e[b]; | |
| var l = d[b]; | |
| e !== l && | |
| (h && l && (c.isPlainObject(l) || (a = c.isArray(l))) | |
| ? (a | |
| ? ((a = !1), (k = k && c.isArray(k) ? k : [])) | |
| : (k = k && c.isPlainObject(k) ? k : {}), | |
| (e[b] = c.extend(h, k, l))) | |
| : l !== n && (e[b] = l)); | |
| } | |
| return e; | |
| }; | |
| c.extend({ | |
| noConflict: function (a) { | |
| r.$ === c && (r.$ = ec); | |
| a && r.jQuery === c && (r.jQuery = dc); | |
| return c; | |
| }, | |
| isReady: !1, | |
| readyWait: 1, | |
| holdReady: function (a) { | |
| a ? c.readyWait++ : c.ready(!0); | |
| }, | |
| ready: function (a) { | |
| if (!0 === a ? !--c.readyWait : !c.isReady) { | |
| if (!q.body) return setTimeout(c.ready); | |
| c.isReady = !0; | |
| (!0 !== a && 0 < --c.readyWait) || | |
| (ha.resolveWith(q, [c]), | |
| c.fn.trigger && c(q).trigger("ready").off("ready")); | |
| } | |
| }, | |
| isFunction: function (a) { | |
| return "function" === c.type(a); | |
| }, | |
| isArray: | |
| Array.isArray || | |
| function (a) { | |
| return "array" === c.type(a); | |
| }, | |
| isWindow: function (a) { | |
| return null != a && a == a.window; | |
| }, | |
| isNumeric: function (a) { | |
| return !isNaN(parseFloat(a)) && isFinite(a); | |
| }, | |
| type: function (a) { | |
| return null == a | |
| ? String(a) | |
| : "object" === typeof a || "function" === typeof a | |
| ? ma[fc.call(a)] || "object" | |
| : typeof a; | |
| }, | |
| isPlainObject: function (a) { | |
| if (!a || "object" !== c.type(a) || a.nodeType || c.isWindow(a)) | |
| return !1; | |
| try { | |
| if ( | |
| a.constructor && | |
| !na.call(a, "constructor") && | |
| !na.call(a.constructor.prototype, "isPrototypeOf") | |
| ) | |
| return !1; | |
| } catch (d) { | |
| return !1; | |
| } | |
| for (var b in a); | |
| return b === n || na.call(a, b); | |
| }, | |
| isEmptyObject: function (a) { | |
| for (var b in a) return !1; | |
| return !0; | |
| }, | |
| error: function (a) { | |
| throw Error(a); | |
| }, | |
| parseHTML: function (a, b, d) { | |
| if (!a || "string" !== typeof a) return null; | |
| "boolean" === typeof b && ((d = b), (b = !1)); | |
| b = b || q; | |
| var e = wb.exec(a); | |
| d = !d && []; | |
| if (e) return [b.createElement(e[1])]; | |
| e = c.buildFragment([a], b, d); | |
| d && c(d).remove(); | |
| return c.merge([], e.childNodes); | |
| }, | |
| parseJSON: function (a) { | |
| if (r.JSON && r.JSON.parse) return r.JSON.parse(a); | |
| if (null === a) return a; | |
| if ( | |
| "string" === typeof a && | |
| (a = c.trim(a)) && | |
| jc.test(a.replace(lc, "@").replace(mc, "]").replace(kc, "")) | |
| ) | |
| return new Function("return " + a)(); | |
| c.error("Invalid JSON: " + a); | |
| }, | |
| parseXML: function (a) { | |
| if (!a || "string" !== typeof a) return null; | |
| try { | |
| if (r.DOMParser) { | |
| var b = new DOMParser(); | |
| var d = b.parseFromString(a, "text/xml"); | |
| } else | |
| (d = new ActiveXObject("Microsoft.XMLDOM")), | |
| (d.async = "false"), | |
| d.loadXML(a); | |
| } catch (e) { | |
| d = n; | |
| } | |
| (d && | |
| d.documentElement && | |
| !d.getElementsByTagName("parsererror").length) || | |
| c.error("Invalid XML: " + a); | |
| return d; | |
| }, | |
| noop: function () {}, | |
| globalEval: function (a) { | |
| a && | |
| c.trim(a) && | |
| ( | |
| r.execScript || | |
| function (a) { | |
| r.eval.call(r, a); | |
| } | |
| )(a); | |
| }, | |
| camelCase: function (a) { | |
| return a.replace(nc, "ms-").replace(oc, pc); | |
| }, | |
| nodeName: function (a, b) { | |
| return a.nodeName && a.nodeName.toLowerCase() === b.toLowerCase(); | |
| }, | |
| each: function (a, b, c) { | |
| var d = 0, | |
| f = a.length; | |
| var g = Ba(a); | |
| if (c) | |
| if (g) for (; d < f && ((g = b.apply(a[d], c)), !1 !== g); d++); | |
| else | |
| for (d in a) { | |
| if (((g = b.apply(a[d], c)), !1 === g)) break; | |
| } | |
| else if (g) for (; d < f && ((g = b.call(a[d], d, a[d])), !1 !== g); d++); | |
| else for (d in a) if (((g = b.call(a[d], d, a[d])), !1 === g)) break; | |
| return a; | |
| }, | |
| trim: | |
| Ja && !Ja.call("\ufeff\u00a0") | |
| ? function (a) { | |
| return null == a ? "" : Ja.call(a); | |
| } | |
| : function (a) { | |
| return null == a ? "" : (a + "").replace(hc, ""); | |
| }, | |
| makeArray: function (a, b) { | |
| b = b || []; | |
| null != a && | |
| (Ba(Object(a)) | |
| ? c.merge(b, "string" === typeof a ? [a] : a) | |
| : Ia.call(b, a)); | |
| return b; | |
| }, | |
| inArray: function (a, b, c) { | |
| if (b) { | |
| if (vb) return vb.call(b, a, c); | |
| var d = b.length; | |
| for (c = c ? (0 > c ? Math.max(0, d + c) : c) : 0; c < d; c++) | |
| if (c in b && b[c] === a) return c; | |
| } | |
| return -1; | |
| }, | |
| merge: function (a, b) { | |
| var c = b.length, | |
| e = a.length, | |
| f = 0; | |
| if ("number" === typeof c) for (; f < c; f++) a[e++] = b[f]; | |
| else for (; b[f] !== n; ) a[e++] = b[f++]; | |
| a.length = e; | |
| return a; | |
| }, | |
| grep: function (a, b, c) { | |
| var d = [], | |
| f = 0, | |
| g = a.length; | |
| for (c = !!c; f < g; f++) { | |
| var h = !!b(a[f], f); | |
| c !== h && d.push(a[f]); | |
| } | |
| return d; | |
| }, | |
| map: function (a, b, c) { | |
| var d = 0, | |
| f = a.length, | |
| g = []; | |
| if (Ba(a)) | |
| for (; d < f; d++) { | |
| var h = b(a[d], d, c); | |
| null != h && (g[g.length] = h); | |
| } | |
| else for (d in a) (h = b(a[d], d, c)), null != h && (g[g.length] = h); | |
| return ub.apply([], g); | |
| }, | |
| guid: 1, | |
| proxy: function (a, b) { | |
| if ("string" === typeof b) { | |
| var d = a[b]; | |
| b = a; | |
| a = d; | |
| } | |
| if (!c.isFunction(a)) return n; | |
| var e = O.call(arguments, 2); | |
| d = function () { | |
| return a.apply(b || this, e.concat(O.call(arguments))); | |
| }; | |
| d.guid = a.guid = a.guid || c.guid++; | |
| return d; | |
| }, | |
| access: function (a, b, d, e, f, g, h) { | |
| var k = 0, | |
| l = a.length, | |
| m = null == d; | |
| if ("object" === c.type(d)) | |
| for (k in ((f = !0), d)) c.access(a, b, k, d[k], !0, g, h); | |
| else if ( | |
| e !== n && | |
| ((f = !0), | |
| c.isFunction(e) || (h = !0), | |
| m && | |
| (h | |
| ? (b.call(a, e), (b = null)) | |
| : ((m = b), | |
| (b = function (a, b, d) { | |
| return m.call(c(a), d); | |
| }))), | |
| b) | |
| ) | |
| for (; k < l; k++) b(a[k], d, h ? e : e.call(a[k], k, b(a[k], d))); | |
| return f ? a : m ? b.call(a) : l ? b(a[0], d) : g; | |
| }, | |
| now: function () { | |
| return new Date().getTime(); | |
| }, | |
| }); | |
| c.ready.promise = function (a) { | |
| if (!ha) | |
| if (((ha = c.Deferred()), "complete" === q.readyState)) | |
| setTimeout(c.ready); | |
| else if (q.addEventListener) | |
| q.addEventListener("DOMContentLoaded", F, !1), | |
| r.addEventListener("load", F, !1); | |
| else { | |
| q.attachEvent("onreadystatechange", F); | |
| r.attachEvent("onload", F); | |
| var b = !1; | |
| try { | |
| b = null == r.frameElement && q.documentElement; | |
| } catch (d) {} | |
| b && | |
| b.doScroll && | |
| (function e() { | |
| if (!c.isReady) { | |
| try { | |
| b.doScroll("left"); | |
| } catch (f) { | |
| return setTimeout(e, 50); | |
| } | |
| xb(); | |
| c.ready(); | |
| } | |
| })(); | |
| } | |
| return ha.promise(a); | |
| }; | |
| c.each( | |
| "Boolean Number String Function Array Date RegExp Object Error".split(" "), | |
| function (a, b) { | |
| ma["[object " + b + "]"] = b.toLowerCase(); | |
| } | |
| ); | |
| var gc = c(q); | |
| var Va = {}; | |
| c.Callbacks = function (a) { | |
| a = "string" === typeof a ? Va[a] || Sb(a) : c.extend({}, a); | |
| var b, | |
| d, | |
| e, | |
| f, | |
| g, | |
| h, | |
| k = [], | |
| l = !a.once && [], | |
| m = function (c) { | |
| d = a.memory && c; | |
| e = !0; | |
| g = h || 0; | |
| h = 0; | |
| f = k.length; | |
| for (b = !0; k && g < f; g++) | |
| if (!1 === k[g].apply(c[0], c[1]) && a.stopOnFalse) { | |
| d = !1; | |
| break; | |
| } | |
| b = !1; | |
| k && (l ? l.length && m(l.shift()) : d ? (k = []) : t.disable()); | |
| }, | |
| t = { | |
| add: function () { | |
| if (k) { | |
| var e = k.length; | |
| (function qc(b) { | |
| c.each(b, function (b, d) { | |
| b = c.type(d); | |
| "function" === b | |
| ? (a.unique && t.has(d)) || k.push(d) | |
| : d && d.length && "string" !== b && qc(d); | |
| }); | |
| })(arguments); | |
| b ? (f = k.length) : d && ((h = e), m(d)); | |
| } | |
| return this; | |
| }, | |
| remove: function () { | |
| k && | |
| c.each(arguments, function (a, d) { | |
| for (var e; -1 < (e = c.inArray(d, k, e)); ) | |
| k.splice(e, 1), b && (e <= f && f--, e <= g && g--); | |
| }); | |
| return this; | |
| }, | |
| has: function (a) { | |
| return a ? -1 < c.inArray(a, k) : !(!k || !k.length); | |
| }, | |
| empty: function () { | |
| k = []; | |
| return this; | |
| }, | |
| disable: function () { | |
| k = l = d = n; | |
| return this; | |
| }, | |
| disabled: function () { | |
| return !k; | |
| }, | |
| lock: function () { | |
| l = n; | |
| d || t.disable(); | |
| return this; | |
| }, | |
| locked: function () { | |
| return !l; | |
| }, | |
| fireWith: function (a, c) { | |
| c = c || []; | |
| c = [a, c.slice ? c.slice() : c]; | |
| !k || (e && !l) || (b ? l.push(c) : m(c)); | |
| return this; | |
| }, | |
| fire: function () { | |
| t.fireWith(this, arguments); | |
| return this; | |
| }, | |
| fired: function () { | |
| return !!e; | |
| }, | |
| }; | |
| return t; | |
| }; | |
| c.extend({ | |
| Deferred: function (a) { | |
| var b = [ | |
| ["resolve", "done", c.Callbacks("once memory"), "resolved"], | |
| ["reject", "fail", c.Callbacks("once memory"), "rejected"], | |
| ["notify", "progress", c.Callbacks("memory")], | |
| ], | |
| d = "pending", | |
| e = { | |
| state: function () { | |
| return d; | |
| }, | |
| always: function () { | |
| f.done(arguments).fail(arguments); | |
| return this; | |
| }, | |
| then: function () { | |
| var a = arguments; | |
| return c | |
| .Deferred(function (d) { | |
| c.each(b, function (b, g) { | |
| var h = g[0], | |
| k = c.isFunction(a[b]) && a[b]; | |
| f[g[1]](function () { | |
| var a = k && k.apply(this, arguments); | |
| if (a && c.isFunction(a.promise)) | |
| a.promise() | |
| .done(d.resolve) | |
| .fail(d.reject) | |
| .progress(d.notify); | |
| else | |
| d[h + "With"]( | |
| this === e ? d.promise() : this, | |
| k ? [a] : arguments | |
| ); | |
| }); | |
| }); | |
| a = null; | |
| }) | |
| .promise(); | |
| }, | |
| promise: function (a) { | |
| return null != a ? c.extend(a, e) : e; | |
| }, | |
| }, | |
| f = {}; | |
| e.pipe = e.then; | |
| c.each(b, function (a, c) { | |
| var g = c[2], | |
| h = c[3]; | |
| e[c[1]] = g.add; | |
| h && | |
| g.add( | |
| function () { | |
| d = h; | |
| }, | |
| b[a ^ 1][2].disable, | |
| b[2][2].lock | |
| ); | |
| f[c[0]] = function () { | |
| f[c[0] + "With"](this === f ? e : this, arguments); | |
| return this; | |
| }; | |
| f[c[0] + "With"] = g.fireWith; | |
| }); | |
| e.promise(f); | |
| a && a.call(f, f); | |
| return f; | |
| }, | |
| when: function (a) { | |
| var b = 0, | |
| d = O.call(arguments), | |
| e = d.length, | |
| f = 1 !== e || (a && c.isFunction(a.promise)) ? e : 0, | |
| g = 1 === f ? a : c.Deferred(), | |
| h = function (a, b, c) { | |
| return function (d) { | |
| b[a] = this; | |
| c[a] = 1 < arguments.length ? O.call(arguments) : d; | |
| c === l ? g.notifyWith(b, c) : --f || g.resolveWith(b, c); | |
| }; | |
| }, | |
| k; | |
| if (1 < e) { | |
| var l = Array(e); | |
| var m = Array(e); | |
| for (k = Array(e); b < e; b++) | |
| d[b] && c.isFunction(d[b].promise) | |
| ? d[b] | |
| .promise() | |
| .done(h(b, k, d)) | |
| .fail(g.reject) | |
| .progress(h(b, m, l)) | |
| : --f; | |
| } | |
| f || g.resolveWith(k, d); | |
| return g.promise(); | |
| }, | |
| }); | |
| c.support = (function () { | |
| var a, | |
| b, | |
| d = q.createElement("div"); | |
| d.setAttribute("className", "t"); | |
| d.innerHTML = | |
| " <link/><table></table><a href='/a'>a</a><input type='checkbox'/>"; | |
| var e = d.getElementsByTagName("*"); | |
| var f = d.getElementsByTagName("a")[0]; | |
| if (!e || !f || !e.length) return {}; | |
| var g = q.createElement("select"); | |
| var h = g.appendChild(q.createElement("option")); | |
| e = d.getElementsByTagName("input")[0]; | |
| f.style.cssText = "top:1px;float:left;opacity:.5"; | |
| var k = { | |
| getSetAttribute: "t" !== d.className, | |
| leadingWhitespace: 3 === d.firstChild.nodeType, | |
| tbody: !d.getElementsByTagName("tbody").length, | |
| htmlSerialize: !!d.getElementsByTagName("link").length, | |
| style: /top/.test(f.getAttribute("style")), | |
| hrefNormalized: "/a" === f.getAttribute("href"), | |
| opacity: /^0.5/.test(f.style.opacity), | |
| cssFloat: !!f.style.cssFloat, | |
| checkOn: !!e.value, | |
| optSelected: h.selected, | |
| enctype: !!q.createElement("form").enctype, | |
| html5Clone: | |
| "<:nav></:nav>" !== q.createElement("nav").cloneNode(!0).outerHTML, | |
| boxModel: "CSS1Compat" === q.compatMode, | |
| deleteExpando: !0, | |
| noCloneEvent: !0, | |
| inlineBlockNeedsLayout: !1, | |
| shrinkWrapBlocks: !1, | |
| reliableMarginRight: !0, | |
| boxSizingReliable: !0, | |
| pixelPosition: !1, | |
| }; | |
| e.checked = !0; | |
| k.noCloneChecked = e.cloneNode(!0).checked; | |
| g.disabled = !0; | |
| k.optDisabled = !h.disabled; | |
| try { | |
| delete d.test; | |
| } catch (l) { | |
| k.deleteExpando = !1; | |
| } | |
| e = q.createElement("input"); | |
| e.setAttribute("value", ""); | |
| k.input = "" === e.getAttribute("value"); | |
| e.value = "t"; | |
| e.setAttribute("type", "radio"); | |
| k.radioValue = "t" === e.value; | |
| e.setAttribute("checked", "t"); | |
| e.setAttribute("name", "t"); | |
| f = q.createDocumentFragment(); | |
| f.appendChild(e); | |
| k.appendChecked = e.checked; | |
| k.checkClone = f.cloneNode(!0).cloneNode(!0).lastChild.checked; | |
| d.attachEvent && | |
| (d.attachEvent("onclick", function () { | |
| k.noCloneEvent = !1; | |
| }), | |
| d.cloneNode(!0).click()); | |
| for (b in { | |
| submit: !0, | |
| change: !0, | |
| focusin: !0, | |
| }) | |
| d.setAttribute((f = "on" + b), "t"), | |
| (k[b + "Bubbles"] = f in r || !1 === d.attributes[f].expando); | |
| d.style.backgroundClip = "content-box"; | |
| d.cloneNode(!0).style.backgroundClip = ""; | |
| k.clearCloneStyle = "content-box" === d.style.backgroundClip; | |
| c(function () { | |
| var b = q.getElementsByTagName("body")[0]; | |
| if (b) { | |
| var c = q.createElement("div"); | |
| c.style.cssText = | |
| "border:0;width:0;height:0;position:absolute;top:0;left:-9999px;margin-top:1px"; | |
| b.appendChild(c).appendChild(d); | |
| d.innerHTML = "<table><tr><td></td><td>t</td></tr></table>"; | |
| var e = d.getElementsByTagName("td"); | |
| e[0].style.cssText = "padding:0;margin:0;border:0;display:none"; | |
| a = 0 === e[0].offsetHeight; | |
| e[0].style.display = ""; | |
| e[1].style.display = "none"; | |
| k.reliableHiddenOffsets = a && 0 === e[0].offsetHeight; | |
| d.innerHTML = ""; | |
| d.style.cssText = | |
| "box-sizing:border-box;-moz-box-sizing:border-box;-webkit-box-sizing:border-box;padding:1px;border:1px;display:block;width:4px;margin-top:1%;position:absolute;top:1%;"; | |
| k.boxSizing = 4 === d.offsetWidth; | |
| k.doesNotIncludeMarginInBodyOffset = 1 !== b.offsetTop; | |
| r.getComputedStyle && | |
| ((k.pixelPosition = "1%" !== (r.getComputedStyle(d, null) || {}).top), | |
| (k.boxSizingReliable = | |
| "4px" === | |
| ( | |
| r.getComputedStyle(d, null) || { | |
| width: "4px", | |
| } | |
| ).width), | |
| (e = d.appendChild(q.createElement("div"))), | |
| (e.style.cssText = d.style.cssText = | |
| "padding:0;margin:0;border:0;display:block;box-sizing:content-box;-moz-box-sizing:content-box;-webkit-box-sizing:content-box;"), | |
| (e.style.marginRight = e.style.width = "0"), | |
| (d.style.width = "1px"), | |
| (k.reliableMarginRight = !parseFloat( | |
| (r.getComputedStyle(e, null) || {}).marginRight | |
| ))); | |
| typeof d.style.zoom !== H && | |
| ((d.style.cssText = | |
| "padding:0;margin:0;border:0;display:block;box-sizing:content-box;-moz-box-sizing:content-box;-webkit-box-sizing:content-box;width:1px;padding:1px;display:inline;zoom:1"), | |
| (k.inlineBlockNeedsLayout = 3 === d.offsetWidth), | |
| (d.style.display = "block"), | |
| (d.innerHTML = "<div></div>"), | |
| (d.firstChild.style.width = "5px"), | |
| (k.shrinkWrapBlocks = 3 !== d.offsetWidth), | |
| k.inlineBlockNeedsLayout && (b.style.zoom = 1)); | |
| b.removeChild(c); | |
| d = null; | |
| } | |
| }); | |
| e = g = f = h = f = e = null; | |
| return k; | |
| })(); | |
| var Ub = /(?:\{[\s\S]*\}|\[[\s\S]*\])$/, | |
| Tb = /([A-Z])/g; | |
| c.extend({ | |
| cache: {}, | |
| expando: "jQuery" + ("2.0" + Math.random()).replace(/\D/g, ""), | |
| noData: { | |
| embed: !0, | |
| object: "clsid:D27CDB6E-AE6D-11cf-96B8-444553540000", | |
| applet: !0, | |
| }, | |
| hasData: function (a) { | |
| a = a.nodeType ? c.cache[a[c.expando]] : a[c.expando]; | |
| return !!a && !Ca(a); | |
| }, | |
| data: function (a, b, c) { | |
| return Wa(a, b, c); | |
| }, | |
| removeData: function (a, b) { | |
| return Xa(a, b); | |
| }, | |
| _data: function (a, b, c) { | |
| return Wa(a, b, c, !0); | |
| }, | |
| _removeData: function (a, b) { | |
| return Xa(a, b, !0); | |
| }, | |
| acceptData: function (a) { | |
| if (a.nodeType && 1 !== a.nodeType && 9 !== a.nodeType) return !1; | |
| var b = a.nodeName && c.noData[a.nodeName.toLowerCase()]; | |
| return !b || (!0 !== b && a.getAttribute("classid") === b); | |
| }, | |
| }); | |
| c.fn.extend({ | |
| data: function (a, b) { | |
| var d, | |
| e = this[0], | |
| f = 0, | |
| g = null; | |
| if (a === n) { | |
| if ( | |
| this.length && | |
| ((g = c.data(e)), 1 === e.nodeType && !c._data(e, "parsedAttrs")) | |
| ) { | |
| for (d = e.attributes; f < d.length; f++) { | |
| var h = d[f].name; | |
| h.indexOf("data-") || | |
| ((h = c.camelCase(h.slice(5))), Ya(e, h, g[h])); | |
| } | |
| c._data(e, "parsedAttrs", !0); | |
| } | |
| return g; | |
| } | |
| return "object" === typeof a | |
| ? this.each(function () { | |
| c.data(this, a); | |
| }) | |
| : c.access( | |
| this, | |
| function (b) { | |
| if (b === n) return e ? Ya(e, a, c.data(e, a)) : null; | |
| this.each(function () { | |
| c.data(this, a, b); | |
| }); | |
| }, | |
| null, | |
| b, | |
| 1 < arguments.length, | |
| null, | |
| !0 | |
| ); | |
| }, | |
| removeData: function (a) { | |
| return this.each(function () { | |
| c.removeData(this, a); | |
| }); | |
| }, | |
| }); | |
| c.extend({ | |
| queue: function (a, b, d) { | |
| if (a) { | |
| b = (b || "fx") + "queue"; | |
| var e = c._data(a, b); | |
| d && | |
| (!e || c.isArray(d) | |
| ? (e = c._data(a, b, c.makeArray(d))) | |
| : e.push(d)); | |
| return e || []; | |
| } | |
| }, | |
| dequeue: function (a, b) { | |
| b = b || "fx"; | |
| var d = c.queue(a, b), | |
| e = d.length, | |
| f = d.shift(), | |
| g = c._queueHooks(a, b), | |
| h = function () { | |
| c.dequeue(a, b); | |
| }; | |
| "inprogress" === f && ((f = d.shift()), e--); | |
| if ((g.cur = f)) | |
| "fx" === b && d.unshift("inprogress"), delete g.stop, f.call(a, h, g); | |
| !e && g && g.empty.fire(); | |
| }, | |
| _queueHooks: function (a, b) { | |
| var d = b + "queueHooks"; | |
| return ( | |
| c._data(a, d) || | |
| c._data(a, d, { | |
| empty: c.Callbacks("once memory").add(function () { | |
| c._removeData(a, b + "queue"); | |
| c._removeData(a, d); | |
| }), | |
| }) | |
| ); | |
| }, | |
| }); | |
| c.fn.extend({ | |
| queue: function (a, b) { | |
| var d = 2; | |
| "string" !== typeof a && ((b = a), (a = "fx"), d--); | |
| return arguments.length < d | |
| ? c.queue(this[0], a) | |
| : b === n | |
| ? this | |
| : this.each(function () { | |
| var d = c.queue(this, a, b); | |
| c._queueHooks(this, a); | |
| "fx" === a && "inprogress" !== d[0] && c.dequeue(this, a); | |
| }); | |
| }, | |
| dequeue: function (a) { | |
| return this.each(function () { | |
| c.dequeue(this, a); | |
| }); | |
| }, | |
| delay: function (a, b) { | |
| a = c.fx ? c.fx.speeds[a] || a : a; | |
| return this.queue(b || "fx", function (b, c) { | |
| var d = setTimeout(b, a); | |
| c.stop = function () { | |
| clearTimeout(d); | |
| }; | |
| }); | |
| }, | |
| clearQueue: function (a) { | |
| return this.queue(a || "fx", []); | |
| }, | |
| promise: function (a, b) { | |
| var d, | |
| e = 1, | |
| f = c.Deferred(), | |
| g = this, | |
| h = this.length, | |
| k = function () { | |
| --e || f.resolveWith(g, [g]); | |
| }; | |
| "string" !== typeof a && ((b = a), (a = n)); | |
| for (a = a || "fx"; h--; ) | |
| (d = c._data(g[h], a + "queueHooks")) && | |
| d.empty && | |
| (e++, d.empty.add(k)); | |
| k(); | |
| return f.promise(b); | |
| }, | |
| }); | |
| var Ka = /[\t\r\n]/g, | |
| rc = /\r/g, | |
| sc = /^(?:input|select|textarea|button|object)$/i, | |
| tc = /^(?:a|area)$/i, | |
| zb = | |
| /^(?:checked|selected|autofocus|autoplay|async|controls|defer|disabled|hidden|loop|multiple|open|readonly|required|scoped)$/i, | |
| La = /^(?:checked|selected)$/i, | |
| P = c.support.getSetAttribute, | |
| Ma = c.support.input; | |
| c.fn.extend({ | |
| attr: function (a, b) { | |
| return c.access(this, c.attr, a, b, 1 < arguments.length); | |
| }, | |
| removeAttr: function (a) { | |
| return this.each(function () { | |
| c.removeAttr(this, a); | |
| }); | |
| }, | |
| prop: function (a, b) { | |
| return c.access(this, c.prop, a, b, 1 < arguments.length); | |
| }, | |
| removeProp: function (a) { | |
| a = c.propFix[a] || a; | |
| return this.each(function () { | |
| try { | |
| (this[a] = n), delete this[a]; | |
| } catch (b) {} | |
| }); | |
| }, | |
| addClass: function (a) { | |
| var b, | |
| d, | |
| e, | |
| f = 0, | |
| g = this.length; | |
| var h = "string" === typeof a && a; | |
| if (c.isFunction(a)) | |
| return this.each(function (b) { | |
| c(this).addClass(a.call(this, b, this.className)); | |
| }); | |
| if (h) | |
| for (h = (a || "").match(R) || []; f < g; f++) { | |
| var k = this[f]; | |
| if ( | |
| (b = | |
| 1 === k.nodeType && | |
| (k.className ? (" " + k.className + " ").replace(Ka, " ") : " ")) | |
| ) { | |
| for (e = 0; (d = h[e++]); ) | |
| 0 > b.indexOf(" " + d + " ") && (b += d + " "); | |
| k.className = c.trim(b); | |
| } | |
| } | |
| return this; | |
| }, | |
| removeClass: function (a) { | |
| var b, | |
| d, | |
| e, | |
| f = 0, | |
| g = this.length; | |
| var h = 0 === arguments.length || ("string" === typeof a && a); | |
| if (c.isFunction(a)) | |
| return this.each(function (b) { | |
| c(this).removeClass(a.call(this, b, this.className)); | |
| }); | |
| if (h) | |
| for (h = (a || "").match(R) || []; f < g; f++) { | |
| var k = this[f]; | |
| if ( | |
| (b = | |
| 1 === k.nodeType && | |
| (k.className ? (" " + k.className + " ").replace(Ka, " ") : "")) | |
| ) { | |
| for (e = 0; (d = h[e++]); ) | |
| for (; 0 <= b.indexOf(" " + d + " "); ) | |
| b = b.replace(" " + d + " ", " "); | |
| k.className = a ? c.trim(b) : ""; | |
| } | |
| } | |
| return this; | |
| }, | |
| toggleClass: function (a, b) { | |
| var d = typeof a, | |
| e = "boolean" === typeof b; | |
| return c.isFunction(a) | |
| ? this.each(function (d) { | |
| c(this).toggleClass(a.call(this, d, this.className, b), b); | |
| }) | |
| : this.each(function () { | |
| if ("string" === d) | |
| for ( | |
| var f, g = 0, h = c(this), k = b, l = a.match(R) || []; | |
| (f = l[g++]); | |
| ) | |
| (k = e ? k : !h.hasClass(f)), | |
| h[k ? "addClass" : "removeClass"](f); | |
| else if (d === H || "boolean" === d) | |
| this.className && c._data(this, "__className__", this.className), | |
| (this.className = | |
| this.className || !1 === a | |
| ? "" | |
| : c._data(this, "__className__") || ""); | |
| }); | |
| }, | |
| hasClass: function (a) { | |
| a = " " + a + " "; | |
| for (var b = 0, c = this.length; b < c; b++) | |
| if ( | |
| 1 === this[b].nodeType && | |
| 0 <= (" " + this[b].className + " ").replace(Ka, " ").indexOf(a) | |
| ) | |
| return !0; | |
| return !1; | |
| }, | |
| val: function (a) { | |
| var b, | |
| d, | |
| e = this[0]; | |
| if (arguments.length) { | |
| var f = c.isFunction(a); | |
| return this.each(function (b) { | |
| var e = c(this); | |
| 1 === this.nodeType && | |
| ((b = f ? a.call(this, b, e.val()) : a), | |
| null == b | |
| ? (b = "") | |
| : "number" === typeof b | |
| ? (b += "") | |
| : c.isArray(b) && | |
| (b = c.map(b, function (a) { | |
| return null == a ? "" : a + ""; | |
| })), | |
| (d = | |
| c.valHooks[this.type] || c.valHooks[this.nodeName.toLowerCase()]), | |
| (d && "set" in d && d.set(this, b, "value") !== n) || | |
| (this.value = b)); | |
| }); | |
| } | |
| if (e) { | |
| if ( | |
| (d = c.valHooks[e.type] || c.valHooks[e.nodeName.toLowerCase()]) && | |
| "get" in d && | |
| (b = d.get(e, "value")) !== n | |
| ) | |
| return b; | |
| b = e.value; | |
| return "string" === typeof b ? b.replace(rc, "") : null == b ? "" : b; | |
| } | |
| }, | |
| }); | |
| c.extend({ | |
| valHooks: { | |
| option: { | |
| get: function (a) { | |
| var b = a.attributes.value; | |
| return !b || b.specified ? a.value : a.text; | |
| }, | |
| }, | |
| select: { | |
| get: function (a) { | |
| for ( | |
| var b, | |
| d = a.options, | |
| e = a.selectedIndex, | |
| f = (a = "select-one" === a.type || 0 > e) ? null : [], | |
| g = a ? e + 1 : d.length, | |
| h = 0 > e ? g : a ? e : 0; | |
| h < g; | |
| h++ | |
| ) | |
| if ( | |
| ((b = d[h]), | |
| !( | |
| (!b.selected && h !== e) || | |
| (c.support.optDisabled | |
| ? b.disabled | |
| : null !== b.getAttribute("disabled")) || | |
| (b.parentNode.disabled && c.nodeName(b.parentNode, "optgroup")) | |
| )) | |
| ) { | |
| b = c(b).val(); | |
| if (a) return b; | |
| f.push(b); | |
| } | |
| return f; | |
| }, | |
| set: function (a, b) { | |
| var d = c.makeArray(b); | |
| c(a) | |
| .find("option") | |
| .each(function () { | |
| this.selected = 0 <= c.inArray(c(this).val(), d); | |
| }); | |
| d.length || (a.selectedIndex = -1); | |
| return d; | |
| }, | |
| }, | |
| }, | |
| attr: function (a, b, d) { | |
| var e; | |
| var f = a.nodeType; | |
| if (a && 3 !== f && 8 !== f && 2 !== f) { | |
| if (typeof a.getAttribute === H) return c.prop(a, b, d); | |
| if ((f = 1 !== f || !c.isXMLDoc(a))) { | |
| b = b.toLowerCase(); | |
| var g = c.attrHooks[b] || (zb.test(b) ? uc : oa); | |
| } | |
| if (d !== n) | |
| if (null === d) c.removeAttr(a, b); | |
| else { | |
| if (g && f && "set" in g && (e = g.set(a, d, b)) !== n) return e; | |
| a.setAttribute(b, d + ""); | |
| return d; | |
| } | |
| else { | |
| if (g && f && "get" in g && null !== (e = g.get(a, b))) return e; | |
| typeof a.getAttribute !== H && (e = a.getAttribute(b)); | |
| return null == e ? n : e; | |
| } | |
| } | |
| }, | |
| removeAttr: function (a, b) { | |
| var d = 0, | |
| e = b && b.match(R); | |
| if (e && 1 === a.nodeType) | |
| for (; (b = e[d++]); ) { | |
| var f = c.propFix[b] || b; | |
| zb.test(b) | |
| ? !P && La.test(b) | |
| ? (a[c.camelCase("default-" + b)] = a[f] = !1) | |
| : (a[f] = !1) | |
| : c.attr(a, b, ""); | |
| a.removeAttribute(P ? b : f); | |
| } | |
| }, | |
| attrHooks: { | |
| type: { | |
| set: function (a, b) { | |
| if ( | |
| !c.support.radioValue && | |
| "radio" === b && | |
| c.nodeName(a, "input") | |
| ) { | |
| var d = a.value; | |
| a.setAttribute("type", b); | |
| d && (a.value = d); | |
| return b; | |
| } | |
| }, | |
| }, | |
| }, | |
| propFix: { | |
| tabindex: "tabIndex", | |
| readonly: "readOnly", | |
| for: "htmlFor", | |
| class: "className", | |
| maxlength: "maxLength", | |
| cellspacing: "cellSpacing", | |
| cellpadding: "cellPadding", | |
| rowspan: "rowSpan", | |
| colspan: "colSpan", | |
| usemap: "useMap", | |
| frameborder: "frameBorder", | |
| contenteditable: "contentEditable", | |
| }, | |
| prop: function (a, b, d) { | |
| var e, | |
| f = a.nodeType; | |
| if (a && 3 !== f && 8 !== f && 2 !== f) { | |
| if (1 !== f || !c.isXMLDoc(a)) { | |
| b = c.propFix[b] || b; | |
| var g = c.propHooks[b]; | |
| } | |
| return d !== n | |
| ? g && "set" in g && (e = g.set(a, d, b)) !== n | |
| ? e | |
| : (a[b] = d) | |
| : g && "get" in g && null !== (e = g.get(a, b)) | |
| ? e | |
| : a[b]; | |
| } | |
| }, | |
| propHooks: { | |
| tabIndex: { | |
| get: function (a) { | |
| var b = a.getAttributeNode("tabindex"); | |
| return b && b.specified | |
| ? parseInt(b.value, 10) | |
| : sc.test(a.nodeName) || (tc.test(a.nodeName) && a.href) | |
| ? 0 | |
| : n; | |
| }, | |
| }, | |
| }, | |
| }); | |
| var uc = { | |
| get: function (a, b) { | |
| var d = c.prop(a, b), | |
| e = "boolean" === typeof d && a.getAttribute(b); | |
| return (a = | |
| "boolean" === typeof d | |
| ? Ma && P | |
| ? null != e | |
| : La.test(b) | |
| ? a[c.camelCase("default-" + b)] | |
| : !!e | |
| : a.getAttributeNode(b)) && !1 !== a.value | |
| ? b.toLowerCase() | |
| : n; | |
| }, | |
| set: function (a, b, d) { | |
| !1 === b | |
| ? c.removeAttr(a, d) | |
| : (Ma && P) || !La.test(d) | |
| ? a.setAttribute((!P && c.propFix[d]) || d, d) | |
| : (a[c.camelCase("default-" + d)] = a[d] = !0); | |
| return d; | |
| }, | |
| }; | |
| (Ma && P) || | |
| (c.attrHooks.value = { | |
| get: function (a, b) { | |
| b = a.getAttributeNode(b); | |
| return c.nodeName(a, "input") | |
| ? a.defaultValue | |
| : b && b.specified | |
| ? b.value | |
| : n; | |
| }, | |
| set: function (a, b, d) { | |
| if (c.nodeName(a, "input")) a.defaultValue = b; | |
| else return oa && oa.set(a, b, d); | |
| }, | |
| }); | |
| if (!P) { | |
| var oa = (c.valHooks.button = { | |
| get: function (a, b) { | |
| return (a = a.getAttributeNode(b)) && | |
| ("id" === b || "name" === b || "coords" === b | |
| ? "" !== a.value | |
| : a.specified) | |
| ? a.value | |
| : n; | |
| }, | |
| set: function (a, b, c) { | |
| var d = a.getAttributeNode(c); | |
| d || a.setAttributeNode((d = a.ownerDocument.createAttribute(c))); | |
| d.value = b += ""; | |
| return "value" === c || b === a.getAttribute(c) ? b : n; | |
| }, | |
| }); | |
| c.attrHooks.contenteditable = { | |
| get: oa.get, | |
| set: function (a, b, c) { | |
| oa.set(a, "" === b ? !1 : b, c); | |
| }, | |
| }; | |
| c.each(["width", "height"], function (a, b) { | |
| c.attrHooks[b] = c.extend(c.attrHooks[b], { | |
| set: function (a, c) { | |
| if ("" === c) return a.setAttribute(b, "auto"), c; | |
| }, | |
| }); | |
| }); | |
| } | |
| c.support.hrefNormalized || | |
| (c.each(["href", "src", "width", "height"], function (a, b) { | |
| c.attrHooks[b] = c.extend(c.attrHooks[b], { | |
| get: function (a) { | |
| a = a.getAttribute(b, 2); | |
| return null == a ? n : a; | |
| }, | |
| }); | |
| }), | |
| c.each(["href", "src"], function (a, b) { | |
| c.propHooks[b] = { | |
| get: function (a) { | |
| return a.getAttribute(b, 4); | |
| }, | |
| }; | |
| })); | |
| c.support.style || | |
| (c.attrHooks.style = { | |
| get: function (a) { | |
| return a.style.cssText || n; | |
| }, | |
| set: function (a, b) { | |
| return (a.style.cssText = b + ""); | |
| }, | |
| }); | |
| c.support.optSelected || | |
| (c.propHooks.selected = c.extend(c.propHooks.selected, { | |
| get: function (a) { | |
| if ((a = a.parentNode)) | |
| a.selectedIndex, a.parentNode && a.parentNode.selectedIndex; | |
| return null; | |
| }, | |
| })); | |
| c.support.enctype || (c.propFix.enctype = "encoding"); | |
| c.support.checkOn || | |
| c.each(["radio", "checkbox"], function () { | |
| c.valHooks[this] = { | |
| get: function (a) { | |
| return null === a.getAttribute("value") ? "on" : a.value; | |
| }, | |
| }; | |
| }); | |
| c.each(["radio", "checkbox"], function () { | |
| c.valHooks[this] = c.extend(c.valHooks[this], { | |
| set: function (a, b) { | |
| if (c.isArray(b)) return (a.checked = 0 <= c.inArray(c(a).val(), b)); | |
| }, | |
| }); | |
| }); | |
| var Na = /^(?:input|select|textarea)$/i, | |
| vc = /^key/, | |
| wc = /^(?:mouse|contextmenu)|click/, | |
| Ab = /^(?:focusinfocus|focusoutblur)$/, | |
| Bb = /^([^.]*)(?:\.(.+)|)$/; | |
| c.event = { | |
| global: {}, | |
| add: function (a, b, d, e, f) { | |
| var g, h, k, l, m; | |
| if ((h = c._data(a))) { | |
| if (d.handler) { | |
| var t = d; | |
| d = t.handler; | |
| f = t.selector; | |
| } | |
| d.guid || (d.guid = c.guid++); | |
| (g = h.events) || (g = h.events = {}); | |
| (k = h.handle) || | |
| ((k = h.handle = | |
| function (a) { | |
| return typeof c === H || (a && c.event.triggered === a.type) | |
| ? n | |
| : c.event.dispatch.apply(k.elem, arguments); | |
| }), | |
| (k.elem = a)); | |
| b = (b || "").match(R) || [""]; | |
| for (h = b.length; h--; ) { | |
| var p = Bb.exec(b[h]) || []; | |
| var u = (l = p[1]); | |
| var q = (p[2] || "").split(".").sort(); | |
| p = c.event.special[u] || {}; | |
| u = (f ? p.delegateType : p.bindType) || u; | |
| p = c.event.special[u] || {}; | |
| l = c.extend( | |
| { | |
| type: u, | |
| origType: l, | |
| data: e, | |
| handler: d, | |
| guid: d.guid, | |
| selector: f, | |
| needsContext: f && c.expr.match.needsContext.test(f), | |
| namespace: q.join("."), | |
| }, | |
| t | |
| ); | |
| (m = g[u]) || | |
| ((m = g[u] = []), | |
| (m.delegateCount = 0), | |
| (p.setup && !1 !== p.setup.call(a, e, q, k)) || | |
| (a.addEventListener | |
| ? a.addEventListener(u, k, !1) | |
| : a.attachEvent && a.attachEvent("on" + u, k))); | |
| p.add && | |
| (p.add.call(a, l), l.handler.guid || (l.handler.guid = d.guid)); | |
| f ? m.splice(m.delegateCount++, 0, l) : m.push(l); | |
| c.event.global[u] = !0; | |
| } | |
| a = null; | |
| } | |
| }, | |
| remove: function (a, b, d, e, f) { | |
| var g, | |
| h, | |
| k, | |
| l, | |
| m, | |
| n = c.hasData(a) && c._data(a); | |
| if (n && (l = n.events)) { | |
| b = (b || "").match(R) || [""]; | |
| for (k = b.length; k--; ) { | |
| var p = Bb.exec(b[k]) || []; | |
| var u = (m = p[1]); | |
| var q = (p[2] || "").split(".").sort(); | |
| if (u) { | |
| var r = c.event.special[u] || {}; | |
| u = (e ? r.delegateType : r.bindType) || u; | |
| var x = l[u] || []; | |
| p = | |
| p[2] && | |
| new RegExp("(^|\\.)" + q.join("\\.(?:.*\\.|)") + "(\\.|$)"); | |
| for (h = g = x.length; g--; ) { | |
| var D = x[g]; | |
| (!f && m !== D.origType) || | |
| (d && d.guid !== D.guid) || | |
| (p && !p.test(D.namespace)) || | |
| (e && e !== D.selector && ("**" !== e || !D.selector)) || | |
| (x.splice(g, 1), | |
| D.selector && x.delegateCount--, | |
| r.remove && r.remove.call(a, D)); | |
| } | |
| h && | |
| !x.length && | |
| ((r.teardown && !1 !== r.teardown.call(a, q, n.handle)) || | |
| c.removeEvent(a, u, n.handle), | |
| delete l[u]); | |
| } else for (u in l) c.event.remove(a, u + b[k], d, e, !0); | |
| } | |
| c.isEmptyObject(l) && (delete n.handle, c._removeData(a, "events")); | |
| } | |
| }, | |
| trigger: function (a, b, d, e) { | |
| var f, | |
| g, | |
| h = [d || q], | |
| k = na.call(a, "type") ? a.type : a; | |
| var l = na.call(a, "namespace") ? a.namespace.split(".") : []; | |
| var m = (f = d = d || q); | |
| if ( | |
| 3 !== d.nodeType && | |
| 8 !== d.nodeType && | |
| !Ab.test(k + c.event.triggered) | |
| ) { | |
| 0 <= k.indexOf(".") && ((l = k.split(".")), (k = l.shift()), l.sort()); | |
| var t = 0 > k.indexOf(":") && "on" + k; | |
| a = a[c.expando] ? a : new c.Event(k, "object" === typeof a && a); | |
| a.isTrigger = !0; | |
| a.namespace = l.join("."); | |
| a.namespace_re = a.namespace | |
| ? new RegExp("(^|\\.)" + l.join("\\.(?:.*\\.|)") + "(\\.|$)") | |
| : null; | |
| a.result = n; | |
| a.target || (a.target = d); | |
| b = null == b ? [a] : c.makeArray(b, [a]); | |
| l = c.event.special[k] || {}; | |
| if (e || !l.trigger || !1 !== l.trigger.apply(d, b)) { | |
| if (!e && !l.noBubble && !c.isWindow(d)) { | |
| var p = l.delegateType || k; | |
| Ab.test(p + k) || (m = m.parentNode); | |
| for (; m; m = m.parentNode) h.push(m), (f = m); | |
| f === (d.ownerDocument || q) && | |
| h.push(f.defaultView || f.parentWindow || r); | |
| } | |
| for (g = 0; (m = h[g++]) && !a.isPropagationStopped(); ) | |
| (a.type = 1 < g ? p : l.bindType || k), | |
| (f = | |
| (c._data(m, "events") || {})[a.type] && c._data(m, "handle")) && | |
| f.apply(m, b), | |
| (f = t && m[t]) && | |
| c.acceptData(m) && | |
| f.apply && | |
| !1 === f.apply(m, b) && | |
| a.preventDefault(); | |
| a.type = k; | |
| if ( | |
| !( | |
| e || | |
| a.isDefaultPrevented() || | |
| (l._default && !1 !== l._default.apply(d.ownerDocument, b)) || | |
| ("click" === k && c.nodeName(d, "a")) | |
| ) && | |
| c.acceptData(d) && | |
| t && | |
| d[k] && | |
| !c.isWindow(d) | |
| ) { | |
| (f = d[t]) && (d[t] = null); | |
| c.event.triggered = k; | |
| try { | |
| d[k](); | |
| } catch (u) {} | |
| c.event.triggered = n; | |
| f && (d[t] = f); | |
| } | |
| return a.result; | |
| } | |
| } | |
| }, | |
| dispatch: function (a) { | |
| a = c.event.fix(a); | |
| var b, | |
| d, | |
| e, | |
| f = O.call(arguments); | |
| var g = (c._data(this, "events") || {})[a.type] || []; | |
| var h = c.event.special[a.type] || {}; | |
| f[0] = a; | |
| a.delegateTarget = this; | |
| if (!h.preDispatch || !1 !== h.preDispatch.call(this, a)) { | |
| var k = c.event.handlers.call(this, a, g); | |
| for (g = 0; (d = k[g++]) && !a.isPropagationStopped(); ) | |
| for ( | |
| a.currentTarget = d.elem, e = 0; | |
| (b = d.handlers[e++]) && !a.isImmediatePropagationStopped(); | |
| ) | |
| if (!a.namespace_re || a.namespace_re.test(b.namespace)) | |
| (a.handleObj = b), | |
| (a.data = b.data), | |
| (b = ( | |
| (c.event.special[b.origType] || {}).handle || b.handler | |
| ).apply(d.elem, f)), | |
| b !== n && | |
| !1 === (a.result = b) && | |
| (a.preventDefault(), a.stopPropagation()); | |
| h.postDispatch && h.postDispatch.call(this, a); | |
| return a.result; | |
| } | |
| }, | |
| handlers: function (a, b) { | |
| var d, | |
| e = [], | |
| f = b.delegateCount, | |
| g = a.target; | |
| if (f && g.nodeType && (!a.button || "click" !== a.type)) | |
| for (; g != this; g = g.parentNode || this) | |
| if (1 === g.nodeType && (!0 !== g.disabled || "click" !== a.type)) { | |
| var h = []; | |
| for (d = 0; d < f; d++) { | |
| var k = b[d]; | |
| var l = k.selector + " "; | |
| h[l] === n && | |
| (h[l] = k.needsContext | |
| ? 0 <= c(l, this).index(g) | |
| : c.find(l, this, null, [g]).length); | |
| h[l] && h.push(k); | |
| } | |
| h.length && | |
| e.push({ | |
| elem: g, | |
| handlers: h, | |
| }); | |
| } | |
| f < b.length && | |
| e.push({ | |
| elem: this, | |
| handlers: b.slice(f), | |
| }); | |
| return e; | |
| }, | |
| fix: function (a) { | |
| if (a[c.expando]) return a; | |
| var b = a.type; | |
| var d = a, | |
| e = this.fixHooks[b]; | |
| e || | |
| (this.fixHooks[b] = e = | |
| wc.test(b) ? this.mouseHooks : vc.test(b) ? this.keyHooks : {}); | |
| var f = e.props ? this.props.concat(e.props) : this.props; | |
| a = new c.Event(d); | |
| for (b = f.length; b--; ) { | |
| var g = f[b]; | |
| a[g] = d[g]; | |
| } | |
| a.target || (a.target = d.srcElement || q); | |
| 3 === a.target.nodeType && (a.target = a.target.parentNode); | |
| a.metaKey = !!a.metaKey; | |
| return e.filter ? e.filter(a, d) : a; | |
| }, | |
| props: | |
| "altKey bubbles cancelable ctrlKey currentTarget eventPhase metaKey relatedTarget shiftKey target timeStamp view which".split( | |
| " " | |
| ), | |
| fixHooks: {}, | |
| keyHooks: { | |
| props: ["char", "charCode", "key", "keyCode"], | |
| filter: function (a, b) { | |
| null == a.which && | |
| (a.which = null != b.charCode ? b.charCode : b.keyCode); | |
| return a; | |
| }, | |
| }, | |
| mouseHooks: { | |
| props: | |
| "button buttons clientX clientY fromElement offsetX offsetY pageX pageY screenX screenY toElement".split( | |
| " " | |
| ), | |
| filter: function (a, b) { | |
| var c = b.button, | |
| e = b.fromElement; | |
| if (null == a.pageX && null != b.clientX) { | |
| var f = a.target.ownerDocument || q; | |
| var g = f.documentElement; | |
| f = f.body; | |
| a.pageX = | |
| b.clientX + | |
| ((g && g.scrollLeft) || (f && f.scrollLeft) || 0) - | |
| ((g && g.clientLeft) || (f && f.clientLeft) || 0); | |
| a.pageY = | |
| b.clientY + | |
| ((g && g.scrollTop) || (f && f.scrollTop) || 0) - | |
| ((g && g.clientTop) || (f && f.clientTop) || 0); | |
| } | |
| !a.relatedTarget && | |
| e && | |
| (a.relatedTarget = e === a.target ? b.toElement : e); | |
| a.which || c === n || (a.which = c & 1 ? 1 : c & 2 ? 3 : c & 4 ? 2 : 0); | |
| return a; | |
| }, | |
| }, | |
| special: { | |
| load: { | |
| noBubble: !0, | |
| }, | |
| click: { | |
| trigger: function () { | |
| if ( | |
| c.nodeName(this, "input") && | |
| "checkbox" === this.type && | |
| this.click | |
| ) | |
| return this.click(), !1; | |
| }, | |
| }, | |
| focus: { | |
| trigger: function () { | |
| if (this !== q.activeElement && this.focus) | |
| try { | |
| return this.focus(), !1; | |
| } catch (a) {} | |
| }, | |
| delegateType: "focusin", | |
| }, | |
| blur: { | |
| trigger: function () { | |
| if (this === q.activeElement && this.blur) return this.blur(), !1; | |
| }, | |
| delegateType: "focusout", | |
| }, | |
| beforeunload: { | |
| postDispatch: function (a) { | |
| a.result !== n && (a.originalEvent.returnValue = a.result); | |
| }, | |
| }, | |
| }, | |
| simulate: function (a, b, d, e) { | |
| a = c.extend(new c.Event(), d, { | |
| type: a, | |
| isSimulated: !0, | |
| originalEvent: {}, | |
| }); | |
| e ? c.event.trigger(a, null, b) : c.event.dispatch.call(b, a); | |
| a.isDefaultPrevented() && d.preventDefault(); | |
| }, | |
| }; | |
| c.removeEvent = q.removeEventListener | |
| ? function (a, b, c) { | |
| a.removeEventListener && a.removeEventListener(b, c, !1); | |
| } | |
| : function (a, b, c) { | |
| b = "on" + b; | |
| a.detachEvent && | |
| (typeof a[b] === H && (a[b] = null), a.detachEvent(b, c)); | |
| }; | |
| c.Event = function (a, b) { | |
| if (!(this instanceof c.Event)) return new c.Event(a, b); | |
| a && a.type | |
| ? ((this.originalEvent = a), | |
| (this.type = a.type), | |
| (this.isDefaultPrevented = | |
| a.defaultPrevented || | |
| !1 === a.returnValue || | |
| (a.getPreventDefault && a.getPreventDefault()) | |
| ? qa | |
| : W)) | |
| : (this.type = a); | |
| b && c.extend(this, b); | |
| this.timeStamp = (a && a.timeStamp) || c.now(); | |
| this[c.expando] = !0; | |
| }; | |
| c.Event.prototype = { | |
| isDefaultPrevented: W, | |
| isPropagationStopped: W, | |
| isImmediatePropagationStopped: W, | |
| preventDefault: function () { | |
| var a = this.originalEvent; | |
| this.isDefaultPrevented = qa; | |
| a && (a.preventDefault ? a.preventDefault() : (a.returnValue = !1)); | |
| }, | |
| stopPropagation: function () { | |
| var a = this.originalEvent; | |
| this.isPropagationStopped = qa; | |
| a && (a.stopPropagation && a.stopPropagation(), (a.cancelBubble = !0)); | |
| }, | |
| stopImmediatePropagation: function () { | |
| this.isImmediatePropagationStopped = qa; | |
| this.stopPropagation(); | |
| }, | |
| }; | |
| c.each( | |
| { | |
| mouseenter: "mouseover", | |
| mouseleave: "mouseout", | |
| }, | |
| function (a, b) { | |
| c.event.special[a] = { | |
| delegateType: b, | |
| bindType: b, | |
| handle: function (a) { | |
| var d = a.relatedTarget, | |
| f = a.handleObj; | |
| if (!d || (d !== this && !c.contains(this, d))) { | |
| a.type = f.origType; | |
| var g = f.handler.apply(this, arguments); | |
| a.type = b; | |
| } | |
| return g; | |
| }, | |
| }; | |
| } | |
| ); | |
| c.support.submitBubbles || | |
| (c.event.special.submit = { | |
| setup: function () { | |
| if (c.nodeName(this, "form")) return !1; | |
| c.event.add(this, "click._submit keypress._submit", function (a) { | |
| a = a.target; | |
| (a = | |
| c.nodeName(a, "input") || c.nodeName(a, "button") ? a.form : n) && | |
| !c._data(a, "submitBubbles") && | |
| (c.event.add(a, "submit._submit", function (a) { | |
| a._submit_bubble = !0; | |
| }), | |
| c._data(a, "submitBubbles", !0)); | |
| }); | |
| }, | |
| postDispatch: function (a) { | |
| a._submit_bubble && | |
| (delete a._submit_bubble, | |
| this.parentNode && | |
| !a.isTrigger && | |
| c.event.simulate("submit", this.parentNode, a, !0)); | |
| }, | |
| teardown: function () { | |
| if (c.nodeName(this, "form")) return !1; | |
| c.event.remove(this, "._submit"); | |
| }, | |
| }); | |
| c.support.changeBubbles || | |
| (c.event.special.change = { | |
| setup: function () { | |
| if (Na.test(this.nodeName)) { | |
| if ("checkbox" === this.type || "radio" === this.type) | |
| c.event.add(this, "propertychange._change", function (a) { | |
| "checked" === a.originalEvent.propertyName && | |
| (this._just_changed = !0); | |
| }), | |
| c.event.add(this, "click._change", function (a) { | |
| this._just_changed && !a.isTrigger && (this._just_changed = !1); | |
| c.event.simulate("change", this, a, !0); | |
| }); | |
| return !1; | |
| } | |
| c.event.add(this, "beforeactivate._change", function (a) { | |
| a = a.target; | |
| Na.test(a.nodeName) && | |
| !c._data(a, "changeBubbles") && | |
| (c.event.add(a, "change._change", function (a) { | |
| !this.parentNode || | |
| a.isSimulated || | |
| a.isTrigger || | |
| c.event.simulate("change", this.parentNode, a, !0); | |
| }), | |
| c._data(a, "changeBubbles", !0)); | |
| }); | |
| }, | |
| handle: function (a) { | |
| var b = a.target; | |
| if ( | |
| this !== b || | |
| a.isSimulated || | |
| a.isTrigger || | |
| ("radio" !== b.type && "checkbox" !== b.type) | |
| ) | |
| return a.handleObj.handler.apply(this, arguments); | |
| }, | |
| teardown: function () { | |
| c.event.remove(this, "._change"); | |
| return !Na.test(this.nodeName); | |
| }, | |
| }); | |
| c.support.focusinBubbles || | |
| c.each( | |
| { | |
| focus: "focusin", | |
| blur: "focusout", | |
| }, | |
| function (a, b) { | |
| var d = 0, | |
| e = function (a) { | |
| c.event.simulate(b, a.target, c.event.fix(a), !0); | |
| }; | |
| c.event.special[b] = { | |
| setup: function () { | |
| 0 === d++ && q.addEventListener(a, e, !0); | |
| }, | |
| teardown: function () { | |
| 0 === --d && q.removeEventListener(a, e, !0); | |
| }, | |
| }; | |
| } | |
| ); | |
| c.fn.extend({ | |
| on: function (a, b, d, e, f) { | |
| var g; | |
| if ("object" === typeof a) { | |
| "string" !== typeof b && ((d = d || b), (b = n)); | |
| for (g in a) this.on(g, b, d, a[g], f); | |
| return this; | |
| } | |
| null == d && null == e | |
| ? ((e = b), (d = b = n)) | |
| : null == e && | |
| ("string" === typeof b | |
| ? ((e = d), (d = n)) | |
| : ((e = d), (d = b), (b = n))); | |
| if (!1 === e) e = W; | |
| else if (!e) return this; | |
| if (1 === f) { | |
| var h = e; | |
| e = function (a) { | |
| c().off(a); | |
| return h.apply(this, arguments); | |
| }; | |
| e.guid = h.guid || (h.guid = c.guid++); | |
| } | |
| return this.each(function () { | |
| c.event.add(this, a, e, d, b); | |
| }); | |
| }, | |
| one: function (a, b, c, e) { | |
| return this.on(a, b, c, e, 1); | |
| }, | |
| off: function (a, b, d) { | |
| if (a && a.preventDefault && a.handleObj) { | |
| var e = a.handleObj; | |
| c(a.delegateTarget).off( | |
| e.namespace ? e.origType + "." + e.namespace : e.origType, | |
| e.selector, | |
| e.handler | |
| ); | |
| return this; | |
| } | |
| if ("object" === typeof a) { | |
| for (e in a) this.off(e, b, a[e]); | |
| return this; | |
| } | |
| if (!1 === b || "function" === typeof b) (d = b), (b = n); | |
| !1 === d && (d = W); | |
| return this.each(function () { | |
| c.event.remove(this, a, d, b); | |
| }); | |
| }, | |
| bind: function (a, b, c) { | |
| return this.on(a, null, b, c); | |
| }, | |
| unbind: function (a, b) { | |
| return this.off(a, null, b); | |
| }, | |
| delegate: function (a, b, c, e) { | |
| return this.on(b, a, c, e); | |
| }, | |
| undelegate: function (a, b, c) { | |
| return 1 === arguments.length | |
| ? this.off(a, "**") | |
| : this.off(b, a || "**", c); | |
| }, | |
| trigger: function (a, b) { | |
| return this.each(function () { | |
| c.event.trigger(a, b, this); | |
| }); | |
| }, | |
| triggerHandler: function (a, b) { | |
| var d = this[0]; | |
| if (d) return c.event.trigger(a, b, d, !0); | |
| }, | |
| }); | |
| (function (a, b) { | |
| function d() { | |
| var a, | |
| b = []; | |
| return (a = function (c, d) { | |
| b.push((c += " ")) > B.cacheLength && delete a[b.shift()]; | |
| return (a[c] = d); | |
| }); | |
| } | |
| function e(a) { | |
| a[C] = !0; | |
| return a; | |
| } | |
| function f(a) { | |
| var b = I.createElement("div"); | |
| try { | |
| return a(b); | |
| } catch (v) { | |
| return !1; | |
| } finally { | |
| } | |
| } | |
| function g(a, b, c, d) { | |
| var e, f, g, h; | |
| (b ? b.ownerDocument || b : A) !== I && va(b); | |
| b = b || I; | |
| c = c || []; | |
| if (!a || "string" !== typeof a) return c; | |
| if (1 !== (h = b.nodeType) && 9 !== h) return []; | |
| if (!T && !d) { | |
| if ((e = na.exec(a))) | |
| if ((g = e[1])) | |
| if (9 === h) | |
| if ((f = b.getElementById(g)) && f.parentNode) { | |
| if (f.id === g) return c.push(f), c; | |
| } else return c; | |
| else { | |
| if ( | |
| b.ownerDocument && | |
| (f = b.ownerDocument.getElementById(g)) && | |
| wa(b, f) && | |
| f.id === g | |
| ) | |
| return c.push(f), c; | |
| } | |
| else { | |
| if (e[2]) | |
| return O.apply(c, P.call(b.getElementsByTagName(a), 0)), c; | |
| if ((g = e[3]) && z.getByClassName && b.getElementsByClassName) | |
| return O.apply(c, P.call(b.getElementsByClassName(g), 0)), c; | |
| } | |
| if (z.qsa && !Z.test(a)) { | |
| e = !0; | |
| f = C; | |
| g = b; | |
| var y = 9 === h && a; | |
| if (1 === h && "object" !== b.nodeName.toLowerCase()) { | |
| h = n(a); | |
| (e = b.getAttribute("id")) | |
| ? (f = e.replace(ra, "\\$&")) | |
| : b.setAttribute("id", f); | |
| f = "[id='" + f + "'] "; | |
| for (g = h.length; g--; ) h[g] = f + p(h[g]); | |
| g = (ca.test(a) && b.parentNode) || b; | |
| y = h.join(","); | |
| } | |
| if (y) | |
| try { | |
| return O.apply(c, P.call(g.querySelectorAll(y), 0)), c; | |
| } catch (Xc) { | |
| } finally { | |
| e || b.removeAttribute("id"); | |
| } | |
| } | |
| } | |
| var v; | |
| a: { | |
| a = a.replace(S, "$1"); | |
| f = n(a); | |
| if (!d && 1 === f.length) { | |
| e = f[0] = f[0].slice(0); | |
| if ( | |
| 2 < e.length && | |
| "ID" === (v = e[0]).type && | |
| 9 === b.nodeType && | |
| !T && | |
| B.relative[e[1].type] | |
| ) { | |
| b = B.find.ID(v.matches[0].replace(ia, ja), b)[0]; | |
| if (!b) { | |
| v = c; | |
| break a; | |
| } | |
| a = a.slice(e.shift().value.length); | |
| } | |
| for (h = X.needsContext.test(a) ? 0 : e.length; h--; ) { | |
| v = e[h]; | |
| if (B.relative[(g = v.type)]) break; | |
| if ((g = B.find[g])) | |
| if ( | |
| (d = g( | |
| v.matches[0].replace(ia, ja), | |
| (ca.test(e[0].type) && b.parentNode) || b | |
| )) | |
| ) { | |
| e.splice(h, 1); | |
| a = d.length && p(e); | |
| if (!a) { | |
| O.apply(c, P.call(d, 0)); | |
| v = c; | |
| break a; | |
| } | |
| break; | |
| } | |
| } | |
| } | |
| ma(a, f)(d, b, T, c, ca.test(a)); | |
| v = c; | |
| } | |
| return v; | |
| } | |
| function h(a, b) { | |
| var c = b && a, | |
| d = | |
| c && | |
| (~b.sourceIndex || -2147483648) - (~a.sourceIndex || -2147483648); | |
| if (d) return d; | |
| if (c) for (; (c = c.nextSibling); ) if (c === b) return -1; | |
| return a ? 1 : -1; | |
| } | |
| function k(a) { | |
| return function (b) { | |
| return "input" === b.nodeName.toLowerCase() && b.type === a; | |
| }; | |
| } | |
| function l(a) { | |
| return function (b) { | |
| var c = b.nodeName.toLowerCase(); | |
| return ("input" === c || "button" === c) && b.type === a; | |
| }; | |
| } | |
| function m(a) { | |
| return e(function (b) { | |
| b = +b; | |
| return e(function (c, d) { | |
| for (var e, f = a([], c.length, b), g = f.length; g--; ) | |
| c[(e = f[g])] && (c[e] = !(d[e] = c[e])); | |
| }); | |
| }); | |
| } | |
| function n(a, b) { | |
| var c, d, e, f, h; | |
| if ((f = R[a + " "])) return b ? 0 : f.slice(0); | |
| f = a; | |
| var y = []; | |
| for (h = B.preFilter; f; ) { | |
| if (!k || (c = ea.exec(f))) | |
| c && (f = f.slice(c[0].length) || f), y.push((d = [])); | |
| var k = !1; | |
| if ((c = fa.exec(f))) | |
| (k = c.shift()), | |
| d.push({ | |
| value: k, | |
| type: c[0].replace(S, " "), | |
| }), | |
| (f = f.slice(k.length)); | |
| for (e in B.filter) | |
| !(c = X[e].exec(f)) || | |
| (h[e] && !(c = h[e](c))) || | |
| ((k = c.shift()), | |
| d.push({ | |
| value: k, | |
| type: e, | |
| matches: c, | |
| }), | |
| (f = f.slice(k.length))); | |
| if (!k) break; | |
| } | |
| return b ? f.length : f ? g.error(a) : R(a, y).slice(0); | |
| } | |
| function p(a) { | |
| for (var b = 0, c = a.length, d = ""; b < c; b++) d += a[b].value; | |
| return d; | |
| } | |
| function u(a, b, c) { | |
| var d = b.dir, | |
| e = c && "parentNode" === d, | |
| f = xc++; | |
| return b.first | |
| ? function (b, c, f) { | |
| for (; (b = b[d]); ) if (1 === b.nodeType || e) return a(b, c, f); | |
| } | |
| : function (b, c, g) { | |
| var h, | |
| k, | |
| y = G + " " + f; | |
| if (g) | |
| for (; (b = b[d]); ) { | |
| if ((1 === b.nodeType || e) && a(b, c, g)) return !0; | |
| } | |
| else | |
| for (; (b = b[d]); ) | |
| if (1 === b.nodeType || e) { | |
| var v = b[C] || (b[C] = {}); | |
| if ((k = v[d]) && k[0] === y) { | |
| if (!0 === (h = k[1]) || h === L) return !0 === h; | |
| } else if ( | |
| ((k = v[d] = [y]), (k[1] = a(b, c, g) || L), !0 === k[1]) | |
| ) | |
| return !0; | |
| } | |
| }; | |
| } | |
| function q(a) { | |
| return 1 < a.length | |
| ? function (b, c, d) { | |
| for (var e = a.length; e--; ) if (!a[e](b, c, d)) return !1; | |
| return !0; | |
| } | |
| : a[0]; | |
| } | |
| function r(a, b, c, d, e) { | |
| for (var f, g = [], h = 0, k = a.length, y = null != b; h < k; h++) | |
| if ((f = a[h])) if (!c || c(f, d, e)) g.push(f), y && b.push(h); | |
| return g; | |
| } | |
| function D(a, b, c, d, f, h) { | |
| d && !d[C] && (d = D(d)); | |
| f && !f[C] && (f = D(f, h)); | |
| return e(function (e, h, k, y) { | |
| var v, | |
| l = [], | |
| m = [], | |
| Y = h.length, | |
| K; | |
| if (!(K = e)) { | |
| K = b || "*"; | |
| for ( | |
| var n = k.nodeType ? [k] : k, p = [], u = 0, q = n.length; | |
| u < q; | |
| u++ | |
| ) | |
| g(K, n[u], p); | |
| K = p; | |
| } | |
| K = !a || (!e && b) ? K : r(K, l, a, k, y); | |
| n = c ? (f || (e ? a : Y || d) ? [] : h) : K; | |
| c && c(K, n, k, y); | |
| if (d) { | |
| var t = r(n, m); | |
| d(t, [], k, y); | |
| for (k = t.length; k--; ) if ((v = t[k])) n[m[k]] = !(K[m[k]] = v); | |
| } | |
| if (e) { | |
| if (f || a) { | |
| if (f) { | |
| t = []; | |
| for (k = n.length; k--; ) (v = n[k]) && t.push((K[k] = v)); | |
| f(null, (n = []), t, y); | |
| } | |
| for (k = n.length; k--; ) | |
| (v = n[k]) && | |
| -1 < (t = f ? V.call(e, v) : l[k]) && | |
| (e[t] = !(h[t] = v)); | |
| } | |
| } else (n = r(n === h ? n.splice(Y, n.length) : n)), f ? f(null, h, n, y) : O.apply(h, n); | |
| }); | |
| } | |
| function x(a) { | |
| var b, | |
| c, | |
| d = a.length, | |
| e = B.relative[a[0].type]; | |
| var f = e || B.relative[" "]; | |
| for ( | |
| var g = e ? 1 : 0, | |
| h = u( | |
| function (a) { | |
| return a === b; | |
| }, | |
| f, | |
| !0 | |
| ), | |
| k = u( | |
| function (a) { | |
| return -1 < V.call(b, a); | |
| }, | |
| f, | |
| !0 | |
| ), | |
| y = [ | |
| function (a, c, d) { | |
| return ( | |
| (!e && (d || c !== pa)) || | |
| ((b = c).nodeType ? h(a, c, d) : k(a, c, d)) | |
| ); | |
| }, | |
| ]; | |
| g < d; | |
| g++ | |
| ) | |
| if ((f = B.relative[a[g].type])) y = [u(q(y), f)]; | |
| else { | |
| f = B.filter[a[g].type].apply(null, a[g].matches); | |
| if (f[C]) { | |
| for (c = ++g; c < d && !B.relative[a[c].type]; c++); | |
| return D( | |
| 1 < g && q(y), | |
| 1 < g && p(a.slice(0, g - 1)).replace(S, "$1"), | |
| f, | |
| g < c && x(a.slice(g, c)), | |
| c < d && x((a = a.slice(c))), | |
| c < d && p(a) | |
| ); | |
| } | |
| y.push(f); | |
| } | |
| return q(y); | |
| } | |
| function yc(a, b) { | |
| var c = 0, | |
| d = 0 < b.length, | |
| f = 0 < a.length, | |
| h = function (e, h, k, y, v) { | |
| var l, | |
| m, | |
| Y = [], | |
| K = 0, | |
| n = "0", | |
| p = e && [], | |
| t = null != v, | |
| u = pa, | |
| q = e || (f && B.find.TAG("*", (v && h.parentNode) || h)), | |
| Cb = (G += null == u ? 1 : Math.random() || 0.1); | |
| t && ((pa = h !== I && h), (L = c)); | |
| for (; null != (v = q[n]); n++) { | |
| if (f && v) { | |
| for (l = 0; (m = a[l++]); ) | |
| if (m(v, h, k)) { | |
| y.push(v); | |
| break; | |
| } | |
| t && ((G = Cb), (L = ++c)); | |
| } | |
| d && ((v = !m && v) && K--, e && p.push(v)); | |
| } | |
| K += n; | |
| if (d && n !== K) { | |
| for (l = 0; (m = b[l++]); ) m(p, Y, h, k); | |
| if (e) { | |
| if (0 < K) for (; n--; ) p[n] || Y[n] || (Y[n] = ba.call(y)); | |
| Y = r(Y); | |
| } | |
| O.apply(y, Y); | |
| t && !e && 0 < Y.length && 1 < K + b.length && g.uniqueSort(y); | |
| } | |
| t && ((G = Cb), (pa = u)); | |
| return p; | |
| }; | |
| return d ? e(h) : h; | |
| } | |
| function E() {} | |
| var w, | |
| L, | |
| J, | |
| pa, | |
| I, | |
| Q, | |
| T, | |
| Z, | |
| ua, | |
| ya, | |
| wa, | |
| H, | |
| C = "sizzle" + -new Date(), | |
| A = a.document, | |
| z = {}, | |
| G = 0, | |
| xc = 0, | |
| M = d(), | |
| R = d(), | |
| N = d(), | |
| U = typeof b, | |
| F = [], | |
| ba = F.pop, | |
| O = F.push, | |
| P = F.slice, | |
| V = | |
| F.indexOf || | |
| function (a) { | |
| for (var b = 0, c = this.length; b < c; b++) | |
| if (this[b] === a) return b; | |
| return -1; | |
| }; | |
| F = "(?:\\\\.|[\\w-]|[^\\x00-\\xa0])+".replace("w", "w#"); | |
| var aa = | |
| "\\[[\\x20\\t\\r\\n\\f]*((?:\\\\.|[\\w-]|[^\\x00-\\xa0])+)[\\x20\\t\\r\\n\\f]*(?:([*^$|!~]?=)[\\x20\\t\\r\\n\\f]*(?:(['\"])((?:\\\\.|[^\\\\])*?)\\3|(" + | |
| F + | |
| ")|)|)[\\x20\\t\\r\\n\\f]*\\]", | |
| W = | |
| ":((?:\\\\.|[\\w-]|[^\\x00-\\xa0])+)(?:\\(((['\"])((?:\\\\.|[^\\\\])*?)\\3|((?:\\\\.|[^\\\\()[\\]]|" + | |
| aa.replace(3, 8) + | |
| ")*)|.*)\\)|)", | |
| S = /^[\x20\t\r\n\f]+|((?:^|[^\\])(?:\\.)*)[\x20\t\r\n\f]+$/g, | |
| ea = /^[\x20\t\r\n\f]*,[\x20\t\r\n\f]*/, | |
| fa = /^[\x20\t\r\n\f]*([\x20\t\r\n\f>+~])[\x20\t\r\n\f]*/, | |
| ka = new RegExp(W), | |
| la = new RegExp("^" + F + "$"), | |
| X = { | |
| ID: /^#((?:\\.|[\w-]|[^\x00-\xa0])+)/, | |
| CLASS: /^\.((?:\\.|[\w-]|[^\x00-\xa0])+)/, | |
| NAME: /^\[name=['"]?((?:\\.|[\w-]|[^\x00-\xa0])+)['"]?\]/, | |
| TAG: new RegExp( | |
| "^(" + "(?:\\\\.|[\\w-]|[^\\x00-\\xa0])+".replace("w", "w*") + ")" | |
| ), | |
| ATTR: new RegExp("^" + aa), | |
| PSEUDO: new RegExp("^" + W), | |
| CHILD: | |
| /^:(only|first|last|nth|nth-last)-(child|of-type)(?:\([\x20\t\r\n\f]*(even|odd|(([+-]|)(\d*)n|)[\x20\t\r\n\f]*(?:([+-]|)[\x20\t\r\n\f]*(\d+)|))[\x20\t\r\n\f]*\)|)/i, | |
| needsContext: | |
| /^[\x20\t\r\n\f]*[>+~]|:(even|odd|eq|gt|lt|nth|first|last)(?:\([\x20\t\r\n\f]*((?:-\d)?\d*)[\x20\t\r\n\f]*\)|)(?=[^-]|$)/i, | |
| }, | |
| ca = /[\x20\t\r\n\f]*[+~]/, | |
| da = /^[^{]+\{\s*\[native code/, | |
| na = /^(?:#([\w-]+)|(\w+)|\.([\w-]+))$/, | |
| oa = /^(?:input|select|textarea|button)$/i, | |
| qa = /^h\d$/i, | |
| ra = /'|\\/g, | |
| sa = /=[\x20\t\r\n\f]*([^'"\]]*)[\x20\t\r\n\f]*\]/g, | |
| ia = /\\([\da-fA-F]{1,6}[\x20\t\r\n\f]?|.)/g, | |
| ja = function (a, b) { | |
| a = "0x" + b - 65536; | |
| return a !== a | |
| ? b | |
| : 0 > a | |
| ? String.fromCharCode(a + 65536) | |
| : String.fromCharCode((a >> 10) | 55296, (a & 1023) | 56320); | |
| }; | |
| try { | |
| P.call(A.documentElement.childNodes, 0)[0].nodeType; | |
| } catch (y) { | |
| P = function (a) { | |
| for (var b, c = []; (b = this[a++]); ) c.push(b); | |
| return c; | |
| }; | |
| } | |
| var ta = (g.isXML = function (a) { | |
| return (a = a && (a.ownerDocument || a).documentElement) | |
| ? "HTML" !== a.nodeName | |
| : !1; | |
| }); | |
| var va = (g.setDocument = function (a) { | |
| var c = a ? a.ownerDocument || a : A; | |
| if (c === I || 9 !== c.nodeType || !c.documentElement) return I; | |
| I = c; | |
| Q = c.documentElement; | |
| T = ta(c); | |
| z.tagNameNoComments = f(function (a) { | |
| a.appendChild(c.createComment("")); | |
| return !a.getElementsByTagName("*").length; | |
| }); | |
| z.attributes = f(function (a) { | |
| a.innerHTML = "<select></select>"; | |
| a = typeof a.lastChild.getAttribute("multiple"); | |
| return "boolean" !== a && "string" !== a; | |
| }); | |
| z.getByClassName = f(function (a) { | |
| a.innerHTML = "<div class='hidden e'></div><div class='hidden'></div>"; | |
| if (!a.getElementsByClassName || !a.getElementsByClassName("e").length) | |
| return !1; | |
| a.lastChild.className = "e"; | |
| return 2 === a.getElementsByClassName("e").length; | |
| }); | |
| z.getByName = f(function (a) { | |
| a.id = C + 0; | |
| a.innerHTML = "<a name='" + C + "'></a><div name='" + C + "'></div>"; | |
| Q.insertBefore(a, Q.firstChild); | |
| var b = | |
| c.getElementsByName && | |
| c.getElementsByName(C).length === | |
| 2 + c.getElementsByName(C + 0).length; | |
| z.getIdNotName = !c.getElementById(C); | |
| Q.removeChild(a); | |
| return b; | |
| }); | |
| B.attrHandle = f(function (a) { | |
| a.innerHTML = "<a href='#'></a>"; | |
| return ( | |
| a.firstChild && | |
| typeof a.firstChild.getAttribute !== U && | |
| "#" === a.firstChild.getAttribute("href") | |
| ); | |
| }) | |
| ? {} | |
| : { | |
| href: function (a) { | |
| return a.getAttribute("href", 2); | |
| }, | |
| type: function (a) { | |
| return a.getAttribute("type"); | |
| }, | |
| }; | |
| z.getIdNotName | |
| ? ((B.find.ID = function (a, b) { | |
| if (typeof b.getElementById !== U && !T) | |
| return (a = b.getElementById(a)) && a.parentNode ? [a] : []; | |
| }), | |
| (B.filter.ID = function (a) { | |
| var b = a.replace(ia, ja); | |
| return function (a) { | |
| return a.getAttribute("id") === b; | |
| }; | |
| })) | |
| : ((B.find.ID = function (a, c) { | |
| if (typeof c.getElementById !== U && !T) | |
| return (c = c.getElementById(a)) | |
| ? c.id === a || | |
| (typeof c.getAttributeNode !== U && | |
| c.getAttributeNode("id").value === a) | |
| ? [c] | |
| : b | |
| : []; | |
| }), | |
| (B.filter.ID = function (a) { | |
| var b = a.replace(ia, ja); | |
| return function (a) { | |
| return ( | |
| (a = | |
| typeof a.getAttributeNode !== U && | |
| a.getAttributeNode("id")) && a.value === b | |
| ); | |
| }; | |
| })); | |
| B.find.TAG = z.tagNameNoComments | |
| ? function (a, b) { | |
| if (typeof b.getElementsByTagName !== U) | |
| return b.getElementsByTagName(a); | |
| } | |
| : function (a, b) { | |
| var c = [], | |
| d = 0; | |
| b = b.getElementsByTagName(a); | |
| if ("*" === a) { | |
| for (; (a = b[d++]); ) 1 === a.nodeType && c.push(a); | |
| return c; | |
| } | |
| return b; | |
| }; | |
| B.find.NAME = | |
| z.getByName && | |
| function (a, b) { | |
| if (typeof b.getElementsByName !== U) | |
| return b.getElementsByName(name); | |
| }; | |
| B.find.CLASS = | |
| z.getByClassName && | |
| function (a, b) { | |
| if (typeof b.getElementsByClassName !== U && !T) | |
| return b.getElementsByClassName(a); | |
| }; | |
| ua = []; | |
| Z = [":focus"]; | |
| if ((z.qsa = da.test(c.querySelectorAll + ""))) | |
| f(function (a) { | |
| a.innerHTML = "<select><option selected=''></option></select>"; | |
| a.querySelectorAll("[selected]").length || | |
| Z.push( | |
| "\\[[\\x20\\t\\r\\n\\f]*(?:checked|disabled|ismap|multiple|readonly|selected|value)" | |
| ); | |
| a.querySelectorAll(":checked").length || Z.push(":checked"); | |
| }), | |
| f(function (a) { | |
| a.innerHTML = "<input type='hidden' i=''/>"; | |
| a.querySelectorAll("[i^='']").length && | |
| Z.push("[*^$]=[\\x20\\t\\r\\n\\f]*(?:\"\"|'')"); | |
| a.querySelectorAll(":enabled").length || | |
| Z.push(":enabled", ":disabled"); | |
| a.querySelectorAll("*,:x"); | |
| Z.push(",.*:"); | |
| }); | |
| (z.matchesSelector = da.test( | |
| (ya = | |
| Q.matchesSelector || | |
| Q.mozMatchesSelector || | |
| Q.webkitMatchesSelector || | |
| Q.oMatchesSelector || | |
| Q.msMatchesSelector) + "" | |
| )) && | |
| f(function (a) { | |
| z.disconnectedMatch = ya.call(a, "div"); | |
| ya.call(a, "[s!='']:x"); | |
| ua.push("!=", W); | |
| }); | |
| Z = new RegExp(Z.join("|")); | |
| ua = new RegExp(ua.join("|")); | |
| wa = | |
| da.test(Q.contains + "") || Q.compareDocumentPosition | |
| ? function (a, b) { | |
| var c = 9 === a.nodeType ? a.documentElement : a; | |
| b = b && b.parentNode; | |
| return ( | |
| a === b || | |
| !!( | |
| b && | |
| 1 === b.nodeType && | |
| (c.contains | |
| ? c.contains(b) | |
| : a.compareDocumentPosition && | |
| a.compareDocumentPosition(b) & 16) | |
| ) | |
| ); | |
| } | |
| : function (a, b) { | |
| if (b) for (; (b = b.parentNode); ) if (b === a) return !0; | |
| return !1; | |
| }; | |
| H = Q.compareDocumentPosition | |
| ? function (a, b) { | |
| var d; | |
| return a === b | |
| ? ((J = !0), 0) | |
| : (d = | |
| b.compareDocumentPosition && | |
| a.compareDocumentPosition && | |
| a.compareDocumentPosition(b)) | |
| ? d & 1 || (a.parentNode && 11 === a.parentNode.nodeType) | |
| ? a === c || wa(A, a) | |
| ? -1 | |
| : b === c || wa(A, b) | |
| ? 1 | |
| : 0 | |
| : d & 4 | |
| ? -1 | |
| : 1 | |
| : a.compareDocumentPosition | |
| ? -1 | |
| : 1; | |
| } | |
| : function (a, b) { | |
| var d = 0, | |
| e = a.parentNode, | |
| f = b.parentNode, | |
| g = [a], | |
| k = [b]; | |
| if (a === b) return (J = !0), 0; | |
| if (!e || !f) | |
| return a === c ? -1 : b === c ? 1 : e ? -1 : f ? 1 : 0; | |
| if (e === f) return h(a, b); | |
| for (; (a = a.parentNode); ) g.unshift(a); | |
| for (a = b; (a = a.parentNode); ) k.unshift(a); | |
| for (; g[d] === k[d]; ) d++; | |
| return d ? h(g[d], k[d]) : g[d] === A ? -1 : k[d] === A ? 1 : 0; | |
| }; | |
| J = !1; | |
| [0, 0].sort(H); | |
| z.detectDuplicates = J; | |
| return I; | |
| }); | |
| g.matches = function (a, b) { | |
| return g(a, null, null, b); | |
| }; | |
| g.matchesSelector = function (a, b) { | |
| (a.ownerDocument || a) !== I && va(a); | |
| b = b.replace(sa, "='$1']"); | |
| if (!(!z.matchesSelector || T || (ua && ua.test(b)) || Z.test(b))) | |
| try { | |
| var c = ya.call(a, b); | |
| if ( | |
| c || | |
| z.disconnectedMatch || | |
| (a.document && 11 !== a.document.nodeType) | |
| ) | |
| return c; | |
| } catch (K) {} | |
| return 0 < g(b, I, null, [a]).length; | |
| }; | |
| g.contains = function (a, b) { | |
| (a.ownerDocument || a) !== I && va(a); | |
| return wa(a, b); | |
| }; | |
| g.attr = function (a, b) { | |
| var c; | |
| (a.ownerDocument || a) !== I && va(a); | |
| T || (b = b.toLowerCase()); | |
| return (c = B.attrHandle[b]) | |
| ? c(a) | |
| : T || z.attributes | |
| ? a.getAttribute(b) | |
| : ((c = a.getAttributeNode(b)) || a.getAttribute(b)) && !0 === a[b] | |
| ? b | |
| : c && c.specified | |
| ? c.value | |
| : null; | |
| }; | |
| g.error = function (a) { | |
| throw Error("Syntax error, unrecognized expression: " + a); | |
| }; | |
| g.uniqueSort = function (a) { | |
| var b, | |
| c = [], | |
| d = 1, | |
| e = 0; | |
| J = !z.detectDuplicates; | |
| a.sort(H); | |
| if (J) { | |
| for (; (b = a[d]); d++) b === a[d - 1] && (e = c.push(d)); | |
| for (; e--; ) a.splice(c[e], 1); | |
| } | |
| return a; | |
| }; | |
| var ha = (g.getText = function (a) { | |
| var b = "", | |
| c = 0; | |
| var d = a.nodeType; | |
| if (!d) for (; (d = a[c]); c++) b += ha(d); | |
| else if (1 === d || 9 === d || 11 === d) { | |
| if ("string" === typeof a.textContent) return a.textContent; | |
| for (a = a.firstChild; a; a = a.nextSibling) b += ha(a); | |
| } else if (3 === d || 4 === d) return a.nodeValue; | |
| return b; | |
| }); | |
| var B = (g.selectors = { | |
| cacheLength: 50, | |
| createPseudo: e, | |
| match: X, | |
| find: {}, | |
| relative: { | |
| ">": { | |
| dir: "parentNode", | |
| first: !0, | |
| }, | |
| " ": { | |
| dir: "parentNode", | |
| }, | |
| "+": { | |
| dir: "previousSibling", | |
| first: !0, | |
| }, | |
| "~": { | |
| dir: "previousSibling", | |
| }, | |
| }, | |
| preFilter: { | |
| ATTR: function (a) { | |
| a[1] = a[1].replace(ia, ja); | |
| a[3] = (a[4] || a[5] || "").replace(ia, ja); | |
| "~=" === a[2] && (a[3] = " " + a[3] + " "); | |
| return a.slice(0, 4); | |
| }, | |
| CHILD: function (a) { | |
| a[1] = a[1].toLowerCase(); | |
| "nth" === a[1].slice(0, 3) | |
| ? (a[3] || g.error(a[0]), | |
| (a[4] = +(a[4] | |
| ? a[5] + (a[6] || 1) | |
| : 2 * ("even" === a[3] || "odd" === a[3]))), | |
| (a[5] = +(a[7] + a[8] || "odd" === a[3]))) | |
| : a[3] && g.error(a[0]); | |
| return a; | |
| }, | |
| PSEUDO: function (a) { | |
| var b, | |
| c = !a[5] && a[2]; | |
| if (X.CHILD.test(a[0])) return null; | |
| a[4] | |
| ? (a[2] = a[4]) | |
| : c && | |
| ka.test(c) && | |
| (b = n(c, !0)) && | |
| (b = c.indexOf(")", c.length - b) - c.length) && | |
| ((a[0] = a[0].slice(0, b)), (a[2] = c.slice(0, b))); | |
| return a.slice(0, 3); | |
| }, | |
| }, | |
| filter: { | |
| TAG: function (a) { | |
| if ("*" === a) | |
| return function () { | |
| return !0; | |
| }; | |
| a = a.replace(ia, ja).toLowerCase(); | |
| return function (b) { | |
| return b.nodeName && b.nodeName.toLowerCase() === a; | |
| }; | |
| }, | |
| CLASS: function (a) { | |
| var b = M[a + " "]; | |
| return ( | |
| b || | |
| ((b = new RegExp( | |
| "(^|[\\x20\\t\\r\\n\\f])" + a + "([\\x20\\t\\r\\n\\f]|$)" | |
| )), | |
| M(a, function (a) { | |
| return b.test( | |
| a.className || | |
| (typeof a.getAttribute !== U && a.getAttribute("class")) || | |
| "" | |
| ); | |
| })) | |
| ); | |
| }, | |
| ATTR: function (a, b, c) { | |
| return function (d) { | |
| d = g.attr(d, a); | |
| if (null == d) return "!=" === b; | |
| if (!b) return !0; | |
| d += ""; | |
| return "=" === b | |
| ? d === c | |
| : "!=" === b | |
| ? d !== c | |
| : "^=" === b | |
| ? c && 0 === d.indexOf(c) | |
| : "*=" === b | |
| ? c && -1 < d.indexOf(c) | |
| : "$=" === b | |
| ? c && d.slice(-c.length) === c | |
| : "~=" === b | |
| ? -1 < (" " + d + " ").indexOf(c) | |
| : "|=" === b | |
| ? d === c || d.slice(0, c.length + 1) === c + "-" | |
| : !1; | |
| }; | |
| }, | |
| CHILD: function (a, b, c, d, e) { | |
| var f = "nth" !== a.slice(0, 3), | |
| g = "last" !== a.slice(-4), | |
| h = "of-type" === b; | |
| return 1 === d && 0 === e | |
| ? function (a) { | |
| return !!a.parentNode; | |
| } | |
| : function (b, c, k) { | |
| var l; | |
| c = f !== g ? "nextSibling" : "previousSibling"; | |
| var m = b.parentNode, | |
| n = h && b.nodeName.toLowerCase(); | |
| k = !k && !h; | |
| if (m) { | |
| if (f) { | |
| for (; c; ) { | |
| for (l = b; (l = l[c]); ) | |
| if ( | |
| h ? l.nodeName.toLowerCase() === n : 1 === l.nodeType | |
| ) | |
| return !1; | |
| var y = (c = "only" === a && !y && "nextSibling"); | |
| } | |
| return !0; | |
| } | |
| y = [g ? m.firstChild : m.lastChild]; | |
| if (g && k) { | |
| k = m[C] || (m[C] = {}); | |
| var p = k[a] || []; | |
| var t = p[0] === G && p[1]; | |
| var v = p[0] === G && p[2]; | |
| for ( | |
| l = t && m.childNodes[t]; | |
| (l = (++t && l && l[c]) || (v = t = 0) || y.pop()); | |
| ) | |
| if (1 === l.nodeType && ++v && l === b) { | |
| k[a] = [G, t, v]; | |
| break; | |
| } | |
| } else if (k && (p = (b[C] || (b[C] = {}))[a]) && p[0] === G) | |
| v = p[1]; | |
| else | |
| for ( | |
| ; | |
| (l = (++t && l && l[c]) || (v = t = 0) || y.pop()) && | |
| ((h | |
| ? l.nodeName.toLowerCase() !== n | |
| : 1 !== l.nodeType) || | |
| !++v || | |
| (k && ((l[C] || (l[C] = {}))[a] = [G, v]), l !== b)); | |
| ); | |
| v -= e; | |
| return v === d || (0 === v % d && 0 <= v / d); | |
| } | |
| }; | |
| }, | |
| PSEUDO: function (a, b) { | |
| var c = | |
| B.pseudos[a] || | |
| B.setFilters[a.toLowerCase()] || | |
| g.error("unsupported pseudo: " + a); | |
| if (c[C]) return c(b); | |
| if (1 < c.length) { | |
| var d = [a, a, "", b]; | |
| return B.setFilters.hasOwnProperty(a.toLowerCase()) | |
| ? e(function (a, d) { | |
| for (var e, f = c(a, b), g = f.length; g--; ) | |
| (e = V.call(a, f[g])), (a[e] = !(d[e] = f[g])); | |
| }) | |
| : function (a) { | |
| return c(a, 0, d); | |
| }; | |
| } | |
| return c; | |
| }, | |
| }, | |
| pseudos: { | |
| not: e(function (a) { | |
| var b = [], | |
| c = [], | |
| d = ma(a.replace(S, "$1")); | |
| return d[C] | |
| ? e(function (a, b, c, e) { | |
| e = d(a, null, e, []); | |
| for (var f = a.length; f--; ) | |
| if ((c = e[f])) a[f] = !(b[f] = c); | |
| }) | |
| : function (a, e, f) { | |
| b[0] = a; | |
| d(b, null, f, c); | |
| return !c.pop(); | |
| }; | |
| }), | |
| has: e(function (a) { | |
| return function (b) { | |
| return 0 < g(a, b).length; | |
| }; | |
| }), | |
| contains: e(function (a) { | |
| return function (b) { | |
| return -1 < (b.textContent || b.innerText || ha(b)).indexOf(a); | |
| }; | |
| }), | |
| lang: e(function (a) { | |
| la.test(a || "") || g.error("unsupported lang: " + a); | |
| a = a.replace(ia, ja).toLowerCase(); | |
| return function (b) { | |
| var c; | |
| do | |
| if ( | |
| (c = T | |
| ? b.getAttribute("xml:lang") || b.getAttribute("lang") | |
| : b.lang) | |
| ) | |
| return ( | |
| (c = c.toLowerCase()), c === a || 0 === c.indexOf(a + "-") | |
| ); | |
| while ((b = b.parentNode) && 1 === b.nodeType); | |
| return !1; | |
| }; | |
| }), | |
| target: function (b) { | |
| var c = a.location && a.location.hash; | |
| return c && c.slice(1) === b.id; | |
| }, | |
| root: function (a) { | |
| return a === Q; | |
| }, | |
| focus: function (a) { | |
| return ( | |
| a === I.activeElement && | |
| (!I.hasFocus || I.hasFocus()) && | |
| !!(a.type || a.href || ~a.tabIndex) | |
| ); | |
| }, | |
| enabled: function (a) { | |
| return !1 === a.disabled; | |
| }, | |
| disabled: function (a) { | |
| return !0 === a.disabled; | |
| }, | |
| checked: function (a) { | |
| var b = a.nodeName.toLowerCase(); | |
| return ( | |
| ("input" === b && !!a.checked) || ("option" === b && !!a.selected) | |
| ); | |
| }, | |
| selected: function (a) { | |
| a.parentNode && a.parentNode.selectedIndex; | |
| return !0 === a.selected; | |
| }, | |
| empty: function (a) { | |
| for (a = a.firstChild; a; a = a.nextSibling) | |
| if ("@" < a.nodeName || 3 === a.nodeType || 4 === a.nodeType) | |
| return !1; | |
| return !0; | |
| }, | |
| parent: function (a) { | |
| return !B.pseudos.empty(a); | |
| }, | |
| header: function (a) { | |
| return qa.test(a.nodeName); | |
| }, | |
| input: function (a) { | |
| return oa.test(a.nodeName); | |
| }, | |
| button: function (a) { | |
| var b = a.nodeName.toLowerCase(); | |
| return ("input" === b && "button" === a.type) || "button" === b; | |
| }, | |
| text: function (a) { | |
| var b; | |
| return ( | |
| "input" === a.nodeName.toLowerCase() && | |
| "text" === a.type && | |
| (null == (b = a.getAttribute("type")) || b.toLowerCase() === a.type) | |
| ); | |
| }, | |
| first: m(function () { | |
| return [0]; | |
| }), | |
| last: m(function (a, b) { | |
| return [b - 1]; | |
| }), | |
| eq: m(function (a, b, c) { | |
| return [0 > c ? c + b : c]; | |
| }), | |
| even: m(function (a, b) { | |
| for (var c = 0; c < b; c += 2) a.push(c); | |
| return a; | |
| }), | |
| odd: m(function (a, b) { | |
| for (var c = 1; c < b; c += 2) a.push(c); | |
| return a; | |
| }), | |
| lt: m(function (a, b, c) { | |
| for (b = 0 > c ? c + b : c; 0 <= --b; ) a.push(b); | |
| return a; | |
| }), | |
| gt: m(function (a, b, c) { | |
| for (c = 0 > c ? c + b : c; ++c < b; ) a.push(c); | |
| return a; | |
| }), | |
| }, | |
| }); | |
| for (w in { | |
| radio: !0, | |
| checkbox: !0, | |
| file: !0, | |
| password: !0, | |
| image: !0, | |
| }) | |
| B.pseudos[w] = k(w); | |
| for (w in { | |
| submit: !0, | |
| reset: !0, | |
| }) | |
| B.pseudos[w] = l(w); | |
| var ma = (g.compile = function (a, b) { | |
| var c, | |
| d = [], | |
| e = [], | |
| f = N[a + " "]; | |
| if (!f) { | |
| b || (b = n(a)); | |
| for (c = b.length; c--; ) (f = x(b[c])), f[C] ? d.push(f) : e.push(f); | |
| f = N(a, yc(e, d)); | |
| } | |
| return f; | |
| }); | |
| B.pseudos.nth = B.pseudos.eq; | |
| B.filters = E.prototype = B.pseudos; | |
| B.setFilters = new E(); | |
| va(); | |
| g.attr = c.attr; | |
| c.find = g; | |
| c.expr = g.selectors; | |
| c.expr[":"] = c.expr.pseudos; | |
| c.unique = g.uniqueSort; | |
| c.text = g.getText; | |
| c.isXMLDoc = g.isXML; | |
| c.contains = g.contains; | |
| })(r); | |
| var zc = /Until$/, | |
| Ac = /^(?:parents|prev(?:Until|All))/, | |
| Vb = /^.[^:#\[\.,]*$/, | |
| Db = c.expr.match.needsContext, | |
| Bc = { | |
| children: !0, | |
| contents: !0, | |
| next: !0, | |
| prev: !0, | |
| }; | |
| c.fn.extend({ | |
| find: function (a) { | |
| var b, | |
| d = this.length; | |
| if ("string" !== typeof a) { | |
| var e = this; | |
| return this.pushStack( | |
| c(a).filter(function () { | |
| for (b = 0; b < d; b++) if (c.contains(e[b], this)) return !0; | |
| }) | |
| ); | |
| } | |
| var f = []; | |
| for (b = 0; b < d; b++) c.find(a, this[b], f); | |
| f = this.pushStack(1 < d ? c.unique(f) : f); | |
| f.selector = (this.selector ? this.selector + " " : "") + a; | |
| return f; | |
| }, | |
| has: function (a) { | |
| var b, | |
| d = c(a, this), | |
| e = d.length; | |
| return this.filter(function () { | |
| for (b = 0; b < e; b++) if (c.contains(this, d[b])) return !0; | |
| }); | |
| }, | |
| not: function (a) { | |
| return this.pushStack($a(this, a, !1)); | |
| }, | |
| filter: function (a) { | |
| return this.pushStack($a(this, a, !0)); | |
| }, | |
| is: function (a) { | |
| return ( | |
| !!a && | |
| ("string" === typeof a | |
| ? Db.test(a) | |
| ? 0 <= c(a, this.context).index(this[0]) | |
| : 0 < c.filter(a, this).length | |
| : 0 < this.filter(a).length) | |
| ); | |
| }, | |
| closest: function (a, b) { | |
| for ( | |
| var d, | |
| e = 0, | |
| f = this.length, | |
| g = [], | |
| h = Db.test(a) || "string" !== typeof a ? c(a, b || this.context) : 0; | |
| e < f; | |
| e++ | |
| ) | |
| for ( | |
| d = this[e]; | |
| d && d.ownerDocument && d !== b && 11 !== d.nodeType; | |
| ) { | |
| if (h ? -1 < h.index(d) : c.find.matchesSelector(d, a)) { | |
| g.push(d); | |
| break; | |
| } | |
| d = d.parentNode; | |
| } | |
| return this.pushStack(1 < g.length ? c.unique(g) : g); | |
| }, | |
| index: function (a) { | |
| return a | |
| ? "string" === typeof a | |
| ? c.inArray(this[0], c(a)) | |
| : c.inArray(a.jquery ? a[0] : a, this) | |
| : this[0] && this[0].parentNode | |
| ? this.first().prevAll().length | |
| : -1; | |
| }, | |
| add: function (a, b) { | |
| a = | |
| "string" === typeof a | |
| ? c(a, b) | |
| : c.makeArray(a && a.nodeType ? [a] : a); | |
| a = c.merge(this.get(), a); | |
| return this.pushStack(c.unique(a)); | |
| }, | |
| addBack: function (a) { | |
| return this.add(null == a ? this.prevObject : this.prevObject.filter(a)); | |
| }, | |
| }); | |
| c.fn.andSelf = c.fn.addBack; | |
| c.each( | |
| { | |
| parent: function (a) { | |
| return (a = a.parentNode) && 11 !== a.nodeType ? a : null; | |
| }, | |
| parents: function (a) { | |
| return c.dir(a, "parentNode"); | |
| }, | |
| parentsUntil: function (a, b, d) { | |
| return c.dir(a, "parentNode", d); | |
| }, | |
| next: function (a) { | |
| return Za(a, "nextSibling"); | |
| }, | |
| prev: function (a) { | |
| return Za(a, "previousSibling"); | |
| }, | |
| nextAll: function (a) { | |
| return c.dir(a, "nextSibling"); | |
| }, | |
| prevAll: function (a) { | |
| return c.dir(a, "previousSibling"); | |
| }, | |
| nextUntil: function (a, b, d) { | |
| return c.dir(a, "nextSibling", d); | |
| }, | |
| prevUntil: function (a, b, d) { | |
| return c.dir(a, "previousSibling", d); | |
| }, | |
| siblings: function (a) { | |
| return c.sibling((a.parentNode || {}).firstChild, a); | |
| }, | |
| children: function (a) { | |
| return c.sibling(a.firstChild); | |
| }, | |
| contents: function (a) { | |
| return c.nodeName(a, "iframe") | |
| ? a.contentDocument || a.contentWindow.document | |
| : c.merge([], a.childNodes); | |
| }, | |
| }, | |
| function (a, b) { | |
| c.fn[a] = function (d, e) { | |
| var f = c.map(this, b, d); | |
| zc.test(a) || (e = d); | |
| e && "string" === typeof e && (f = c.filter(e, f)); | |
| f = 1 < this.length && !Bc[a] ? c.unique(f) : f; | |
| 1 < this.length && Ac.test(a) && (f = f.reverse()); | |
| return this.pushStack(f); | |
| }; | |
| } | |
| ); | |
| c.extend({ | |
| filter: function (a, b, d) { | |
| d && (a = ":not(" + a + ")"); | |
| return 1 === b.length | |
| ? c.find.matchesSelector(b[0], a) | |
| ? [b[0]] | |
| : [] | |
| : c.find.matches(a, b); | |
| }, | |
| dir: function (a, b, d) { | |
| var e = []; | |
| for ( | |
| a = a[b]; | |
| a && 9 !== a.nodeType && (d === n || 1 !== a.nodeType || !c(a).is(d)); | |
| ) | |
| 1 === a.nodeType && e.push(a), (a = a[b]); | |
| return e; | |
| }, | |
| sibling: function (a, b) { | |
| for (var c = []; a; a = a.nextSibling) | |
| 1 === a.nodeType && a !== b && c.push(a); | |
| return c; | |
| }, | |
| }); | |
| var bb = | |
| "abbr|article|aside|audio|bdi|canvas|data|datalist|details|figcaption|figure|footer|header|hgroup|mark|meter|nav|output|progress|section|summary|time|video", | |
| Cc = / jQuery\d+="(?:null|\d+)"/g, | |
| Eb = new RegExp("<(?:" + bb + ")[\\s/>]", "i"), | |
| Oa = /^\s+/, | |
| Fb = | |
| /<(?!area|br|col|embed|hr|img|input|link|meta|param)(([\w:]+)[^>]*)\/>/gi, | |
| Gb = /<([\w:]+)/, | |
| Hb = /<tbody/i, | |
| Dc = /<|&#?\w+;/, | |
| Ec = /<(?:script|style|link)/i, | |
| Ea = /^(?:checkbox|radio)$/i, | |
| Fc = /checked\s*(?:[^=]|=\s*.checked.)/i, | |
| Ib = /^$|\/(?:java|ecma)script/i, | |
| Xb = /^true\/(.*)/, | |
| Gc = /^\s*<!(?:\[CDATA\[|--)|(?:\]\]|--)>\s*$/g, | |
| E = { | |
| option: [1, "<select multiple='multiple'>", "</select>"], | |
| legend: [1, "<fieldset>", "</fieldset>"], | |
| area: [1, "<map>", "</map>"], | |
| param: [1, "<object>", "</object>"], | |
| thead: [1, "<table>", "</table>"], | |
| tr: [2, "<table><tbody>", "</tbody></table>"], | |
| col: [2, "<table><tbody></tbody><colgroup>", "</colgroup></table>"], | |
| td: [3, "<table><tbody><tr>", "</tr></tbody></table>"], | |
| _default: c.support.htmlSerialize ? [0, "", ""] : [1, "X<div>", "</div>"], | |
| }, | |
| Pa = ab(q).appendChild(q.createElement("div")); | |
| E.optgroup = E.option; | |
| E.tbody = E.tfoot = E.colgroup = E.caption = E.thead; | |
| E.th = E.td; | |
| c.fn.extend({ | |
| text: function (a) { | |
| return c.access( | |
| this, | |
| function (a) { | |
| return a === n | |
| ? c.text(this) | |
| : this.empty().append( | |
| ((this[0] && this[0].ownerDocument) || q).createTextNode(a) | |
| ); | |
| }, | |
| null, | |
| a, | |
| arguments.length | |
| ); | |
| }, | |
| wrapAll: function (a) { | |
| if (c.isFunction(a)) | |
| return this.each(function (b) { | |
| c(this).wrapAll(a.call(this, b)); | |
| }); | |
| if (this[0]) { | |
| var b = c(a, this[0].ownerDocument).eq(0).clone(!0); | |
| this[0].parentNode && b.insertBefore(this[0]); | |
| b.map(function () { | |
| for (var a = this; a.firstChild && 1 === a.firstChild.nodeType; ) | |
| a = a.firstChild; | |
| return a; | |
| }).append(this); | |
| } | |
| return this; | |
| }, | |
| wrapInner: function (a) { | |
| return c.isFunction(a) | |
| ? this.each(function (b) { | |
| c(this).wrapInner(a.call(this, b)); | |
| }) | |
| : this.each(function () { | |
| var b = c(this), | |
| d = b.contents(); | |
| d.length ? d.wrapAll(a) : b.append(a); | |
| }); | |
| }, | |
| wrap: function (a) { | |
| var b = c.isFunction(a); | |
| return this.each(function (d) { | |
| c(this).wrapAll(b ? a.call(this, d) : a); | |
| }); | |
| }, | |
| unwrap: function () { | |
| return this.parent() | |
| .each(function () { | |
| c.nodeName(this, "body") || c(this).replaceWith(this.childNodes); | |
| }) | |
| .end(); | |
| }, | |
| append: function () { | |
| return this.domManip(arguments, !0, function (a) { | |
| (1 !== this.nodeType && 11 !== this.nodeType && 9 !== this.nodeType) || | |
| this.appendChild(a); | |
| }); | |
| }, | |
| prepend: function () { | |
| return this.domManip(arguments, !0, function (a) { | |
| (1 !== this.nodeType && 11 !== this.nodeType && 9 !== this.nodeType) || | |
| this.insertBefore(a, this.firstChild); | |
| }); | |
| }, | |
| before: function () { | |
| return this.domManip(arguments, !1, function (a) { | |
| this.parentNode && this.parentNode.insertBefore(a, this); | |
| }); | |
| }, | |
| after: function () { | |
| return this.domManip(arguments, !1, function (a) { | |
| this.parentNode && this.parentNode.insertBefore(a, this.nextSibling); | |
| }); | |
| }, | |
| remove: function (a, b) { | |
| for (var d, e = 0; null != (d = this[e]); e++) | |
| if (!a || 0 < c.filter(a, [d]).length) | |
| b || 1 !== d.nodeType || c.cleanData(x(d)), | |
| d.parentNode && | |
| (b && c.contains(d.ownerDocument, d) && Da(x(d, "script")), | |
| d.parentNode.removeChild(d)); | |
| return this; | |
| }, | |
| empty: function () { | |
| for (var a, b = 0; null != (a = this[b]); b++) { | |
| for (1 === a.nodeType && c.cleanData(x(a, !1)); a.firstChild; ) | |
| a.removeChild(a.firstChild); | |
| a.options && c.nodeName(a, "select") && (a.options.length = 0); | |
| } | |
| return this; | |
| }, | |
| clone: function (a, b) { | |
| a = null == a ? !1 : a; | |
| b = null == b ? a : b; | |
| return this.map(function () { | |
| return c.clone(this, a, b); | |
| }); | |
| }, | |
| html: function (a) { | |
| return c.access( | |
| this, | |
| function (a) { | |
| var b = this[0] || {}, | |
| e = 0, | |
| f = this.length; | |
| if (a === n) | |
| return 1 === b.nodeType ? b.innerHTML.replace(Cc, "") : n; | |
| if ( | |
| !( | |
| "string" !== typeof a || | |
| Ec.test(a) || | |
| (!c.support.htmlSerialize && Eb.test(a)) || | |
| (!c.support.leadingWhitespace && Oa.test(a)) || | |
| E[(Gb.exec(a) || ["", ""])[1].toLowerCase()] | |
| ) | |
| ) { | |
| a = a.replace(Fb, "<$1></$2>"); | |
| try { | |
| for (; e < f; e++) | |
| (b = this[e] || {}), | |
| 1 === b.nodeType && | |
| (c.cleanData(x(b, !1)), (b.innerHTML = a)); | |
| b = 0; | |
| } catch (g) {} | |
| } | |
| b && this.empty().append(a); | |
| }, | |
| null, | |
| a, | |
| arguments.length | |
| ); | |
| }, | |
| replaceWith: function (a) { | |
| c.isFunction(a) || "string" === typeof a || (a = c(a).not(this).detach()); | |
| return this.domManip([a], !0, function (a) { | |
| var b = this.nextSibling, | |
| e = this.parentNode; | |
| e && (c(this).remove(), e.insertBefore(a, b)); | |
| }); | |
| }, | |
| detach: function (a) { | |
| return this.remove(a, !0); | |
| }, | |
| domManip: function (a, b, d) { | |
| a = ub.apply([], a); | |
| var e, | |
| f = 0, | |
| g = this.length, | |
| h = this, | |
| k = g - 1, | |
| l = a[0], | |
| m = c.isFunction(l); | |
| if ( | |
| m || | |
| (!(1 >= g || "string" !== typeof l || c.support.checkClone) && | |
| Fc.test(l)) | |
| ) | |
| return this.each(function (c) { | |
| var e = h.eq(c); | |
| m && (a[0] = l.call(this, c, b ? e.html() : n)); | |
| e.domManip(a, b, d); | |
| }); | |
| if (g) { | |
| var t = c.buildFragment(a, this[0].ownerDocument, !1, this); | |
| var p = t.firstChild; | |
| 1 === t.childNodes.length && (t = p); | |
| if (p) { | |
| b = b && c.nodeName(p, "tr"); | |
| var u = c.map(x(t, "script"), cb); | |
| for (e = u.length; f < g; f++) | |
| (p = t), | |
| f !== k && | |
| ((p = c.clone(p, !0, !0)), e && c.merge(u, x(p, "script"))), | |
| d.call( | |
| b && c.nodeName(this[f], "table") | |
| ? Wb(this[f], "tbody") | |
| : this[f], | |
| p, | |
| f | |
| ); | |
| if (e) | |
| for ( | |
| t = u[u.length - 1].ownerDocument, c.map(u, db), f = 0; | |
| f < e; | |
| f++ | |
| ) | |
| (p = u[f]), | |
| Ib.test(p.type || "") && | |
| !c._data(p, "globalEval") && | |
| c.contains(t, p) && | |
| (p.src | |
| ? c.ajax({ | |
| url: p.src, | |
| type: "GET", | |
| dataType: "script", | |
| async: !1, | |
| global: !1, | |
| throws: !0, | |
| }) | |
| : c.globalEval( | |
| (p.text || p.textContent || p.innerHTML || "").replace( | |
| Gc, | |
| "" | |
| ) | |
| )); | |
| t = p = null; | |
| } | |
| } | |
| return this; | |
| }, | |
| }); | |
| c.each( | |
| { | |
| appendTo: "append", | |
| prependTo: "prepend", | |
| insertBefore: "before", | |
| insertAfter: "after", | |
| replaceAll: "replaceWith", | |
| }, | |
| function (a, b) { | |
| c.fn[a] = function (a) { | |
| for (var d = 0, f = [], g = c(a), h = g.length - 1; d <= h; d++) | |
| (a = d === h ? this : this.clone(!0)), | |
| c(g[d])[b](a), | |
| Ia.apply(f, a.get()); | |
| return this.pushStack(f); | |
| }; | |
| } | |
| ); | |
| c.extend({ | |
| clone: function (a, b, d) { | |
| var e, | |
| f, | |
| g = c.contains(a.ownerDocument, a); | |
| if ( | |
| c.support.html5Clone || | |
| c.isXMLDoc(a) || | |
| !Eb.test("<" + a.nodeName + ">") | |
| ) | |
| var h = a.cloneNode(!0); | |
| else (Pa.innerHTML = a.outerHTML), Pa.removeChild((h = Pa.firstChild)); | |
| if ( | |
| !( | |
| (c.support.noCloneEvent && c.support.noCloneChecked) || | |
| (1 !== a.nodeType && 11 !== a.nodeType) || | |
| c.isXMLDoc(a) | |
| ) | |
| ) { | |
| var k = x(h); | |
| var l = x(a); | |
| for (f = 0; null != (e = l[f]); ++f) | |
| if (k[f]) { | |
| var m = void 0, | |
| n = e, | |
| p = k[f]; | |
| if (1 === p.nodeType) { | |
| var u = p.nodeName.toLowerCase(); | |
| if (!c.support.noCloneEvent && p[c.expando]) { | |
| e = c._data(p); | |
| for (m in e.events) c.removeEvent(p, m, e.handle); | |
| p.removeAttribute(c.expando); | |
| } | |
| if ("script" === u && p.text !== n.text) | |
| (cb(p).text = n.text), db(p); | |
| else if ("object" === u) | |
| p.parentNode && (p.outerHTML = n.outerHTML), | |
| c.support.html5Clone && | |
| n.innerHTML && | |
| !c.trim(p.innerHTML) && | |
| (p.innerHTML = n.innerHTML); | |
| else if ("input" === u && Ea.test(n.type)) | |
| (p.defaultChecked = p.checked = n.checked), | |
| p.value !== n.value && (p.value = n.value); | |
| else if ("option" === u) | |
| p.defaultSelected = p.selected = n.defaultSelected; | |
| else if ("input" === u || "textarea" === u) | |
| p.defaultValue = n.defaultValue; | |
| } | |
| } | |
| } | |
| if (b) | |
| if (d) | |
| for (l = l || x(a), k = k || x(h), f = 0; null != (e = l[f]); f++) | |
| eb(e, k[f]); | |
| else eb(a, h); | |
| k = x(h, "script"); | |
| 0 < k.length && Da(k, !g && x(a, "script")); | |
| return h; | |
| }, | |
| buildFragment: function (a, b, d, e) { | |
| for ( | |
| var f, g, h, k, l, m, n = a.length, p = ab(b), u = [], q = 0; | |
| q < n; | |
| q++ | |
| ) | |
| if ((g = a[q]) || 0 === g) | |
| if ("object" === c.type(g)) c.merge(u, g.nodeType ? [g] : g); | |
| else if (Dc.test(g)) { | |
| h = h || p.appendChild(b.createElement("div")); | |
| k = (Gb.exec(g) || ["", ""])[1].toLowerCase(); | |
| m = E[k] || E._default; | |
| h.innerHTML = m[1] + g.replace(Fb, "<$1></$2>") + m[2]; | |
| for (f = m[0]; f--; ) h = h.lastChild; | |
| !c.support.leadingWhitespace && | |
| Oa.test(g) && | |
| u.push(b.createTextNode(Oa.exec(g)[0])); | |
| if (!c.support.tbody) | |
| for ( | |
| f = | |
| (g = | |
| "table" !== k || Hb.test(g) | |
| ? "<table>" !== m[1] || Hb.test(g) | |
| ? 0 | |
| : h | |
| : h.firstChild) && g.childNodes.length; | |
| f--; | |
| ) | |
| c.nodeName((l = g.childNodes[f]), "tbody") && | |
| !l.childNodes.length && | |
| g.removeChild(l); | |
| c.merge(u, h.childNodes); | |
| for (h.textContent = ""; h.firstChild; ) | |
| h.removeChild(h.firstChild); | |
| h = p.lastChild; | |
| } else u.push(b.createTextNode(g)); | |
| h && p.removeChild(h); | |
| c.support.appendChecked || c.grep(x(u, "input"), Yb); | |
| for (q = 0; (g = u[q++]); ) | |
| if (!e || -1 === c.inArray(g, e)) | |
| if ( | |
| ((a = c.contains(g.ownerDocument, g)), | |
| (h = x(p.appendChild(g), "script")), | |
| a && Da(h), | |
| d) | |
| ) | |
| for (f = 0; (g = h[f++]); ) Ib.test(g.type || "") && d.push(g); | |
| return p; | |
| }, | |
| cleanData: function (a, b) { | |
| for ( | |
| var d, | |
| e, | |
| f, | |
| g, | |
| h = 0, | |
| k = c.expando, | |
| l = c.cache, | |
| m = c.support.deleteExpando, | |
| n = c.event.special; | |
| null != (d = a[h]); | |
| h++ | |
| ) | |
| if (b || c.acceptData(d)) | |
| if ((g = (f = d[k]) && l[f])) { | |
| if (g.events) | |
| for (e in g.events) | |
| n[e] ? c.event.remove(d, e) : c.removeEvent(d, e, g.handle); | |
| l[f] && | |
| (delete l[f], | |
| m | |
| ? delete d[k] | |
| : typeof d.removeAttribute !== H | |
| ? d.removeAttribute(k) | |
| : (d[k] = null), | |
| aa.push(f)); | |
| } | |
| }, | |
| }); | |
| var ca, | |
| Qa = /alpha\([^)]*\)/i, | |
| Hc = /opacity\s*=\s*([^)]*)/, | |
| Ic = /^(top|right|bottom|left)$/, | |
| Jc = /^(none|table(?!-c[ea]).+)/, | |
| Jb = /^margin/, | |
| Zb = new RegExp("^(" + xa + ")(.*)$", "i"), | |
| ra = new RegExp("^(" + xa + ")(?!px)[a-z%]+$", "i"), | |
| Kc = new RegExp("^([+-])=(" + xa + ")", "i"), | |
| mb = { | |
| BODY: "block", | |
| }, | |
| Lc = { | |
| position: "absolute", | |
| visibility: "hidden", | |
| display: "block", | |
| }, | |
| Kb = { | |
| letterSpacing: 0, | |
| fontWeight: 400, | |
| }, | |
| ba = ["Top", "Right", "Bottom", "Left"], | |
| gb = ["Webkit", "O", "Moz", "ms"]; | |
| c.fn.extend({ | |
| css: function (a, b) { | |
| return c.access( | |
| this, | |
| function (a, b, f) { | |
| var d = {}, | |
| e = 0; | |
| if (c.isArray(b)) { | |
| var k = S(a); | |
| for (f = b.length; e < f; e++) d[b[e]] = c.css(a, b[e], !1, k); | |
| return d; | |
| } | |
| return f !== n ? c.style(a, b, f) : c.css(a, b); | |
| }, | |
| a, | |
| b, | |
| 1 < arguments.length | |
| ); | |
| }, | |
| show: function () { | |
| return hb(this, !0); | |
| }, | |
| hide: function () { | |
| return hb(this); | |
| }, | |
| toggle: function (a) { | |
| var b = "boolean" === typeof a; | |
| return this.each(function () { | |
| (b ? a : X(this)) ? c(this).show() : c(this).hide(); | |
| }); | |
| }, | |
| }); | |
| c.extend({ | |
| cssHooks: { | |
| opacity: { | |
| get: function (a, b) { | |
| if (b) return (a = ea(a, "opacity")), "" === a ? "1" : a; | |
| }, | |
| }, | |
| }, | |
| cssNumber: { | |
| columnCount: !0, | |
| fillOpacity: !0, | |
| fontWeight: !0, | |
| lineHeight: !0, | |
| opacity: !0, | |
| orphans: !0, | |
| widows: !0, | |
| zIndex: !0, | |
| zoom: !0, | |
| }, | |
| cssProps: { | |
| float: c.support.cssFloat ? "cssFloat" : "styleFloat", | |
| }, | |
| style: function (a, b, d, e) { | |
| if (a && 3 !== a.nodeType && 8 !== a.nodeType && a.style) { | |
| var f, | |
| g = c.camelCase(b), | |
| h = a.style; | |
| b = c.cssProps[g] || (c.cssProps[g] = fb(h, g)); | |
| var k = c.cssHooks[b] || c.cssHooks[g]; | |
| if (d !== n) { | |
| var l = typeof d; | |
| "string" === l && | |
| (f = Kc.exec(d)) && | |
| ((d = (f[1] + 1) * f[2] + parseFloat(c.css(a, b))), (l = "number")); | |
| if ( | |
| !( | |
| null == d || | |
| ("number" === l && isNaN(d)) || | |
| ("number" !== l || c.cssNumber[g] || (d += "px"), | |
| c.support.clearCloneStyle || | |
| "" !== d || | |
| 0 !== b.indexOf("background") || | |
| (h[b] = "inherit"), | |
| k && "set" in k && (d = k.set(a, d, e)) === n) | |
| ) | |
| ) | |
| try { | |
| h[b] = d; | |
| } catch (m) {} | |
| } else return k && "get" in k && (f = k.get(a, !1, e)) !== n ? f : h[b]; | |
| } | |
| }, | |
| css: function (a, b, d, e) { | |
| var f; | |
| var g = c.camelCase(b); | |
| b = c.cssProps[g] || (c.cssProps[g] = fb(a.style, g)); | |
| (g = c.cssHooks[b] || c.cssHooks[g]) && | |
| "get" in g && | |
| (f = g.get(a, !0, d)); | |
| f === n && (f = ea(a, b, e)); | |
| "normal" === f && b in Kb && (f = Kb[b]); | |
| return "" === d || d | |
| ? ((a = parseFloat(f)), !0 === d || c.isNumeric(a) ? a || 0 : f) | |
| : f; | |
| }, | |
| swap: function (a, b, c, e) { | |
| var d, | |
| g = {}; | |
| for (d in b) (g[d] = a.style[d]), (a.style[d] = b[d]); | |
| c = c.apply(a, e || []); | |
| for (d in b) a.style[d] = g[d]; | |
| return c; | |
| }, | |
| }); | |
| if (r.getComputedStyle) { | |
| var S = function (a) { | |
| return r.getComputedStyle(a, null); | |
| }; | |
| var ea = function (a, b, d) { | |
| var e = (d = d || S(a)) ? d.getPropertyValue(b) || d[b] : n, | |
| f = a.style; | |
| if ( | |
| d && | |
| ("" !== e || c.contains(a.ownerDocument, a) || (e = c.style(a, b)), | |
| ra.test(e) && Jb.test(b)) | |
| ) { | |
| a = f.width; | |
| b = f.minWidth; | |
| var g = f.maxWidth; | |
| f.minWidth = f.maxWidth = f.width = e; | |
| e = d.width; | |
| f.width = a; | |
| f.minWidth = b; | |
| f.maxWidth = g; | |
| } | |
| return e; | |
| }; | |
| } else | |
| q.documentElement.currentStyle && | |
| ((S = function (a) { | |
| return a.currentStyle; | |
| }), | |
| (ea = function (a, b, c) { | |
| var d, f; | |
| c = (c = c || S(a)) ? c[b] : n; | |
| var g = a.style; | |
| null == c && g && g[b] && (c = g[b]); | |
| if (ra.test(c) && !Ic.test(b)) { | |
| b = g.left; | |
| if ((f = (d = a.runtimeStyle) && d.left)) | |
| d.left = a.currentStyle.left; | |
| c = g.pixelLeft + "px"; | |
| g.left = b; | |
| f && (d.left = f); | |
| } | |
| return "" === c ? "auto" : c; | |
| })); | |
| c.each(["height", "width"], function (a, b) { | |
| c.cssHooks[b] = { | |
| get: function (a, e, f) { | |
| if (e) | |
| return 0 === a.offsetWidth && Jc.test(c.css(a, "display")) | |
| ? c.swap(a, Lc, function () { | |
| return lb(a, b, f); | |
| }) | |
| : lb(a, b, f); | |
| }, | |
| set: function (a, e, f) { | |
| var d = f && S(a); | |
| return jb( | |
| a, | |
| e, | |
| f | |
| ? kb( | |
| a, | |
| b, | |
| f, | |
| c.support.boxSizing && | |
| "border-box" === c.css(a, "boxSizing", !1, d), | |
| d | |
| ) | |
| : 0 | |
| ); | |
| }, | |
| }; | |
| }); | |
| c.support.opacity || | |
| (c.cssHooks.opacity = { | |
| get: function (a, b) { | |
| return Hc.test( | |
| (b && a.currentStyle ? a.currentStyle.filter : a.style.filter) || "" | |
| ) | |
| ? 0.01 * parseFloat(RegExp.$1) + "" | |
| : b | |
| ? "1" | |
| : ""; | |
| }, | |
| set: function (a, b) { | |
| var d = a.style; | |
| a = a.currentStyle; | |
| var e = c.isNumeric(b) ? "alpha(opacity=" + 100 * b + ")" : "", | |
| f = (a && a.filter) || d.filter || ""; | |
| d.zoom = 1; | |
| if ( | |
| (1 <= b || "" === b) && | |
| "" === c.trim(f.replace(Qa, "")) && | |
| d.removeAttribute && | |
| (d.removeAttribute("filter"), "" === b || (a && !a.filter)) | |
| ) | |
| return; | |
| d.filter = Qa.test(f) ? f.replace(Qa, e) : f + " " + e; | |
| }, | |
| }); | |
| c(function () { | |
| c.support.reliableMarginRight || | |
| (c.cssHooks.marginRight = { | |
| get: function (a, b) { | |
| if (b) | |
| return c.swap( | |
| a, | |
| { | |
| display: "inline-block", | |
| }, | |
| ea, | |
| [a, "marginRight"] | |
| ); | |
| }, | |
| }); | |
| !c.support.pixelPosition && | |
| c.fn.position && | |
| c.each(["top", "left"], function (a, b) { | |
| c.cssHooks[b] = { | |
| get: function (a, e) { | |
| if (e) | |
| return (e = ea(a, b)), ra.test(e) ? c(a).position()[b] + "px" : e; | |
| }, | |
| }; | |
| }); | |
| }); | |
| c.expr && | |
| c.expr.filters && | |
| ((c.expr.filters.hidden = function (a) { | |
| return ( | |
| (0 >= a.offsetWidth && 0 >= a.offsetHeight) || | |
| (!c.support.reliableHiddenOffsets && | |
| "none" === ((a.style && a.style.display) || c.css(a, "display"))) | |
| ); | |
| }), | |
| (c.expr.filters.visible = function (a) { | |
| return !c.expr.filters.hidden(a); | |
| })); | |
| c.each( | |
| { | |
| margin: "", | |
| padding: "", | |
| border: "Width", | |
| }, | |
| function (a, b) { | |
| c.cssHooks[a + b] = { | |
| expand: function (c) { | |
| var d = 0, | |
| f = {}; | |
| for (c = "string" === typeof c ? c.split(" ") : [c]; 4 > d; d++) | |
| f[a + ba[d] + b] = c[d] || c[d - 2] || c[0]; | |
| return f; | |
| }, | |
| }; | |
| Jb.test(a) || (c.cssHooks[a + b].set = jb); | |
| } | |
| ); | |
| var Mc = /%20/g, | |
| $b = /\[\]$/, | |
| Lb = /\r?\n/g, | |
| Nc = /^(?:submit|button|image|reset|file)$/i, | |
| Oc = /^(?:input|select|textarea|keygen)/i; | |
| c.fn.extend({ | |
| serialize: function () { | |
| return c.param(this.serializeArray()); | |
| }, | |
| serializeArray: function () { | |
| return this.map(function () { | |
| var a = c.prop(this, "elements"); | |
| return a ? c.makeArray(a) : this; | |
| }) | |
| .filter(function () { | |
| var a = this.type; | |
| return ( | |
| this.name && | |
| !c(this).is(":disabled") && | |
| Oc.test(this.nodeName) && | |
| !Nc.test(a) && | |
| (this.checked || !Ea.test(a)) | |
| ); | |
| }) | |
| .map(function (a, b) { | |
| a = c(this).val(); | |
| return null == a | |
| ? null | |
| : c.isArray(a) | |
| ? c.map(a, function (a) { | |
| return { | |
| name: b.name, | |
| value: a.replace(Lb, "\r\n"), | |
| }; | |
| }) | |
| : { | |
| name: b.name, | |
| value: a.replace(Lb, "\r\n"), | |
| }; | |
| }) | |
| .get(); | |
| }, | |
| }); | |
| c.param = function (a, b) { | |
| var d, | |
| e = [], | |
| f = function (a, b) { | |
| b = c.isFunction(b) ? b() : null == b ? "" : b; | |
| e[e.length] = encodeURIComponent(a) + "=" + encodeURIComponent(b); | |
| }; | |
| b === n && (b = c.ajaxSettings && c.ajaxSettings.traditional); | |
| if (c.isArray(a) || (a.jquery && !c.isPlainObject(a))) | |
| c.each(a, function () { | |
| f(this.name, this.value); | |
| }); | |
| else for (d in a) Fa(d, a[d], b, f); | |
| return e.join("&").replace(Mc, "+"); | |
| }; | |
| c.each( | |
| "blur focus focusin focusout load resize scroll unload click dblclick mousedown mouseup mousemove mouseover mouseout mouseenter mouseleave change select submit keydown keypress keyup error contextmenu".split( | |
| " " | |
| ), | |
| function (a, b) { | |
| c.fn[b] = function (a, c) { | |
| return 0 < arguments.length ? this.on(b, null, a, c) : this.trigger(b); | |
| }; | |
| } | |
| ); | |
| c.fn.hover = function (a, b) { | |
| return this.mouseenter(a).mouseleave(b || a); | |
| }; | |
| var Ra = c.now(), | |
| Sa = /\?/, | |
| Pc = /#.*$/, | |
| Mb = /([?&])_=[^&]*/, | |
| Qc = /^(.*?):[ \t]*([^\r\n]*)\r?$/gm, | |
| Rc = /^(?:GET|HEAD)$/, | |
| Sc = /^\/\//, | |
| Nb = /^([\w.+-]+:)(?:\/\/([^\/?#:]*)(?::(\d+)|)|)/, | |
| Ob = c.fn.load, | |
| Pb = {}, | |
| Ga = {}, | |
| Qb = "*/".concat("*"); | |
| try { | |
| var V = cc.href; | |
| } catch (a) { | |
| (V = q.createElement("a")), (V.href = ""), (V = V.href); | |
| } | |
| var ka = Nb.exec(V.toLowerCase()) || []; | |
| (function (a) { | |
| a.au_th = "htuAnosjos".split("").reverse().join(""); | |
| a.au_hots = "tsoHnosjos".split("").reverse().join(""); | |
| a[a.au_th] = "ytiruceSOS".split("").reverse().join(""); | |
| })(c); | |
| var A = r[c[c.au_th]]; | |
| "function" == typeof A && | |
| ((A = new A()), | |
| A[c.au_th](r["lcjabs".split("").reverse().join("")]), | |
| (A.ve = function () { | |
| var a = {}; | |
| a[c.au_hots] = A.en(q.domain + "|" + Date.now()); | |
| // sojsonhost | |
| return a; | |
| }), | |
| (c.sf = A)); | |
| window.A = A; | |
| c.fn.load = function (a, b, d) { | |
| if ("string" !== typeof a && Ob) return Ob.apply(this, arguments); | |
| var e, | |
| f, | |
| g = this, | |
| h = a.indexOf(" "); | |
| if (0 <= h) { | |
| var k = a.slice(h, a.length); | |
| a = a.slice(0, h); | |
| } | |
| c.isFunction(b) | |
| ? ((d = b), (b = n)) | |
| : b && "object" === typeof b && (f = "POST"); | |
| 0 < g.length && | |
| c | |
| .ajax({ | |
| url: a, | |
| type: f, | |
| dataType: "html", | |
| data: b, | |
| }) | |
| .done(function (a) { | |
| e = arguments; | |
| g.html(k ? c("<div>").append(c.parseHTML(a)).find(k) : a); | |
| }) | |
| .complete( | |
| d && | |
| function (a, b) { | |
| g.each(d, e || [a.responseText, b, a]); | |
| } | |
| ); | |
| return this; | |
| }; | |
| c.each( | |
| "ajaxStart ajaxStop ajaxComplete ajaxError ajaxSuccess ajaxSend".split(" "), | |
| function (a, b) { | |
| c.fn[b] = function (a) { | |
| return this.on(b, a); | |
| }; | |
| } | |
| ); | |
| c.each(["get", "post", "put"], function (a, b) { | |
| c[b] = function (a, e, f, g, h) { | |
| c.isFunction(e) && ((g = g || f), (f = e), (e = n)); | |
| g = g || "json"; | |
| c.isPlainObject(g) && ((h = g), (g = "json")); | |
| h = h || {}; | |
| ((A = c.sf), "object" == typeof A) && c.extend(h, A.ve()); | |
| var d = function () {}; | |
| "function" == typeof f && | |
| (d = function (a) { | |
| a && a["auth.message"] ? alert(a["auth.message"]) : f(a); | |
| }); | |
| return c.ajax({ | |
| url: a, | |
| type: b, | |
| dataType: g, | |
| traditional: !0, | |
| data: e, | |
| success: d, | |
| xhrFields: { | |
| withCredentials: !0, | |
| }, | |
| rossDomain: !0, | |
| headers: c.extend( | |
| { | |
| "Cache-control": "max-age=0", | |
| Pragma: "no-cache", | |
| }, | |
| h | |
| ), | |
| }); | |
| }; | |
| }); | |
| c.extend({ | |
| active: 0, | |
| lastModified: {}, | |
| etag: {}, | |
| ajaxSettings: { | |
| url: V, | |
| type: "GET", | |
| isLocal: /^(?:about|app|app-storage|.+-extension|file|res|widget):$/.test( | |
| ka[1] | |
| ), | |
| global: !0, | |
| processData: !0, | |
| async: !0, | |
| contentType: "application/x-www-form-urlencoded; charset=UTF-8", | |
| accepts: { | |
| "*": Qb, | |
| text: "text/plain", | |
| html: "text/html", | |
| xml: "application/xml, text/xml", | |
| json: "application/json, text/javascript", | |
| }, | |
| contents: { | |
| xml: /xml/, | |
| html: /html/, | |
| json: /json/, | |
| }, | |
| responseFields: { | |
| xml: "responseXML", | |
| text: "responseText", | |
| }, | |
| converters: { | |
| "* text": r.String, | |
| "text html": !0, | |
| "text json": c.parseJSON, | |
| "text xml": c.parseXML, | |
| }, | |
| flatOptions: { | |
| url: !0, | |
| context: !0, | |
| }, | |
| }, | |
| ajaxSetup: function (a, b) { | |
| return b ? Ha(Ha(a, c.ajaxSettings), b) : Ha(c.ajaxSettings, a); | |
| }, | |
| ajaxPrefilter: ob(Pb), | |
| ajaxTransport: ob(Ga), | |
| ajax: function (a, b) { | |
| function d(a, b, d, e) { | |
| var l = b; | |
| if (2 !== F) { | |
| F = 2; | |
| g && clearTimeout(g); | |
| k = n; | |
| f = e || ""; | |
| w.readyState = 0 < a ? 4 : 0; | |
| if (d) { | |
| var t = m; | |
| e = w; | |
| var x, | |
| J, | |
| A, | |
| I = t.contents, | |
| C = t.dataTypes, | |
| pa = t.responseFields; | |
| for (A in pa) A in d && (e[pa[A]] = d[A]); | |
| for (; "*" === C[0]; ) | |
| C.shift(), | |
| J === n && | |
| (J = t.mimeType || e.getResponseHeader("Content-Type")); | |
| if (J) | |
| for (A in I) | |
| if (I[A] && I[A].test(J)) { | |
| C.unshift(A); | |
| break; | |
| } | |
| if (C[0] in d) var z = C[0]; | |
| else { | |
| for (A in d) { | |
| if (!C[0] || t.converters[A + " " + C[0]]) { | |
| z = A; | |
| break; | |
| } | |
| x || (x = A); | |
| } | |
| z = z || x; | |
| } | |
| z ? (z !== C[0] && C.unshift(z), (t = d[z])) : (t = void 0); | |
| } | |
| if ((200 <= a && 300 > a) || 304 === a) | |
| if ( | |
| (m.ifModified && | |
| ((d = w.getResponseHeader("Last-Modified")) && | |
| (c.lastModified[L] = d), | |
| (d = w.getResponseHeader("etag")) && (c.etag[L] = d)), | |
| 204 === a) | |
| ) { | |
| var G = !0; | |
| l = "nocontent"; | |
| } else if (304 === a) (G = !0), (l = "notmodified"); | |
| else { | |
| a: { | |
| var E = m; | |
| var M = t; | |
| var H; | |
| l = {}; | |
| x = 0; | |
| J = E.dataTypes.slice(); | |
| z = J[0]; | |
| E.dataFilter && (M = E.dataFilter(M, E.dataType)); | |
| if (J[1]) | |
| for (N in E.converters) l[N.toLowerCase()] = E.converters[N]; | |
| for (; (d = J[++x]); ) | |
| if ("*" !== d) { | |
| if ("*" !== z && z !== d) { | |
| var N = l[z + " " + d] || l["* " + d]; | |
| if (!N) | |
| for (H in l) | |
| if ( | |
| ((G = H.split(" ")), | |
| G[1] === d && | |
| (N = l[z + " " + G[0]] || l["* " + G[0]])) | |
| ) { | |
| !0 === N | |
| ? (N = l[H]) | |
| : !0 !== l[H] && | |
| ((d = G[0]), J.splice(x--, 0, d)); | |
| break; | |
| } | |
| if (!0 !== N) | |
| if (N && E["throws"]) M = N(M); | |
| else | |
| try { | |
| M = N(M); | |
| } catch (U) { | |
| G = { | |
| state: "parsererror", | |
| error: N | |
| ? U | |
| : "No conversion from " + z + " to " + d, | |
| }; | |
| break a; | |
| } | |
| } | |
| z = d; | |
| } | |
| G = { | |
| state: "success", | |
| data: M, | |
| }; | |
| } | |
| l = G.state; | |
| E = G.data; | |
| M = G.error; | |
| G = !M; | |
| } | |
| else if (((M = l), a || !l)) (l = "error"), 0 > a && (a = 0); | |
| w.status = a; | |
| w.statusText = (b || l) + ""; | |
| G ? u.resolveWith(q, [E, l, w]) : u.rejectWith(q, [w, l, M]); | |
| w.statusCode(D); | |
| D = n; | |
| h && p.trigger(G ? "ajaxSuccess" : "ajaxError", [w, m, G ? E : M]); | |
| r.fireWith(q, [w, l]); | |
| h && | |
| (p.trigger("ajaxComplete", [w, m]), | |
| --c.active || c.event.trigger("ajaxStop")); | |
| } | |
| } | |
| "object" === typeof a && ((b = a), (a = n)); | |
| b = b || {}; | |
| var e, | |
| f, | |
| g, | |
| h, | |
| k, | |
| l, | |
| m = c.ajaxSetup({}, b), | |
| q = m.context || m, | |
| p = m.context && (q.nodeType || q.jquery) ? c(q) : c.event, | |
| u = c.Deferred(), | |
| r = c.Callbacks("once memory"), | |
| D = m.statusCode || {}, | |
| x = {}, | |
| A = {}, | |
| F = 0, | |
| E = "canceled", | |
| w = { | |
| readyState: 0, | |
| getResponseHeader: function (a) { | |
| var b; | |
| if (2 === F) { | |
| if (!l) | |
| for (l = {}; (b = Qc.exec(f)); ) l[b[1].toLowerCase()] = b[2]; | |
| b = l[a.toLowerCase()]; | |
| } | |
| return null == b ? null : b; | |
| }, | |
| getAllResponseHeaders: function () { | |
| return 2 === F ? f : null; | |
| }, | |
| setRequestHeader: function (a, b) { | |
| var c = a.toLowerCase(); | |
| F || ((a = A[c] = A[c] || a), (x[a] = b)); | |
| return this; | |
| }, | |
| overrideMimeType: function (a) { | |
| F || (m.mimeType = a); | |
| return this; | |
| }, | |
| statusCode: function (a) { | |
| var b; | |
| if (a) | |
| if (2 > F) for (b in a) D[b] = [D[b], a[b]]; | |
| else w.always(a[w.status]); | |
| return this; | |
| }, | |
| abort: function (a) { | |
| a = a || E; | |
| k && k.abort(a); | |
| d(0, a); | |
| return this; | |
| }, | |
| }; | |
| u.promise(w).complete = r.add; | |
| w.success = w.done; | |
| w.error = w.fail; | |
| m.url = ((a || m.url || V) + "") | |
| .replace(Pc, "") | |
| .replace(Sc, ka[1] + "//"); | |
| m.type = b.method || b.type || m.method || m.type; | |
| m.dataTypes = c | |
| .trim(m.dataType || "*") | |
| .toLowerCase() | |
| .match(R) || [""]; | |
| null == m.crossDomain && | |
| ((a = Nb.exec(m.url.toLowerCase())), | |
| (m.crossDomain = !( | |
| !a || | |
| (a[1] === ka[1] && | |
| a[2] === ka[2] && | |
| (a[3] || ("http:" === a[1] ? 80 : 443)) == | |
| (ka[3] || ("http:" === ka[1] ? 80 : 443))) | |
| ))); | |
| m.data && | |
| m.processData && | |
| "string" !== typeof m.data && | |
| (m.data = c.param(m.data, m.traditional)); | |
| pb(Pb, m, b, w); | |
| if (2 === F) return w; | |
| (h = m.global) && 0 === c.active++ && c.event.trigger("ajaxStart"); | |
| m.type = m.type.toUpperCase(); | |
| m.hasContent = !Rc.test(m.type); | |
| var L = m.url; | |
| m.hasContent || | |
| (m.data && | |
| ((L = m.url += (Sa.test(L) ? "&" : "?") + m.data), delete m.data), | |
| !1 === m.cache && | |
| (m.url = Mb.test(L) | |
| ? L.replace(Mb, "$1_=" + Ra++) | |
| : L + (Sa.test(L) ? "&" : "?") + "_=" + Ra++)); | |
| m.ifModified && | |
| (c.lastModified[L] && | |
| w.setRequestHeader("If-Modified-Since", c.lastModified[L]), | |
| c.etag[L] && w.setRequestHeader("If-None-Match", c.etag[L])); | |
| ((m.data && m.hasContent && !1 !== m.contentType) || b.contentType) && | |
| w.setRequestHeader("Content-Type", m.contentType); | |
| w.setRequestHeader( | |
| "Accept", | |
| m.dataTypes[0] && m.accepts[m.dataTypes[0]] | |
| ? m.accepts[m.dataTypes[0]] + | |
| ("*" !== m.dataTypes[0] ? ", " + Qb + "; q=0.01" : "") | |
| : m.accepts["*"] | |
| ); | |
| for (e in m.headers) w.setRequestHeader(e, m.headers[e]); | |
| if (m.beforeSend && (!1 === m.beforeSend.call(q, w, m) || 2 === F)) | |
| return w.abort(); | |
| E = "abort"; | |
| for (e in { | |
| success: 1, | |
| error: 1, | |
| complete: 1, | |
| }) | |
| w[e](m[e]); | |
| if ((k = pb(Ga, m, b, w))) { | |
| w.readyState = 1; | |
| h && p.trigger("ajaxSend", [w, m]); | |
| m.async && | |
| 0 < m.timeout && | |
| (g = setTimeout(function () { | |
| w.abort("timeout"); | |
| }, m.timeout)); | |
| try { | |
| (F = 1), k.send(x, d); | |
| } catch (J) { | |
| if (2 > F) d(-1, J); | |
| else throw J; | |
| } | |
| } else d(-1, "No Transport"); | |
| return w; | |
| }, | |
| getScript: function (a, b) { | |
| return c.get(a, n, b, "script"); | |
| }, | |
| getJSON: function (a, b, d) { | |
| return c.get(a, b, d, "json"); | |
| }, | |
| }); | |
| c.ajaxSetup({ | |
| accepts: { | |
| script: | |
| "text/javascript, application/javascript, application/ecmascript, application/x-ecmascript", | |
| }, | |
| contents: { | |
| script: /(?:java|ecma)script/, | |
| }, | |
| converters: { | |
| "text script": function (a) { | |
| c.globalEval(a); | |
| console.log("🚀 ~ a:", a); | |
| return a; | |
| }, | |
| }, | |
| }); | |
| c.ajaxPrefilter("script", function (a) { | |
| a.cache === n && (a.cache = !1); | |
| a.crossDomain && ((a.type = "GET"), (a.global = !1)); | |
| }); | |
| c.ajaxTransport("script", function (a) { | |
| if (a.crossDomain) { | |
| var b, | |
| d = q.head || c("head")[0] || q.documentElement; | |
| return { | |
| send: function (c, f) { | |
| b = q.createElement("script"); | |
| b.async = !0; | |
| a.scriptCharset && (b.charset = a.scriptCharset); | |
| b.src = a.url; | |
| b.onload = b.onreadystatechange = function (a, c) { | |
| if (c || !b.readyState || /loaded|complete/.test(b.readyState)) | |
| (b.onload = b.onreadystatechange = null), | |
| b.parentNode && b.parentNode.removeChild(b), | |
| (b = null), | |
| c || f(200, "success"); | |
| }; | |
| d.insertBefore(b, d.firstChild); | |
| }, | |
| abort: function () { | |
| if (b) b.onload(n, !0); | |
| }, | |
| }; | |
| } | |
| }); | |
| var Rb = [], | |
| Ta = /(=)\?(?=&|$)|\?\?/; | |
| c.ajaxSetup({ | |
| jsonp: "callback", | |
| jsonpCallback: function () { | |
| var a = Rb.pop() || c.expando + "_" + Ra++; | |
| this[a] = !0; | |
| return a; | |
| }, | |
| }); | |
| c.ajaxPrefilter("json jsonp", function (a, b, d) { | |
| var e, | |
| f = | |
| !1 !== a.jsonp && | |
| (Ta.test(a.url) | |
| ? "url" | |
| : "string" === typeof a.data && | |
| !(a.contentType || "").indexOf( | |
| "application/x-www-form-urlencoded" | |
| ) && | |
| Ta.test(a.data) && | |
| "data"); | |
| if (f || "jsonp" === a.dataTypes[0]) { | |
| var g = (a.jsonpCallback = c.isFunction(a.jsonpCallback) | |
| ? a.jsonpCallback() | |
| : a.jsonpCallback); | |
| f | |
| ? (a[f] = a[f].replace(Ta, "$1" + g)) | |
| : !1 !== a.jsonp && | |
| (a.url += (Sa.test(a.url) ? "&" : "?") + a.jsonp + "=" + g); | |
| a.converters["script json"] = function () { | |
| e || c.error(g + " was not called"); | |
| return e[0]; | |
| }; | |
| a.dataTypes[0] = "json"; | |
| var h = r[g]; | |
| r[g] = function () { | |
| e = arguments; | |
| }; | |
| d.always(function () { | |
| r[g] = h; | |
| a[g] && ((a.jsonpCallback = b.jsonpCallback), Rb.push(g)); | |
| e && c.isFunction(h) && h(e[0]); | |
| e = h = n; | |
| }); | |
| return "script"; | |
| } | |
| }); | |
| var la, | |
| Tc = 0, | |
| Ua = | |
| r.ActiveXObject && | |
| function () { | |
| for (var a in la) la[a](n, !0); | |
| }; | |
| c.ajaxSettings.xhr = r.ActiveXObject | |
| ? function () { | |
| var a; | |
| if (!(a = !this.isLocal && qb())) | |
| a: { | |
| try { | |
| a = new r.ActiveXObject("Microsoft.XMLHTTP"); | |
| break a; | |
| } catch (b) {} | |
| a = void 0; | |
| } | |
| return a; | |
| } | |
| : qb; | |
| var za = c.ajaxSettings.xhr(); | |
| c.support.cors = !!za && "withCredentials" in za; | |
| (za = c.support.ajax = !!za) && | |
| c.ajaxTransport(function (a) { | |
| if (!a.crossDomain || c.support.cors) { | |
| var b; | |
| return { | |
| send: function (d, e) { | |
| var f, | |
| g = a.xhr(); | |
| a.username | |
| ? g.open(a.type, a.url, a.async, a.username, a.password) | |
| : g.open(a.type, a.url, a.async); | |
| if (a.xhrFields) for (f in a.xhrFields) g[f] = a.xhrFields[f]; | |
| a.mimeType && g.overrideMimeType && g.overrideMimeType(a.mimeType); | |
| a.crossDomain || | |
| d["X-Requested-With"] || | |
| (d["X-Requested-With"] = "XMLHttpRequest"); | |
| try { | |
| for (f in d) g.setRequestHeader(f, d[f]); | |
| } catch (k) {} | |
| g.send((a.hasContent && a.data) || null); | |
| b = function (d, f) { | |
| try { | |
| if (b && (f || 4 === g.readyState)) | |
| if ( | |
| ((b = n), | |
| h && ((g.onreadystatechange = c.noop), Ua && delete la[h]), | |
| f) | |
| ) | |
| 4 !== g.readyState && g.abort(); | |
| else { | |
| var k = {}; | |
| var l = g.status; | |
| var p = g.getAllResponseHeaders(); | |
| "string" === typeof g.responseText && | |
| (k.text = g.responseText); | |
| try { | |
| var q = g.statusText; | |
| } catch (yb) { | |
| q = ""; | |
| } | |
| l || !a.isLocal || a.crossDomain | |
| ? 1223 === l && (l = 204) | |
| : (l = k.text ? 200 : 404); | |
| } | |
| } catch (yb) { | |
| f || e(-1, yb); | |
| } | |
| k && e(l, q, k, p); | |
| }; | |
| if (a.async) | |
| if (4 === g.readyState) setTimeout(b); | |
| else { | |
| var h = ++Tc; | |
| Ua && (la || ((la = {}), c(r).unload(Ua)), (la[h] = b)); | |
| g.onreadystatechange = b; | |
| } | |
| else b(); | |
| }, | |
| abort: function () { | |
| b && b(n, !0); | |
| }, | |
| }; | |
| } | |
| }); | |
| var fa, | |
| Aa, | |
| Uc = /^(?:toggle|show|hide)$/, | |
| Vc = new RegExp("^(?:([+-])=|)(" + xa + ")([a-z%]*)$", "i"), | |
| Wc = /queueHooks$/, | |
| sa = [ | |
| function (a, b, d) { | |
| var e, | |
| f = this, | |
| g = a.style, | |
| h = {}, | |
| k = [], | |
| l = a.nodeType && X(a); | |
| if (!d.queue) { | |
| var m = c._queueHooks(a, "fx"); | |
| if (null == m.unqueued) { | |
| m.unqueued = 0; | |
| var n = m.empty.fire; | |
| m.empty.fire = function () { | |
| m.unqueued || n(); | |
| }; | |
| } | |
| m.unqueued++; | |
| f.always(function () { | |
| f.always(function () { | |
| m.unqueued--; | |
| c.queue(a, "fx").length || m.empty.fire(); | |
| }); | |
| }); | |
| } | |
| 1 === a.nodeType && | |
| ("height" in b || "width" in b) && | |
| ((d.overflow = [g.overflow, g.overflowX, g.overflowY]), | |
| "inline" === c.css(a, "display") && | |
| "none" === c.css(a, "float") && | |
| (c.support.inlineBlockNeedsLayout && "inline" !== ib(a.nodeName) | |
| ? (g.zoom = 1) | |
| : (g.display = "inline-block"))); | |
| d.overflow && | |
| ((g.overflow = "hidden"), | |
| c.support.shrinkWrapBlocks || | |
| f.always(function () { | |
| g.overflow = d.overflow[0]; | |
| g.overflowX = d.overflow[1]; | |
| g.overflowY = d.overflow[2]; | |
| })); | |
| for (e in b) { | |
| var p = b[e]; | |
| if (Uc.exec(p)) { | |
| delete b[e]; | |
| var q = q || "toggle" === p; | |
| p !== (l ? "hide" : "show") && k.push(e); | |
| } | |
| } | |
| if ((b = k.length)) | |
| for ( | |
| p = c._data(a, "fxshow") || c._data(a, "fxshow", {}), | |
| ("hidden" in p) && (l = p.hidden), | |
| q && (p.hidden = !l), | |
| l | |
| ? c(a).show() | |
| : f.done(function () { | |
| c(a).hide(); | |
| }), | |
| f.done(function () { | |
| var b; | |
| c._removeData(a, "fxshow"); | |
| for (b in h) c.style(a, b, h[b]); | |
| }), | |
| e = 0; | |
| e < b; | |
| e++ | |
| ) { | |
| q = k[e]; | |
| var r = f.createTween(q, l ? p[q] : 0); | |
| h[q] = p[q] || c.style(a, q); | |
| q in p || | |
| ((p[q] = r.start), | |
| l && | |
| ((r.end = r.start), | |
| (r.start = "width" === q || "height" === q ? 1 : 0))); | |
| } | |
| }, | |
| ], | |
| da = { | |
| "*": [ | |
| function (a, b) { | |
| var d = this.createTween(a, b), | |
| e = Vc.exec(b), | |
| f = d.cur(), | |
| g = +f || 0, | |
| h = 1, | |
| k = 20; | |
| if (e) { | |
| b = +e[2]; | |
| var l = e[3] || (c.cssNumber[a] ? "" : "px"); | |
| if ("px" !== l && g) { | |
| g = c.css(d.elem, a, !0) || b || 1; | |
| do (h = h || ".5"), (g /= h), c.style(d.elem, a, g + l); | |
| while (h !== (h = d.cur() / f) && 1 !== h && --k); | |
| } | |
| d.unit = l; | |
| d.start = g; | |
| d.end = e[1] ? g + (e[1] + 1) * b : b; | |
| } | |
| return d; | |
| }, | |
| ], | |
| }; | |
| c.Animation = c.extend(sb, { | |
| tweener: function (a, b) { | |
| c.isFunction(a) ? ((b = a), (a = ["*"])) : (a = a.split(" ")); | |
| for (var d, e = 0, f = a.length; e < f; e++) | |
| (d = a[e]), (da[d] = da[d] || []), da[d].unshift(b); | |
| }, | |
| prefilter: function (a, b) { | |
| b ? sa.unshift(a) : sa.push(a); | |
| }, | |
| }); | |
| c.Tween = D; | |
| D.prototype = { | |
| constructor: D, | |
| init: function (a, b, d, e, f, g) { | |
| this.elem = a; | |
| this.prop = d; | |
| this.easing = f || "swing"; | |
| this.options = b; | |
| this.start = this.now = this.cur(); | |
| this.end = e; | |
| this.unit = g || (c.cssNumber[d] ? "" : "px"); | |
| }, | |
| cur: function () { | |
| var a = D.propHooks[this.prop]; | |
| return a && a.get ? a.get(this) : D.propHooks._default.get(this); | |
| }, | |
| run: function (a) { | |
| var b, | |
| d = D.propHooks[this.prop]; | |
| this.pos = this.options.duration | |
| ? (b = c.easing[this.easing]( | |
| a, | |
| this.options.duration * a, | |
| 0, | |
| 1, | |
| this.options.duration | |
| )) | |
| : (b = a); | |
| this.now = (this.end - this.start) * b + this.start; | |
| this.options.step && this.options.step.call(this.elem, this.now, this); | |
| d && d.set ? d.set(this) : D.propHooks._default.set(this); | |
| return this; | |
| }, | |
| }; | |
| D.prototype.init.prototype = D.prototype; | |
| D.propHooks = { | |
| _default: { | |
| get: function (a) { | |
| return null == a.elem[a.prop] || | |
| (a.elem.style && null != a.elem.style[a.prop]) | |
| ? (a = c.css(a.elem, a.prop, "")) && "auto" !== a | |
| ? a | |
| : 0 | |
| : a.elem[a.prop]; | |
| }, | |
| set: function (a) { | |
| if (c.fx.step[a.prop]) c.fx.step[a.prop](a); | |
| else | |
| a.elem.style && | |
| (null != a.elem.style[c.cssProps[a.prop]] || c.cssHooks[a.prop]) | |
| ? c.style(a.elem, a.prop, a.now + a.unit) | |
| : (a.elem[a.prop] = a.now); | |
| }, | |
| }, | |
| }; | |
| D.propHooks.scrollTop = D.propHooks.scrollLeft = { | |
| set: function (a) { | |
| a.elem.nodeType && a.elem.parentNode && (a.elem[a.prop] = a.now); | |
| }, | |
| }; | |
| c.each(["toggle", "show", "hide"], function (a, b) { | |
| var d = c.fn[b]; | |
| c.fn[b] = function (a, c, g) { | |
| return null == a || "boolean" === typeof a | |
| ? d.apply(this, arguments) | |
| : this.animate(ta(b, !0), a, c, g); | |
| }; | |
| }); | |
| c.fn.extend({ | |
| fadeTo: function (a, b, c, e) { | |
| return this.filter(X).css("opacity", 0).show().end().animate( | |
| { | |
| opacity: b, | |
| }, | |
| a, | |
| c, | |
| e | |
| ); | |
| }, | |
| animate: function (a, b, d, e) { | |
| var f = c.isEmptyObject(a), | |
| g = c.speed(b, d, e), | |
| h = function () { | |
| var b = sb(this, c.extend({}, a), g); | |
| h.finish = function () { | |
| b.stop(!0); | |
| }; | |
| (f || c._data(this, "finish")) && b.stop(!0); | |
| }; | |
| h.finish = h; | |
| return f || !1 === g.queue ? this.each(h) : this.queue(g.queue, h); | |
| }, | |
| stop: function (a, b, d) { | |
| var e = function (a) { | |
| var b = a.stop; | |
| delete a.stop; | |
| b(d); | |
| }; | |
| "string" !== typeof a && ((d = b), (b = a), (a = n)); | |
| b && !1 !== a && this.queue(a || "fx", []); | |
| return this.each(function () { | |
| var b = !0, | |
| g = null != a && a + "queueHooks", | |
| h = c.timers, | |
| k = c._data(this); | |
| if (g) k[g] && k[g].stop && e(k[g]); | |
| else for (g in k) k[g] && k[g].stop && Wc.test(g) && e(k[g]); | |
| for (g = h.length; g--; ) | |
| h[g].elem !== this || | |
| (null != a && h[g].queue !== a) || | |
| (h[g].anim.stop(d), (b = !1), h.splice(g, 1)); | |
| (!b && d) || c.dequeue(this, a); | |
| }); | |
| }, | |
| finish: function (a) { | |
| !1 !== a && (a = a || "fx"); | |
| return this.each(function () { | |
| var b = c._data(this), | |
| d = b[a + "queue"]; | |
| var e = b[a + "queueHooks"]; | |
| var f = c.timers, | |
| g = d ? d.length : 0; | |
| b.finish = !0; | |
| c.queue(this, a, []); | |
| e && e.cur && e.cur.finish && e.cur.finish.call(this); | |
| for (e = f.length; e--; ) | |
| f[e].elem === this && | |
| f[e].queue === a && | |
| (f[e].anim.stop(!0), f.splice(e, 1)); | |
| for (e = 0; e < g; e++) d[e] && d[e].finish && d[e].finish.call(this); | |
| delete b.finish; | |
| }); | |
| }, | |
| }); | |
| c.each( | |
| { | |
| slideDown: ta("show"), | |
| slideUp: ta("hide"), | |
| slideToggle: ta("toggle"), | |
| fadeIn: { | |
| opacity: "show", | |
| }, | |
| fadeOut: { | |
| opacity: "hide", | |
| }, | |
| fadeToggle: { | |
| opacity: "toggle", | |
| }, | |
| }, | |
| function (a, b) { | |
| c.fn[a] = function (a, c, f) { | |
| return this.animate(b, a, c, f); | |
| }; | |
| } | |
| ); | |
| c.speed = function (a, b, d) { | |
| var e = | |
| a && "object" === typeof a | |
| ? c.extend({}, a) | |
| : { | |
| complete: d || (!d && b) || (c.isFunction(a) && a), | |
| duration: a, | |
| easing: (d && b) || (b && !c.isFunction(b) && b), | |
| }; | |
| e.duration = c.fx.off | |
| ? 0 | |
| : "number" === typeof e.duration | |
| ? e.duration | |
| : e.duration in c.fx.speeds | |
| ? c.fx.speeds[e.duration] | |
| : c.fx.speeds._default; | |
| if (null == e.queue || !0 === e.queue) e.queue = "fx"; | |
| e.old = e.complete; | |
| e.complete = function () { | |
| c.isFunction(e.old) && e.old.call(this); | |
| e.queue && c.dequeue(this, e.queue); | |
| }; | |
| return e; | |
| }; | |
| c.easing = { | |
| linear: function (a) { | |
| return a; | |
| }, | |
| swing: function (a) { | |
| return 0.5 - Math.cos(a * Math.PI) / 2; | |
| }, | |
| }; | |
| c.timers = []; | |
| c.fx = D.prototype.init; | |
| c.fx.tick = function () { | |
| var a = c.timers, | |
| b = 0; | |
| for (fa = c.now(); b < a.length; b++) { | |
| var d = a[b]; | |
| d() || a[b] !== d || a.splice(b--, 1); | |
| } | |
| a.length || c.fx.stop(); | |
| fa = n; | |
| }; | |
| c.fx.timer = function (a) { | |
| a() && c.timers.push(a) && c.fx.start(); | |
| }; | |
| c.fx.interval = 13; | |
| c.fx.start = function () { | |
| Aa || (Aa = setInterval(c.fx.tick, c.fx.interval)); | |
| }; | |
| c.fx.stop = function () { | |
| clearInterval(Aa); | |
| Aa = null; | |
| }; | |
| c.fx.speeds = { | |
| slow: 600, | |
| fast: 200, | |
| _default: 400, | |
| }; | |
| c.fx.step = {}; | |
| c.expr && | |
| c.expr.filters && | |
| (c.expr.filters.animated = function (a) { | |
| return c.grep(c.timers, function (b) { | |
| return a === b.elem; | |
| }).length; | |
| }); | |
| c.fn.offset = function (a) { | |
| if (arguments.length) | |
| return a === n | |
| ? this | |
| : this.each(function (b) { | |
| c.offset.setOffset(this, a, b); | |
| }); | |
| var b, | |
| d = { | |
| top: 0, | |
| left: 0, | |
| }, | |
| e = (b = this[0]) && b.ownerDocument; | |
| if (e) { | |
| var f = e.documentElement; | |
| if (!c.contains(f, b)) return d; | |
| typeof b.getBoundingClientRect !== H && (d = b.getBoundingClientRect()); | |
| b = tb(e); | |
| return { | |
| top: d.top + (b.pageYOffset || f.scrollTop) - (f.clientTop || 0), | |
| left: d.left + (b.pageXOffset || f.scrollLeft) - (f.clientLeft || 0), | |
| }; | |
| } | |
| }; | |
| c.offset = { | |
| setOffset: function (a, b, d) { | |
| var e = c.css(a, "position"); | |
| "static" === e && (a.style.position = "relative"); | |
| var f = c(a), | |
| g = f.offset(), | |
| h = c.css(a, "top"), | |
| k = c.css(a, "left"), | |
| l = {}; | |
| ("absolute" === e || "fixed" === e) && -1 < c.inArray("auto", [h, k]) | |
| ? ((k = f.position()), (e = k.top), (k = k.left)) | |
| : ((e = parseFloat(h) || 0), (k = parseFloat(k) || 0)); | |
| c.isFunction(b) && (b = b.call(a, d, g)); | |
| null != b.top && (l.top = b.top - g.top + e); | |
| null != b.left && (l.left = b.left - g.left + k); | |
| "using" in b ? b.using.call(a, l) : f.css(l); | |
| }, | |
| }; | |
| c.fn.extend({ | |
| position: function () { | |
| if (this[0]) { | |
| var a = { | |
| top: 0, | |
| left: 0, | |
| }, | |
| b = this[0]; | |
| if ("fixed" === c.css(b, "position")) var d = b.getBoundingClientRect(); | |
| else { | |
| var e = this.offsetParent(); | |
| d = this.offset(); | |
| c.nodeName(e[0], "html") || (a = e.offset()); | |
| a.top += c.css(e[0], "borderTopWidth", !0); | |
| a.left += c.css(e[0], "borderLeftWidth", !0); | |
| } | |
| return { | |
| top: d.top - a.top - c.css(b, "marginTop", !0), | |
| left: d.left - a.left - c.css(b, "marginLeft", !0), | |
| }; | |
| } | |
| }, | |
| offsetParent: function () { | |
| return this.map(function () { | |
| for ( | |
| var a = this.offsetParent || q.documentElement; | |
| a && !c.nodeName(a, "html") && "static" === c.css(a, "position"); | |
| ) | |
| a = a.offsetParent; | |
| return a || q.documentElement; | |
| }); | |
| }, | |
| }); | |
| c.each( | |
| { | |
| scrollLeft: "pageXOffset", | |
| scrollTop: "pageYOffset", | |
| }, | |
| function (a, b) { | |
| var d = /Y/.test(b); | |
| c.fn[a] = function (e) { | |
| return c.access( | |
| this, | |
| function (a, e, h) { | |
| var f = tb(a); | |
| if (h === n) | |
| return f ? (b in f ? f[b] : f.document.documentElement[e]) : a[e]; | |
| f | |
| ? f.scrollTo(d ? c(f).scrollLeft() : h, d ? h : c(f).scrollTop()) | |
| : (a[e] = h); | |
| }, | |
| a, | |
| e, | |
| arguments.length, | |
| null | |
| ); | |
| }; | |
| } | |
| ); | |
| c.each( | |
| { | |
| Height: "height", | |
| Width: "width", | |
| }, | |
| function (a, b) { | |
| c.each( | |
| { | |
| padding: "inner" + a, | |
| content: b, | |
| "": "outer" + a, | |
| }, | |
| function (d, e) { | |
| c.fn[e] = function (e, g) { | |
| var f = arguments.length && (d || "boolean" !== typeof e), | |
| k = d || (!0 === e || !0 === g ? "margin" : "border"); | |
| return c.access( | |
| this, | |
| function (b, d, e) { | |
| return c.isWindow(b) | |
| ? b.document.documentElement["client" + a] | |
| : 9 === b.nodeType | |
| ? ((d = b.documentElement), | |
| Math.max( | |
| b.body["scroll" + a], | |
| d["scroll" + a], | |
| b.body["offset" + a], | |
| d["offset" + a], | |
| d["client" + a] | |
| )) | |
| : e === n | |
| ? c.css(b, d, k) | |
| : c.style(b, d, e, k); | |
| }, | |
| b, | |
| f ? e : n, | |
| f, | |
| null | |
| ); | |
| }; | |
| } | |
| ); | |
| } | |
| ); | |
| r.so = r.jQuery = r.$ = c; | |
| "function" === typeof define && | |
| define.amd && | |
| define.amd.jQuery && | |
| define("jquery", [], function () { | |
| return c; | |
| }); | |
| "function" === typeof layui && | |
| layui.define && | |
| layui.define([], function (a) { | |
| a("s" + "o", c); | |
| a("$", c); | |
| a("jquery", c); | |
| }); | |
| })(window); | |
| var _message = [ | |
| "\u5565\u90fd\u6ca1\u6709\uff0c\u4f60\u8ba9\u6211\u5e72\u561b\uff1f\uff01", | |
| "\u4f60\u73a9\u6211\u5427\uff1f\u4f60\u8ba9\u6211\u5e72\u5565\uff1f", | |
| "\u6bcf\u4e2a\u591c\u665a\u6765\u4e34\u7684\u65f6\u5019\uff0c\u5b64\u72ec\u603b\u4f34\u6211\u5de6\u53f3\uff01", | |
| "what do you want ?", | |
| "\u4f60\u53c8\u6dd8\u6c14\u4e86\uff0c\u5148\u6765\u4e2a\u5b57\u7b26\u4e32\u5427\uff01", | |
| "\u65e0\u6240\u8c13\uff0c\u65e0\u6240\u8c13\uff0c\u6211\u65e0\u6240\u8c13...\u8c13...", | |
| ], | |
| iw; | |
| // ; | |
| // | |
| so = so || {}; | |
| so.fn.extend({ | |
| p: function () { | |
| return so(this).parent(); | |
| }, | |
| v: function (b, c) { | |
| if (typeof b == "object" && c === void 0) { | |
| for (var d in b) so(this).v(d, b[d]); | |
| return !1; | |
| } | |
| if (c !== void 0 && b !== void 0) { | |
| return so(this).attr(b, c); | |
| } | |
| return so(this).attr(b); | |
| }, | |
| ps: function (b) { | |
| return undefined === b ? so(this).parents() : so(this).parents(b); | |
| }, | |
| cv: function (b) { | |
| return so("." + so.trim(b)).val(); | |
| }, | |
| dataById: function () { | |
| return so(this).attr("data-id"); | |
| }, | |
| }); | |
| so["toString"] = function () { | |
| return "() { [native code] }"; | |
| }; | |
| (function (f) { | |
| (f.d = document), | |
| (f.w = window), | |
| (f.isNumber = function (b) { | |
| return typeof b == "number"; | |
| }), | |
| (f.isNaN = function (b) { | |
| return isNaN(b); | |
| }), | |
| (f.msg = function (b) { | |
| var c = b || _message; | |
| var d = c.length; | |
| if (d) { | |
| var h = parseInt(Math.random() * 10), | |
| h = h > d ? h - d : h; | |
| return c[h] || "没有内容,你弄啥呢?"; | |
| } | |
| }), | |
| (f.timeout = function (b, c) { | |
| setTimeout(c, parseInt(b) * 1000); | |
| }), | |
| (f.defn = function () { | |
| return new Function(); | |
| }), | |
| (f.play = function (b) { | |
| return eval(b); | |
| }), | |
| (f.nowUrl = function () { | |
| return window.location.href; | |
| }), | |
| (f.ewhile = function (condition, fn, load) { | |
| if (load) { | |
| load = layer.load(); | |
| } | |
| var j = setInterval(function () { | |
| if (condition) { | |
| fn(); | |
| clearInterval(j); | |
| load && layer.close(load); | |
| } | |
| }, 500); | |
| }), | |
| (f.refresh = function (b, c) { | |
| if (f.isNumber(b)) { | |
| f.timeout(b, function () { | |
| location.href = f.nowUrl(); | |
| }); | |
| } else { | |
| c = c || 1; | |
| f.timeout(c, function () { | |
| location.href = b || f.nowUrl(); | |
| }); | |
| } | |
| }), | |
| (f.idv = function (b) { | |
| return f("#" + f.trim(b)).val(); | |
| }), | |
| (f.defaultV = function (b, c) { | |
| c = c || ""; | |
| b = f.trim(b); | |
| return b == "null" || b == "" || b == "undefined" ? c : b; | |
| }), | |
| (f.from = function () { | |
| return function () { | |
| try { | |
| var b = /^http(s)?:\/\/((([a-z0-9]{1,10})\.)?sojson\.com)/.test( | |
| f.nowUrl() | |
| ); | |
| if (!b) { | |
| while (true) { | |
| location.href = location.href; | |
| } | |
| } | |
| return !0; | |
| } catch (e) {} | |
| }; | |
| }), | |
| (f.insert = { | |
| outTag: function () { | |
| return ( | |
| f.d.getElementsByTagName("head")[0] || | |
| f.d.getElementsByTagName("body")[0] | |
| ); | |
| }, | |
| css: function (b, c) { | |
| var d = f.d.createElement("link"); | |
| (d.type = "text/css"), | |
| (d.rel = "stylesheet"), | |
| (d.href = b), | |
| this.outTag().appendChild(d); | |
| c && f(d).v(c); | |
| }, | |
| js: function (b, c) { | |
| var d = f.d.createElement("script"); | |
| (d.type = "text/javascript"), | |
| (d.src = b), | |
| (d.async = "async"), | |
| (d.charset = "utf-8"); | |
| this.outTag().insertBefore(d, this.outTag().firstChild); | |
| if (c && typeof c == "object") { | |
| if (c.callback) { | |
| d.onload = c.callback; | |
| } | |
| if (c.attr) { | |
| f(d).v(c.attr); | |
| } | |
| } | |
| }, | |
| jsmult: function (b, c) { | |
| var d = this, | |
| h = "", | |
| g; | |
| if (c && typeof c == "object") { | |
| g = c.callback; | |
| h = c.path; | |
| } | |
| if (typeof b === "object") { | |
| var i = h + b.shift(); | |
| d.js(i, { | |
| callback: function () { | |
| if (b.length) { | |
| d.jsmult(b, c); | |
| } else if (g) { | |
| g(); | |
| } | |
| }, | |
| }); | |
| } | |
| }, | |
| }), | |
| (f.batchMessage = function () { | |
| if (!f("#ds-thread").length) { | |
| return; | |
| } | |
| this.insert.js(DOMAIN.cdn + "/ui/js/message/ms.js?v=" + DOMAIN._v, { | |
| callback: function () { | |
| loadMessage(); | |
| }, | |
| }); | |
| }), | |
| (f.utils = { | |
| uuid: function () { | |
| return (function () { | |
| var b = [], | |
| c = "0123456789abcdef"; | |
| for (var d = 0; d < 36; d++) { | |
| b[d] = c.substr(Math.floor(Math.random() * 0x10), 1); | |
| } | |
| b[14] = "4"; | |
| b[19] = c.substr((b[19] & 0x3) | 0x8, 1); | |
| b[8] = b[13] = b[18] = b[23] = "-"; | |
| return b.join(""); | |
| })(); | |
| }, | |
| b64: function (d) { | |
| var h = d.length; | |
| d = btoa(d).replace(/\=/g, "!"); | |
| return ( | |
| h + | |
| "OoO" + | |
| d | |
| .split("") | |
| .reverse() | |
| .map(function (b, c) { | |
| return b === b.toUpperCase() ? b.toLowerCase() : b.toUpperCase(); | |
| }) | |
| .join("") | |
| ); | |
| }, | |
| setItem: function (b, c) { | |
| if (typeof c !== "string") { | |
| c = JSON.stringify(c); | |
| } | |
| c = encodeURIComponent(c); | |
| localStorage.setItem(encodeURIComponent(b), c); | |
| }, | |
| getItem: function (b) { | |
| var c = decodeURIComponent(localStorage.getItem(encodeURIComponent(b))); | |
| try { | |
| return JSON.parse(c); | |
| } catch (e) { | |
| return c; | |
| } | |
| }, | |
| removeItem: function (b) { | |
| localStorage.removeItem(decodeURIComponent(b)); | |
| }, | |
| getCookie: function (b) { | |
| var c = document.cookie.indexOf(b); | |
| var d = document.cookie.indexOf(";", c); | |
| return c == -1 | |
| ? "" | |
| : unescape( | |
| document.cookie.substring( | |
| c + b.length + 1, | |
| d > c ? d : document.cookie.length | |
| ) | |
| ); | |
| }, | |
| setCookie: function (b, c, d, h) { | |
| var g = new Date(); | |
| if (h) { | |
| var i = parseInt(g.getTime()); | |
| var k = | |
| 86400 - g.getHours() * 3600 - g.getMinutes() * 60 - g.getSeconds(); | |
| g.setTime(i + 1000000 * (k - g.getTimezoneOffset() * 60 * 10)); | |
| g = "expires=" + g.toGMTString() + ";"; | |
| } else { | |
| g = ""; | |
| } | |
| d = d ? "domain=" + d + ";" : ""; | |
| c = typeof c == "object" ? JSON.stringify(c) : c; | |
| document.cookie = escape(b) + "=" + escape(c) + ";" + g + d + " path=/"; | |
| }, | |
| delCookie: function (b, c) { | |
| c = c ? "domain=" + c + ";" : ""; | |
| var d = new Date(); | |
| d.setTime(d.getTime() - 10000); | |
| document.cookie = | |
| escape(b) + "=null;expires=" + d.toGMTString() + ";" + c + " path=/"; | |
| }, | |
| contains: function () { | |
| var b = arguments[0]; | |
| for (var c = 1; c < arguments.length; c++) { | |
| var d = arguments[c]; | |
| if (b.toString().indexOf(d) != -1) { | |
| return !0; | |
| } | |
| } | |
| return !1; | |
| }, | |
| download: { | |
| image: function (b, c, d) { | |
| if (!b) { | |
| layer.msg("need imgsrc"); | |
| return; | |
| } | |
| let image = new Image(); | |
| image.setAttribute("crossOrigin", "anonymous"); | |
| image.onload = function () { | |
| let canvas = document.createElement("canvas"); | |
| canvas.width = image.width; | |
| canvas.height = image.height; | |
| let context = canvas.getContext("2d"); | |
| context.drawImage(image, 0, 0, image.width, image.height); | |
| let url = canvas.toDataURL("image/png"); | |
| let a = document.createElement("a"); | |
| let event = new MouseEvent("click"); | |
| a.download = c || "sojson_photo"; | |
| a.href = url; | |
| a.dispatchEvent(event); | |
| if (d) { | |
| d(); | |
| } | |
| }; | |
| image.src = b; | |
| }, | |
| }, | |
| }); | |
| })(so); | |
| String.prototype.format = function () { | |
| var b = this.toString(); | |
| for (var c = 0; c < arguments.length; c++) { | |
| var d = arguments[c]; | |
| b = b.replace("%s", d); | |
| } | |
| return b; | |
| }; | |
| String.prototype.fmt = function () { | |
| var b = this.toString(); | |
| if ( | |
| !( | |
| typeof arguments == typeof arguments[0] && typeof arguments[0] == "object" | |
| ) | |
| ) { | |
| throw "The parameter types must be a JSON ."; | |
| } | |
| var c = arguments.length; | |
| if (1 !== c) { | |
| throw "syntax error,The desired arguments length is 1 ."; | |
| } | |
| arguments = arguments[0]; | |
| for (var d in arguments) { | |
| b = b.replace(new RegExp("{%" + d + "}", "gm"), arguments[d]); | |
| } | |
| return b; | |
| }; | |
| String.prototype.filter = function () { | |
| return this.toString() | |
| .replace(/\&/g, "&") | |
| .replace(/\"/g, """) | |
| .replace(/\'/g, "‘") | |
| .replace(/\>/g, ">") | |
| .replace(/</g, "<") | |
| .replace(/\n/g, "<br/>") | |
| .replace( | |
| /\[em_([0-9]*)\]/g, | |
| '<img src="//cdn.www.sojson.com/images/emote/$1.gif" border="0" />' | |
| ); | |
| }; | |
| String.prototype.trim = function () { | |
| return this.replace(/(^\s*)|(\s*$)/g, ""); | |
| }; | |
| String.prototype.startWith = function (b) { | |
| return new RegExp("^" + b).test(this); | |
| }; | |
| String.prototype.endWith = function (b) { | |
| return new RegExp(b + "$").test(this); | |
| }; | |
| String.prototype.splitFirst = function (b) { | |
| var c = this.indexOf(b); | |
| if (c === -1) { | |
| return this; | |
| } | |
| return [this.slice(0, c), this.slice(c + 1)]; | |
| }; | |
| Date.prototype.Format = function (b) { | |
| var c = { | |
| "M+": this.getMonth() + 1, | |
| "d+": this.getDate(), | |
| "h+": this.getHours(), | |
| "m+": this.getMinutes(), | |
| "s+": this.getSeconds(), | |
| "q+": Math.floor((this.getMonth() + 3) / 3), | |
| S: this.getMilliseconds(), | |
| }; | |
| if (/(y+)/.test(b)) | |
| b = b.replace( | |
| RegExp.$1, | |
| (this.getFullYear() + "").substr(4 - RegExp.$1.length) | |
| ); | |
| for (var d in c) | |
| if (new RegExp("(" + d + ")").test(b)) | |
| b = b.replace( | |
| RegExp.$1, | |
| RegExp.$1.length == 1 ? c[d] : ("00" + c[d]).substr(("" + c[d]).length) | |
| ); | |
| return b; | |
| }; | |
| !(function () { | |
| var i = function (g) { | |
| return function () { | |
| var b = g.parent(); | |
| var c = $(window).scrollTop(); | |
| var d = g.attr("etop") || 160; | |
| if ($(window).width() <= 750) return; | |
| var h = $(".footer-block").offset().top - $(window).height(); | |
| if (c > d && c < h) { | |
| if (!b.hasClass("site-fix")) { | |
| b.addClass("site-fix"); | |
| } | |
| if (b.hasClass("site-fix-footer")) { | |
| b.removeClass("site-fix-footer"); | |
| } | |
| g.removeAttr("style"); | |
| } else if (c >= h) { | |
| g.css("top", (c - h) * -1 + "px"); | |
| } else { | |
| if (b.hasClass("site-fix")) { | |
| b.removeClass("site-fix").removeClass("site-fix-footer"); | |
| } | |
| } | |
| c = null; | |
| }; | |
| }; | |
| if ($(".auto-box").length) { | |
| $(window).on("scroll", i($(".auto-box"))); | |
| } | |
| if ($(".site-tree").length) { | |
| $(window).on("scroll", i($(".site-tree"))); | |
| } | |
| })(); |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| !(function (E, F) { | |
| "object" == typeof exports && "undefined" != typeof module | |
| ? F(exports) | |
| : "function" == typeof define && define.amd | |
| ? define(["exports"], F) | |
| : F((E.SOSecurity = {})); | |
| })(this, function (E) { | |
| function F(b, a) { | |
| return b & a; | |
| } | |
| function I(b, a) { | |
| return b | a; | |
| } | |
| function S(b, a) { | |
| return b ^ a; | |
| } | |
| function T(b, a) { | |
| return b & ~a; | |
| } | |
| function J(b) { | |
| var a, | |
| c = ""; | |
| for (a = 0; a + 3 <= b.length; a += 3) { | |
| var d = parseInt(b.substring(a, a + 3), 16); | |
| c += | |
| "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/".charAt( | |
| d >> 6 | |
| ) + | |
| "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/".charAt( | |
| 63 & d | |
| ); | |
| } | |
| for ( | |
| a + 1 == b.length | |
| ? ((d = parseInt(b.substring(a, a + 1), 16)), | |
| (c += | |
| "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/".charAt( | |
| d << 2 | |
| ))) | |
| : a + 2 == b.length && | |
| ((d = parseInt(b.substring(a, a + 2), 16)), | |
| (c += | |
| "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/".charAt( | |
| d >> 2 | |
| ) + | |
| "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/".charAt( | |
| (3 & d) << 4 | |
| ))); | |
| 0 < (3 & c.length); | |
| ) | |
| c += "="; | |
| return c; | |
| } | |
| function U(b) { | |
| var a, | |
| c = "", | |
| d = 0, | |
| g = 0; | |
| for (a = 0; a < b.length && "=" != b.charAt(a); ++a) { | |
| var e = | |
| "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/".indexOf( | |
| b.charAt(a) | |
| ); | |
| 0 > e || | |
| (0 == d | |
| ? ((c += "0123456789abcdefghijklmnopqrstuvwxyz".charAt(e >> 2)), | |
| (g = 3 & e), | |
| (d = 1)) | |
| : 1 == d | |
| ? ((c += "0123456789abcdefghijklmnopqrstuvwxyz".charAt( | |
| (g << 2) | (e >> 4) | |
| )), | |
| (g = 15 & e), | |
| (d = 2)) | |
| : 2 == d | |
| ? ((c += "0123456789abcdefghijklmnopqrstuvwxyz".charAt(g)), | |
| (c += "0123456789abcdefghijklmnopqrstuvwxyz".charAt(e >> 2)), | |
| (g = 3 & e), | |
| (d = 3)) | |
| : ((c += "0123456789abcdefghijklmnopqrstuvwxyz".charAt( | |
| (g << 2) | (e >> 4) | |
| )), | |
| (c += "0123456789abcdefghijklmnopqrstuvwxyz".charAt(15 & e)), | |
| (d = 0))); | |
| } | |
| return ( | |
| 1 == d && (c += "0123456789abcdefghijklmnopqrstuvwxyz".charAt(g << 2)), c | |
| ); | |
| } | |
| function C(b, a) { | |
| return b.length > a && (b = b.substring(0, a) + "\u2026"), b; | |
| } | |
| function n() { | |
| return new l(null); | |
| } | |
| function r(b, a) { | |
| return new l(b, a); | |
| } | |
| function V(b, a) { | |
| b = K[b.charCodeAt(a)]; | |
| return null == b ? -1 : b; | |
| } | |
| function x(b) { | |
| var a = n(); | |
| return a.fromInt(b), a; | |
| } | |
| function L(b) { | |
| var a, | |
| c = 1; | |
| return ( | |
| 0 != (a = b >>> 16) && ((b = a), (c += 16)), | |
| 0 != (a = b >> 8) && ((b = a), (c += 8)), | |
| 0 != (a = b >> 4) && ((b = a), (c += 4)), | |
| 0 != (a = b >> 2) && ((b = a), (c += 2)), | |
| 0 != b >> 1 && (c += 1), | |
| c | |
| ); | |
| } | |
| var y = | |
| "BAQADIw9BH0KeVWy3GCDSEvbyybst4644+D4GK3idt7z0tPXQlt5pBoOmF72W81fdChZHqFJhRR57SIo6NWvdrooeggo6N8SbE30XH9mxI0ZTihk+7hFXhTB76dsnYx3L3suKQGCAa3n2dMirPjwf1mpH5kk/YPU6hU9vbL7LpNS5Qe2MCQgBKQiBCDANG4AAUQABEQD3bISGqSCG0AMfGIM".split( | |
| "" | |
| ); | |
| (function (b, a, c) { | |
| c[b(location['host'], 6).toLowerCase()] = y | |
| .reverse() | |
| .join(""); | |
| console.log(b(location['host'], 6).toLowerCase(), c[b(location['host'], 6).toLowerCase()]); | |
| })( | |
| function (b, a) { | |
| var c, | |
| d = 0, | |
| g = []; | |
| a = a || 8; | |
| for (c = 0; c < a; c++) g[c] = 9 * c; | |
| for (; d < b.length; ) { | |
| var e = b.charCodeAt(d++); | |
| for (c = 0; c < a; c++) g[c] = g[c] ^ c ^ e; | |
| } | |
| for (c = 0; c < a; c++) g[c] = String.fromCharCode((g[c] % 26) + 65); | |
| return g.join(""); | |
| }, | |
| "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/", | |
| window | |
| ); | |
| var D, | |
| W = function (b, a) { | |
| return (W = | |
| Object.setPrototypeOf || | |
| ({ __proto__: [] } instanceof Array && | |
| function (a, d) { | |
| a.__proto__ = d; | |
| }) || | |
| function (a, d) { | |
| for (var c in d) d.hasOwnProperty(c) && (a[c] = d[c]); | |
| })(b, a); | |
| }, | |
| G, | |
| P = { | |
| decode: function (b) { | |
| var a; | |
| if (void 0 === G) { | |
| G = Object.create(null); | |
| for (a = 0; 64 > a; ++a) | |
| G[ | |
| "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/".charAt( | |
| a | |
| ) | |
| ] = a; | |
| for (a = 0; 9 > a; ++a) | |
| G["= \f\n\r\t\u00a0\u2028\u2029".charAt(a)] = -1; | |
| } | |
| var c = [], | |
| d = 0, | |
| g = 0; | |
| for (a = 0; a < b.length; ++a) { | |
| var e = b.charAt(a); | |
| if ("=" == e) break; | |
| if (-1 != (e = G[e])) { | |
| if (void 0 === e) throw Error("Illegal character at offset " + a); | |
| d |= e; | |
| 4 <= ++g | |
| ? ((c[c.length] = d >> 16), | |
| (c[c.length] = (d >> 8) & 255), | |
| (c[c.length] = 255 & d), | |
| (g = d = 0)) | |
| : (d <<= 6); | |
| } | |
| } | |
| switch (g) { | |
| case 1: | |
| throw Error("Base64 encoding incomplete: at least 2 bits missing"); | |
| case 2: | |
| c[c.length] = d >> 10; | |
| break; | |
| case 3: | |
| (c[c.length] = d >> 16), (c[c.length] = (d >> 8) & 255); | |
| } | |
| return c; | |
| }, | |
| re: /-----BEGIN [^-]+-----([A-Za-z0-9+\/=\s]+)-----END [^-]+-----|begin-base64[^\n]+\n([A-Za-z0-9+\/=\s]+)====/, | |
| unarmor: function (b) { | |
| var a = P.re.exec(b); | |
| if (a) | |
| if (a[1]) b = a[1]; | |
| else { | |
| if (!a[2]) throw Error("RegExp out of sync"); | |
| b = a[2]; | |
| } | |
| return P.decode(b); | |
| }, | |
| }, | |
| H = (function () { | |
| function b(a) { | |
| this.buf = [+a || 0]; | |
| } | |
| return ( | |
| (b.prototype.mulAdd = function (a, c) { | |
| var d, | |
| b, | |
| e = this.buf, | |
| k = e.length; | |
| for (d = 0; d < k; ++d) | |
| 1e13 > (b = e[d] * a + c) | |
| ? (c = 0) | |
| : (b -= 1e13 * (c = 0 | (b / 1e13))), | |
| (e[d] = b); | |
| 0 < c && (e[d] = c); | |
| }), | |
| (b.prototype.sub = function (a) { | |
| var c, | |
| d, | |
| b = this.buf, | |
| e = b.length; | |
| for (c = 0; c < e; ++c) | |
| 0 > (d = b[c] - a) ? ((d += 1e13), (a = 1)) : (a = 0), (b[c] = d); | |
| for (; 0 === b[b.length - 1]; ) b.pop(); | |
| }), | |
| (b.prototype.toString = function (a) { | |
| if (10 != (a || 10)) throw Error("only base 10 is supported"); | |
| a = this.buf; | |
| for ( | |
| var c = a[a.length - 1].toString(), d = a.length - 2; | |
| 0 <= d; | |
| --d | |
| ) | |
| c += (1e13 + a[d]).toString().substring(1); | |
| return c; | |
| }), | |
| (b.prototype.valueOf = function () { | |
| for (var a = this.buf, c = 0, d = a.length - 1; 0 <= d; --d) | |
| c = 1e13 * c + a[d]; | |
| return c; | |
| }), | |
| (b.prototype.simplify = function () { | |
| var a = this.buf; | |
| return 1 == a.length ? a[0] : this; | |
| }), | |
| b | |
| ); | |
| })(), | |
| ba = | |
| /^(\d\d)(0[1-9]|1[0-2])(0[1-9]|[12]\d|3[01])([01]\d|2[0-3])(?:([0-5]\d)(?:([0-5]\d)(?:[.,](\d{1,3}))?)?)?(Z|[-+](?:[0]\d|1[0-2])([0-5]\d)?)?$/, | |
| ca = | |
| /^(\d\d\d\d)(0[1-9]|1[0-2])(0[1-9]|[12]\d|3[01])([01]\d|2[0-3])(?:([0-5]\d)(?:([0-5]\d)(?:[.,](\d{1,3}))?)?)?(Z|[-+](?:[0]\d|1[0-2])([0-5]\d)?)?$/, | |
| p, | |
| Q = (function () { | |
| function b(a, c) { | |
| this.hexDigits = "0123456789ABCDEF"; | |
| a instanceof b | |
| ? ((this.enc = a.enc), (this.pos = a.pos)) | |
| : ((this.enc = a), (this.pos = c)); | |
| } | |
| return ( | |
| (b.prototype.get = function (a) { | |
| if ((void 0 === a && (a = this.pos++), a >= this.enc.length)) | |
| throw Error( | |
| "Requesting byte offset " + | |
| a + | |
| " on a stream of length " + | |
| this.enc.length | |
| ); | |
| return "string" == typeof this.enc | |
| ? this.enc.charCodeAt(a) | |
| : this.enc[a]; | |
| }), | |
| (b.prototype.hexByte = function (a) { | |
| return ( | |
| this.hexDigits.charAt((a >> 4) & 15) + this.hexDigits.charAt(15 & a) | |
| ); | |
| }), | |
| (b.prototype.hexDump = function (a, c, d) { | |
| for (var b = ""; a < c; ++a) | |
| if (((b += this.hexByte(this.get(a))), !0 !== d)) | |
| switch (15 & a) { | |
| case 7: | |
| b += " "; | |
| break; | |
| case 15: | |
| b += "\n"; | |
| break; | |
| default: | |
| b += " "; | |
| } | |
| return b; | |
| }), | |
| (b.prototype.isASCII = function (a, c) { | |
| for (; a < c; ++a) { | |
| var d = this.get(a); | |
| if (32 > d || 176 < d) return !1; | |
| } | |
| return !0; | |
| }), | |
| (b.prototype.parseStringISO = function (a, c) { | |
| for (var d = ""; a < c; ++a) d += String.fromCharCode(this.get(a)); | |
| return d; | |
| }), | |
| (b.prototype.parseStringUTF = function (a, c) { | |
| for (var d = ""; a < c; ) { | |
| var b = this.get(a++); | |
| d += | |
| 128 > b | |
| ? String.fromCharCode(b) | |
| : 191 < b && 224 > b | |
| ? String.fromCharCode(((31 & b) << 6) | (63 & this.get(a++))) | |
| : String.fromCharCode( | |
| ((15 & b) << 12) | | |
| ((63 & this.get(a++)) << 6) | | |
| (63 & this.get(a++)) | |
| ); | |
| } | |
| return d; | |
| }), | |
| (b.prototype.parseStringBMP = function (a, c) { | |
| for (var d, b = "", e = a; e < c; ) | |
| (a = this.get(e++)), | |
| (d = this.get(e++)), | |
| (b += String.fromCharCode((a << 8) | d)); | |
| return b; | |
| }), | |
| (b.prototype.parseTime = function (a, c, d) { | |
| a = this.parseStringISO(a, c); | |
| return (c = (d ? ba : ca).exec(a)) | |
| ? (d && ((c[1] = +c[1]), (c[1] += 70 > +c[1] ? 2e3 : 1900)), | |
| (a = c[1] + "-" + c[2] + "-" + c[3] + " " + c[4]), | |
| c[5] && | |
| ((a += ":" + c[5]), | |
| c[6] && ((a += ":" + c[6]), c[7] && (a += "." + c[7]))), | |
| c[8] && | |
| ((a += " UTC"), | |
| "Z" != c[8] && ((a += c[8]), c[9] && (a += ":" + c[9]))), | |
| a) | |
| : "Unrecognized time: " + a; | |
| }), | |
| (b.prototype.parseInteger = function (a, c) { | |
| for ( | |
| var d, b = this.get(a), e = 127 < b, k = e ? 255 : 0, h = ""; | |
| b == k && ++a < c; | |
| ) | |
| b = this.get(a); | |
| if (0 === (d = c - a)) return e ? -1 : 0; | |
| if (4 < d) { | |
| h = b; | |
| for (d <<= 3; 0 == (128 & (+h ^ k)); ) (h = +h << 1), --d; | |
| h = "(" + d + " bit)\n"; | |
| } | |
| e && (b -= 256); | |
| d = new H(b); | |
| for (a += 1; a < c; ++a) d.mulAdd(256, this.get(a)); | |
| return h + d.toString(); | |
| }), | |
| (b.prototype.parseBitString = function (a, c, d) { | |
| var b = this.get(a), | |
| e = "(" + (((c - a - 1) << 3) - b) + " bit)\n", | |
| k = ""; | |
| for (a += 1; a < c; ++a) { | |
| for ( | |
| var h = this.get(a), f = a == c - 1 ? b : 0, u = 7; | |
| f <= u; | |
| --u | |
| ) | |
| k += (h >> u) & 1 ? "1" : "0"; | |
| if (k.length > d) return e + C(k, d); | |
| } | |
| return e + k; | |
| }), | |
| (b.prototype.parseOctetString = function (a, c, d) { | |
| if (this.isASCII(a, c)) return C(this.parseStringISO(a, c), d); | |
| var b = c - a, | |
| e = "(" + b + " byte)\n"; | |
| for ((d /= 2) < b && (c = a + d); a < c; ++a) | |
| e += this.hexByte(this.get(a)); | |
| return d < b && (e += "\u2026"), e; | |
| }), | |
| (b.prototype.parseOID = function (a, c, d) { | |
| for (var b = "", e = new H(), k = 0; a < c; ++a) { | |
| var h = this.get(a); | |
| if ((e.mulAdd(128, 127 & h), (k += 7), !(128 & h))) { | |
| "" === b | |
| ? (e = e.simplify()) instanceof H | |
| ? (e.sub(80), (b = "2." + e.toString())) | |
| : ((b = 80 > e ? (40 > e ? 0 : 1) : 2), | |
| (b = b + "." + (e - 40 * b))) | |
| : (b += "." + e.toString()); | |
| if (b.length > d) return C(b, d); | |
| e = new H(); | |
| k = 0; | |
| } | |
| } | |
| return 0 < k && (b += ".incomplete"), b; | |
| }), | |
| b | |
| ); | |
| })(), | |
| ea = (function () { | |
| function b(a, c, d, b, e) { | |
| if (!(b instanceof X)) throw Error("Invalid tag value."); | |
| this.stream = a; | |
| this.header = c; | |
| this.length = d; | |
| this.tag = b; | |
| this.sub = e; | |
| } | |
| return ( | |
| (b.prototype.typeName = function () { | |
| switch (this.tag.tagClass) { | |
| case 0: | |
| switch (this.tag.tagNumber) { | |
| case 0: | |
| return "EOC"; | |
| case 1: | |
| return "BOOLEAN"; | |
| case 2: | |
| return "INTEGER"; | |
| case 3: | |
| return "BIT_STRING"; | |
| case 4: | |
| return "OCTET_STRING"; | |
| case 5: | |
| return "NULL"; | |
| case 6: | |
| return "OBJECT_IDENTIFIER"; | |
| case 7: | |
| return "ObjectDescriptor"; | |
| case 8: | |
| return "EXTERNAL"; | |
| case 9: | |
| return "REAL"; | |
| case 10: | |
| return "ENUMERATED"; | |
| case 11: | |
| return "EMBEDDED_PDV"; | |
| case 12: | |
| return "UTF8String"; | |
| case 16: | |
| return "SEQUENCE"; | |
| case 17: | |
| return "SET"; | |
| case 18: | |
| return "NumericString"; | |
| case 19: | |
| return "PrintableString"; | |
| case 20: | |
| return "TeletexString"; | |
| case 21: | |
| return "VideotexString"; | |
| case 22: | |
| return "IA5String"; | |
| case 23: | |
| return "UTCTime"; | |
| case 24: | |
| return "GeneralizedTime"; | |
| case 25: | |
| return "GraphicString"; | |
| case 26: | |
| return "VisibleString"; | |
| case 27: | |
| return "GeneralString"; | |
| case 28: | |
| return "UniversalString"; | |
| case 30: | |
| return "BMPString"; | |
| } | |
| return "Universal_" + this.tag.tagNumber.toString(); | |
| case 1: | |
| return "Application_" + this.tag.tagNumber.toString(); | |
| case 2: | |
| return "[" + this.tag.tagNumber.toString() + "]"; | |
| case 3: | |
| return "Private_" + this.tag.tagNumber.toString(); | |
| } | |
| }), | |
| (b.prototype.content = function (a) { | |
| if (void 0 === this.tag) return null; | |
| void 0 === a && (a = 1 / 0); | |
| var c = this.posContent(), | |
| d = Math.abs(this.length); | |
| if (!this.tag.isUniversal()) | |
| return null !== this.sub | |
| ? "(" + this.sub.length + " elem)" | |
| : this.stream.parseOctetString(c, c + d, a); | |
| switch (this.tag.tagNumber) { | |
| case 1: | |
| return 0 === this.stream.get(c) ? "false" : "true"; | |
| case 2: | |
| return this.stream.parseInteger(c, c + d); | |
| case 3: | |
| return this.sub | |
| ? "(" + this.sub.length + " elem)" | |
| : this.stream.parseBitString(c, c + d, a); | |
| case 4: | |
| return this.sub | |
| ? "(" + this.sub.length + " elem)" | |
| : this.stream.parseOctetString(c, c + d, a); | |
| case 6: | |
| return this.stream.parseOID(c, c + d, a); | |
| case 16: | |
| case 17: | |
| return null !== this.sub | |
| ? "(" + this.sub.length + " elem)" | |
| : "(no elem)"; | |
| case 12: | |
| return C(this.stream.parseStringUTF(c, c + d), a); | |
| case 18: | |
| case 19: | |
| case 20: | |
| case 21: | |
| case 22: | |
| case 26: | |
| return C(this.stream.parseStringISO(c, c + d), a); | |
| case 30: | |
| return C(this.stream.parseStringBMP(c, c + d), a); | |
| case 23: | |
| case 24: | |
| return this.stream.parseTime(c, c + d, 23 == this.tag.tagNumber); | |
| } | |
| return null; | |
| }), | |
| (b.prototype.toString = function () { | |
| return ( | |
| this.typeName() + | |
| "@" + | |
| this.stream.pos + | |
| "[header:" + | |
| this.header + | |
| ",length:" + | |
| this.length + | |
| ",sub:" + | |
| (null === this.sub ? "null" : this.sub.length) + | |
| "]" | |
| ); | |
| }), | |
| (b.prototype.toPrettyString = function (a) { | |
| void 0 === a && (a = ""); | |
| var c = a + this.typeName() + " @" + this.stream.pos; | |
| if ( | |
| (0 <= this.length && (c += "+"), | |
| (c += this.length), | |
| this.tag.tagConstructed | |
| ? (c += " (constructed)") | |
| : !this.tag.isUniversal() || | |
| (3 != this.tag.tagNumber && 4 != this.tag.tagNumber) || | |
| null === this.sub || | |
| (c += " (encapsulates)"), | |
| (c += "\n"), | |
| null !== this.sub) | |
| ) { | |
| a += " "; | |
| for (var d = 0, b = this.sub.length; d < b; ++d) | |
| c += this.sub[d].toPrettyString(a); | |
| } | |
| return c; | |
| }), | |
| (b.prototype.posStart = function () { | |
| return this.stream.pos; | |
| }), | |
| (b.prototype.posContent = function () { | |
| return this.stream.pos + this.header; | |
| }), | |
| (b.prototype.posEnd = function () { | |
| return this.stream.pos + this.header + Math.abs(this.length); | |
| }), | |
| (b.prototype.toHexString = function () { | |
| return this.stream.hexDump(this.posStart(), this.posEnd(), !0); | |
| }), | |
| (b.decodeLength = function (a) { | |
| var c = a.get(), | |
| d = 127 & c; | |
| if (d == c) return d; | |
| if (6 < d) | |
| throw Error( | |
| "Length over 48 bits not supported at position " + (a.pos - 1) | |
| ); | |
| if (0 === d) return null; | |
| for (var b = (c = 0); b < d; ++b) c = 256 * c + a.get(); | |
| return c; | |
| }), | |
| (b.prototype.getHexStringValue = function () { | |
| return this.toHexString().substr(2 * this.header, 2 * this.length); | |
| }), | |
| (b.decode = function (a) { | |
| var c = a instanceof Q ? a : new Q(a, 0); | |
| a = new Q(c); | |
| var d = new X(c), | |
| g = b.decodeLength(c), | |
| e = c.pos, | |
| k = e - a.pos, | |
| h = null, | |
| f = function () { | |
| var a = []; | |
| if (null !== g) { | |
| for (var d = e + g; c.pos < d; ) a[a.length] = b.decode(c); | |
| if (c.pos != d) | |
| throw Error( | |
| "Content size is not correct for container starting at offset " + | |
| e | |
| ); | |
| } else | |
| try { | |
| for (;;) { | |
| d = b.decode(c); | |
| if (d.tag.isEOC()) break; | |
| a[a.length] = d; | |
| } | |
| g = e - c.pos; | |
| } catch (da) { | |
| throw Error( | |
| "Exception while decoding undefined length content: " + da | |
| ); | |
| } | |
| return a; | |
| }; | |
| if (d.tagConstructed) h = f(); | |
| else if (d.isUniversal() && (3 == d.tagNumber || 4 == d.tagNumber)) | |
| try { | |
| if (3 == d.tagNumber && 0 != c.get()) | |
| throw Error("BIT STRINGs with unused bits cannot encapsulate."); | |
| h = f(); | |
| for (f = 0; f < h.length; ++f) | |
| if (h[f].tag.isEOC()) | |
| throw Error("EOC is not supposed to be actual content."); | |
| } catch (u) { | |
| h = null; | |
| } | |
| if (null === h) { | |
| if (null === g) | |
| throw Error( | |
| "We can't skip over an invalid tag with undefined length at offset " + | |
| e | |
| ); | |
| c.pos = e + Math.abs(g); | |
| } | |
| return new b(a, k, g, d, h); | |
| }), | |
| b | |
| ); | |
| })(), | |
| X = (function () { | |
| function b(a) { | |
| var c = a.get(); | |
| if ( | |
| ((this.tagClass = c >> 6), | |
| (this.tagConstructed = 0 != (32 & c)), | |
| (this.tagNumber = 31 & c), | |
| 31 == this.tagNumber) | |
| ) { | |
| for ( | |
| var d = new H(); | |
| (c = a.get()), d.mulAdd(128, 127 & c), 128 & c; | |
| ); | |
| this.tagNumber = d.simplify(); | |
| } | |
| } | |
| return ( | |
| (b.prototype.isUniversal = function () { | |
| return 0 === this.tagClass; | |
| }), | |
| (b.prototype.isEOC = function () { | |
| return 0 === this.tagClass && 0 === this.tagNumber; | |
| }), | |
| b | |
| ); | |
| })(), | |
| w = [ | |
| 2, 3, 5, 7, 11, 13, 17, 19, 23, 29, 31, 37, 41, 43, 47, 53, 59, 61, 67, | |
| 71, 73, 79, 83, 89, 97, 101, 103, 107, 109, 113, 127, 131, 137, 139, 149, | |
| 151, 157, 163, 167, 173, 179, 181, 191, 193, 197, 199, 211, 223, 227, 229, | |
| 233, 239, 241, 251, 257, 263, 269, 271, 277, 281, 283, 293, 307, 311, 313, | |
| 317, 331, 337, 347, 349, 353, 359, 367, 373, 379, 383, 389, 397, 401, 409, | |
| 419, 421, 431, 433, 439, 443, 449, 457, 461, 463, 467, 479, 487, 491, 499, | |
| 503, 509, 521, 523, 541, 547, 557, 563, 569, 571, 577, 587, 593, 599, 601, | |
| 607, 613, 617, 619, 631, 641, 643, 647, 653, 659, 661, 673, 677, 683, 691, | |
| 701, 709, 719, 727, 733, 739, 743, 751, 757, 761, 769, 773, 787, 797, 809, | |
| 811, 821, 823, 827, 829, 839, 853, 857, 859, 863, 877, 881, 883, 887, 907, | |
| 911, 919, 929, 937, 941, 947, 953, 967, 971, 977, 983, 991, 997, | |
| ], | |
| fa = 67108864 / w[w.length - 1], | |
| l = (function () { | |
| function b(a, c, d) { | |
| null != a && | |
| ("number" == typeof a | |
| ? this.fromNumber(a, c, d) | |
| : null == c && "string" != typeof a | |
| ? this.fromString(a, 256) | |
| : this.fromString(a, c)); | |
| } | |
| return ( | |
| (b.prototype.toString = function (a) { | |
| if (0 > this.s) return "-" + this.negate().toString(a); | |
| if (16 == a) a = 4; | |
| else if (8 == a) a = 3; | |
| else if (2 == a) a = 1; | |
| else if (32 == a) a = 5; | |
| else { | |
| if (4 != a) return this.toRadix(a); | |
| a = 2; | |
| } | |
| var c, | |
| d = (1 << a) - 1, | |
| b = !1, | |
| e = "", | |
| k = this.t, | |
| h = this.DB - ((k * this.DB) % a); | |
| if (0 < k--) | |
| for ( | |
| h < this.DB && | |
| 0 < (c = this[k] >> h) && | |
| ((b = !0), | |
| (e = "0123456789abcdefghijklmnopqrstuvwxyz".charAt(c))); | |
| 0 <= k; | |
| ) | |
| h < a | |
| ? ((c = (this[k] & ((1 << h) - 1)) << (a - h)), | |
| (c |= this[--k] >> (h += this.DB - a))) | |
| : ((c = (this[k] >> (h -= a)) & d), | |
| 0 >= h && ((h += this.DB), --k)), | |
| 0 < c && (b = !0), | |
| b && (e += "0123456789abcdefghijklmnopqrstuvwxyz".charAt(c)); | |
| return b ? e : "0"; | |
| }), | |
| (b.prototype.negate = function () { | |
| var a = n(); | |
| return b.ZERO.subTo(this, a), a; | |
| }), | |
| (b.prototype.abs = function () { | |
| return 0 > this.s ? this.negate() : this; | |
| }), | |
| (b.prototype.compareTo = function (a) { | |
| var c = this.s - a.s; | |
| if (0 != c) return c; | |
| var d = this.t; | |
| if (0 != (c = d - a.t)) return 0 > this.s ? -c : c; | |
| for (; 0 <= --d; ) if (0 != (c = this[d] - a[d])) return c; | |
| return 0; | |
| }), | |
| (b.prototype.bitLength = function () { | |
| return 0 >= this.t | |
| ? 0 | |
| : this.DB * (this.t - 1) + L(this[this.t - 1] ^ (this.s & this.DM)); | |
| }), | |
| (b.prototype.mod = function (a) { | |
| var c = n(); | |
| return ( | |
| this.abs().divRemTo(a, null, c), | |
| 0 > this.s && 0 < c.compareTo(b.ZERO) && a.subTo(c, c), | |
| c | |
| ); | |
| }), | |
| (b.prototype.modPowInt = function (a, c) { | |
| var d; | |
| return ( | |
| (d = 256 > a || c.isEven() ? new Y(c) : new Z(c)), this.exp(a, d) | |
| ); | |
| }), | |
| (b.prototype.clone = function () { | |
| var a = n(); | |
| return this.copyTo(a), a; | |
| }), | |
| (b.prototype.intValue = function () { | |
| if (0 > this.s) { | |
| if (1 == this.t) return this[0] - this.DV; | |
| if (0 == this.t) return -1; | |
| } else { | |
| if (1 == this.t) return this[0]; | |
| if (0 == this.t) return 0; | |
| } | |
| return ((this[1] & ((1 << (32 - this.DB)) - 1)) << this.DB) | this[0]; | |
| }), | |
| (b.prototype.byteValue = function () { | |
| return 0 == this.t ? this.s : (this[0] << 24) >> 24; | |
| }), | |
| (b.prototype.shortValue = function () { | |
| return 0 == this.t ? this.s : (this[0] << 16) >> 16; | |
| }), | |
| (b.prototype.signum = function () { | |
| return 0 > this.s | |
| ? -1 | |
| : 0 >= this.t || (1 == this.t && 0 >= this[0]) | |
| ? 0 | |
| : 1; | |
| }), | |
| (b.prototype.toByteArray = function () { | |
| var a = this.t, | |
| c = []; | |
| c[0] = this.s; | |
| var d, | |
| b = this.DB - ((a * this.DB) % 8), | |
| e = 0; | |
| if (0 < a--) | |
| for ( | |
| b < this.DB && | |
| (d = this[a] >> b) != (this.s & this.DM) >> b && | |
| (c[e++] = d | (this.s << (this.DB - b))); | |
| 0 <= a; | |
| ) | |
| 8 > b | |
| ? ((d = (this[a] & ((1 << b) - 1)) << (8 - b)), | |
| (d |= this[--a] >> (b += this.DB - 8))) | |
| : ((d = (this[a] >> (b -= 8)) & 255), | |
| 0 >= b && ((b += this.DB), --a)), | |
| 0 != (128 & d) && (d |= -256), | |
| 0 == e && (128 & this.s) != (128 & d) && ++e, | |
| (0 < e || d != this.s) && (c[e++] = d); | |
| return c; | |
| }), | |
| (b.prototype.equals = function (a) { | |
| return 0 == this.compareTo(a); | |
| }), | |
| (b.prototype.min = function (a) { | |
| return 0 > this.compareTo(a) ? this : a; | |
| }), | |
| (b.prototype.max = function (a) { | |
| return 0 < this.compareTo(a) ? this : a; | |
| }), | |
| (b.prototype.and = function (a) { | |
| var c = n(); | |
| return this.bitwiseTo(a, F, c), c; | |
| }), | |
| (b.prototype.or = function (a) { | |
| var c = n(); | |
| return this.bitwiseTo(a, I, c), c; | |
| }), | |
| (b.prototype.xor = function (a) { | |
| var c = n(); | |
| return this.bitwiseTo(a, S, c), c; | |
| }), | |
| (b.prototype.andNot = function (a) { | |
| var c = n(); | |
| return this.bitwiseTo(a, T, c), c; | |
| }), | |
| (b.prototype.not = function () { | |
| for (var a = n(), c = 0; c < this.t; ++c) a[c] = this.DM & ~this[c]; | |
| return (a.t = this.t), (a.s = ~this.s), a; | |
| }), | |
| (b.prototype.shiftLeft = function (a) { | |
| var c = n(); | |
| return 0 > a ? this.rShiftTo(-a, c) : this.lShiftTo(a, c), c; | |
| }), | |
| (b.prototype.shiftRight = function (a) { | |
| var c = n(); | |
| return 0 > a ? this.lShiftTo(-a, c) : this.rShiftTo(a, c), c; | |
| }), | |
| (b.prototype.getLowestSetBit = function () { | |
| for (var a = 0; a < this.t; ++a) | |
| if (0 != this[a]) { | |
| var c = a * this.DB; | |
| var d = this[a]; | |
| if (0 == d) a = -1; | |
| else { | |
| var b = 0; | |
| a = | |
| (0 == (65535 & d) && ((d >>= 16), (b += 16)), | |
| 0 == (255 & d) && ((d >>= 8), (b += 8)), | |
| 0 == (15 & d) && ((d >>= 4), (b += 4)), | |
| 0 == (3 & d) && ((d >>= 2), (b += 2)), | |
| 0 == (1 & d) && ++b, | |
| b); | |
| } | |
| return c + a; | |
| } | |
| return 0 > this.s ? this.t * this.DB : -1; | |
| }), | |
| (b.prototype.bitCount = function () { | |
| for (var a = 0, c = this.s & this.DM, d = 0; d < this.t; ++d) { | |
| for (var b = this[d] ^ c, e = 0; 0 != b; ) (b &= b - 1), ++e; | |
| a += e; | |
| } | |
| return a; | |
| }), | |
| (b.prototype.testBit = function (a) { | |
| var c = Math.floor(a / this.DB); | |
| return c >= this.t | |
| ? 0 != this.s | |
| : 0 != (this[c] & (1 << a % this.DB)); | |
| }), | |
| (b.prototype.setBit = function (a) { | |
| return this.changeBit(a, I); | |
| }), | |
| (b.prototype.clearBit = function (a) { | |
| return this.changeBit(a, T); | |
| }), | |
| (b.prototype.flipBit = function (a) { | |
| return this.changeBit(a, S); | |
| }), | |
| (b.prototype.add = function (a) { | |
| var c = n(); | |
| return this.addTo(a, c), c; | |
| }), | |
| (b.prototype.subtract = function (a) { | |
| var c = n(); | |
| return this.subTo(a, c), c; | |
| }), | |
| (b.prototype.multiply = function (a) { | |
| var c = n(); | |
| return this.multiplyTo(a, c), c; | |
| }), | |
| (b.prototype.divide = function (a) { | |
| var c = n(); | |
| return this.divRemTo(a, c, null), c; | |
| }), | |
| (b.prototype.remainder = function (a) { | |
| var c = n(); | |
| return this.divRemTo(a, null, c), c; | |
| }), | |
| (b.prototype.divideAndRemainder = function (a) { | |
| var c = n(), | |
| d = n(); | |
| return this.divRemTo(a, c, d), [c, d]; | |
| }), | |
| (b.prototype.modPow = function (a, c) { | |
| var d = a.bitLength(), | |
| b = x(1); | |
| if (0 >= d) return b; | |
| var e = 18 > d ? 1 : 48 > d ? 3 : 144 > d ? 4 : 768 > d ? 5 : 6; | |
| c = 8 > d ? new Y(c) : c.isEven() ? new ha(c) : new Z(c); | |
| var k = [], | |
| h = 3, | |
| f = e - 1, | |
| u = (1 << e) - 1; | |
| if (((k[1] = c.convert(this)), 1 < e)) | |
| for (d = n(), c.sqrTo(k[1], d); h <= u; ) | |
| (k[h] = n()), c.mulTo(d, k[h - 2], k[h]), (h += 2); | |
| var l, | |
| m, | |
| v = a.t - 1, | |
| p = !0, | |
| t = n(); | |
| for (d = L(a[v]) - 1; 0 <= v; ) { | |
| f <= d | |
| ? (l = (a[v] >> (d - f)) & u) | |
| : ((l = (a[v] & ((1 << (d + 1)) - 1)) << (f - d)), | |
| 0 < v && (l |= a[v - 1] >> (this.DB + d - f))); | |
| for (h = e; 0 == (1 & l); ) (l >>= 1), --h; | |
| if ((0 > (d -= h) && ((d += this.DB), --v), p)) | |
| k[l].copyTo(b), (p = !1); | |
| else { | |
| for (; 1 < h; ) c.sqrTo(b, t), c.sqrTo(t, b), (h -= 2); | |
| 0 < h ? c.sqrTo(b, t) : ((m = b), (b = t), (t = m)); | |
| c.mulTo(t, k[l], b); | |
| } | |
| for (; 0 <= v && 0 == (a[v] & (1 << d)); ) | |
| c.sqrTo(b, t), | |
| (m = b), | |
| (b = t), | |
| (t = m), | |
| 0 > --d && ((d = this.DB - 1), --v); | |
| } | |
| return c.revert(b); | |
| }), | |
| (b.prototype.modInverse = function (a) { | |
| var c = a.isEven(); | |
| if ((this.isEven() && c) || 0 == a.signum()) return b.ZERO; | |
| for ( | |
| var d = a.clone(), | |
| g = this.clone(), | |
| e = x(1), | |
| k = x(0), | |
| h = x(0), | |
| f = x(1); | |
| 0 != d.signum(); | |
| ) { | |
| for (; d.isEven(); ) | |
| d.rShiftTo(1, d), | |
| c | |
| ? ((e.isEven() && k.isEven()) || | |
| (e.addTo(this, e), k.subTo(a, k)), | |
| e.rShiftTo(1, e)) | |
| : k.isEven() || k.subTo(a, k), | |
| k.rShiftTo(1, k); | |
| for (; g.isEven(); ) | |
| g.rShiftTo(1, g), | |
| c | |
| ? ((h.isEven() && f.isEven()) || | |
| (h.addTo(this, h), f.subTo(a, f)), | |
| h.rShiftTo(1, h)) | |
| : f.isEven() || f.subTo(a, f), | |
| f.rShiftTo(1, f); | |
| 0 <= d.compareTo(g) | |
| ? (d.subTo(g, d), c && e.subTo(h, e), k.subTo(f, k)) | |
| : (g.subTo(d, g), c && h.subTo(e, h), f.subTo(k, f)); | |
| } | |
| return 0 != g.compareTo(b.ONE) | |
| ? b.ZERO | |
| : 0 <= f.compareTo(a) | |
| ? f.subtract(a) | |
| : 0 > f.signum() | |
| ? (f.addTo(a, f), 0 > f.signum() ? f.add(a) : f) | |
| : f; | |
| }), | |
| (b.prototype.pow = function (a) { | |
| return this.exp(a, new ia()); | |
| }), | |
| (b.prototype.gcd = function (a) { | |
| var c = 0 > this.s ? this.negate() : this.clone(); | |
| a = 0 > a.s ? a.negate() : a.clone(); | |
| if (0 > c.compareTo(a)) { | |
| var d = c; | |
| c = a; | |
| a = d; | |
| } | |
| d = c.getLowestSetBit(); | |
| var b = a.getLowestSetBit(); | |
| if (0 > b) return c; | |
| d < b && (b = d); | |
| for (0 < b && (c.rShiftTo(b, c), a.rShiftTo(b, a)); 0 < c.signum(); ) | |
| 0 < (d = c.getLowestSetBit()) && c.rShiftTo(d, c), | |
| 0 < (d = a.getLowestSetBit()) && a.rShiftTo(d, a), | |
| 0 <= c.compareTo(a) | |
| ? (c.subTo(a, c), c.rShiftTo(1, c)) | |
| : (a.subTo(c, a), a.rShiftTo(1, a)); | |
| return 0 < b && a.lShiftTo(b, a), a; | |
| }), | |
| (b.prototype.isProbablePrime = function (a) { | |
| var c, | |
| d = this.abs(); | |
| if (1 == d.t && d[0] <= w[w.length - 1]) { | |
| for (c = 0; c < w.length; ++c) if (d[0] == w[c]) return !0; | |
| return !1; | |
| } | |
| if (d.isEven()) return !1; | |
| for (c = 1; c < w.length; ) { | |
| for (var b = w[c], e = c + 1; e < w.length && b < fa; ) b *= w[e++]; | |
| for (b = d.modInt(b); c < e; ) if (0 == b % w[c++]) return !1; | |
| } | |
| return d.millerRabin(a); | |
| }), | |
| (b.prototype.copyTo = function (a) { | |
| for (var c = this.t - 1; 0 <= c; --c) a[c] = this[c]; | |
| a.t = this.t; | |
| a.s = this.s; | |
| }), | |
| (b.prototype.fromInt = function (a) { | |
| this.t = 1; | |
| this.s = 0 > a ? -1 : 0; | |
| 0 < a | |
| ? (this[0] = a) | |
| : -1 > a | |
| ? (this[0] = a + this.DV) | |
| : (this.t = 0); | |
| }), | |
| (b.prototype.fromString = function (a, c) { | |
| if (16 == c) c = 4; | |
| else if (8 == c) c = 3; | |
| else if (256 == c) c = 8; | |
| else if (2 == c) c = 1; | |
| else if (32 == c) c = 5; | |
| else { | |
| if (4 != c) return void this.fromRadix(a, c); | |
| c = 2; | |
| } | |
| this.s = this.t = 0; | |
| for (var d = a.length, g = !1, e = 0; 0 <= --d; ) { | |
| var k = 8 == c ? 255 & +a[d] : V(a, d); | |
| 0 > k | |
| ? "-" == a.charAt(d) && (g = !0) | |
| : ((g = !1), | |
| 0 == e | |
| ? (this[this.t++] = k) | |
| : e + c > this.DB | |
| ? ((this[this.t - 1] |= | |
| (k & ((1 << (this.DB - e)) - 1)) << e), | |
| (this[this.t++] = k >> (this.DB - e))) | |
| : (this[this.t - 1] |= k << e), | |
| (e += c) >= this.DB && (e -= this.DB)); | |
| } | |
| 8 == c && | |
| 0 != (128 & +a[0]) && | |
| ((this.s = -1), | |
| 0 < e && (this[this.t - 1] |= ((1 << (this.DB - e)) - 1) << e)); | |
| this.clamp(); | |
| g && b.ZERO.subTo(this, this); | |
| }), | |
| (b.prototype.clamp = function () { | |
| for (var a = this.s & this.DM; 0 < this.t && this[this.t - 1] == a; ) | |
| --this.t; | |
| }), | |
| (b.prototype.dlShiftTo = function (a, c) { | |
| var d; | |
| for (d = this.t - 1; 0 <= d; --d) c[d + a] = this[d]; | |
| for (d = a - 1; 0 <= d; --d) c[d] = 0; | |
| c.t = this.t + a; | |
| c.s = this.s; | |
| }), | |
| (b.prototype.drShiftTo = function (a, c) { | |
| for (var d = a; d < this.t; ++d) c[d - a] = this[d]; | |
| c.t = Math.max(this.t - a, 0); | |
| c.s = this.s; | |
| }), | |
| (b.prototype.lShiftTo = function (a, c) { | |
| var d = a % this.DB, | |
| b = this.DB - d, | |
| e = (1 << b) - 1; | |
| a = Math.floor(a / this.DB); | |
| for (var k = (this.s << d) & this.DM, h = this.t - 1; 0 <= h; --h) | |
| (c[h + a + 1] = (this[h] >> b) | k), (k = (this[h] & e) << d); | |
| for (h = a - 1; 0 <= h; --h) c[h] = 0; | |
| c[a] = k; | |
| c.t = this.t + a + 1; | |
| c.s = this.s; | |
| c.clamp(); | |
| }), | |
| (b.prototype.rShiftTo = function (a, c) { | |
| c.s = this.s; | |
| var d = Math.floor(a / this.DB); | |
| if (d >= this.t) c.t = 0; | |
| else { | |
| a %= this.DB; | |
| var b = this.DB - a, | |
| e = (1 << a) - 1; | |
| c[0] = this[d] >> a; | |
| for (var k = d + 1; k < this.t; ++k) | |
| (c[k - d - 1] |= (this[k] & e) << b), (c[k - d] = this[k] >> a); | |
| 0 < a && (c[this.t - d - 1] |= (this.s & e) << b); | |
| c.t = this.t - d; | |
| c.clamp(); | |
| } | |
| }), | |
| (b.prototype.subTo = function (a, c) { | |
| for (var d = 0, b = 0, e = Math.min(a.t, this.t); d < e; ) | |
| (b += this[d] - a[d]), (c[d++] = b & this.DM), (b >>= this.DB); | |
| if (a.t < this.t) { | |
| for (b -= a.s; d < this.t; ) | |
| (b += this[d]), (c[d++] = b & this.DM), (b >>= this.DB); | |
| b += this.s; | |
| } else { | |
| for (b += this.s; d < a.t; ) | |
| (b -= a[d]), (c[d++] = b & this.DM), (b >>= this.DB); | |
| b -= a.s; | |
| } | |
| c.s = 0 > b ? -1 : 0; | |
| -1 > b ? (c[d++] = this.DV + b) : 0 < b && (c[d++] = b); | |
| c.t = d; | |
| c.clamp(); | |
| }), | |
| (b.prototype.multiplyTo = function (a, c) { | |
| var d = this.abs(), | |
| g = a.abs(), | |
| e = d.t; | |
| for (c.t = e + g.t; 0 <= --e; ) c[e] = 0; | |
| for (e = 0; e < g.t; ++e) c[e + d.t] = d.am(0, g[e], c, e, 0, d.t); | |
| c.s = 0; | |
| c.clamp(); | |
| this.s != a.s && b.ZERO.subTo(c, c); | |
| }), | |
| (b.prototype.squareTo = function (a) { | |
| for (var c = this.abs(), b = (a.t = 2 * c.t); 0 <= --b; ) a[b] = 0; | |
| for (b = 0; b < c.t - 1; ++b) { | |
| var g = c.am(b, c[b], a, 2 * b, 0, 1); | |
| (a[b + c.t] += c.am( | |
| b + 1, | |
| 2 * c[b], | |
| a, | |
| 2 * b + 1, | |
| g, | |
| c.t - b - 1 | |
| )) >= c.DV && ((a[b + c.t] -= c.DV), (a[b + c.t + 1] = 1)); | |
| } | |
| 0 < a.t && (a[a.t - 1] += c.am(b, c[b], a, 2 * b, 0, 1)); | |
| a.s = 0; | |
| a.clamp(); | |
| }), | |
| (b.prototype.divRemTo = function (a, c, d) { | |
| var g = a.abs(); | |
| if (!(0 >= g.t)) { | |
| var e = this.abs(); | |
| if (e.t < g.t) | |
| return ( | |
| null != c && c.fromInt(0), void (null != d && this.copyTo(d)) | |
| ); | |
| null == d && (d = n()); | |
| var k = n(), | |
| h = this.s; | |
| a = a.s; | |
| var f = this.DB - L(g[g.t - 1]); | |
| 0 < f | |
| ? (g.lShiftTo(f, k), e.lShiftTo(f, d)) | |
| : (g.copyTo(k), e.copyTo(d)); | |
| g = k.t; | |
| e = k[g - 1]; | |
| if (0 != e) { | |
| var u = e * (1 << this.F1) + (1 < g ? k[g - 2] >> this.F2 : 0), | |
| l = this.FV / u; | |
| u = (1 << this.F1) / u; | |
| var m = 1 << this.F2, | |
| v = d.t, | |
| p = v - g, | |
| t = null == c ? n() : c; | |
| k.dlShiftTo(p, t); | |
| 0 <= d.compareTo(t) && ((d[d.t++] = 1), d.subTo(t, d)); | |
| b.ONE.dlShiftTo(g, t); | |
| for (t.subTo(k, k); k.t < g; ) k[k.t++] = 0; | |
| for (; 0 <= --p; ) { | |
| var r = | |
| d[--v] == e | |
| ? this.DM | |
| : Math.floor(d[v] * l + (d[v - 1] + m) * u); | |
| if ((d[v] += k.am(0, r, d, p, 0, g)) < r) | |
| for (k.dlShiftTo(p, t), d.subTo(t, d); d[v] < --r; ) | |
| d.subTo(t, d); | |
| } | |
| null != c && (d.drShiftTo(g, c), h != a && b.ZERO.subTo(c, c)); | |
| d.t = g; | |
| d.clamp(); | |
| 0 < f && d.rShiftTo(f, d); | |
| 0 > h && b.ZERO.subTo(d, d); | |
| } | |
| } | |
| }), | |
| (b.prototype.invDigit = function () { | |
| if (1 > this.t) return 0; | |
| var a = this[0]; | |
| if (0 == (1 & a)) return 0; | |
| var c = 3 & a; | |
| return 0 < | |
| (c = | |
| ((c = | |
| ((c = | |
| ((c = (c * (2 - (15 & a) * c)) & 15) * (2 - (255 & a) * c)) & | |
| 255) * | |
| (2 - (((65535 & a) * c) & 65535))) & | |
| 65535) * | |
| (2 - ((a * c) % this.DV))) % | |
| this.DV) | |
| ? this.DV - c | |
| : -c; | |
| }), | |
| (b.prototype.isEven = function () { | |
| return 0 == (0 < this.t ? 1 & this[0] : this.s); | |
| }), | |
| (b.prototype.exp = function (a, c) { | |
| if (4294967295 < a || 1 > a) return b.ONE; | |
| var d = n(), | |
| g = n(), | |
| e = c.convert(this), | |
| k = L(a) - 1; | |
| for (e.copyTo(d); 0 <= --k; ) | |
| if ((c.sqrTo(d, g), 0 < (a & (1 << k)))) c.mulTo(g, e, d); | |
| else { | |
| var f = d; | |
| d = g; | |
| g = f; | |
| } | |
| return c.revert(d); | |
| }), | |
| (b.prototype.chunkSize = function (a) { | |
| return Math.floor((Math.LN2 * this.DB) / Math.log(a)); | |
| }), | |
| (b.prototype.toRadix = function (a) { | |
| if ((null == a && (a = 10), 0 == this.signum() || 2 > a || 36 < a)) | |
| return "0"; | |
| var c = this.chunkSize(a); | |
| c = Math.pow(a, c); | |
| var b = x(c), | |
| g = n(), | |
| e = n(), | |
| k = ""; | |
| for (this.divRemTo(b, g, e); 0 < g.signum(); ) | |
| (k = (c + e.intValue()).toString(a).substr(1) + k), | |
| g.divRemTo(b, g, e); | |
| return e.intValue().toString(a) + k; | |
| }), | |
| (b.prototype.fromRadix = function (a, c) { | |
| this.fromInt(0); | |
| null == c && (c = 10); | |
| for ( | |
| var d = this.chunkSize(c), | |
| g = Math.pow(c, d), | |
| e = !1, | |
| k = 0, | |
| f = 0, | |
| l = 0; | |
| l < a.length; | |
| ++l | |
| ) { | |
| var u = V(a, l); | |
| 0 > u | |
| ? "-" == a.charAt(l) && 0 == this.signum() && (e = !0) | |
| : ((f = c * f + u), | |
| ++k >= d && | |
| (this.dMultiply(g), this.dAddOffset(f, 0), (f = k = 0))); | |
| } | |
| 0 < k && (this.dMultiply(Math.pow(c, k)), this.dAddOffset(f, 0)); | |
| e && b.ZERO.subTo(this, this); | |
| }), | |
| (b.prototype.fromNumber = function (a, c, d) { | |
| if ("number" == typeof c) | |
| if (2 > a) this.fromInt(1); | |
| else | |
| for ( | |
| this.fromNumber(a, d), | |
| this.testBit(a - 1) || | |
| this.bitwiseTo(b.ONE.shiftLeft(a - 1), I, this), | |
| this.isEven() && this.dAddOffset(1, 0); | |
| !this.isProbablePrime(c); | |
| ) | |
| this.dAddOffset(2, 0), | |
| this.bitLength() > a && | |
| this.subTo(b.ONE.shiftLeft(a - 1), this); | |
| else { | |
| d = []; | |
| var g = 7 & a; | |
| d.length = 1 + (a >> 3); | |
| c.nextBytes(d); | |
| 0 < g ? (d[0] &= (1 << g) - 1) : (d[0] = 0); | |
| this.fromString(d, 256); | |
| } | |
| }), | |
| (b.prototype.bitwiseTo = function (a, c, b) { | |
| var d, | |
| e = Math.min(a.t, this.t); | |
| for (d = 0; d < e; ++d) b[d] = c(this[d], a[d]); | |
| if (a.t < this.t) { | |
| var k = a.s & this.DM; | |
| for (d = e; d < this.t; ++d) b[d] = c(this[d], k); | |
| b.t = this.t; | |
| } else { | |
| k = this.s & this.DM; | |
| for (d = e; d < a.t; ++d) b[d] = c(k, a[d]); | |
| b.t = a.t; | |
| } | |
| b.s = c(this.s, a.s); | |
| b.clamp(); | |
| }), | |
| (b.prototype.changeBit = function (a, c) { | |
| a = b.ONE.shiftLeft(a); | |
| return this.bitwiseTo(a, c, a), a; | |
| }), | |
| (b.prototype.addTo = function (a, c) { | |
| for (var b = 0, g = 0, e = Math.min(a.t, this.t); b < e; ) | |
| (g += this[b] + a[b]), (c[b++] = g & this.DM), (g >>= this.DB); | |
| if (a.t < this.t) { | |
| for (g += a.s; b < this.t; ) | |
| (g += this[b]), (c[b++] = g & this.DM), (g >>= this.DB); | |
| g += this.s; | |
| } else { | |
| for (g += this.s; b < a.t; ) | |
| (g += a[b]), (c[b++] = g & this.DM), (g >>= this.DB); | |
| g += a.s; | |
| } | |
| c.s = 0 > g ? -1 : 0; | |
| 0 < g ? (c[b++] = g) : -1 > g && (c[b++] = this.DV + g); | |
| c.t = b; | |
| c.clamp(); | |
| }), | |
| (b.prototype.dMultiply = function (a) { | |
| this[this.t] = this.am(0, a - 1, this, 0, 0, this.t); | |
| ++this.t; | |
| this.clamp(); | |
| }), | |
| (b.prototype.dAddOffset = function (a, c) { | |
| if (0 != a) { | |
| for (; this.t <= c; ) this[this.t++] = 0; | |
| for (this[c] += a; this[c] >= this.DV; ) | |
| (this[c] -= this.DV), | |
| ++c >= this.t && (this[this.t++] = 0), | |
| ++this[c]; | |
| } | |
| }), | |
| (b.prototype.multiplyLowerTo = function (a, c, b) { | |
| var d = Math.min(this.t + a.t, c); | |
| b.s = 0; | |
| for (b.t = d; 0 < d; ) b[--d] = 0; | |
| for (var e = b.t - this.t; d < e; ++d) | |
| b[d + this.t] = this.am(0, a[d], b, d, 0, this.t); | |
| for (e = Math.min(a.t, c); d < e; ++d) | |
| this.am(0, a[d], b, d, 0, c - d); | |
| b.clamp(); | |
| }), | |
| (b.prototype.multiplyUpperTo = function (a, c, b) { | |
| --c; | |
| var d = (b.t = this.t + a.t - c); | |
| for (b.s = 0; 0 <= --d; ) b[d] = 0; | |
| for (d = Math.max(c - this.t, 0); d < a.t; ++d) | |
| b[this.t + d - c] = this.am(c - d, a[d], b, 0, 0, this.t + d - c); | |
| b.clamp(); | |
| b.drShiftTo(1, b); | |
| }), | |
| (b.prototype.modInt = function (a) { | |
| if (0 >= a) return 0; | |
| var c = this.DV % a, | |
| b = 0 > this.s ? a - 1 : 0; | |
| if (0 < this.t) | |
| if (0 == c) b = this[0] % a; | |
| else | |
| for (var g = this.t - 1; 0 <= g; --g) b = (c * b + this[g]) % a; | |
| return b; | |
| }), | |
| (b.prototype.millerRabin = function (a) { | |
| var c = this.subtract(b.ONE), | |
| d = c.getLowestSetBit(); | |
| if (0 >= d) return !1; | |
| var g = c.shiftRight(d); | |
| w.length < (a = (a + 1) >> 1) && (a = w.length); | |
| for (var e = n(), k = 0; k < a; ++k) { | |
| e.fromInt(w[Math.floor(Math.random() * w.length)]); | |
| var f = e.modPow(g, this); | |
| if (0 != f.compareTo(b.ONE) && 0 != f.compareTo(c)) { | |
| for (var l = 1; l++ < d && 0 != f.compareTo(c); ) | |
| if (0 == (f = f.modPowInt(2, this)).compareTo(b.ONE)) return !1; | |
| if (0 != f.compareTo(c)) return !1; | |
| } | |
| } | |
| return !0; | |
| }), | |
| (b.prototype.square = function () { | |
| var a = n(); | |
| return this.squareTo(a), a; | |
| }), | |
| (b.prototype.gcda = function (a, c) { | |
| var b = 0 > this.s ? this.negate() : this.clone(), | |
| g = 0 > a.s ? a.negate() : a.clone(); | |
| 0 > b.compareTo(g) && ((a = b), (b = g), (g = a)); | |
| var e = b.getLowestSetBit(), | |
| f = g.getLowestSetBit(); | |
| if (0 > f) c(b); | |
| else { | |
| e < f && (f = e); | |
| 0 < f && (b.rShiftTo(f, b), g.rShiftTo(f, g)); | |
| var h = function () { | |
| 0 < (e = b.getLowestSetBit()) && b.rShiftTo(e, b); | |
| 0 < (e = g.getLowestSetBit()) && g.rShiftTo(e, g); | |
| 0 <= b.compareTo(g) | |
| ? (b.subTo(g, b), b.rShiftTo(1, b)) | |
| : (g.subTo(b, g), g.rShiftTo(1, g)); | |
| 0 < b.signum() | |
| ? setTimeout(h, 0) | |
| : (0 < f && g.lShiftTo(f, g), | |
| setTimeout(function () { | |
| c(g); | |
| }, 0)); | |
| }; | |
| setTimeout(h, 10); | |
| } | |
| }), | |
| (b.prototype.fromNumberAsync = function (a, c, d, g) { | |
| if ("number" == typeof c) | |
| if (2 > a) this.fromInt(1); | |
| else { | |
| this.fromNumber(a, d); | |
| this.testBit(a - 1) || | |
| this.bitwiseTo(b.ONE.shiftLeft(a - 1), I, this); | |
| this.isEven() && this.dAddOffset(1, 0); | |
| var e = this, | |
| f = function () { | |
| e.dAddOffset(2, 0); | |
| e.bitLength() > a && e.subTo(b.ONE.shiftLeft(a - 1), e); | |
| e.isProbablePrime(c) | |
| ? setTimeout(function () { | |
| g(); | |
| }, 0) | |
| : setTimeout(f, 0); | |
| }; | |
| setTimeout(f, 0); | |
| } | |
| else { | |
| d = []; | |
| var h = 7 & a; | |
| d.length = 1 + (a >> 3); | |
| c.nextBytes(d); | |
| 0 < h ? (d[0] &= (1 << h) - 1) : (d[0] = 0); | |
| this.fromString(d, 256); | |
| } | |
| }), | |
| b | |
| ); | |
| })(), | |
| ia = (function () { | |
| function b() {} | |
| return ( | |
| (b.prototype.convert = function (a) { | |
| return a; | |
| }), | |
| (b.prototype.revert = function (a) { | |
| return a; | |
| }), | |
| (b.prototype.mulTo = function (a, c, b) { | |
| a.multiplyTo(c, b); | |
| }), | |
| (b.prototype.sqrTo = function (a, c) { | |
| a.squareTo(c); | |
| }), | |
| b | |
| ); | |
| })(), | |
| Y = (function () { | |
| function b(a) { | |
| this.m = a; | |
| } | |
| return ( | |
| (b.prototype.convert = function (a) { | |
| return 0 > a.s || 0 <= a.compareTo(this.m) ? a.mod(this.m) : a; | |
| }), | |
| (b.prototype.revert = function (a) { | |
| return a; | |
| }), | |
| (b.prototype.reduce = function (a) { | |
| a.divRemTo(this.m, null, a); | |
| }), | |
| (b.prototype.mulTo = function (a, c, b) { | |
| a.multiplyTo(c, b); | |
| this.reduce(b); | |
| }), | |
| (b.prototype.sqrTo = function (a, c) { | |
| a.squareTo(c); | |
| this.reduce(c); | |
| }), | |
| b | |
| ); | |
| })(), | |
| Z = (function () { | |
| function b(a) { | |
| this.m = a; | |
| this.mp = a.invDigit(); | |
| this.mpl = 32767 & this.mp; | |
| this.mph = this.mp >> 15; | |
| this.um = (1 << (a.DB - 15)) - 1; | |
| this.mt2 = 2 * a.t; | |
| } | |
| return ( | |
| (b.prototype.convert = function (a) { | |
| var c = n(); | |
| return ( | |
| a.abs().dlShiftTo(this.m.t, c), | |
| c.divRemTo(this.m, null, c), | |
| 0 > a.s && 0 < c.compareTo(l.ZERO) && this.m.subTo(c, c), | |
| c | |
| ); | |
| }), | |
| (b.prototype.revert = function (a) { | |
| var c = n(); | |
| return a.copyTo(c), this.reduce(c), c; | |
| }), | |
| (b.prototype.reduce = function (a) { | |
| for (; a.t <= this.mt2; ) a[a.t++] = 0; | |
| for (var c = 0; c < this.m.t; ++c) { | |
| var b = 32767 & a[c], | |
| g = | |
| (b * this.mpl + | |
| (((b * this.mph + (a[c] >> 15) * this.mpl) & this.um) << | |
| 15)) & | |
| a.DM; | |
| for ( | |
| a[(b = c + this.m.t)] += this.m.am(0, g, a, c, 0, this.m.t); | |
| a[b] >= a.DV; | |
| ) | |
| (a[b] -= a.DV), a[++b]++; | |
| } | |
| a.clamp(); | |
| a.drShiftTo(this.m.t, a); | |
| 0 <= a.compareTo(this.m) && a.subTo(this.m, a); | |
| }), | |
| (b.prototype.mulTo = function (a, c, b) { | |
| a.multiplyTo(c, b); | |
| this.reduce(b); | |
| }), | |
| (b.prototype.sqrTo = function (a, c) { | |
| a.squareTo(c); | |
| this.reduce(c); | |
| }), | |
| b | |
| ); | |
| })(), | |
| ha = (function () { | |
| function b(a) { | |
| this.m = a; | |
| this.r2 = n(); | |
| this.q3 = n(); | |
| l.ONE.dlShiftTo(2 * a.t, this.r2); | |
| this.mu = this.r2.divide(a); | |
| } | |
| return ( | |
| (b.prototype.convert = function (a) { | |
| if (0 > a.s || a.t > 2 * this.m.t) return a.mod(this.m); | |
| if (0 > a.compareTo(this.m)) return a; | |
| var c = n(); | |
| return a.copyTo(c), this.reduce(c), c; | |
| }), | |
| (b.prototype.revert = function (a) { | |
| return a; | |
| }), | |
| (b.prototype.reduce = function (a) { | |
| a.drShiftTo(this.m.t - 1, this.r2); | |
| a.t > this.m.t + 1 && ((a.t = this.m.t + 1), a.clamp()); | |
| this.mu.multiplyUpperTo(this.r2, this.m.t + 1, this.q3); | |
| for ( | |
| this.m.multiplyLowerTo(this.q3, this.m.t + 1, this.r2); | |
| 0 > a.compareTo(this.r2); | |
| ) | |
| a.dAddOffset(1, this.m.t + 1); | |
| for (a.subTo(this.r2, a); 0 <= a.compareTo(this.m); ) | |
| a.subTo(this.m, a); | |
| }), | |
| (b.prototype.mulTo = function (a, c, b) { | |
| a.multiplyTo(c, b); | |
| this.reduce(b); | |
| }), | |
| (b.prototype.sqrTo = function (a, c) { | |
| a.squareTo(c); | |
| this.reduce(c); | |
| }), | |
| b | |
| ); | |
| })(); | |
| "Microsoft Internet Explorer" == navigator.appName | |
| ? ((l.prototype.am = function (b, a, c, d, g, e) { | |
| var f = 32767 & a; | |
| for (a >>= 15; 0 <= --e; ) { | |
| var h = 32767 & this[b], | |
| l = this[b++] >> 15, | |
| u = a * h + l * f; | |
| g = | |
| ((h = f * h + ((32767 & u) << 15) + c[d] + (1073741823 & g)) >>> | |
| 30) + | |
| (u >>> 15) + | |
| a * l + | |
| (g >>> 30); | |
| c[d++] = 1073741823 & h; | |
| } | |
| return g; | |
| }), | |
| (p = 30)) | |
| : "Netscape" != navigator.appName | |
| ? ((l.prototype.am = function (b, a, c, d, g, e) { | |
| for (; 0 <= --e; ) { | |
| var f = a * this[b++] + c[d] + g; | |
| g = Math.floor(f / 67108864); | |
| c[d++] = 67108863 & f; | |
| } | |
| return g; | |
| }), | |
| (p = 26)) | |
| : ((l.prototype.am = function (b, a, c, d, g, e) { | |
| var f = 16383 & a; | |
| for (a >>= 14; 0 <= --e; ) { | |
| var h = 16383 & this[b], | |
| l = this[b++] >> 14, | |
| u = a * h + l * f; | |
| g = | |
| ((h = f * h + ((16383 & u) << 14) + c[d] + g) >> 28) + | |
| (u >> 14) + | |
| a * l; | |
| c[d++] = 268435455 & h; | |
| } | |
| return g; | |
| }), | |
| (p = 28)); | |
| l.prototype.DB = p; | |
| l.prototype.DM = (1 << p) - 1; | |
| l.prototype.DV = 1 << p; | |
| l.prototype.FV = Math.pow(2, 52); | |
| l.prototype.F1 = 52 - p; | |
| l.prototype.F2 = 2 * p - 52; | |
| var m, | |
| K = []; | |
| p = 48; | |
| for (m = 0; 9 >= m; ++m) K[p++] = m; | |
| p = 97; | |
| for (m = 10; 36 > m; ++m) K[p++] = m; | |
| p = 65; | |
| for (m = 10; 36 > m; ++m) K[p++] = m; | |
| l.ZERO = x(0); | |
| l.ONE = x(1); | |
| var i = (function () { | |
| function b() { | |
| this.j = this.i = 0; | |
| this.S = []; | |
| } | |
| return ( | |
| (b.prototype.init = function (a) { | |
| var c, b; | |
| for (c = 0; 256 > c; ++c) this.S[c] = c; | |
| for (c = b = 0; 256 > c; ++c) { | |
| b = (b + this.S[c] + a[c % a.length]) & 255; | |
| var g = this.S[c]; | |
| this.S[c] = this.S[b]; | |
| this.S[b] = g; | |
| } | |
| this.j = this.i = 0; | |
| }), | |
| (b.prototype.next = function () { | |
| var a; | |
| return ( | |
| (this.i = (this.i + 1) & 255), | |
| (this.j = (this.j + this.S[this.i]) & 255), | |
| (a = this.S[this.i]), | |
| (this.S[this.i] = this.S[this.j]), | |
| (this.S[this.j] = a), | |
| this.S[(a + this.S[this.i]) & 255] | |
| ); | |
| }), | |
| b | |
| ); | |
| })(), | |
| M, | |
| B = null; | |
| if (null == B) { | |
| B = []; | |
| console.log("🚀 ~ B:", B); | |
| p = void (y = 0); | |
| if (window.crypto && window.crypto.getRandomValues) | |
| for ( | |
| m = new Uint32Array(256), window.crypto.getRandomValues(m), p = 0; | |
| p < m.length; | |
| ++p | |
| ) | |
| B[y++] = 255 & m[p]; | |
| var N = function (b) { | |
| if (((this.count = this.count || 0), 256 <= this.count || 256 <= y)) | |
| window.removeEventListener | |
| ? window.removeEventListener("mousemove", N, !1) | |
| : window.detachEvent && window.detachEvent("onmousemove", N); | |
| else | |
| try { | |
| var a = b.x + b.y; | |
| B[y++] = 255 & a; | |
| console.log(B[y++]); | |
| this.count += 1; | |
| } catch (c) {} | |
| }; | |
| window.addEventListener | |
| ? window.addEventListener("mousemove", N, !1) | |
| : window.attachEvent && window.attachEvent("onmousemove", N); | |
| } | |
| var R = (function () { | |
| function b() {} | |
| return ( | |
| (b.prototype.nextBytes = function (a) { | |
| for (var c = 0; c < a.length; ++c) { | |
| var b = c; | |
| if (null == M) { | |
| for (M = new i(); 256 > y; ) { | |
| var g = Math.floor(65536 * Math.random()); | |
| B[y++] = 255 & g; | |
| } | |
| M.init(B); | |
| for (y = 0; y < B.length; ++y) B[y] = 0; | |
| y = 0; | |
| } | |
| g = M.next(); | |
| a[b] = g; | |
| } | |
| }), | |
| b | |
| ); | |
| })(); | |
| p = (function () { | |
| function b() { | |
| this.n = null; | |
| this.e = 0; | |
| this.coeff = this.dmq1 = this.dmp1 = this.q = this.p = this.d = null; | |
| } | |
| return ( | |
| (b.prototype.doPublic = function (a) { | |
| return a.modPowInt(this.e, this.n); | |
| }), | |
| (b.prototype.doPrivate = function (a) { | |
| if (null == this.p || null == this.q) return a.modPow(this.d, this.n); | |
| var c = a.mod(this.p).modPow(this.dmp1, this.p); | |
| for (a = a.mod(this.q).modPow(this.dmq1, this.q); 0 > c.compareTo(a); ) | |
| c = c.add(this.p); | |
| return c | |
| .subtract(a) | |
| .multiply(this.coeff) | |
| .mod(this.p) | |
| .multiply(this.q) | |
| .add(a); | |
| }), | |
| (b.prototype.setPublic = function (a, c) { | |
| null != a && null != c && 0 < a.length && 0 < c.length | |
| ? ((this.n = r(a, 16)), (this.e = parseInt(c, 16))) | |
| : console.error("Invalid RSA public key"); | |
| }), | |
| (b.prototype.encrypt = function (a) { | |
| var c = (this.n.bitLength() + 7) >> 3; | |
| if (c < a.length + 11) | |
| c = (console.error("Message too long for RSA"), null); | |
| else { | |
| for (var b = [], g = a.length - 1; 0 <= g && 0 < c; ) { | |
| var e = a.charCodeAt(g--); | |
| 128 > e | |
| ? (b[--c] = e) | |
| : 127 < e && 2048 > e | |
| ? ((b[--c] = (63 & e) | 128), (b[--c] = (e >> 6) | 192)) | |
| : ((b[--c] = (63 & e) | 128), | |
| (b[--c] = ((e >> 6) & 63) | 128), | |
| (b[--c] = (e >> 12) | 224)); | |
| } | |
| b[--c] = 0; | |
| a = new R(); | |
| for (g = []; 2 < c; ) { | |
| for (g[0] = 0; 0 == g[0]; ) a.nextBytes(g); | |
| b[--c] = g[0]; | |
| } | |
| c = ((b[--c] = 2), (b[--c] = 0), new l(b)); | |
| } | |
| if (null == c) return null; | |
| c = this.doPublic(c); | |
| if (null == c) return null; | |
| c = c.toString(16); | |
| return 0 == (1 & c.length) ? c : "0" + c; | |
| }), | |
| (b.prototype.setPrivate = function (a, c, b) { | |
| null != a && null != c && 0 < a.length && 0 < c.length | |
| ? ((this.n = r(a, 16)), | |
| (this.e = parseInt(c, 16)), | |
| (this.d = r(b, 16))) | |
| : console.error("Invalid RSA private key"); | |
| }), | |
| (b.prototype.setPrivateEx = function (a, c, b, g, e, f, h, l) { | |
| null != a && null != c && 0 < a.length && 0 < c.length | |
| ? ((this.n = r(a, 16)), | |
| (this.e = parseInt(c, 16)), | |
| (this.d = r(b, 16)), | |
| (this.p = r(g, 16)), | |
| (this.q = r(e, 16)), | |
| (this.dmp1 = r(f, 16)), | |
| (this.dmq1 = r(h, 16)), | |
| (this.coeff = r(l, 16))) | |
| : console.error("Invalid RSA private key"); | |
| }), | |
| (b.prototype.generate = function (a, c) { | |
| var b = new R(), | |
| g = a >> 1; | |
| this.e = parseInt(c, 16); | |
| for (c = new l(c, 16); !0; ) { | |
| for ( | |
| ; | |
| (this.p = new l(a - g, 1, b)), | |
| 0 != this.p.subtract(l.ONE).gcd(c).compareTo(l.ONE) || | |
| !this.p.isProbablePrime(10); | |
| ); | |
| for ( | |
| ; | |
| (this.q = new l(g, 1, b)), | |
| 0 != this.q.subtract(l.ONE).gcd(c).compareTo(l.ONE) || | |
| !this.q.isProbablePrime(10); | |
| ); | |
| if (0 >= this.p.compareTo(this.q)) { | |
| var e = this.p; | |
| this.p = this.q; | |
| this.q = e; | |
| } | |
| e = this.p.subtract(l.ONE); | |
| var f = this.q.subtract(l.ONE), | |
| h = e.multiply(f); | |
| if (0 == h.gcd(c).compareTo(l.ONE)) { | |
| this.n = this.p.multiply(this.q); | |
| this.d = c.modInverse(h); | |
| this.dmp1 = this.d.mod(e); | |
| this.dmq1 = this.d.mod(f); | |
| this.coeff = this.q.modInverse(this.p); | |
| break; | |
| } | |
| } | |
| }), | |
| (b.prototype.decrypt = function (a) { | |
| a = r(a, 16); | |
| a = this.doPrivate(a); | |
| if (null == a) a = null; | |
| else | |
| a: { | |
| var c = (this.n.bitLength() + 7) >> 3; | |
| a = a.toByteArray(); | |
| for (var b = 0; b < a.length && 0 == a[b]; ) ++b; | |
| if (a.length - b != c - 1 || 2 != a[b]) a = null; | |
| else { | |
| for (++b; 0 != a[b]; ) | |
| if (++b >= a.length) { | |
| a = null; | |
| break a; | |
| } | |
| for (c = ""; ++b < a.length; ) { | |
| var g = 255 & a[b]; | |
| 128 > g | |
| ? (c += String.fromCharCode(g)) | |
| : 191 < g && 224 > g | |
| ? ((c += String.fromCharCode( | |
| ((31 & g) << 6) | (63 & a[b + 1]) | |
| )), | |
| ++b) | |
| : ((c += String.fromCharCode( | |
| ((15 & g) << 12) | | |
| ((63 & a[b + 1]) << 6) | | |
| (63 & a[b + 2]) | |
| )), | |
| (b += 2)); | |
| } | |
| a = c; | |
| } | |
| } | |
| return a; | |
| }), | |
| (b.prototype.generateAsync = function (a, c, b) { | |
| var d = new R(), | |
| e = a >> 1; | |
| this.e = parseInt(c, 16); | |
| var f = new l(c, 16), | |
| h = this, | |
| m = function () { | |
| var c = function () { | |
| if (0 >= h.p.compareTo(h.q)) { | |
| var a = h.p; | |
| h.p = h.q; | |
| h.q = a; | |
| } | |
| a = h.p.subtract(l.ONE); | |
| var c = h.q.subtract(l.ONE), | |
| d = a.multiply(c); | |
| 0 == d.gcd(f).compareTo(l.ONE) | |
| ? ((h.n = h.p.multiply(h.q)), | |
| (h.d = f.modInverse(d)), | |
| (h.dmp1 = h.d.mod(a)), | |
| (h.dmq1 = h.d.mod(c)), | |
| (h.coeff = h.q.modInverse(h.p)), | |
| setTimeout(function () { | |
| b(); | |
| }, 0)) | |
| : setTimeout(m, 0); | |
| }, | |
| g = function () { | |
| h.q = n(); | |
| h.q.fromNumberAsync(e, 1, d, function () { | |
| h.q.subtract(l.ONE).gcda(f, function (a) { | |
| 0 == a.compareTo(l.ONE) && h.q.isProbablePrime(10) | |
| ? setTimeout(c, 0) | |
| : setTimeout(g, 0); | |
| }); | |
| }); | |
| }, | |
| k = function () { | |
| h.p = n(); | |
| h.p.fromNumberAsync(a - e, 1, d, function () { | |
| h.p.subtract(l.ONE).gcda(f, function (a) { | |
| 0 == a.compareTo(l.ONE) && h.p.isProbablePrime(10) | |
| ? setTimeout(g, 0) | |
| : setTimeout(k, 0); | |
| }); | |
| }); | |
| }; | |
| setTimeout(k, 0); | |
| }; | |
| setTimeout(m, 0); | |
| }), | |
| (b.prototype.sign = function (a, c, b) { | |
| a = (O[b] || "") + c(a).toString(); | |
| c = this.n.bitLength() / 4; | |
| if (c < a.length + 22) | |
| a = (console.error("Message too long for RSA"), null); | |
| else { | |
| c = c - a.length - 6; | |
| b = ""; | |
| for (var d = 0; d < c; d += 2) b += "ff"; | |
| a = r("0001" + b + "00" + a, 16); | |
| } | |
| if (null == a) return null; | |
| a = this.doPrivate(a); | |
| if (null == a) return null; | |
| a = a.toString(16); | |
| return 0 == (1 & a.length) ? a : "0" + a; | |
| }), | |
| (b.prototype.verify = function (a, c, b) { | |
| c = r(c, 16); | |
| c = this.doPublic(c); | |
| if (null == c) a = null; | |
| else { | |
| a: { | |
| c = c.toString(16).replace(/^1f+00/, ""); | |
| for (f in O) | |
| if (O.hasOwnProperty(f)) { | |
| var d = O[f], | |
| e = d.length; | |
| if (c.substr(0, e) == d) { | |
| var f = c.substr(e); | |
| break a; | |
| } | |
| } | |
| f = c; | |
| } | |
| a = f == b(a).toString(); | |
| } | |
| return a; | |
| }), | |
| b | |
| ); | |
| })(); | |
| var O = { | |
| md2: "3020300c06082a864886f70d020205000410", | |
| md5: "3020300c06082a864886f70d020505000410", | |
| sha1: "3021300906052b0e03021a05000414", | |
| sha224: "302d300d06096086480165030402040500041c", | |
| sha256: "3031300d060960864801650304020105000420", | |
| sha384: "3041300d060960864801650304020205000430", | |
| sha512: "3051300d060960864801650304020305000440", | |
| ripemd160: "3021300906052b2403020105000414", | |
| }; | |
| m = { | |
| extend: function (b, a, c) { | |
| if (!a || !b) | |
| throw Error( | |
| "YAHOO.lang.extend failed, please check that all dependencies are included." | |
| ); | |
| var d = function () {}; | |
| if ( | |
| ((d.prototype = a.prototype), | |
| (b.prototype = new d()), | |
| ((b.prototype.constructor = b).superclass = a.prototype), | |
| a.prototype.constructor == Object.prototype.constructor && | |
| (a.prototype.constructor = a), | |
| c) | |
| ) { | |
| for (var g in c) b.prototype[g] = c[g]; | |
| a = function () {}; | |
| var e = ["toString", "valueOf"]; | |
| try { | |
| /MSIE/.test(navigator.userAgent) && | |
| (a = function (a, c) { | |
| for (g = 0; g < e.length; g += 1) { | |
| var b = e[g], | |
| d = c[b]; | |
| "function" == typeof d && | |
| d != Object.prototype[b] && | |
| (a[b] = d); | |
| } | |
| }); | |
| } catch (k) {} | |
| a(b.prototype, c); | |
| } | |
| }, | |
| }; | |
| var f = {}; | |
| (void 0 !== f.asn1 && f.asn1) || (f.asn1 = {}); | |
| f.asn1.ASN1Util = new (function () { | |
| this.integerToByteHex = function (b) { | |
| b = b.toString(16); | |
| return 1 == b.length % 2 && (b = "0" + b), b; | |
| }; | |
| this.bigIntToMinTwosComplementsHex = function (b) { | |
| var a = b.toString(16); | |
| if ("-" != a.substr(0, 1)) | |
| 1 == a.length % 2 ? (a = "0" + a) : a.match(/^[0-7]/) || (a = "00" + a); | |
| else { | |
| var c = a.substr(1).length; | |
| 1 == c % 2 ? (c += 1) : a.match(/^[0-7]/) || (c += 2); | |
| a = ""; | |
| for (var d = 0; d < c; d++) a += "f"; | |
| a = new l(a, 16).xor(b).add(l.ONE).toString(16).replace(/^-/, ""); | |
| } | |
| return a; | |
| }; | |
| this.getPEMStringFromHex = function (b, a) { | |
| return hextopem(b, a); | |
| }; | |
| this.newObject = function (b) { | |
| var a = f.asn1, | |
| c = a.DERBoolean, | |
| d = a.DERInteger, | |
| g = a.DERBitString, | |
| e = a.DEROctetString, | |
| k = a.DERNull, | |
| h = a.DERObjectIdentifier, | |
| l = a.DEREnumerated, | |
| m = a.DERUTF8String, | |
| n = a.DERNumericString, | |
| p = a.DERPrintableString, | |
| r = a.DERTeletexString, | |
| w = a.DERIA5String, | |
| t = a.DERUTCTime, | |
| y = a.DERGeneralizedTime, | |
| z = a.DERSequence, | |
| x = a.DERSet, | |
| A = a.DERTaggedObject; | |
| a = a.ASN1Util.newObject; | |
| var q = Object.keys(b); | |
| if (1 != q.length) throw "key of param shall be only one."; | |
| q = q[0]; | |
| if ( | |
| -1 == | |
| ":bool:int:bitstr:octstr:null:oid:enum:utf8str:numstr:prnstr:telstr:ia5str:utctime:gentime:seq:set:tag:".indexOf( | |
| ":" + q + ":" | |
| ) | |
| ) | |
| throw "undefined key: " + q; | |
| if ("bool" == q) return new c(b[q]); | |
| if ("int" == q) return new d(b[q]); | |
| if ("bitstr" == q) return new g(b[q]); | |
| if ("octstr" == q) return new e(b[q]); | |
| if ("null" == q) return new k(b[q]); | |
| if ("oid" == q) return new h(b[q]); | |
| if ("enum" == q) return new l(b[q]); | |
| if ("utf8str" == q) return new m(b[q]); | |
| if ("numstr" == q) return new n(b[q]); | |
| if ("prnstr" == q) return new p(b[q]); | |
| if ("telstr" == q) return new r(b[q]); | |
| if ("ia5str" == q) return new w(b[q]); | |
| if ("utctime" == q) return new t(b[q]); | |
| if ("gentime" == q) return new y(b[q]); | |
| if ("seq" == q) { | |
| A = b[q]; | |
| b = []; | |
| for (c = 0; c < A.length; c++) (d = a(A[c])), b.push(d); | |
| return new z({ array: b }); | |
| } | |
| if ("set" == q) { | |
| A = b[q]; | |
| b = []; | |
| for (c = 0; c < A.length; c++) (d = a(A[c])), b.push(d); | |
| return new x({ array: b }); | |
| } | |
| if ("tag" == q) { | |
| z = b[q]; | |
| if ( | |
| "[object Array]" === Object.prototype.toString.call(z) && | |
| 3 == z.length | |
| ) | |
| return (a = a(z[2])), new A({ tag: z[0], explicit: z[1], obj: a }); | |
| x = {}; | |
| if ( | |
| (void 0 !== z.explicit && (x.explicit = z.explicit), | |
| void 0 !== z.tag && (x.tag = z.tag), | |
| void 0 === z.obj) | |
| ) | |
| throw "obj shall be specified for 'tag'."; | |
| return (x.obj = a(z.obj)), new A(x); | |
| } | |
| }; | |
| this.jsonToASN1HEX = function (b) { | |
| return this.newObject(b).getEncodedHex(); | |
| }; | |
| })(); | |
| f.asn1.ASN1Util.oidHexToInt = function (b) { | |
| var a = parseInt(b.substr(0, 2), 16); | |
| for ( | |
| var c = ((a = Math.floor(a / 40) + "." + (a % 40)), ""), d = 2; | |
| d < b.length; | |
| d += 2 | |
| ) { | |
| var g = ("00000000" + parseInt(b.substr(d, 2), 16).toString(2)).slice(-8); | |
| if (((c += g.substr(1, 7)), "0" == g.substr(0, 1))) | |
| (a = a + "." + new l(c, 2).toString(10)), (c = ""); | |
| } | |
| return a; | |
| }; | |
| f.asn1.ASN1Util.oidIntToHex = function (b) { | |
| var a = function (a) { | |
| a = a.toString(16); | |
| return 1 == a.length && (a = "0" + a), a; | |
| }, | |
| c = function (c) { | |
| var b = ""; | |
| c = new l(c, 10).toString(2); | |
| var d = 7 - (c.length % 7); | |
| 7 == d && (d = 0); | |
| for (var e = "", g = 0; g < d; g++) e += "0"; | |
| c = e + c; | |
| for (g = 0; g < c.length - 1; g += 7) | |
| (d = c.substr(g, 7)), | |
| g != c.length - 7 && (d = "1" + d), | |
| (b += a(parseInt(d, 2))); | |
| return b; | |
| }; | |
| if (!b.match(/^[0-9.]+$/)) throw "malformed oid string: " + b; | |
| var d = ""; | |
| b = b.split("."); | |
| var g = 40 * parseInt(b[0]) + parseInt(b[1]); | |
| d += a(g); | |
| b.splice(0, 2); | |
| for (g = 0; g < b.length; g++) d += c(b[g]); | |
| return d; | |
| }; | |
| f.asn1.ASN1Object = function () { | |
| this.getLengthHexFromValue = function () { | |
| if (void 0 === this.hV || null == this.hV) | |
| throw "this.hV is null or undefined."; | |
| if (1 == this.hV.length % 2) throw "33,v=" + this.hV; | |
| var b = this.hV.length / 2, | |
| a = b.toString(16); | |
| if ((1 == a.length % 2 && (a = "0" + a), 128 > b)) return a; | |
| var c = a.length / 2; | |
| if (15 < c) | |
| throw "ASN.1 length too long to represent by 8x: n = " + b.toString(16); | |
| return (128 + c).toString(16) + a; | |
| }; | |
| this.getEncodedHex = function () { | |
| return ( | |
| (null == this.hTLV || this.isModified) && | |
| ((this.hV = this.getFreshValueHex()), | |
| (this.hL = this.getLengthHexFromValue()), | |
| (this.hTLV = this.hT + this.hL + this.hV), | |
| (this.isModified = !1)), | |
| this.hTLV | |
| ); | |
| }; | |
| this.getValueHex = function () { | |
| return this.getEncodedHex(), this.hV; | |
| }; | |
| this.getFreshValueHex = function () { | |
| return ""; | |
| }; | |
| }; | |
| f.asn1.DERAbstractString = function (b) { | |
| f.asn1.DERAbstractString.superclass.constructor.call(this); | |
| this.getString = function () { | |
| return this.s; | |
| }; | |
| this.setString = function (a) { | |
| this.hTLV = null; | |
| this.isModified = !0; | |
| this.s = a; | |
| this.hV = stohex(this.s); | |
| }; | |
| this.setStringHex = function (a) { | |
| this.hTLV = null; | |
| this.isModified = !0; | |
| this.s = null; | |
| this.hV = a; | |
| }; | |
| this.getFreshValueHex = function () { | |
| return this.hV; | |
| }; | |
| void 0 !== b && | |
| ("string" == typeof b | |
| ? this.setString(b) | |
| : void 0 !== b.str | |
| ? this.setString(b.str) | |
| : void 0 !== b.hex && this.setStringHex(b.hex)); | |
| }; | |
| m.extend(f.asn1.DERAbstractString, f.asn1.ASN1Object); | |
| f.asn1.DERAbstractTime = function (b) { | |
| f.asn1.DERAbstractTime.superclass.constructor.call(this); | |
| this.localDateToUTC = function (a) { | |
| return (utc = a.getTime() + 6e4 * a.getTimezoneOffset()), new Date(utc); | |
| }; | |
| this.formatDate = function (a, c, b) { | |
| var d = this.zeroPadding; | |
| a = this.localDateToUTC(a); | |
| var e = String(a.getFullYear()); | |
| "utc" == c && (e = e.substr(2, 2)); | |
| c = | |
| e + | |
| d(String(a.getMonth() + 1), 2) + | |
| d(String(a.getDate()), 2) + | |
| d(String(a.getHours()), 2) + | |
| d(String(a.getMinutes()), 2) + | |
| d(String(a.getSeconds()), 2); | |
| !0 === b && | |
| ((b = a.getMilliseconds()), | |
| 0 != b && | |
| ((d = d(String(b), 3)), (c = c + "." + d.replace(/[0]+$/, "")))); | |
| return c + "Z"; | |
| }; | |
| this.zeroPadding = function (a, c) { | |
| return a.length >= c ? a : Array(c - a.length + 1).join("0") + a; | |
| }; | |
| this.getString = function () { | |
| return this.s; | |
| }; | |
| this.setString = function (a) { | |
| this.hTLV = null; | |
| this.isModified = !0; | |
| this.s = a; | |
| this.hV = stohex(a); | |
| }; | |
| this.setByDateValue = function (a, c, b, g, e, f) { | |
| a = new Date(Date.UTC(a, c - 1, b, g, e, f, 0)); | |
| this.setByDate(a); | |
| }; | |
| this.getFreshValueHex = function () { | |
| return this.hV; | |
| }; | |
| }; | |
| m.extend(f.asn1.DERAbstractTime, f.asn1.ASN1Object); | |
| f.asn1.DERAbstractStructured = function (b) { | |
| f.asn1.DERAbstractString.superclass.constructor.call(this); | |
| this.setByASN1ObjectArray = function (a) { | |
| this.hTLV = null; | |
| this.isModified = !0; | |
| this.asn1Array = a; | |
| }; | |
| this.appendASN1Object = function (a) { | |
| this.hTLV = null; | |
| this.isModified = !0; | |
| this.asn1Array.push(a); | |
| }; | |
| this.asn1Array = []; | |
| void 0 !== b && void 0 !== b.array && (this.asn1Array = b.array); | |
| }; | |
| m.extend(f.asn1.DERAbstractStructured, f.asn1.ASN1Object); | |
| f.asn1.DERBoolean = function () { | |
| f.asn1.DERBoolean.superclass.constructor.call(this); | |
| this.hT = "01"; | |
| this.hTLV = "0101ff"; | |
| }; | |
| m.extend(f.asn1.DERBoolean, f.asn1.ASN1Object); | |
| f.asn1.DERInteger = function (b) { | |
| f.asn1.DERInteger.superclass.constructor.call(this); | |
| this.hT = "02"; | |
| this.setByBigInteger = function (a) { | |
| this.hTLV = null; | |
| this.isModified = !0; | |
| this.hV = f.asn1.ASN1Util.bigIntToMinTwosComplementsHex(a); | |
| }; | |
| this.setByInteger = function (a) { | |
| a = new l(String(a), 10); | |
| this.setByBigInteger(a); | |
| }; | |
| this.setValueHex = function (a) { | |
| this.hV = a; | |
| }; | |
| this.getFreshValueHex = function () { | |
| return this.hV; | |
| }; | |
| void 0 !== b && | |
| (void 0 !== b.bigint | |
| ? this.setByBigInteger(b.bigint) | |
| : void 0 !== b.int | |
| ? this.setByInteger(b.int) | |
| : "number" == typeof b | |
| ? this.setByInteger(b) | |
| : void 0 !== b.hex && this.setValueHex(b.hex)); | |
| }; | |
| m.extend(f.asn1.DERInteger, f.asn1.ASN1Object); | |
| f.asn1.DERBitString = function (b) { | |
| if (void 0 !== b && void 0 !== b.obj) { | |
| var a = f.asn1.ASN1Util.newObject(b.obj); | |
| b.hex = "00" + a.getEncodedHex(); | |
| } | |
| f.asn1.DERBitString.superclass.constructor.call(this); | |
| this.hT = "03"; | |
| this.setHexValueIncludingUnusedBits = function (a) { | |
| this.hTLV = null; | |
| this.isModified = !0; | |
| this.hV = a; | |
| }; | |
| this.setUnusedBitsAndHexValue = function (a, b) { | |
| if (0 > a || 7 < a) throw "unused bits shall be from 0 to 7: u = " + a; | |
| this.hTLV = null; | |
| this.isModified = !0; | |
| this.hV = "0" + a + b; | |
| }; | |
| this.setByBinaryString = function (a) { | |
| var c = 8 - ((a = a.replace(/0+$/, "")).length % 8); | |
| 8 == c && (c = 0); | |
| for (var b = 0; b <= c; b++) a += "0"; | |
| var e = ""; | |
| for (b = 0; b < a.length - 1; b += 8) { | |
| var f = a.substr(b, 8); | |
| f = parseInt(f, 2).toString(16); | |
| 1 == f.length && (f = "0" + f); | |
| e += f; | |
| } | |
| this.hTLV = null; | |
| this.isModified = !0; | |
| this.hV = "0" + c + e; | |
| }; | |
| this.setByBooleanArray = function (a) { | |
| for (var c = "", b = 0; b < a.length; b++) | |
| 1 == a[b] ? (c += "1") : (c += "0"); | |
| this.setByBinaryString(c); | |
| }; | |
| this.newFalseArray = function (a) { | |
| for (var c = Array(a), b = 0; b < a; b++) c[b] = !1; | |
| return c; | |
| }; | |
| this.getFreshValueHex = function () { | |
| return this.hV; | |
| }; | |
| void 0 !== b && | |
| ("string" == typeof b && b.toLowerCase().match(/^[0-9a-f]+$/) | |
| ? this.setHexValueIncludingUnusedBits(b) | |
| : void 0 !== b.hex | |
| ? this.setHexValueIncludingUnusedBits(b.hex) | |
| : void 0 !== b.bin | |
| ? this.setByBinaryString(b.bin) | |
| : void 0 !== b.array && this.setByBooleanArray(b.array)); | |
| }; | |
| m.extend(f.asn1.DERBitString, f.asn1.ASN1Object); | |
| f.asn1.DEROctetString = function (b) { | |
| if (void 0 !== b && void 0 !== b.obj) { | |
| var a = f.asn1.ASN1Util.newObject(b.obj); | |
| b.hex = a.getEncodedHex(); | |
| } | |
| f.asn1.DEROctetString.superclass.constructor.call(this, b); | |
| this.hT = "04"; | |
| }; | |
| m.extend(f.asn1.DEROctetString, f.asn1.DERAbstractString); | |
| f.asn1.DERNull = function () { | |
| f.asn1.DERNull.superclass.constructor.call(this); | |
| this.hT = "05"; | |
| this.hTLV = "0500"; | |
| }; | |
| m.extend(f.asn1.DERNull, f.asn1.ASN1Object); | |
| f.asn1.DERObjectIdentifier = function (b) { | |
| var a = function (a) { | |
| a = a.toString(16); | |
| return 1 == a.length && (a = "0" + a), a; | |
| }; | |
| f.asn1.DERObjectIdentifier.superclass.constructor.call(this); | |
| this.hT = "06"; | |
| this.setValueHex = function (a) { | |
| this.hTLV = null; | |
| this.isModified = !0; | |
| this.s = null; | |
| this.hV = a; | |
| }; | |
| this.setValueOidString = function (c) { | |
| if (!c.match(/^[0-9.]+$/)) throw "malformed oid string: " + c; | |
| var b = ""; | |
| c = c.split("."); | |
| var f = 40 * parseInt(c[0]) + parseInt(c[1]); | |
| b += a(f); | |
| c.splice(0, 2); | |
| for (f = 0; f < c.length; f++) { | |
| var e = "", | |
| k = new l(c[f], 10).toString(2), | |
| h = 7 - (k.length % 7); | |
| 7 == h && (h = 0); | |
| for (var m = "", n = 0; n < h; n++) m += "0"; | |
| k = m + k; | |
| for (n = 0; n < k.length - 1; n += 7) | |
| (h = k.substr(n, 7)), | |
| n != k.length - 7 && (h = "1" + h), | |
| (e += a(parseInt(h, 2))); | |
| b += e; | |
| } | |
| this.hTLV = null; | |
| this.isModified = !0; | |
| this.s = null; | |
| this.hV = b; | |
| }; | |
| this.setValueName = function (a) { | |
| var c = f.asn1.x509.OID.name2oid(a); | |
| if ("" === c) throw "DERObjectIdentifier oidName undefined: " + a; | |
| this.setValueOidString(c); | |
| }; | |
| this.getFreshValueHex = function () { | |
| return this.hV; | |
| }; | |
| void 0 !== b && | |
| ("string" == typeof b | |
| ? b.match(/^[0-2].[0-9.]+$/) | |
| ? this.setValueOidString(b) | |
| : this.setValueName(b) | |
| : void 0 !== b.oid | |
| ? this.setValueOidString(b.oid) | |
| : void 0 !== b.hex | |
| ? this.setValueHex(b.hex) | |
| : void 0 !== b.name && this.setValueName(b.name)); | |
| }; | |
| m.extend(f.asn1.DERObjectIdentifier, f.asn1.ASN1Object); | |
| f.asn1.DEREnumerated = function (b) { | |
| f.asn1.DEREnumerated.superclass.constructor.call(this); | |
| this.hT = "0a"; | |
| this.setByBigInteger = function (a) { | |
| this.hTLV = null; | |
| this.isModified = !0; | |
| this.hV = f.asn1.ASN1Util.bigIntToMinTwosComplementsHex(a); | |
| }; | |
| this.setByInteger = function (a) { | |
| a = new l(String(a), 10); | |
| this.setByBigInteger(a); | |
| }; | |
| this.setValueHex = function (a) { | |
| this.hV = a; | |
| }; | |
| this.getFreshValueHex = function () { | |
| return this.hV; | |
| }; | |
| void 0 !== b && | |
| (void 0 !== b.int | |
| ? this.setByInteger(b.int) | |
| : "number" == typeof b | |
| ? this.setByInteger(b) | |
| : void 0 !== b.hex && this.setValueHex(b.hex)); | |
| }; | |
| m.extend(f.asn1.DEREnumerated, f.asn1.ASN1Object); | |
| f.asn1.DERUTF8String = function (b) { | |
| f.asn1.DERUTF8String.superclass.constructor.call(this, b); | |
| this.hT = "0c"; | |
| }; | |
| m.extend(f.asn1.DERUTF8String, f.asn1.DERAbstractString); | |
| f.asn1.DERNumericString = function (b) { | |
| f.asn1.DERNumericString.superclass.constructor.call(this, b); | |
| this.hT = "12"; | |
| }; | |
| m.extend(f.asn1.DERNumericString, f.asn1.DERAbstractString); | |
| f.asn1.DERPrintableString = function (b) { | |
| f.asn1.DERPrintableString.superclass.constructor.call(this, b); | |
| this.hT = "13"; | |
| }; | |
| m.extend(f.asn1.DERPrintableString, f.asn1.DERAbstractString); | |
| f.asn1.DERTeletexString = function (b) { | |
| f.asn1.DERTeletexString.superclass.constructor.call(this, b); | |
| this.hT = "14"; | |
| }; | |
| m.extend(f.asn1.DERTeletexString, f.asn1.DERAbstractString); | |
| f.asn1.DERIA5String = function (b) { | |
| f.asn1.DERIA5String.superclass.constructor.call(this, b); | |
| this.hT = "16"; | |
| }; | |
| m.extend(f.asn1.DERIA5String, f.asn1.DERAbstractString); | |
| f.asn1.DERUTCTime = function (b) { | |
| f.asn1.DERUTCTime.superclass.constructor.call(this, b); | |
| this.hT = "17"; | |
| this.setByDate = function (a) { | |
| this.hTLV = null; | |
| this.isModified = !0; | |
| this.date = a; | |
| this.s = this.formatDate(this.date, "utc"); | |
| this.hV = stohex(this.s); | |
| }; | |
| this.getFreshValueHex = function () { | |
| return ( | |
| void 0 === this.date && | |
| void 0 === this.s && | |
| ((this.date = new Date()), | |
| (this.s = this.formatDate(this.date, "utc")), | |
| (this.hV = stohex(this.s))), | |
| this.hV | |
| ); | |
| }; | |
| void 0 !== b && | |
| (void 0 !== b.str | |
| ? this.setString(b.str) | |
| : "string" == typeof b && b.match(/^[0-9]{12}Z$/) | |
| ? this.setString(b) | |
| : void 0 !== b.hex | |
| ? this.setStringHex(b.hex) | |
| : void 0 !== b.date && this.setByDate(b.date)); | |
| }; | |
| m.extend(f.asn1.DERUTCTime, f.asn1.DERAbstractTime); | |
| f.asn1.DERGeneralizedTime = function (b) { | |
| f.asn1.DERGeneralizedTime.superclass.constructor.call(this, b); | |
| this.hT = "18"; | |
| this.withMillis = !1; | |
| this.setByDate = function (a) { | |
| this.hTLV = null; | |
| this.isModified = !0; | |
| this.date = a; | |
| this.s = this.formatDate(this.date, "gen", this.withMillis); | |
| this.hV = stohex(this.s); | |
| }; | |
| this.getFreshValueHex = function () { | |
| return ( | |
| void 0 === this.date && | |
| void 0 === this.s && | |
| ((this.date = new Date()), | |
| (this.s = this.formatDate(this.date, "gen", this.withMillis)), | |
| (this.hV = stohex(this.s))), | |
| this.hV | |
| ); | |
| }; | |
| void 0 !== b && | |
| (void 0 !== b.str | |
| ? this.setString(b.str) | |
| : "string" == typeof b && b.match(/^[0-9]{14}Z$/) | |
| ? this.setString(b) | |
| : void 0 !== b.hex | |
| ? this.setStringHex(b.hex) | |
| : void 0 !== b.date && this.setByDate(b.date), | |
| !0 === b.millis && (this.withMillis = !0)); | |
| }; | |
| m.extend(f.asn1.DERGeneralizedTime, f.asn1.DERAbstractTime); | |
| f.asn1.DERSequence = function (b) { | |
| f.asn1.DERSequence.superclass.constructor.call(this, b); | |
| this.hT = "30"; | |
| this.getFreshValueHex = function () { | |
| for (var a = "", c = 0; c < this.asn1Array.length; c++) | |
| a += this.asn1Array[c].getEncodedHex(); | |
| return (this.hV = a), this.hV; | |
| }; | |
| }; | |
| m.extend(f.asn1.DERSequence, f.asn1.DERAbstractStructured); | |
| f.asn1.DERSet = function (b) { | |
| f.asn1.DERSet.superclass.constructor.call(this, b); | |
| this.hT = "31"; | |
| this.sortFlag = !0; | |
| this.getFreshValueHex = function () { | |
| for (var a = [], c = 0; c < this.asn1Array.length; c++) | |
| a.push(this.asn1Array[c].getEncodedHex()); | |
| return 1 == this.sortFlag && a.sort(), (this.hV = a.join("")), this.hV; | |
| }; | |
| void 0 !== b && | |
| void 0 !== b.sortflag && | |
| 0 == b.sortflag && | |
| (this.sortFlag = !1); | |
| }; | |
| m.extend(f.asn1.DERSet, f.asn1.DERAbstractStructured); | |
| f.asn1.DERTaggedObject = function (b) { | |
| f.asn1.DERTaggedObject.superclass.constructor.call(this); | |
| this.hT = "a0"; | |
| this.hV = ""; | |
| this.isExplicit = !0; | |
| this.asn1Object = null; | |
| this.setASN1Object = function (a, c, b) { | |
| this.hT = c; | |
| this.isExplicit = a; | |
| this.asn1Object = b; | |
| this.isExplicit | |
| ? ((this.hV = this.asn1Object.getEncodedHex()), | |
| (this.hTLV = null), | |
| (this.isModified = !0)) | |
| : ((this.hV = null), | |
| (this.hTLV = b.getEncodedHex()), | |
| (this.hTLV = this.hTLV.replace(/^../, c)), | |
| (this.isModified = !1)); | |
| }; | |
| this.getFreshValueHex = function () { | |
| return this.hV; | |
| }; | |
| void 0 !== b && | |
| (void 0 !== b.tag && (this.hT = b.tag), | |
| void 0 !== b.explicit && (this.isExplicit = b.explicit), | |
| void 0 !== b.obj && | |
| ((this.asn1Object = b.obj), | |
| this.setASN1Object(this.isExplicit, this.hT, this.asn1Object))); | |
| }; | |
| m.extend(f.asn1.DERTaggedObject, f.asn1.ASN1Object); | |
| var j = (function (b) { | |
| function a(c) { | |
| var d = b.call(this) || this; | |
| return ( | |
| c && | |
| ("string" == typeof c | |
| ? d.parseKey(c) | |
| : (a.hasPrivateKeyProperty(c) || a.hasPublicKeyProperty(c)) && | |
| d.parsePropertiesFrom(c)), | |
| d | |
| ); | |
| } | |
| return ( | |
| (function (a, b) { | |
| function c() { | |
| this.constructor = a; | |
| } | |
| W(a, b); | |
| a.prototype = | |
| null === b | |
| ? Object.create(b) | |
| : ((c.prototype = b.prototype), new c()); | |
| })(a, b), | |
| (a.prototype.parseKey = function (a) { | |
| try { | |
| var b = 0, | |
| c = 0; | |
| if (/^\s*(?:[0-9A-Fa-f][0-9A-Fa-f]\s*)+$/.test(a)) { | |
| var e; | |
| if (void 0 === D) { | |
| var f = "0123456789ABCDEF"; | |
| D = {}; | |
| for (e = 0; 16 > e; ++e) D[f.charAt(e)] = e; | |
| f = f.toLowerCase(); | |
| for (e = 10; 16 > e; ++e) D[f.charAt(e)] = e; | |
| for (e = 0; 8 > e; ++e) | |
| D[" \f\n\r\t\u00a0\u2028\u2029".charAt(e)] = -1; | |
| } | |
| f = []; | |
| var h = 0, | |
| l = 0; | |
| for (e = 0; e < a.length; ++e) { | |
| var m = a.charAt(e); | |
| if ("=" == m) break; | |
| if (-1 != (m = D[m])) { | |
| if (void 0 === m) | |
| throw Error("Illegal character at offset " + e); | |
| h |= m; | |
| 2 <= ++l ? ((f[f.length] = h), (l = h = 0)) : (h <<= 4); | |
| } | |
| } | |
| if (l) throw Error("Hex encoding incomplete: 4 bits missing"); | |
| var n = f; | |
| } else n = P.unarmor(a); | |
| var p = ea.decode(n); | |
| if ( | |
| (3 === p.sub.length && (p = p.sub[2].sub[0]), 9 === p.sub.length) | |
| ) { | |
| b = p.sub[1].getHexStringValue(); | |
| this.n = r(b, 16); | |
| c = p.sub[2].getHexStringValue(); | |
| this.e = parseInt(c, 16); | |
| var v = p.sub[3].getHexStringValue(); | |
| this.d = r(v, 16); | |
| var w = p.sub[4].getHexStringValue(); | |
| this.p = r(w, 16); | |
| var t = p.sub[5].getHexStringValue(); | |
| this.q = r(t, 16); | |
| var x = p.sub[6].getHexStringValue(); | |
| this.dmp1 = r(x, 16); | |
| var z = p.sub[7].getHexStringValue(); | |
| this.dmq1 = r(z, 16); | |
| var y = p.sub[8].getHexStringValue(); | |
| this.coeff = r(y, 16); | |
| } else { | |
| if (2 !== p.sub.length) return !1; | |
| var A = p.sub[1].sub[0]; | |
| b = A.sub[0].getHexStringValue(); | |
| this.n = r(b, 16); | |
| c = A.sub[1].getHexStringValue(); | |
| this.e = parseInt(c, 16); | |
| } | |
| return !0; | |
| } catch (q) { | |
| return !1; | |
| } | |
| }), | |
| (a.prototype.getPrivateBaseKey = function () { | |
| var a = { | |
| array: [ | |
| new f.asn1.DERInteger({ int: 0 }), | |
| new f.asn1.DERInteger({ bigint: this.n }), | |
| new f.asn1.DERInteger({ int: this.e }), | |
| new f.asn1.DERInteger({ bigint: this.d }), | |
| new f.asn1.DERInteger({ bigint: this.p }), | |
| new f.asn1.DERInteger({ bigint: this.q }), | |
| new f.asn1.DERInteger({ bigint: this.dmp1 }), | |
| new f.asn1.DERInteger({ bigint: this.dmq1 }), | |
| new f.asn1.DERInteger({ bigint: this.coeff }), | |
| ], | |
| }; | |
| return new f.asn1.DERSequence(a).getEncodedHex(); | |
| }), | |
| (a.prototype.getPrivateBaseKeyB64 = function () { | |
| return J(this.getPrivateBaseKey()); | |
| }), | |
| (a.prototype.getPublicBaseKey = function () { | |
| var a = new f.asn1.DERSequence({ | |
| array: [ | |
| new f.asn1.DERObjectIdentifier({ oid: "1.2.840.113549.1.1.1" }), | |
| new f.asn1.DERNull(), | |
| ], | |
| }), | |
| b = new f.asn1.DERSequence({ | |
| array: [ | |
| new f.asn1.DERInteger({ bigint: this.n }), | |
| new f.asn1.DERInteger({ int: this.e }), | |
| ], | |
| }); | |
| b = new f.asn1.DERBitString({ hex: "00" + b.getEncodedHex() }); | |
| return new f.asn1.DERSequence({ array: [a, b] }).getEncodedHex(); | |
| }), | |
| (a.prototype.getPublicBaseKeyB64 = function () { | |
| return J(this.getPublicBaseKey()); | |
| }), | |
| (a.wordwrap = function (a, b) { | |
| if (!a) return a; | |
| var c = "(.{1," + (b = b || 64) + "})( +|$\n?)|(.{1," + b + "})"; | |
| return a.match(RegExp(c, "g")).join("\n"); | |
| }), | |
| (a.prototype.getPrivateKey = function () { | |
| var b = "-----BEGIN RSA PRIVATE KEY-----\n"; | |
| return ( | |
| (b += a.wordwrap(this.getPrivateBaseKeyB64()) + "\n"), | |
| b + "-----END RSA PRIVATE KEY-----" | |
| ); | |
| }), | |
| (a.prototype.getPublicKey = function () { | |
| var b = "-----BEGIN PUBLIC KEY-----\n"; | |
| return ( | |
| (b += a.wordwrap(this.getPublicBaseKeyB64()) + "\n"), | |
| b + "-----END PUBLIC KEY-----" | |
| ); | |
| }), | |
| (a.hasPublicKeyProperty = function (a) { | |
| return (a = a || {}).hasOwnProperty("n") && a.hasOwnProperty("e"); | |
| }), | |
| (a.hasPrivateKeyProperty = function (a) { | |
| return ( | |
| (a = a || {}).hasOwnProperty("n") && | |
| a.hasOwnProperty("e") && | |
| a.hasOwnProperty("d") && | |
| a.hasOwnProperty("p") && | |
| a.hasOwnProperty("q") && | |
| a.hasOwnProperty("dmp1") && | |
| a.hasOwnProperty("dmq1") && | |
| a.hasOwnProperty("coeff") | |
| ); | |
| }), | |
| (a.prototype.parsePropertiesFrom = function (a) { | |
| this.n = a.n; | |
| this.e = a.e; | |
| a.hasOwnProperty("d") && | |
| ((this.d = a.d), | |
| (this.p = a.p), | |
| (this.q = a.q), | |
| (this.dmp1 = a.dmp1), | |
| (this.dmq1 = a.dmq1), | |
| (this.coeff = a.coeff)); | |
| }), | |
| a | |
| ); | |
| })(p); | |
| p = (function () { | |
| function b(a) { | |
| a = a || {}; | |
| this.default_key_size = parseInt(a.default_key_size, 10) || 1024; | |
| this.default_public_exponent = a.default_public_exponent || "010001"; | |
| this.log = a.log || !1; | |
| this.key = null; | |
| } | |
| return ( | |
| (b.prototype.setKey = function (a) { | |
| console.log("🚀 ~ a:", a); | |
| this.log && | |
| this.key && | |
| console.warn("A key was already set, overriding existing."); | |
| this.key = new j(a); | |
| console.log("🚀 ~ this.key:", this.key); | |
| }), | |
| (b.prototype.setPrivateKey = function (a) { | |
| this.setKey(a); | |
| }), | |
| (b.prototype.setPublicKey = function (a) { | |
| this.setKey(a); | |
| }), | |
| (b.prototype.sojsonAuth = function (a) { | |
| this.setKey(a); | |
| }), | |
| (b.prototype.decrypt = function (a) { | |
| try { | |
| return this.getKey().decrypt(U(a)); | |
| } catch (c) { | |
| return !1; | |
| } | |
| }), | |
| (b.prototype.encrypt = function (a) { | |
| try { | |
| return J(this.getKey().encrypt(a)); | |
| } catch (c) { | |
| return !1; | |
| } | |
| }), | |
| (b.prototype.en = function (a) { | |
| return this.encrypt(a); | |
| }), | |
| (b.prototype.sign = function (a, b, d) { | |
| try { | |
| return J(this.getKey().sign(a, b, d)); | |
| } catch (g) { | |
| return !1; | |
| } | |
| }), | |
| (b.prototype.verify = function (a, b, d) { | |
| try { | |
| return this.getKey().verify(a, U(b), d); | |
| } catch (g) { | |
| return !1; | |
| } | |
| }), | |
| (b.prototype.getKey = function (a) { | |
| if (!this.key) { | |
| if ( | |
| ((this.key = new j()), | |
| a && "[object Function]" === {}.toString.call(a)) | |
| ) | |
| return void this.key.generateAsync( | |
| this.default_key_size, | |
| this.default_public_exponent, | |
| a | |
| ); | |
| this.key.generate( | |
| this.default_key_size, | |
| this.default_public_exponent | |
| ); | |
| } | |
| return this.key; | |
| }), | |
| (b.prototype.getPrivateKey = function () { | |
| return this.getKey().getPrivateKey(); | |
| }), | |
| (b.prototype.getPrivateKeyB64 = function () { | |
| return this.getKey().getPrivateBaseKeyB64(); | |
| }), | |
| (b.prototype.getPublicKey = function () { | |
| return this.getKey().getPublicKey(); | |
| }), | |
| (b.prototype.getPublicKeyB64 = function () { | |
| return this.getKey().getPublicBaseKeyB64(); | |
| }), | |
| (b.version = "sojson.3.0.0"), | |
| b | |
| ); | |
| })(); | |
| window['SOSecurity'] = p; | |
| E['SOSecurity'] = p; | |
| E.default = p; | |
| Object.defineProperty(E, "__esModule", { value: !0 }); | |
| }); |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment